New module 'uninorm/filter'.
[gnulib.git] / ChangeLog
1 2009-02-21  Bruno Haible  <bruno@clisp.org>
2
3         New module 'uninorm/filter'.
4         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
5         uninorm_filter_flush, uninorm_filter_free): New declarations.
6         * lib/uninorm/uninorm-filter.c: New file.
7         * modules/uninorm/filter: New file.
8
9 2009-02-21  Bruno Haible  <bruno@clisp.org>
10
11         Tests for module 'uninorm/nfkc'.
12         * tests/uninorm/test-nfkc.c: New file.
13         * tests/uninorm/test-u8-nfkc.c: New file.
14         * tests/uninorm/test-u16-nfkc.c: New file.
15         * tests/uninorm/test-u32-nfkc.c: New file.
16         * tests/uninorm/test-u32-nfkc-big.sh: New file.
17         * tests/uninorm/test-u32-nfkc-big.c: New file.
18         * modules/uninorm/nfkc-tests: New file.
19
20         New module 'uninorm/nfkc'.
21         * lib/uninorm/nfkc.c: New file.
22         * modules/uninorm/nfkc: New file.
23
24         Tests for module 'uninorm/nfkd'.
25         * tests/uninorm/test-nfkd.c: New file.
26         * tests/uninorm/test-u8-nfkd.c: New file.
27         * tests/uninorm/test-u16-nfkd.c: New file.
28         * tests/uninorm/test-u32-nfkd.c: New file.
29         * tests/uninorm/test-u32-nfkd-big.sh: New file.
30         * tests/uninorm/test-u32-nfkd-big.c: New file.
31         * modules/uninorm/nfkd-tests: New file.
32
33         New module 'uninorm/nfkd'.
34         * lib/uninorm/nfkd.c: New file.
35         * modules/uninorm/nfkd: New file.
36
37         Tests for module 'uninorm/nfc'.
38         * tests/uninorm/test-nfc.c: New file.
39         * tests/uninorm/test-u8-nfc.c: New file.
40         * tests/uninorm/test-u16-nfc.c: New file.
41         * tests/uninorm/test-u32-nfc.c: New file.
42         * tests/uninorm/test-u32-nfc-big.sh: New file.
43         * tests/uninorm/test-u32-nfc-big.c: New file.
44         * modules/uninorm/nfc-tests: New file.
45
46         New module 'uninorm/nfc'.
47         * lib/uninorm/nfc.c: New file.
48         * modules/uninorm/nfc: New file.
49
50         Tests for module 'uninorm/nfd'.
51         * tests/uninorm/test-nfd.c: New file.
52         * tests/uninorm/test-u8-nfd.c: New file.
53         * tests/uninorm/test-u16-nfd.c: New file.
54         * tests/uninorm/test-u32-nfd.c: New file.
55         * tests/uninorm/test-u32-nfd-big.sh: New file.
56         * tests/uninorm/test-u32-nfd-big.c: New file.
57         * tests/uninorm/test-u32-normalize-big.h: New file.
58         * tests/uninorm/test-u32-normalize-big.c: New file.
59         * tests/uninorm/NormalizationTest.txt: New file, created from
60         Unicode 5.1.0 NormalizationTest.txt.
61         * modules/uninorm/nfd-tests: New file.
62
63         New module 'uninorm/nfd'.
64         * lib/uninorm/nfd.c: New file.
65         * modules/uninorm/nfd: New file.
66
67         New module 'uninorm/u32-normalize'.
68         * lib/uninorm/u32-normalize.c: New file.
69         * modules/uninorm/u32-normalize: New file.
70
71         New module 'uninorm/u16-normalize'.
72         * lib/uninorm/u16-normalize.c: New file.
73         * modules/uninorm/u16-normalize: New file.
74
75         New module 'uninorm/u8-normalize'.
76         * lib/uninorm/u8-normalize.c: New file.
77         * lib/uninorm/normalize-internal.h: New file.
78         * lib/uninorm/u-normalize-internal.h: New file.
79         * modules/uninorm/u8-normalize: New file.
80
81         New module 'uninorm/decompose-internal'.
82         * lib/uninorm/decompose-internal.c: New file.
83         * modules/uninorm/decompose-internal: New file.
84
85         Tests for module 'uninorm/composition'.
86         * tests/uninorm/test-composition.c: New file.
87         * modules/uninorm/composition-tests: New file.
88
89         New module 'uninorm/composition'.
90         * lib/uninorm/composition.c: New file.
91         * lib/uninorm/composition-table.gperf: New file, generated by
92         gen-uni-tables.
93         * modules/uninorm/composition: New file.
94
95         Tests for module 'uninorm/compat-decomposition'.
96         * tests/uninorm/test-compat-decomposition.c: New file.
97         * modules/uninorm/compat-decomposition-tests: New file.
98
99         New module 'uninorm/compat-decomposition'.
100         * lib/uninorm/decompose-internal.h: New file.
101         * lib/uninorm/compat-decomposition.c: New file.
102         * modules/uninorm/compat-decomposition: New file.
103
104         Tests for module 'uninorm/canonical-decomposition'.
105         * tests/uninorm/test-canonical-decomposition.c: New file.
106         * modules/uninorm/canonical-decomposition-tests: New file.
107
108         New module 'uninorm/canonical-decomposition'.
109         * lib/uninorm/canonical-decomposition.c: New file.
110         * modules/uninorm/canonical-decomposition: New file.
111
112         Tests for module 'uninorm/decomposition'.
113         * tests/uninorm/test-decomposition.c: New file.
114         * modules/uninorm/decomposition-tests: New file.
115
116         New module 'uninorm/decomposition'.
117         * lib/uninorm/decomposition.c: New file.
118         * modules/uninorm/decomposition: New file.
119
120         New module 'uninorm/decomposition-table'.
121         * lib/uninorm/decomposition-table.h: New file.
122         * lib/uninorm/decomposition-table.c: New file.
123         * lib/uninorm/decomposition-table1.h: New file, generated by
124         gen-uni-tables.
125         * lib/uninorm/decomposition-table2.h: New file, generated by
126         gen-uni-tables.
127         * modules/uninorm/decomposition-table: New file.
128
129         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
130         (UC_DECOMP_*): New enumeration items.
131         (get_decomposition): New function.
132         (struct decomp_table): New type.
133         (output_decomposition, output_decomposition_tables): New functions.
134         (unicode_composition_exclusions): New variable.
135         (fill_composition_exclusions, debug_output_composition_tables): New
136         functions.
137         (main): Accept one more argument. Invoke fill_composition_exclusions.
138         Output decomposition and composition tables.
139
140         New module 'uninorm/base'.
141         * lib/uninorm.h: New file.
142         * lib/unictype.h: Update comment.
143         * modules/uninorm/base: New file.
144
145 2009-02-21  David Lutterkort  <lutter@redhat.com>
146
147         Tests for module 'safe-alloc'.
148         * tests/test-safe-alloc.c: New file.
149         * modules/safe-alloc-tests: New file.
150
151         New module 'safe-alloc'.
152         * lib/safe-alloc.h: New file.
153         * lib/safe-alloc.c: New file.
154         * m4/safe-alloc.m4: New file.
155         * modules/safe-alloc: New file.
156         * doc/safe-alloc.texi: New file.
157         * doc/gnulib.texi: Include it.
158         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
159         safe-alloc.
160
161 2009-02-18  Bruno Haible  <bruno@clisp.org>
162
163         Fix link error on non-glibc systems.
164         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
165         variable.
166         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
167
168 2009-02-18  Jim Meyering  <meyering@redhat.com>
169
170         fts: avoid used-uninitialized error due to recent change
171         * lib/fts.c (fts_read): Guard uses of the new member,
172         parent->fts_n_dirs_remaining, since it's not relevant for
173         the parent of a directory specified on the command-line.
174
175 2009-02-17  James Youngman  <jay@gnu.org>
176             Bruno Haible  <bruno@clisp.org>
177
178         * m4/include_next.m4: Reformulate comment.
179
180 2009-02-16  Jim Meyering  <meyering@redhat.com>
181
182         fts: add #if guards so that the fts_lgpl module still builds
183         * lib/fts.c: Guard just-added hash-table-using parts with
184         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
185         Reported by Simon Josefsson.
186
187 2009-02-15  Bruno Haible  <bruno@clisp.org>
188
189         * modules/array-mergesort-tests: New file.
190         * tests/test-array-mergesort.c: New file.
191
192         New module 'array-mergesort'.
193         * modules/array-mergesort: New file.
194         * lib/array-mergesort.h: New file.
195
196 2009-02-15  Bruno Haible  <bruno@clisp.org>
197
198         Fix 2009-02-07 commit.
199         * lib/gen-uni-tables.c (output_predicate, output_category,
200         output_combclass, output_bidi_category, output_decimal_digit,
201         output_digit, output_numeric, output_mirror, output_scripts,
202         output_ident_category, output_simple_mapping): Fix format directives.
203         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
204
205 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
206
207         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
208         fixes are available from IBM.
209
210 2009-02-13  Jim Meyering  <meyering@redhat.com>
211
212         fts: arrange not to stat non-directories in more cases
213         This makes GNU find (when it doesn't need to stat each file)
214         *much* more efficient at traversing reiserfs file systems.
215         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
216         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
217         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
218         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
219         (leaf_optimization_applies): New function.
220         (LCO_hash, LCO_compare): New helper functions.
221         (link_count_optimize_ok): New function.
222         (fts_stat): Initialize new member (if dir).
223         (fts_read): Decrement parent's fts_n_dirs_remaining count if
224         we've just stat'ed a directory.  Skip the stat call when possible.
225         ---
226         Note this AFS-related exchange:
227         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
228         and note find's pioctl call in find/fstype.c.
229         But that is necessary only if you want to enable the
230         optimization for AFS, and for now, I don't.
231
232         fts: move a function definition "up" (no semantic change)
233         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
234         "up" to precede upcoming use of a related function.
235
236 2009-02-11  Jim Meyering  <meyering@redhat.com>
237
238         fts: correct internal computation of nlinks (optimization-related)
239         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
240         whether the current entry is a directory, so don't test it.
241
242 2009-02-10  Bruno Haible  <bruno@clisp.org>
243
244         Tests for module 'uniwbrk/ulc-wordbreaks'.
245         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
246         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
247         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
248
249         Tests for module 'uniwbrk/u32-wordbreaks'.
250         * modules/uniwbrk/u32-wordbreaks-tests: New file.
251         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
252
253         Tests for module 'uniwbrk/u16-wordbreaks'.
254         * modules/uniwbrk/u16-wordbreaks-tests: New file.
255         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
256
257         Tests for module 'uniwbrk/u8-wordbreaks'.
258         * modules/uniwbrk/u8-wordbreaks-tests: New file.
259         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
260
261 2009-02-10  Bruno Haible  <bruno@clisp.org>
262
263         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
264         property.
265         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
266         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
267         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
268
269 2009-02-10  Simon Josefsson  <simon@josefsson.org>
270
271         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
272         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
273
274 2009-02-10  Bruno Haible  <bruno@clisp.org>
275
276         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
277         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
278         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
279         * lib/unilbrk/u8-possible-linebreaks.c: Update.
280         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
281         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
282
283 2009-02-09  Simon Josefsson  <simon@josefsson.org>
284
285         * lib/sockets.h (gl_fd_to_handle): New function.
286
287         * tests/test-sockets.c: Call gl_fd_to_handle.
288
289 2009-02-09  Bruno Haible  <bruno@clisp.org>
290
291         * doc/havelib.texi: Document the conventions on bi-arch systems.
292
293 2009-02-08  Bruno Haible  <bruno@clisp.org>
294
295         Document the AC_LIB_LINKFLAGS macro.
296         * doc/havelib.texi: New file, mostly written on 2005-05-24.
297         * doc/gnulib.texi: Include it.
298
299 2009-02-08  Bruno Haible  <bruno@clisp.org>
300
301         Fix wrong order of sections, compared to TOC.
302         * doc/gnulib.texi: Include relocatable-maint.texi after the
303         "Regular expressions" node, not before.
304
305 2009-02-08  Bruno Haible  <bruno@clisp.org>
306
307         Tests for module 'unicase/totitle'.
308         * modules/unicase/totitle-tests: New file.
309
310         Tests for module 'unicase/tolower'.
311         * modules/unicase/tolower-tests: New file.
312
313         Tests for module 'unicase/toupper'.
314         * modules/unicase/toupper-tests: New file.
315         * tests/unicase/test-mapping-part1.h: New file.
316         * tests/unicase/test-mapping-part2.h: New file.
317
318         New module 'unicase/totitle'.
319         * modules/unicase/totitle: New file.
320         * lib/unicase/totitle.c: New file.
321
322         New module 'unicase/tolower'.
323         * modules/unicase/tolower: New file.
324         * lib/unicase/tolower.c: New file.
325
326         New module 'unicase/toupper'.
327         * modules/unicase/toupper: New file.
328         * lib/unicase/toupper.c: New file.
329         * lib/unicase/simple-mapping.h: New file.
330
331         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
332         (mapping_table): New structure.
333         (output_simple_mapping): New function.
334         (main): Invoke output_simple_mapping_test and output_simple_mapping.
335         * modules/gen-uni-tables (Description): Update.
336         * lib/unicase/toupper.h: New file, automatically generated by
337         gen-uni-tables.
338         * lib/unicase/tolower.h: New file, automatically generated by
339         gen-uni-tables.
340         * lib/unicase/totitle.h: New file, automatically generated by
341         gen-uni-tables.
342         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
343         gen-uni-tables.
344         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
345         gen-uni-tables.
346         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
347         gen-uni-tables.
348
349         New module 'unicase/base'.
350         * modules/unicase/base: New file.
351         * lib/unicase.h: New file.
352
353 2009-02-08  Bruno Haible  <bruno@clisp.org>
354
355         New module 'uniwbrk/ulc-wordbreaks'.
356         * modules/uniwbrk/ulc-wordbreaks: New file.
357         * lib/uniwbrk/ulc-wordbreaks.c: New file.
358
359         New module 'uniwbrk/u32-wordbreaks'.
360         * modules/uniwbrk/u32-wordbreaks: New file.
361         * lib/uniwbrk/u32-wordbreaks.c: New file.
362
363         New module 'uniwbrk/u16-wordbreaks'.
364         * modules/uniwbrk/u16-wordbreaks: New file.
365         * lib/uniwbrk/u16-wordbreaks.c: New file.
366
367         New module 'uniwbrk/u8-wordbreaks'.
368         * modules/uniwbrk/u8-wordbreaks: New file.
369         * lib/uniwbrk/u8-wordbreaks.c: New file.
370         * lib/uniwbrk/u-wordbreaks.h: New file.
371
372         New module 'uniwbrk/table'.
373         * modules/uniwbrk/table: New file.
374         * lib/uniwbrk/wbrktable.h: New file.
375         * lib/uniwbrk/wbrktable.c: New file.
376
377         New module 'uniwbrk/wordbreak-property'.
378         * modules/uniwbrk/wordbreak-property: New file.
379         * lib/uniwbrk/wordbreak-property.c: New file.
380
381         * lib/gen-uni-tables.c (WBP_*): New enum items.
382         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
383         (unicode_org_wbp): New variable.
384         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
385         New functions.
386         (wbp_table): New structure.
387         (output_wbp, output_wbrk_tables): New functions.
388         (main): Accept additional argument. Invoke fill_org_wbp,
389         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
390         output_wbrk_tables.
391         * modules/gen-uni-tables (Description): Update.
392         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
393         gen-uni-tables.
394
395         New module 'uniwbrk/base'.
396         * modules/uniwbrk/base: New file.
397         * lib/uniwbrk.h: New file.
398
399 2009-02-08  Bruno Haible  <bruno@clisp.org>
400
401         Update to Unicode 5.1.0.
402         * lib/gen-uni-tables.c (is_property_alphabetic): Include
403         U+2185..U+2188.
404         (is_property_default_ignorable_code_point): Don't include characters
405         of category Cc or Cs and not-a-characters.
406         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
407         U+0D79, U+109E, U+109F, U+A60C.
408         * lib/unictype/bidi_of.h: Regenerated.
409         * lib/unictype/blocks.h: Regenerated.
410         * lib/unictype/categ_C.h: Regenerated.
411         * lib/unictype/categ_Cf.h: Regenerated.
412         * lib/unictype/categ_Cn.h: Regenerated.
413         * lib/unictype/categ_L.h: Regenerated.
414         * lib/unictype/categ_Ll.h: Regenerated.
415         * lib/unictype/categ_Lm.h: Regenerated.
416         * lib/unictype/categ_Lo.h: Regenerated.
417         * lib/unictype/categ_Lu.h: Regenerated.
418         * lib/unictype/categ_M.h: Regenerated.
419         * lib/unictype/categ_Mc.h: Regenerated.
420         * lib/unictype/categ_Me.h: Regenerated.
421         * lib/unictype/categ_Mn.h: Regenerated.
422         * lib/unictype/categ_N.h: Regenerated.
423         * lib/unictype/categ_Nd.h: Regenerated.
424         * lib/unictype/categ_Nl.h: Regenerated.
425         * lib/unictype/categ_No.h: Regenerated.
426         * lib/unictype/categ_P.h: Regenerated.
427         * lib/unictype/categ_Pd.h: Regenerated.
428         * lib/unictype/categ_Pe.h: Regenerated.
429         * lib/unictype/categ_Pf.h: Regenerated.
430         * lib/unictype/categ_Pi.h: Regenerated.
431         * lib/unictype/categ_Po.h: Regenerated.
432         * lib/unictype/categ_Ps.h: Regenerated.
433         * lib/unictype/categ_S.h: Regenerated.
434         * lib/unictype/categ_Sk.h: Regenerated.
435         * lib/unictype/categ_Sm.h: Regenerated.
436         * lib/unictype/categ_So.h: Regenerated.
437         * lib/unictype/categ_of.h: Regenerated.
438         * lib/unictype/combining.h: Regenerated.
439         * lib/unictype/ctype_alnum.h: Regenerated.
440         * lib/unictype/ctype_alpha.h: Regenerated.
441         * lib/unictype/ctype_graph.h: Regenerated.
442         * lib/unictype/ctype_lower.h: Regenerated.
443         * lib/unictype/ctype_print.h: Regenerated.
444         * lib/unictype/ctype_punct.h: Regenerated.
445         * lib/unictype/ctype_upper.h: Regenerated.
446         * lib/unictype/decdigit.h: Regenerated.
447         * lib/unictype/digit.h: Regenerated.
448         * lib/unictype/mirror.h: Regenerated.
449         * lib/unictype/numeric.h: Regenerated.
450         * lib/unictype/pr_alphabetic.h: Regenerated.
451         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
452         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
453         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
454         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
455         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
456         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
457         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
458         * lib/unictype/pr_combining.h: Regenerated.
459         * lib/unictype/pr_dash.h: Regenerated.
460         * lib/unictype/pr_decimal_digit.h: Regenerated.
461         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
462         * lib/unictype/pr_deprecated.h: Regenerated.
463         * lib/unictype/pr_diacritic.h: Regenerated.
464         * lib/unictype/pr_extender.h: Regenerated.
465         * lib/unictype/pr_format_control.h: Regenerated.
466         * lib/unictype/pr_grapheme_base.h: Regenerated.
467         * lib/unictype/pr_grapheme_extend.h: Regenerated.
468         * lib/unictype/pr_grapheme_link.h: Regenerated.
469         * lib/unictype/pr_id_continue.h: Regenerated.
470         * lib/unictype/pr_id_start.h: Regenerated.
471         * lib/unictype/pr_ideographic.h: Regenerated.
472         * lib/unictype/pr_ignorable_control.h: Regenerated.
473         * lib/unictype/pr_lowercase.h: Regenerated.
474         * lib/unictype/pr_math.h: Regenerated.
475         * lib/unictype/pr_numeric.h: Regenerated.
476         * lib/unictype/pr_other_alphabetic.h: Regenerated.
477         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
478         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
479         * lib/unictype/pr_other_id_continue.h: Regenerated.
480         * lib/unictype/pr_other_lowercase.h: Regenerated.
481         * lib/unictype/pr_other_math.h: Regenerated.
482         * lib/unictype/pr_punctuation.h: Regenerated.
483         * lib/unictype/pr_sentence_terminal.h: Regenerated.
484         * lib/unictype/pr_soft_dotted.h: Regenerated.
485         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
486         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
487         * lib/unictype/pr_unified_ideograph.h: Regenerated.
488         * lib/unictype/pr_uppercase.h: Regenerated.
489         * lib/unictype/pr_xid_continue.h: Regenerated.
490         * lib/unictype/pr_xid_start.h: Regenerated.
491         * lib/unictype/pr_zero_width.h: Regenerated.
492         * lib/unictype/scripts.h: Regenerated.
493         * lib/unictype/scripts_byname.gperf: Regenerated.
494         * lib/unictype/sy_java_ident.h: Regenerated.
495         * lib/unilbrk/lbrkprop1.h: Regenerated.
496         * lib/unilbrk/lbrkprop2.h: Regenerated.
497         * tests/unictype/test-categ_C.c: Regenerated.
498         * tests/unictype/test-categ_Cf.c: Regenerated.
499         * tests/unictype/test-categ_Cn.c: Regenerated.
500         * tests/unictype/test-categ_L.c: Regenerated.
501         * tests/unictype/test-categ_Ll.c: Regenerated.
502         * tests/unictype/test-categ_Lm.c: Regenerated.
503         * tests/unictype/test-categ_Lo.c: Regenerated.
504         * tests/unictype/test-categ_Lu.c: Regenerated.
505         * tests/unictype/test-categ_M.c: Regenerated.
506         * tests/unictype/test-categ_Mc.c: Regenerated.
507         * tests/unictype/test-categ_Me.c: Regenerated.
508         * tests/unictype/test-categ_Mn.c: Regenerated.
509         * tests/unictype/test-categ_N.c: Regenerated.
510         * tests/unictype/test-categ_Nd.c: Regenerated.
511         * tests/unictype/test-categ_Nl.c: Regenerated.
512         * tests/unictype/test-categ_No.c: Regenerated.
513         * tests/unictype/test-categ_P.c: Regenerated.
514         * tests/unictype/test-categ_Pd.c: Regenerated.
515         * tests/unictype/test-categ_Pe.c: Regenerated.
516         * tests/unictype/test-categ_Pf.c: Regenerated.
517         * tests/unictype/test-categ_Pi.c: Regenerated.
518         * tests/unictype/test-categ_Po.c: Regenerated.
519         * tests/unictype/test-categ_Ps.c: Regenerated.
520         * tests/unictype/test-categ_S.c: Regenerated.
521         * tests/unictype/test-categ_Sk.c: Regenerated.
522         * tests/unictype/test-categ_Sm.c: Regenerated.
523         * tests/unictype/test-categ_So.c: Regenerated.
524         * tests/unictype/test-ctype_alnum.c: Regenerated.
525         * tests/unictype/test-ctype_alpha.c: Regenerated.
526         * tests/unictype/test-ctype_graph.c: Regenerated.
527         * tests/unictype/test-ctype_lower.c: Regenerated.
528         * tests/unictype/test-ctype_print.c: Regenerated.
529         * tests/unictype/test-ctype_punct.c: Regenerated.
530         * tests/unictype/test-ctype_upper.c: Regenerated.
531         * tests/unictype/test-decdigit.h: Regenerated.
532         * tests/unictype/test-digit.h: Regenerated.
533         * tests/unictype/test-numeric.h: Regenerated.
534         * tests/unictype/test-pr_alphabetic.c: Regenerated.
535         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
536         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
537         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
538         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
539         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
540         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
541         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
542         * tests/unictype/test-pr_combining.c: Regenerated.
543         * tests/unictype/test-pr_dash.c: Regenerated.
544         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
545         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
546         * tests/unictype/test-pr_deprecated.c: Regenerated.
547         * tests/unictype/test-pr_diacritic.c: Regenerated.
548         * tests/unictype/test-pr_extender.c: Regenerated.
549         * tests/unictype/test-pr_format_control.c: Regenerated.
550         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
551         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
552         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
553         * tests/unictype/test-pr_id_continue.c: Regenerated.
554         * tests/unictype/test-pr_id_start.c: Regenerated.
555         * tests/unictype/test-pr_ideographic.c: Regenerated.
556         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
557         * tests/unictype/test-pr_lowercase.c: Regenerated.
558         * tests/unictype/test-pr_math.c: Regenerated.
559         * tests/unictype/test-pr_numeric.c: Regenerated.
560         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
561         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
562         Regenerated.
563         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
564         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
565         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
566         * tests/unictype/test-pr_other_math.c: Regenerated.
567         * tests/unictype/test-pr_punctuation.c: Regenerated.
568         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
569         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
570         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
571         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
572         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
573         * tests/unictype/test-pr_uppercase.c: Regenerated.
574         * tests/unictype/test-pr_xid_continue.c: Regenerated.
575         * tests/unictype/test-pr_xid_start.c: Regenerated.
576         * tests/unictype/test-pr_zero_width.c: Regenerated.
577
578         Update to Unicode 5.1.0.
579         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
580         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
581         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
582         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
583         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
584         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
585         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
586         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
587         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
588         (nonspacing_table_ind): Update.
589         * tests/uniwidth/test-uc_width2.sh: Update expected result.
590
591         Update to Unicode 5.1.0.
592         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
593         code transform.
594         * lib/uniname/uniname.c (unicode_character_name,
595         unicode_name_character): Add the range 0x1Fxxx to the code transform.
596         * lib/uniname/uninames.h: Regenerated.
597         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
598
599 2009-02-07  Bruno Haible  <bruno@clisp.org>
600
601         Merge gen-ctype and gen-lbrk into a single program.
602         * lib/gen-uni-tables.c: New file, incorporating
603         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
604         Add directory prefixes to the names of the generated files.
605         * lib/unictype/gen-ctype.c: Remove file.
606         * lib/unilbrk/gen-lbrk.c: Remove file.
607         * modules/gen-uni-tables: New file.
608         * modules/unictype/gen-ctype: Remove file.
609         * modules/unilbrk/gen-lbrk: Remove file.
610
611 2009-02-07  Bruno Haible  <bruno@clisp.org>
612
613         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
614
615         New module 'unistr/u32-strcoll'.
616         * modules/unistr/u32-strcoll: New file.
617         * lib/unistr/u32-strcoll.c: New file.
618
619         New module 'unistr/u16-strcoll'.
620         * modules/unistr/u16-strcoll: New file.
621         * lib/unistr/u16-strcoll.c: New file.
622
623         New module 'unistr/u8-strcoll'.
624         * modules/unistr/u8-strcoll: New file.
625         * lib/unistr/u8-strcoll.c: New file.
626         * lib/unistr/u-strcoll.h: New file.
627
628 2009-02-07  Bruno Haible  <bruno@clisp.org>
629
630         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
631         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
632         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
633         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
634         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
635         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
636
637 2009-02-07  Bruno Haible  <bruno@clisp.org>
638
639         Make 64-bit clean.
640         * lib/unictype/gen-ctype.c (output_predicate, output_category,
641         output_combclass, output_bidi_category, output_decimal_digit,
642         output_digit, output_numeric, output_mirror, output_scripts,
643         output_ident_category): Use proper width specifier in format strings.
644
645 2009-02-07  Bruno Haible  <bruno@clisp.org>
646
647         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
648         failure behaviour.
649
650 2009-02-07  Jim Meyering  <meyering@redhat.com>
651
652         regex: avoid compilation failure with upcoming gcc-4.4
653         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
654         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
655         "... error: integer overflow in preprocessor expression".
656
657 2009-02-05  Ben Pfaff  <blp@gnu.org>
658
659         Fix link errors on Windows when close module is used.
660         * modules/close: Add $(LIB_CLOSE) to Link section.
661         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
662         $(LIB_CLOSE) on Windows.
663
664 2009-02-05  Jim Meyering  <meyering@redhat.com>
665
666         still avoid unused-parameter warnings, but do it cleanly
667         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
668         (get_fs_usage): Cast to void instead.
669         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
670         (dev_from_mount_options, read_file_system_list): Cast to void.
671         Prompted by Bruno Haible.
672
673 2009-02-04  Jim Meyering  <meyering@redhat.com>
674
675         fsusage.c: correct copyright year
676         * lib/fsusage.c: Reflect year in which the change is pushed into
677
678         avoid misc. warnings
679         * lib/fsusage.c (UNUSED_PARAM): Define.
680         (get_fs_usage): Mark parameter "disk" as unused.
681         * lib/getugroups.c (getgrent): Use "void" in prototype.
682         * lib/mountlist.c: Mark unused parameters.
683         (read_file_system_list): Declare a local with "const".
684         * lib/nanosleep.c (getnow): Declare static.
685         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
686
687         dirfd: set errno upon failure
688         * lib/dirfd.c: Include <errno.h>.
689         Set errno to ENOTSUP when returning -1.
690         * modules/dirfd (Depends-on): Add errno.
691         Suggested by John Kodis <kodis@comcast.net>.
692
693 2009-02-01  Bruno Haible  <bruno@clisp.org>
694
695         Don't assume sizeof (long) >= sizeof (void *).
696         * lib/memcmp.c: Include stdint.h.
697         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
698         srcp2 to 'const byte *'.
699         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
700         types to uintptr_t.
701         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
702         * modules/memcmp (Depends-on): Add stdint.
703         Reported by Ozkan Sezer <sezeroz@gmail.com>.
704
705 2009-01-30  Eric Blake  <ebb9@byu.net>
706
707         fix more require-before-expand issues
708         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
709         expand, AC_PROG_AWK.
710         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
711
712 2009-01-28  Eric Blake  <ebb9@byu.net>
713
714         version-etc: use consistent URL formatting
715         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
716         Improve formatting.  Use fputs for string without %.
717
718 2009-01-28  Jim Meyering  <meyering@redhat.com>
719
720         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
721         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
722         "underquoted definition of NAME" from autoconf-2.59.
723
724 2009-01-28  Bruno Haible  <bruno@clisp.org>
725
726         * doc/gnulib.texi: Add "Obsolete modules" to index.
727
728 2009-01-28  Jim Meyering  <meyering@redhat.com>
729
730         useless-if-before-free: recognize more variants
731         * build-aux/useless-if-before-free: Also recognize e.g.,
732         if (NULL != p) free (p);
733
734 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
735
736         test-getaddrinfo: skip (don't fail) this test when there's no network
737         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
738         on the presumption that it means you lack network access.
739
740 2009-01-26  Jim Meyering  <meyering@redhat.com>
741
742         fflush: avoid warnings on modern systems
743         * lib/fflush.c (rpl_fflush): Move declarations of locals,
744         pos and result, into scopes where they're used.
745
746 2009-01-26  Eric Blake  <ebb9@byu.net>
747
748         Silence warning reintroduced by recent extensions patch.
749         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
750         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
751         autoconf.
752
753         Backport improved autoconf semantics of AC_DEFUN_ONCE.
754         * m4/00gnulib.m4: New file.
755         * gnulib-tool (func_get_filelist): Always use it.
756         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
757         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
758
759 2009-01-25  Bruno Haible  <bruno@clisp.org>
760
761         Make test-quotearg work on MacOS X and AIX.
762         * tests/test-quotearg.sh: New file.
763         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
764         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
765         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
766         include <libintl.h>.
767         (fake_locale): Remove variable.
768         (gettext, dgettext, dcgettext): Remove functions.
769         (main): Instead of setting a fake locale, set a real locale. Call
770         textdomain and bindtextdomain.
771         * modules/quotearg-tests (Files): Add the new files.
772         (Depends-on): Add gettext, setenv, unsetenv.
773         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
774         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
775         Augment TESTS_ENVIRONMENT.
776
777 2009-01-25  Bruno Haible  <bruno@clisp.org>
778
779         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
780         fr_FR.ISO8859-1 locale on MacOS X.
781         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
782         ja_JP.eucJP locale on MacOS X.
783         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
784         zh_CN.GB18030 locale on MacOS X.
785
786 2009-01-25  Bruno Haible  <bruno@clisp.org>
787
788         Avoid link errors on MacOS X 10.3.
789         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
790         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
791
792 2009-01-25  Bruno Haible  <bruno@clisp.org>
793
794         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
795         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
796         * modules/pipe (Files): Remove m4/posix_spawn.m4.
797         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
798         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
799         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
800         posix_spawnattr_init, posix_spawnattr_setsigmask,
801         posix_spawnattr_setflags, posix_spawnattr_destroy.
802
803         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
804         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
805         * modules/execute (Files): Remove m4/posix_spawn.m4.
806         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
807         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
808         posix_spawnattr_init, posix_spawnattr_setsigmask,
809         posix_spawnattr_setflags, posix_spawnattr_destroy.
810
811 2009-01-25  Bruno Haible  <bruno@clisp.org>
812
813         * lib/glthread/threadlib.c: Include <stdlib.h>.
814
815 2009-01-25  Bruno Haible  <bruno@clisp.org>
816
817         * lib/glthread/threadlib.c (dummy): New declaration.
818
819 2009-01-25  Bruno Haible  <bruno@clisp.org>
820
821         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
822         multibyte characters also for the GB18030 encoding. Don't crash when
823         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
824
825 2009-01-25  Bruno Haible  <bruno@clisp.org>
826
827         Avoid redefining 'struct random_data' on OSF/1 5.1.
828         * lib/stdlib.in.h: Include <random.h> if it exists.
829         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
830         HAVE_RANDOM_H. Include <random.h> when testing whether
831         'struct random_data' exists.
832         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
833
834 2009-01-25  Bruno Haible  <bruno@clisp.org>
835
836         Don't install charset.alias on MacOS X >= 10.3.
837         * lib/localcharset.c (DARWIN7): New macro.
838         (get_charset_aliases): Hardcode the result for Darwin7.
839         * modules/localcharset (install-exec-local): Don't install
840         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
841
842 2009-01-25  Bruno Haible  <bruno@clisp.org>
843
844         Don't install charset.alias on mingw and Cygwin.
845         * modules/localcharset (install-exec-local): Don't install
846         charset.alias on mingw and Cygwin, if the file does not yet exist.
847         The result for these platforms is hardcoded in localcharset.c.
848
849 2009-01-25  Bruno Haible  <bruno@clisp.org>
850
851         Make it possible again to use AC_GNU_SOURCE together with gnulib.
852         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
853         before requiring AC_USE_SYSTEM_EXTENSIONS.
854
855 2009-01-25  Jim Meyering  <meyering@redhat.com>
856
857         c-strtod: avoid warnings
858         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
859         "assignment discards qualifiers from pointer target type" warnings.
860
861 2009-01-24  Bruno Haible  <bruno@clisp.org>
862
863         Add support for non-UTF-8 locales on MacOS X.
864         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
865         canonical encodings. For Darwin 7 and newer, don't map traditional
866         encodings to UTF-8.
867         Reported by Vincent Lefevre <vincent@vinc17.org>
868         at <http://savannah.gnu.org/bugs/?25235>.
869
870 2009-01-24  Bruno Haible  <bruno@clisp.org>
871
872         * doc/gnulib.texi (Obsolete modules): New section.
873         Reported by Mike Frysinger <vapier@gentoo.org>.
874
875 2009-01-24  Bruno Haible  <bruno@clisp.org>
876
877         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
878         (%.dvi): New rule.
879
880 2009-01-24  Bruno Haible  <bruno@clisp.org>
881
882         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
883         Reported by Eric Blake.
884
885 2009-01-24  Bruno Haible  <bruno@clisp.org>
886
887         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
888         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
889         Reported by Gary V. Vaughan <gary@gnu.org>.
890
891 2009-01-24  Bruno Haible  <bruno@clisp.org>
892
893         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
894
895 2009-01-23  Bruno Haible  <bruno@clisp.org>
896
897         Make c-strtod, c-strtold usable in libraries.
898         * lib/c-strtod.c: Include string.h instead of xalloc.h.
899         (C_STRTOD): Call strdup instead of xstrdup.
900         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
901         * modules/c-strtold (Depends-on): Likewise.
902         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
903         * NEWS: Mention the change.
904         Reported by Michael Gold <mgold@ncf.ca>.
905
906 2009-01-23  Jim Meyering  <meyering@redhat.com>
907
908         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
909         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
910         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
911
912 2009-01-23  Simon Josefsson  <simon@josefsson.org>
913
914         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
915         GNU CoreUtils.
916         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
917         * modules/version-etc (Description): Update.
918
919 2009-01-22  Bruno Haible  <bruno@clisp.org>
920
921         Cache the C locale object.
922         * lib/c-strtod.c (c_locale_cache): New variable.
923         (c_locale): New function.
924         (C_STRTOD): Use it, and don't call freelocale.
925         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
926         Suggested by Paolo Bonzini.
927
928 2009-01-21  Bruno Haible  <bruno@clisp.org>
929
930         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
931         conditions other than overflow.
932
933 2009-01-21  Bruno Haible  <bruno@clisp.org>
934
935         * lib/c-strtod.c: Include errno.h.
936         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
937         value from STRTOD_L and STRTOD.
938
939 2009-01-21  Bruno Haible  <bruno@clisp.org>
940         and Jim Meyering  <meyering@redhat.com>
941
942         nanosleep: skip configure test (fail it) for apple universal builds
943         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
944         universal builds, assume that nanosleep does not work.
945         * modules/nanosleep (Depends-on): Add multiarch.
946
947         mktime: skip configure test (fail it) for apple universal builds
948         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
949         universal builds, assume that mktime does not work.
950         * modules/mktime (Depends-on): Add multiarch.
951
952 2009-01-21  Eric Blake  <ebb9@byu.net>
953
954         multiarch: avoid expand-before-require warning
955         * modules/multiarch (configure.ac): Require, rather than expand,
956         gl_MULTIARCH.
957         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
958         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
959         enforce that all clients require it.  Partial reversion of
960         2008-12-29 patch.
961
962         error: avoid expand-before-require warning
963         * modules/errno (configure.ac): Require, rather than expand,
964         gl_HEADER_ERRNO_H.
965         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
966         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
967         enforce that all clients require it.
968
969         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
970         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
971         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
972         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
973
974 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
975
976         Revert:
977         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
978
979         regex: do not depend on obsolete modules.
980         * modules/regex: Remove memcmp and memmove.
981
982 2009-01-20  Bruno Haible  <bruno@clisp.org>
983
984         Make the 'link' module link on Windows NT 4.
985         * lib/link.c (_WIN32_WINNT): Don't define.
986         (CreateHardLinkFuncType): New type.
987         (CreateHardLinkFunc, initialized): New variables.
988         (initialize): New function.
989         (link): Invoke CreateHardLink indirectly through the function pointer.
990
991 2009-01-20  Bruno Haible  <bruno@clisp.org>
992
993         Fix compilation failure on mingw.
994         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
995
996 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
997
998         * doc/c-strtod.texi: Mention a couple of restrictions.
999
1000 2009-01-20  Jim Meyering  <meyering@redhat.com>
1001
1002         gettimeofday: move more declarations out of functions
1003         * lib/gettimeofday.c: Move extern declarations of tzset and
1004         gmtime out of containing functions.  Prompted by Bruno Haible.
1005
1006 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
1007
1008         regex: do not depend on obsolete modules.
1009         * modules/regex: Remove memcmp and memmove.
1010
1011 2009-01-19  Bruno Haible  <bruno@clisp.org>
1012
1013         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1014         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
1015         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1016         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
1017         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
1018
1019 2009-01-19  Bruno Haible  <bruno@clisp.org>
1020
1021         * tests/test-link.c: Include <errno.h>.
1022         (main): Exit with code 77 when a hard link cannot be created due to
1023         the file system.
1024         * tests/test-link.sh: Skip test when a hard link cannot be created due
1025         to the file system.
1026         Suggested by Eric Blake.
1027
1028 2009-01-19  Martin Lambers  <marlam@marlam.de>
1029
1030         * modules/link-tests: New file.
1031         * tests/test-link.sh: New file.
1032         * tests/test-link.c: New file.
1033
1034 2009-01-19  Eric Blake  <ebb9@byu.net>
1035
1036         doc: mention another function added in cygwin 1.7.0
1037         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
1038         Another new function in cygwin 1.7.
1039
1040 2009-01-19  Bruno Haible  <bruno@clisp.org>
1041
1042         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
1043         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
1044         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
1045         gl_BIGENDIAN, not AC_C_BIGENDIAN.
1046         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
1047         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
1048         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
1049         * m4/md4.m4 (gl_MD4): Likewise.
1050         * m4/md5.m4 (gl_MD5): Likewise.
1051         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
1052         * m4/sha1.m4 (gl_SHA1): Likewise.
1053         * m4/sha256.m4 (gl_SHA256): Likewise.
1054         * m4/sha512.m4 (gl_SHA512): Likewise.
1055
1056 2009-01-19  Bruno Haible  <bruno@clisp.org>
1057
1058         * modules/uniname/uniname-tests (Depends-on): Add progname.
1059         * tests/uniname/test-uninames.c: Include progname.h.
1060         (main): Call set_program_name.
1061
1062         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
1063         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
1064         (main): Call set_program_name.
1065
1066         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
1067         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
1068         (main): Call set_program_name.
1069
1070         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
1071         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
1072         (main): Call set_program_name.
1073
1074         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
1075         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
1076         (main): Call set_program_name.
1077
1078         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
1079         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
1080         (main): Call set_program_name.
1081
1082         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
1083         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
1084         (main): Call set_program_name.
1085
1086         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
1087         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
1088         (main): Call set_program_name.
1089
1090         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
1091         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
1092         (main): Call set_program_name.
1093
1094 2009-01-19  Eric Blake  <ebb9@byu.net>
1095
1096         test-unistd: test previous patch
1097         * tests/test-unistd.c: Test *_FILENO macros.
1098
1099         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
1100         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1101         Guarantee a definition.
1102         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
1103         * modules/unistd-safer (Depends-on): Add dependency on unistd.
1104         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
1105         * lib/dup-safer.c (STDERR_FILENO): Likewise.
1106         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1107         Likewise.
1108         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
1109         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
1110         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
1111         Likewise.
1112         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
1113         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
1114         (STDERR_FILENO): Likewise.
1115         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
1116         (STDERR_FILENO): Likewise.
1117         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
1118         (STDERR_FILENO): Likewise.
1119         Reported by Elbert Pol.
1120
1121 2009-01-19  Eric Blake  <ebb9@byu.net>
1122
1123         doc: mention more functions added in cygwin 1.7.0
1124         * doc/posix-functions/abort.texi (abort): Update wording related
1125         to cygwin.
1126         * doc/posix-functions/daylight.texi (daylight): Likewise.
1127         * doc/posix-functions/optarg.texi (optarg): Likewise.
1128         * doc/posix-functions/optarg.texi (opterr): Likewise.
1129         * doc/posix-functions/optarg.texi (optind): Likewise.
1130         * doc/posix-functions/optarg.texi (optopt): Likewise.
1131         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
1132         worked in 1.5.x, and was withdrawn in 1.7.
1133         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
1134         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
1135         cygwin versions.
1136         * doc/posix-functions/perror.texi (perror): Likewise.
1137         * doc/posix-functions/printf.texi (printf): Likewise.
1138         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
1139         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
1140         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
1141         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
1142         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
1143         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
1144         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
1145         Likewise.
1146         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
1147         Likewise.
1148         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
1149         this function.
1150         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
1151         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
1152         Likewise.
1153         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
1154         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
1155         * doc/posix-functions/confstr.texi (confstr): Likewise.
1156         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
1157         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
1158         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
1159         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
1160         * doc/posix-functions/fputws.texi (fputws): Likewise.
1161         * doc/posix-functions/fwide.texi (fwide): Likewise.
1162         * doc/posix-functions/getwc.texi (getwc): Likewise.
1163         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
1164         * doc/posix-functions/putwc.texi (putwc): Likewise.
1165         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
1166         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
1167         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
1168         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
1169         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
1170         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
1171         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
1172         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
1173         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
1174         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
1175         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
1176
1177 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1178
1179         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
1180         * lib/ioctl.c: Include <sys/ioctl.h>.
1181
1182 2009-01-19  Simon Josefsson  <simon@josefsson.org>
1183
1184         * modules/getdate-tests (Depends-on): Add progname.
1185         * tests/test-getdate.c: Use progname module, to avoid link errors
1186         on non-glibc systems.
1187
1188 2009-01-18  Simon Josefsson  <simon@josefsson.org>
1189
1190         * modules/filenamecat-tests (Depends-on): Add progname.
1191         * modules/fstrcmp-tests (Depends-on): Likewise.
1192
1193         * tests/test-filenamecat.c: Use progname module, to avoid link
1194         errors on non-glibc systems.
1195         * tests/test-fstrcmp.c: Likewise.
1196
1197 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
1198
1199         gettimeofday: avoid warning: nested extern declaration of 'localtime'
1200         * lib/gettimeofday.c: Move extern declaration out of function.
1201
1202 2009-01-18  Bruno Haible  <bruno@clisp.org>
1203
1204         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
1205         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
1206         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
1207
1208 2009-01-18  Bruno Haible  <bruno@clisp.org>
1209
1210         * lib/strftime.c (MEMPCPY): Remove unused macro.
1211         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
1212
1213 2009-01-18  Martin Lambers  <marlam@marlam.de>
1214
1215         New module 'link'.
1216         * lib/unistd.in.h (link): New declaration.
1217         * lib/link.c: New file.
1218         * m4/link.m4: New file.
1219         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
1220         HAVE_LINK.
1221         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
1222         * modules/link: New file.
1223         * doc/posix-functions/link.texi: Mention the new module.
1224
1225 2009-01-18  Bruno Haible  <bruno@clisp.org>
1226
1227         * tests/test-avltree_list.c (main): Call set_program_name.
1228         * tests/test-avltree_oset.c (main): Likewise.
1229         * tests/test-obstack-printf.c: Include progname.h.
1230         (main): Call set_program_name.
1231         * tests/test-quotearg.c: Include progname.h.
1232         (main): Call set_program_name.
1233         * tests/test-xmemdup0.c: Include progname.h.
1234         (main): Call set_program_name.
1235
1236 2009-01-18  Bruno Haible  <bruno@clisp.org>
1237
1238         New module 'alphasort'.
1239         * lib/dirent.in.h (alphasort): New declaration.
1240         * lib/alphasort.c: New file, from glibc with modifications.
1241         * m4/alphasort.m4: New file.
1242         * modules/alphasort: New file.
1243         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
1244         HAVE_ALPHASORT.
1245         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
1246         HAVE_ALPHASORT.
1247         * doc/posix-functions/alphasort.texi: Mention the new module and the
1248         portability problems.
1249
1250 2009-01-18  Bruno Haible  <bruno@clisp.org>
1251
1252         New module 'scandir'.
1253         * lib/dirent.in.h (scandir): New declaration.
1254         * lib/scandir.c: New file, from glibc with modifications.
1255         * m4/scandir.m4: New file.
1256         * modules/scandir: New file.
1257         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
1258         HAVE_SCANDIR.
1259         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
1260         HAVE_SCANDIR.
1261         * doc/posix-functions/scandir.texi: Mention the new module and the
1262         portability problems.
1263
1264 2009-01-17  Bruno Haible  <bruno@clisp.org>
1265
1266         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
1267         Update documentation.
1268         (func_remove_suffix): Escape all dots in the suffix. Update
1269         documentation.
1270         (func_filter_filelist): Update documentation.
1271         Reported by Ralf Wildenhues.
1272
1273 2009-01-17  Bruno Haible  <bruno@clisp.org>
1274
1275         * modules/dprintf-posix-tests: New file.
1276         * tests/test-dprintf-posix.sh: New file.
1277         * tests/test-dprintf-posix.c: New file.
1278
1279         New modules 'dprintf', 'dprintf-posix'.
1280         * lib/stdio.in.h (dprintf): New declaration.
1281         * lib/dprintf.c: New file.
1282         * m4/dprintf.m4: New file.
1283         * m4/dprintf-posix.m4: New file.
1284         * modules/dprintf: New file.
1285         * modules/dprintf-posix: New file.
1286         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
1287         HAVE_DPRINTF, REPLACE_DPRINTF.
1288         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
1289         HAVE_DPRINTF, REPLACE_DPRINTF.
1290         * doc/posix-functions/dprintf.texi: Mention the new modules.
1291
1292 2009-01-17  Bruno Haible  <bruno@clisp.org>
1293
1294         * modules/vdprintf-posix-tests: New file.
1295         * tests/test-vdprintf-posix.sh: New file.
1296         * tests/test-vdprintf-posix.c: New file.
1297
1298         New modules 'vdprintf', 'vdprintf-posix'.
1299         * lib/stdio.in.h (vdprintf): New declaration.
1300         * lib/vdprintf.c: New file.
1301         * m4/vdprintf.m4: New file.
1302         * m4/vdprintf-posix.m4: New file.
1303         * modules/vdprintf: New file.
1304         * modules/vdprintf-posix: New file.
1305         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
1306         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1307         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
1308         HAVE_VDPRINTF, REPLACE_VDPRINTF.
1309         * doc/posix-functions/vdprintf.texi: Mention the new modules.
1310
1311 2009-01-17  Bruno Haible  <bruno@clisp.org>
1312
1313         Fix replacement of fopen on mingw.
1314         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
1315         mingw.
1316
1317 2009-01-17  Bruno Haible  <bruno@clisp.org>
1318
1319         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
1320         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
1321
1322 2009-01-17  Bruno Haible  <bruno@clisp.org>
1323
1324         Avoid test-fflush2.sh failure on mingw.
1325         * tests/test-fflush2.c: Include binary-io.h.
1326         (main): Put standard input into binary mode.
1327         * modules/fflush-tests (Depends-on): Add binary-io.
1328
1329 2009-01-17  Bruno Haible  <bruno@clisp.org>
1330
1331         * lib/wchar.in.h: In another particular situation, include only the
1332         system's <wchar.h> file.
1333         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
1334         Reported by Albert Chin-A-Young <china@thewrittenword.com>
1335         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
1336
1337 2009-01-17  Bruno Haible  <bruno@clisp.org>
1338
1339         Support for stripping executables in --enable-relocatable.
1340         * build-aux/install-reloc: Expect one more argument, or an environment
1341         variable RELOC_STRIP_PROG. If set, strip the destination program and
1342         its wrapper.
1343         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
1344         RELOC_STRIP_PROG.
1345         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
1346         to set RELOCATABLE_STRIP.
1347         * NEWS: Mention the new Makefile requirement.
1348
1349 2009-01-17  Bruno Haible  <bruno@clisp.org>
1350
1351         * build-aux/install-reloc: Remove debugging information left over by
1352         C compiler on MacOS X.
1353
1354 2009-01-17  Bruno Haible  <bruno@clisp.org>
1355
1356         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
1357         * lib/progreloc.c (find_executable): Fix type of pointer passed to
1358         _NSGetExecutablePath.
1359
1360 2009-01-16  Jim Meyering  <meyering@redhat.com>
1361
1362         strerror: avoid warnings about discarding "const"
1363         * lib/strerror.c (rpl_strerror): Instead of returning a const
1364         string from each and every "case", use a variable, and add a single
1365         cast after the switch.
1366
1367 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
1368
1369         * lib/arpa_inet.in.h: Add extern "C" block for C++.
1370
1371 2009-01-16  Bruno Haible  <bruno@clisp.org>
1372
1373         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
1374         array initializer syntax that also works in C++ mode.
1375         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1376
1377 2009-01-16  Jim Meyering  <meyering@redhat.com>
1378
1379         poll: suppress a warning
1380         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
1381         to ignore "...unsigned expression < 0 is always false" warnings.
1382
1383 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
1384
1385         poll: remove declarations of unused variables
1386         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
1387         sockbuf and optlen.
1388
1389 2009-01-15  Bruno Haible  <bruno@clisp.org>
1390
1391         Make fflush-after-ungetc POSIX compliant on BSD systems.
1392         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
1393         (clear_ungetc_buffer): Implement also for other systems.
1394         (rpl_fflush): On glibc systems, invoke
1395         clear_ungetc_buffer_preserving_position. Otherwise, invoke
1396         clear_ungetc_buffer after fetching the stream's position, not before.
1397
1398 2009-01-15  Bruno Haible  <bruno@clisp.org>
1399
1400         Make fflush-after-ungetc POSIX compliant on glibc systems.
1401         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
1402         after ungetc.
1403         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
1404         (rpl_fflush): On glibc systems, simply call the system's fflush
1405         function after clearing the ungetc buffer.
1406         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
1407         Instead, lseek only to the end of file, then use the system's fseeko
1408         for the rest. On glibc systems, reset the EOF indicator bit.
1409
1410 2009-01-15  Jim Meyering  <meyering@redhat.com>
1411
1412         openmp.m4: revert quote-adding change, for portability to older autoconf
1413         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
1414         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
1415         Simon Josefsson noticed the problem when using autoconf-2.61.
1416
1417 2009-01-15  Bruno Haible  <bruno@clisp.org>
1418
1419         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
1420         * tests/test-fflush2.c (ASSERT): Always fail.
1421         (main): Add two tests for fflush() after ungetc(), taking into account
1422         the Austin Group's clarification.
1423         Suggested by Eric Blake.
1424
1425 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
1426
1427         mktime.m4: remove K&R-style function prototypes
1428         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
1429         for the Sun C++ compiler.
1430
1431 2009-01-14  Bruno Haible  <bruno@clisp.org>
1432
1433         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
1434         while including <wchar.h>.
1435         * lib/wchar.in.h: In two particular situations on HP-UX, include only
1436         the system's <wchar.h> file.
1437         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1438
1439 2009-01-14  Bruno Haible  <bruno@clisp.org>
1440
1441         * m4/csharp.m4: Don't mention gettext on the serial number line.
1442         * m4/csharpexec.m4: Likewise.
1443         * m4/eaccess.m4: Likewise.
1444         * m4/javaexec.m4: Likewise.
1445         * m4/sig_atomic_t.m4: Likewise.
1446         * m4/tmpdir.m4: Likewise.
1447         * m4/intldir.m4: Bump gettext version.
1448         * m4/lib-ld.m4: Likewise.
1449
1450 2009-01-14  Bruno Haible  <bruno@clisp.org>
1451
1452         * lib/progname.c (set_program_name): Add more comments.
1453         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
1454
1455 2009-01-14  Simon Josefsson  <simon@josefsson.org>
1456
1457         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
1458         were sys/stat.h does not define it.
1459
1460 2009-01-14  Jim Meyering  <meyering@redhat.com>
1461
1462         many *.m4 files: improve m4 quoting
1463         99% of this change was performed by running the following commands:
1464         git ls-files | grep '\.m4$' | xargs perl -pi \
1465           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
1466           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1467           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
1468           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
1469         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
1470         The remainder were to add Copyright dates, increment serial numbers,
1471         undo some changes in comments, exclude m4/intl.m4, and add quotes
1472         around the "1" in ",1" where the unusual spacing prohibited the
1473         above regexps from doing the job.  For more details, see
1474         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
1475         * m4/acl.m4: Modified.
1476         * m4/afs.m4: Likewise.
1477         * m4/alloca.m4: Likewise.
1478         * m4/argp.m4: Likewise.
1479         * m4/argz.m4: Likewise.
1480         * m4/atexit.m4: Likewise.
1481         * m4/bison-i18n.m4: Likewise.
1482         * m4/bison.m4: Likewise.
1483         * m4/byteswap.m4: Likewise.
1484         * m4/c-stack.m4: Likewise.
1485         * m4/c-strtod.m4: Likewise.
1486         * m4/calloc.m4: Likewise.
1487         * m4/canonicalize-lgpl.m4: Likewise.
1488         * m4/chown.m4: Likewise.
1489         * m4/clock_time.m4: Likewise.
1490         * m4/codeset.m4: Likewise.
1491         * m4/copy-file.m4: Likewise.
1492         * m4/csharp.m4: Likewise.
1493         * m4/csharpcomp.m4: Likewise.
1494         * m4/csharpexec.m4: Likewise.
1495         * m4/d-ino.m4: Likewise.
1496         * m4/d-type.m4: Likewise.
1497         * m4/dirfd.m4: Likewise.
1498         * m4/double-slash-root.m4: Likewise.
1499         * m4/eaccess.m4: Likewise.
1500         * m4/eealloc.m4: Likewise.
1501         * m4/environ.m4: Likewise.
1502         * m4/errno_h.m4: Likewise.
1503         * m4/euidaccess.m4: Likewise.
1504         * m4/execute.m4: Likewise.
1505         * m4/fatal-signal.m4: Likewise.
1506         * m4/fchdir.m4: Likewise.
1507         * m4/fcntl_h.m4: Likewise.
1508         * m4/fileblocks.m4: Likewise.
1509         * m4/filenamecat.m4: Likewise.
1510         * m4/findprog.m4: Likewise.
1511         * m4/flexmember.m4: Likewise.
1512         * m4/fnmatch.m4: Likewise.
1513         * m4/fopen.m4: Likewise.
1514         * m4/fpending.m4: Likewise.
1515         * m4/fprintf-posix.m4: Likewise.
1516         * m4/free.m4: Likewise.
1517         * m4/frexp.m4: Likewise.
1518         * m4/frexpl.m4: Likewise.
1519         * m4/fsusage.m4: Likewise.
1520         * m4/ftruncate.m4: Likewise.
1521         * m4/gc-camellia.m4: Likewise.
1522         * m4/gc-random.m4: Likewise.
1523         * m4/gc.m4: Likewise.
1524         * m4/getaddrinfo.m4: Likewise.
1525         * m4/getcwd-abort-bug.m4: Likewise.
1526         * m4/getcwd-path-max.m4: Likewise.
1527         * m4/getdate.m4: Likewise.
1528         * m4/getdomainname.m4: Likewise.
1529         * m4/getgroups.m4: Likewise.
1530         * m4/gethostname.m4: Likewise.
1531         * m4/gethrxtime.m4: Likewise.
1532         * m4/getline.m4: Likewise.
1533         * m4/getloadavg.m4: Likewise.
1534         * m4/getndelim2.m4: Likewise.
1535         * m4/getpass.m4: Likewise.
1536         * m4/gettext.m4: Likewise.
1537         * m4/gettime.m4: Likewise.
1538         * m4/gettimeofday.m4: Likewise.
1539         * m4/gnulib-common.m4: Likewise.
1540         * m4/group-member.m4: Likewise.
1541         * m4/host-os.m4: Likewise.
1542         * m4/iconv.m4: Likewise.
1543         * m4/iconv_open.m4: Likewise.
1544         * m4/inet_ntop.m4: Likewise.
1545         * m4/inet_pton.m4: Likewise.
1546         * m4/inline.m4: Likewise.
1547         * m4/intldir.m4: Likewise.
1548         * m4/intlmacosx.m4: Likewise.
1549         * m4/intmax.m4: Likewise.
1550         * m4/intmax_t.m4: Likewise.
1551         * m4/inttypes.m4: Likewise.
1552         * m4/inttypes_h.m4: Likewise.
1553         * m4/inttypes-pri.m4: Likewise.
1554         * m4/isapipe.m4: Likewise.
1555         * m4/isnand.m4: Likewise.
1556         * m4/isnanf.m4: Likewise.
1557         * m4/isnanl.m4: Likewise.
1558         * m4/javacomp.m4: Likewise.
1559         * m4/javaexec.m4: Likewise.
1560         * m4/jm-winsz1.m4: Likewise.
1561         * m4/jm-winsz2.m4: Likewise.
1562         * m4/lchown.m4: Likewise.
1563         * m4/lcmessage.m4: Likewise.
1564         * m4/ldexpl.m4: Likewise.
1565         * m4/lib-ld.m4: Likewise.
1566         * m4/lib-link.m4: Likewise.
1567         * m4/libsigsegv.m4: Likewise.
1568         * m4/link-follow.m4: Likewise.
1569         * m4/localcharset.m4: Likewise.
1570         * m4/locale-fr.m4: Likewise.
1571         * m4/locale-ja.m4: Likewise.
1572         * m4/locale-tr.m4: Likewise.
1573         * m4/locale-zh.m4: Likewise.
1574         * m4/lock.m4: Likewise.
1575         * m4/longlong.m4: Likewise.
1576         * m4/ls-mntd-fs.m4: Likewise.
1577         * m4/lstat.m4: Likewise.
1578         * m4/malloc.m4: Likewise.
1579         * m4/mathl.m4: Likewise.
1580         * m4/mbrtowc.m4: Likewise.
1581         * m4/mbstate_t.m4: Likewise.
1582         * m4/mbswidth.m4: Likewise.
1583         * m4/memchr.m4: Likewise.
1584         * m4/memcmp.m4: Likewise.
1585         * m4/memcpy.m4: Likewise.
1586         * m4/memmem.m4: Likewise.
1587         * m4/memmove.m4: Likewise.
1588         * m4/mempcpy.m4: Likewise.
1589         * m4/memrchr.m4: Likewise.
1590         * m4/memset.m4: Likewise.
1591         * m4/minmax.m4: Likewise.
1592         * m4/mkdir-slash.m4: Likewise.
1593         * m4/mkdtemp.m4: Likewise.
1594         * m4/mktime.m4: Likewise.
1595         * m4/mmap-anon.m4: Likewise.
1596         * m4/mountlist.m4: Likewise.
1597         * m4/nanosleep.m4: Likewise.
1598         * m4/nls.m4: Likewise.
1599         * m4/nocrash.m4: Likewise.
1600         * m4/open.m4: Likewise.
1601         * m4/openat.m4: Likewise.
1602         * m4/openmp.m4: Likewise.
1603         * m4/pathmax.m4: Likewise.
1604         * m4/perl.m4: Likewise.
1605         * m4/physmem.m4: Likewise.
1606         * m4/pipe.m4: Likewise.
1607         * m4/po.m4: Likewise.
1608         * m4/poll.m4: Likewise.
1609         * m4/posixtm.m4: Likewise.
1610         * m4/posixver.m4: Likewise.
1611         * m4/printf-frexp.m4: Likewise.
1612         * m4/printf-frexpl.m4: Likewise.
1613         * m4/printf-posix.m4: Likewise.
1614         * m4/printf-posix-rpl.m4: Likewise.
1615         * m4/printf.m4: Likewise.
1616         * m4/progtest.m4: Likewise.
1617         * m4/putenv.m4: Likewise.
1618         * m4/readline.m4: Likewise.
1619         * m4/readlink.m4: Likewise.
1620         * m4/readutmp.m4: Likewise.
1621         * m4/realloc.m4: Likewise.
1622         * m4/regex.m4: Likewise.
1623         * m4/relocatable.m4: Likewise.
1624         * m4/relocatable-lib.m4: Likewise.
1625         * m4/rename-dest-slash.m4: Likewise.
1626         * m4/rename.m4: Likewise.
1627         * m4/rmdir-errno.m4: Likewise.
1628         * m4/rmdir.m4: Likewise.
1629         * m4/roundf.m4: Likewise.
1630         * m4/roundl.m4: Likewise.
1631         * m4/rpmatch.m4: Likewise.
1632         * m4/save-cwd.m4: Likewise.
1633         * m4/selinux-selinux-h.m4: Likewise.
1634         * m4/setenv.m4: Likewise.
1635         * m4/settime.m4: Likewise.
1636         * m4/sig2str.m4: Likewise.
1637         * m4/sig_atomic_t.m4: Likewise.
1638         * m4/signalblocking.m4: Likewise.
1639         * m4/signbit.m4: Likewise.
1640         * m4/sigpipe.m4: Likewise.
1641         * m4/sockets.m4: Likewise.
1642         * m4/sockpfaf.m4: Likewise.
1643         * m4/st_dm_mode.m4: Likewise.
1644         * m4/stat-time.m4: Likewise.
1645         * m4/stdbool.m4: Likewise.
1646         * m4/stdint.m4: Likewise.
1647         * m4/stdint_h.m4: Likewise.
1648         * m4/stpcpy.m4: Likewise.
1649         * m4/stpncpy.m4: Likewise.
1650         * m4/strcase.m4: Likewise.
1651         * m4/strchrnul.m4: Likewise.
1652         * m4/strcspn.m4: Likewise.
1653         * m4/strdup.m4: Likewise.
1654         * m4/strftime.m4: Likewise.
1655         * m4/strndup.m4: Likewise.
1656         * m4/strnlen.m4: Likewise.
1657         * m4/strpbrk.m4: Likewise.
1658         * m4/strptime.m4: Likewise.
1659         * m4/strsep.m4: Likewise.
1660         * m4/strtod.m4: Likewise.
1661         * m4/strtoimax.m4: Likewise.
1662         * m4/strtok_r.m4: Likewise.
1663         * m4/strtol.m4: Likewise.
1664         * m4/strtoll.m4: Likewise.
1665         * m4/strtoul.m4: Likewise.
1666         * m4/strtoull.m4: Likewise.
1667         * m4/strtoumax.m4: Likewise.
1668         * m4/strverscmp.m4: Likewise.
1669         * m4/threadlib.m4: Likewise.
1670         * m4/timegm.m4: Likewise.
1671         * m4/tm_gmtoff.m4: Likewise.
1672         * m4/tmpdir.m4: Likewise.
1673         * m4/tmpfile.m4: Likewise.
1674         * m4/tzset.m4: Likewise.
1675         * m4/uintmax_t.m4: Likewise.
1676         * m4/unlinkdir.m4: Likewise.
1677         * m4/unlocked-io.m4: Likewise.
1678         * m4/uptime.m4: Likewise.
1679         * m4/userspec.m4: Likewise.
1680         * m4/utimbuf.m4: Likewise.
1681         * m4/utime.m4: Likewise.
1682         * m4/utimes-null.m4: Likewise.
1683         * m4/utimes.m4: Likewise.
1684         * m4/vararrays.m4: Likewise.
1685         * m4/vasnprintf.m4: Likewise.
1686         * m4/vfprintf-posix.m4: Likewise.
1687         * m4/vprintf-posix.m4: Likewise.
1688         * m4/wait-process.m4: Likewise.
1689         * m4/wchar_t.m4: Likewise.
1690         * m4/wint_t.m4: Likewise.
1691         * m4/write-any-file.m4: Likewise.
1692         * m4/yield.m4: Likewise.
1693
1694 2009-01-13  Bruno Haible  <bruno@clisp.org>
1695
1696         Avoid test-copy-file.sh failures when ACL support insufficient.
1697         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
1698         TESTS_ENVIRONMENT.
1699         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
1700         Reported by Jim Meyering.
1701
1702 2009-01-13  Bruno Haible  <bruno@clisp.org>
1703
1704         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
1705         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
1706         * modules/unistdio/u8-printf-parse (Files): Likewise.
1707         * modules/unistdio/u32-printf-parse (Files): Likewise.
1708         * modules/unistdio/ulc-printf-parse (Files): Likewise.
1709
1710 2009-01-13  Simon Josefsson  <simon@josefsson.org>
1711
1712         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
1713         and m4/inttypes_h.m4 too.
1714
1715 2009-01-12  Eric Blake  <ebb9@byu.net>
1716
1717         tests: IRIX 6.2 cc can't compile -0.0 into .data
1718         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
1719         rather than at compile-time.
1720         * tests/test-floorl.c (minus_zero): Likewise.
1721         * tests/test-frexpl.c (minus_zero): Likewise.
1722         * tests/test-isnan.c (minus_zerol): Likewise.
1723         * tests/test-isnanl.h (minus_zero): Likewise.
1724         * tests/test-ldexpl.c (minus_zero): Likewise.
1725         * tests/test-roundl.c (minus_zero): Likewise.
1726         * tests/test-signbit.c (minus_zerol): Likewise.
1727         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
1728         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
1729         * tests/test-truncl.c (minus_zero): Likewise.
1730         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
1731         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
1732         Reported by Tom G. Christensen and Nelson H. F. Beebe.
1733
1734 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
1735
1736         regex: fix glibc bug 9697
1737         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
1738         handling.
1739
1740 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
1741
1742         regex: fix glibc bug 697
1743         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
1744         being NULL also if there are no backreferences.
1745
1746 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
1747
1748         regex: merge glibc changes
1749         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
1750         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
1751         re_string_skip_chars, re_string_reconstruct): Likewise.
1752         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
1753
1754 2009-01-07  Jim Meyering  <meyering@redhat.com>
1755
1756         poll: filter through cppi
1757         * lib/poll.c: Indent cpp directives to reflect nesting.
1758
1759 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
1760
1761         poll: don't return uninitialized
1762         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
1763
1764 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
1765
1766         avoid compile failure on AIX 6.1
1767         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
1768         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
1769
1770 2009-01-04  Jim Meyering  <meyering@redhat.com>
1771
1772         remove duplicate inclusion of <stdio.h>
1773         * tests/test-fprintf-posix.c: Likewise.
1774         * tests/test-printf-posix.c: Likewise.
1775         * tests/test-snprintf-posix.c: Likewise.
1776         * tests/test-sprintf-posix.c: Likewise.
1777         * tests/test-vasprintf-posix.c: Likewise.
1778         * tests/test-vfprintf-posix.c: Likewise.
1779         * tests/test-vprintf-posix.c: Likewise.
1780         * tests/test-vsnprintf-posix.c: Likewise.
1781         * tests/test-vsprintf-posix.c: Likewise.
1782
1783 2009-01-03  Jim Meyering  <meyering@redhat.com>
1784
1785         gnulib-tool: fix sed-based filtering
1786         * gnulib-tool (func_filter_filelist): Remove extra backslash
1787         in sed_fff_filter definition.
1788
1789 2009-01-02  Jim Meyering  <meyering@redhat.com>
1790
1791         strftime: avoid compilation failure on Solaris 2.6
1792         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
1793         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
1794         Don't #define mbrlen or mbsinit, since now they're guaranteed to
1795         be available.  Reported by Tom G. Christensen.  Details in
1796         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
1797
1798 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1799             Bruno Haible  <bruno@clisp.org>
1800
1801         Speed up gnulib-tool by doing more string processing through shell
1802         built-ins.
1803         * gnulib-tool (fast_func_append): New variable.
1804         (func_remove_prefix, func_remove_suffix): New functions.
1805         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
1806         (func_filter_filelist): New function.
1807         (func_get_dependencies): Use func_remove_suffix instead of sed.
1808         (func_get_automake_snippet): Use func_filter_filelist instead of a
1809         subshell and sed invocation.
1810
1811 2009-01-01  Bruno Haible  <bruno@clisp.org>
1812
1813         Fix a security bug.
1814         * gnulib-tool (func_import, import, update): Don't allow the characters
1815         '"', '$', '`', '\' in macro arguments that become part of commands that
1816         are evaluated.
1817
1818 2009-01-01  Bruno Haible  <bruno@clisp.org>
1819
1820         * gnulib-tool (func_reset_sigpipe): Add more comments.
1821
1822 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1823
1824         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
1825         func_emit_tests_Makefile_am, func_import): Abort loops early if we
1826         already know the answer.
1827
1828 2009-01-01  Jim Meyering  <meyering@redhat.com>
1829
1830         * lib/version-etc.c (version_etc_va): Update copyright year.
1831
1832 2008-12-30  Bruno Haible  <bruno@clisp.org>
1833
1834         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
1835         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
1836         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
1837
1838 2008-12-29  Eric Blake  <ebb9@byu.net>
1839
1840         multiarch: avoid autoconf AC_REQUIRE bug
1841         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
1842         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
1843         2.63 and older.
1844         Reported by Bruno Haible, and analyzed in
1845         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
1846
1847 2008-12-29  Bruno Haible  <bruno@clisp.org>
1848
1849         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
1850         files in subdirectories correctly.
1851         Reported by Ralf Wildenhues.
1852
1853 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1854
1855         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
1856         rather than 'join FILE -', for Solaris join.
1857
1858 2008-12-29  Bruno Haible  <bruno@clisp.org>
1859
1860         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
1861         quoting.
1862         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
1863         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
1864         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
1865         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
1866         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
1867         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
1868         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
1869         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
1870         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
1871         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
1872         * m4/nls.m4 (AM_NLS): Likewise.
1873         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
1874         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
1875         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
1876         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
1877         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
1878         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
1879         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
1880         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
1881         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
1882         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
1883         * m4/xsize.m4 (gl_XSIZE): Likewise.
1884         Suggested by Jim Meyering.
1885
1886 2008-11-17  Bruce Korb  <bkorb@gnu.org>
1887
1888         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
1889         * lib/parse-duration.c: use a switch instead of cascading if's.
1890
1891 2008-12-29  Eric Blake  <ebb9@byu.net>
1892
1893         wchar.h: supply WEOF on Irix 5.3
1894         * lib/wchar.in.h (wint_t): Also supply WEOF.
1895         * lib/wctype.in.h (wint_t): Likewise.
1896         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
1897         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
1898         Reported by Tom G. Christensen.
1899
1900 2008-12-26  Bruno Haible  <bruno@clisp.org>
1901
1902         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
1903         i486, i586, i686.
1904
1905 2008-12-26  Bruno Haible  <bruno@clisp.org>
1906
1907         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
1908
1909 2008-12-26  Bruno Haible  <bruno@clisp.org>
1910
1911         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
1912         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
1913         not __STDC_CONSTANT_MACROS.
1914         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
1915
1916 2008-12-25  Bruno Haible  <bruno@clisp.org>
1917
1918         Add support for universal builds to vasnprintf.
1919         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
1920         universal builds, guess no.
1921         * modules/vasnprintf-posix (Depends-on): Add multiarch.
1922         * modules/vasprintf-posix (Depends-on): Likewise.
1923         * modules/fprintf-posix (Depends-on): Likewise.
1924         * modules/vfprintf-posix (Depends-on): Likewise.
1925         * modules/snprintf-posix (Depends-on): Likewise.
1926         * modules/vsnprintf-posix (Depends-on): Likewise.
1927         * modules/sprintf-posix (Depends-on): Likewise.
1928         * modules/vsprintf-posix (Depends-on): Likewise.
1929         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
1930         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1931         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1932         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1933         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1934         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1935         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1936
1937         Add support for universal builds to <inttypes.h>.
1938         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
1939         _SCNu64_PREFIX): In Apple
1940         universal builds, define directly, using _LP64.
1941         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
1942         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
1943         * modules/inttypes (Depends-on): Add multiarch.
1944         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
1945
1946         Add support for universal builds to <stdint.h>.
1947         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
1948         universal builds, define directly, using _LP64.
1949         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
1950         Apple universal builds, don't test for the size and suffix of ptrdiff_t
1951         and size_t.
1952         * modules/stdint (Depends-on): Add multiarch.
1953         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
1954
1955         New module 'multiarch'.
1956         * modules/multiarch: New file.
1957         * m4/multiarch.m4: New file.
1958
1959 2008-12-25  Bruno Haible  <bruno@clisp.org>
1960
1961         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
1962
1963 2008-12-25  Bruno Haible  <bruno@clisp.org>
1964
1965         * modules/btowc (License): Relicense under LGPLv2+.
1966         * modules/mbsinit (License): Likewise.
1967         * modules/mbrtowc (License): Likewise.
1968         * modules/wcrtomb (License): Likewise.
1969         * modules/streq (License): Likewise.
1970         Reported by David Lutterkort <lutter@redhat.com>.
1971
1972 2008-12-23  Bruno Haible  <bruno@clisp.org>
1973
1974         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
1975
1976 2008-12-23  Bruno Haible  <bruno@clisp.org>
1977
1978         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
1979         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
1980         GETADDRINFO_LIB, not in LIBS.
1981         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
1982         * modules/canon-host (Link): Likewise.
1983         * NEWS: Mention the change.
1984         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
1985         GETADDRINFO_LIB.
1986
1987 2008-12-22  Bruno Haible  <bruno@clisp.org>
1988
1989         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
1990         * doc/posix-functions/iswalpha_l.texi: Likewise.
1991         * doc/posix-functions/iswblank_l.texi: Likewise.
1992         * doc/posix-functions/iswcntrl_l.texi: Likewise.
1993         * doc/posix-functions/iswctype_l.texi: Likewise.
1994         * doc/posix-functions/iswdigit_l.texi: Likewise.
1995         * doc/posix-functions/iswgraph_l.texi: Likewise.
1996         * doc/posix-functions/iswlower_l.texi: Likewise.
1997         * doc/posix-functions/iswprint_l.texi: Likewise.
1998         * doc/posix-functions/iswpunct_l.texi: Likewise.
1999         * doc/posix-functions/iswspace_l.texi: Likewise.
2000         * doc/posix-functions/iswupper_l.texi: Likewise.
2001         * doc/posix-functions/iswxdigit_l.texi: Likewise.
2002         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
2003         * doc/posix-functions/open_wmemstream.texi: Likewise.
2004         * doc/posix-functions/swscanf.texi: Likewise.
2005         * doc/posix-functions/towctrans_l.texi: Likewise.
2006         * doc/posix-functions/towlower.texi: Likewise.
2007         * doc/posix-functions/towlower_l.texi: Likewise.
2008         * doc/posix-functions/towupper.texi: Likewise.
2009         * doc/posix-functions/towupper_l.texi: Likewise.
2010         * doc/posix-functions/vfwprintf.texi: Likewise.
2011         * doc/posix-functions/vfwscanf.texi: Likewise.
2012         * doc/posix-functions/vswscanf.texi: Likewise.
2013         * doc/posix-functions/vwprintf.texi: Likewise.
2014         * doc/posix-functions/vwscanf.texi: Likewise.
2015         * doc/posix-functions/wcpcpy.texi: Likewise.
2016         * doc/posix-functions/wcpncpy.texi: Likewise.
2017         * doc/posix-functions/wcscasecmp.texi: Likewise.
2018         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
2019         * doc/posix-functions/wcscoll_l.texi: Likewise.
2020         * doc/posix-functions/wcsdup.texi: Likewise.
2021         * doc/posix-functions/wcsncasecmp.texi: Likewise.
2022         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
2023         * doc/posix-functions/wcsnlen.texi: Likewise.
2024         * doc/posix-functions/wcsnrtombs.texi: Likewise.
2025         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
2026         * doc/posix-functions/wctrans_l.texi: Likewise.
2027         * doc/posix-functions/wctype_l.texi: Likewise.
2028         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
2029         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
2030         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
2031         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
2032         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
2033         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
2034         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
2035         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
2036         * doc/glibc-functions/wcschrnul.texi: Likewise.
2037         * doc/glibc-functions/wcsftime_l.texi: Likewise.
2038         * doc/glibc-functions/wcstod_l.texi: Likewise.
2039         * doc/glibc-functions/wcstof_l.texi: Likewise.
2040         * doc/glibc-functions/wcstol_l.texi: Likewise.
2041         * doc/glibc-functions/wcstold_l.texi: Likewise.
2042         * doc/glibc-functions/wcstoll_l.texi: Likewise.
2043         * doc/glibc-functions/wcstoq.texi: Likewise.
2044         * doc/glibc-functions/wcstoul_l.texi: Likewise.
2045         * doc/glibc-functions/wcstoull_l.texi: Likewise.
2046         * doc/glibc-functions/wcstouq.texi: Likewise.
2047         * doc/glibc-functions/wmempcpy.texi: Likewise.
2048
2049 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
2050             Eric Blake  <ebb9@byu.net>
2051             Paolo Bonzini  <bonzini@gnu.org>
2052             Bruno Haible  <bruno@clisp.org>
2053
2054         Make c-stack work on Haiku.
2055         * lib/c-stack.c (SA_ONSTACK): Define fallback.
2056         (c_stack_action): Use SA_ONSTACK flag.
2057
2058 2008-12-22  Bruno Haible  <bruno@clisp.org>
2059
2060         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
2061
2062 2008-12-22  Bruno Haible  <bruno@clisp.org>
2063
2064         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
2065         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
2066         being overridden.
2067         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
2068         New macros.
2069         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
2070         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
2071         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
2072         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
2073
2074 2008-12-22  Bruno Haible  <bruno@clisp.org>
2075
2076         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
2077         from test code.
2078
2079 2008-12-22  Eric Blake  <ebb9@byu.net>
2080
2081         Avoid gcc warnings on cygwin.
2082         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
2083         Avoid unused variable.
2084         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
2085         Likewise.
2086
2087 2008-12-22  Bruno Haible  <bruno@clisp.org>
2088
2089         Remove HAVE_MBRTOWC conditionals.
2090         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
2091         (mbscasecmp): Assume mbrtowc function.
2092         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
2093         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
2094         * lib/mbschr.c: Include mbuiter.h unconditionally.
2095         (mbschr): Assume mbrtowc function.
2096         * lib/mbscspn.c: Include mbuiter.h unconditionally.
2097         (mbscspn): Assume mbrtowc function.
2098         * lib/mbslen.c: Include mbuiter.h unconditionally.
2099         (mbslen): Assume mbrtowc function.
2100         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
2101         (mbsncasecmp): Assume mbrtowc function.
2102         * lib/mbsnlen.c: Include mbiter.h unconditionally.
2103         (mbsnlen): Assume mbrtowc function.
2104         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
2105         (mbspbrk): Assume mbrtowc function.
2106         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
2107         (mbspcasecmp): Assume mbrtowc function.
2108         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
2109         (mbsrchr): Assume mbrtowc function.
2110         * lib/mbssep.c: Include mbuiter.h unconditionally.
2111         (mbssep): Assume mbrtowc function.
2112         * lib/mbsspn.c: Include mbuiter.h unconditionally.
2113         (mbsspn): Assume mbrtowc function.
2114         * lib/mbsstr.c: Include mbuiter.h unconditionally.
2115         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
2116         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
2117         (mbstok_r): Assume mbrtowc function.
2118         * lib/propername.c: Include mbuiter.h unconditionally.
2119         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
2120         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
2121         (trim2): Assume mbrtowc function.
2122         * lib/mbswidth.c (mbsinit): Remove fallback definition.
2123         (mbsnwidth): Assume mbrtowc function.
2124         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
2125         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
2126         fallback definitions.
2127         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
2128
2129 2008-12-22  Bruno Haible  <bruno@clisp.org>
2130
2131         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
2132
2133 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
2134
2135         * modules/regex: Request emulations for the mb*/wc* functions we need.
2136         * m4/regex.m4: Don't look for those functions here.
2137         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
2138
2139 2008-12-22  Bruno Haible  <bruno@clisp.org>
2140
2141         * modules/fnmatch (Depends-on): Remove duplicated dependency.
2142
2143 2008-12-21  Bruno Haible  <bruno@clisp.org>
2144
2145         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
2146         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
2147         (Include): Remove conditionalization.
2148         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
2149         (Include): Remove conditionalization.
2150         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
2151         (Include): Remove conditionalization.
2152         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
2153         * m4/mbfile.m4 (gl_MBFILE): Likewise.
2154         * NEWS: Mention the change.
2155         Reported by Alan Hourihane <alanh@fairlite.co.uk>
2156         via Sergey Poznyakoff <gray@gnu.org.ua>.
2157
2158 2008-12-21  Bruno Haible  <bruno@clisp.org>
2159
2160         * MODULES.html.sh (Extended multibyte and wide character utilities
2161         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
2162         wcrtomb, wcsrtombs.
2163         (Support for systems lacking POSIX:2008): Add accept, bind, close,
2164         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
2165         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
2166         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
2167
2168 2008-12-21  Bruno Haible  <bruno@clisp.org>
2169
2170         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
2171
2172 2008-12-21  Bruno Haible  <bruno@clisp.org>
2173
2174         * modules/wcsnrtombs-tests: New file.
2175         * tests/test-wcsnrtombs1.sh: New file.
2176         * tests/test-wcsnrtombs2.sh: New file.
2177         * tests/test-wcsnrtombs3.sh: New file.
2178         * tests/test-wcsnrtombs4.sh: New file.
2179         * tests/test-wcsnrtombs.c: New file.
2180
2181         New module 'wcsnrtombs'.
2182         * lib/wchar.in.h (wcsnrtombs): New declaration.
2183         * lib/wcsnrtombs.c: New file.
2184         * lib/wcsrtombs-state.c: New file.
2185         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
2186         (internal_state): Remove variable.
2187         * m4/wcsnrtombs.m4: New file.
2188         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
2189         compilation units.
2190         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
2191         HAVE_WCSNRTOMBS.
2192         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
2193         HAVE_WCSNRTOMBS.
2194         * modules/wcsnrtombs: New file.
2195         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
2196         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
2197
2198 2008-12-21  Bruno Haible  <bruno@clisp.org>
2199
2200         * modules/wcsrtombs-tests: New file.
2201         * tests/test-wcsrtombs1.sh: New file.
2202         * tests/test-wcsrtombs2.sh: New file.
2203         * tests/test-wcsrtombs3.sh: New file.
2204         * tests/test-wcsrtombs4.sh: New file.
2205         * tests/test-wcsrtombs.c: New file.
2206
2207         New module 'wcsrtombs'.
2208         * lib/wchar.in.h (wcsrtombs): New declaration.
2209         * lib/wcsrtombs.c: New file.
2210         * m4/wcsrtombs.m4: New file.
2211         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
2212         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2213         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
2214         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
2215         * modules/wcsrtombs: New file.
2216         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
2217         bugs.
2218
2219 2008-12-21  Bruno Haible  <bruno@clisp.org>
2220
2221         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
2222         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
2223         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
2224         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
2225         if not correct.
2226         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
2227         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
2228         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2229         m4/locale-zh.m4, m4/codeset.m4.
2230         * doc/posix-functions/wcrtomb.texi: Document the bug.
2231
2232 2008-12-21  Bruno Haible  <bruno@clisp.org>
2233
2234         Work around a btowc() bug on IRIX 6.5.
2235         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
2236         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
2237         REPLACE_WTOBC if not.
2238         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
2239         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
2240         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
2241
2242 2008-12-21  Bruno Haible  <bruno@clisp.org>
2243
2244         * modules/wcrtomb-tests: New file.
2245         * tests/test-wcrtomb.sh: New file.
2246         * tests/test-wcrtomb.c: New file.
2247
2248         New module 'wcrtomb'.
2249         * lib/wchar.in.h (wcrtomb): New declaration.
2250         * lib/wcrtomb.c: New file.
2251         * m4/wcrtomb.m4: New file.
2252         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
2253         HAVE_WCRTOMB.
2254         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
2255         HAVE_WCRTOMB.
2256         * modules/wcrtomb: New file.
2257         * doc/posix-functions/wcrtomb.texi: Mention the new module.
2258
2259 2008-12-21  Bruno Haible  <bruno@clisp.org>
2260
2261         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
2262         * modules/mbsrtowcs (Files): Likewise.
2263         * modules/wctob (Files): Likewise.
2264         * modules/c-strcase-tests (Files): Likewise.
2265         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
2266         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
2267         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
2268         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
2269         * modules/vasnprintf-posix-tests (Files): Likewise.
2270
2271 2008-12-21  William Pursell  <bill.pursell@gmail.com>
2272
2273         gitlog-to-changelog: pass all command-line arguments to git-log
2274         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
2275         it is sometimes convenient to filter the commits in various ways.
2276         gitlog-to-changelog only allows --since to specify a start date,
2277         but git-log itself supports many other filtering mechanisms.
2278         At the moment, I want to filter by branch name.  Rather than
2279         adding a --branch option to gitlog-to-changelog, it seems more
2280         flexible to simply pass all options directly to git-log and let
2281         git do the work.  Notice that this effectively makes --since a
2282         redundant option for gitlog-to-changelog, but removing it would
2283         require current usage to change since calls would then require
2284         an additional '--'.
2285
2286 2008-12-21  Bruno Haible  <bruno@clisp.org>
2287
2288         * modules/mbsnrtowcs-tests: New file.
2289         * tests/test-mbsnrtowcs1.sh: New file.
2290         * tests/test-mbsnrtowcs2.sh: New file.
2291         * tests/test-mbsnrtowcs3.sh: New file.
2292         * tests/test-mbsnrtowcs4.sh: New file.
2293         * tests/test-mbsnrtowcs.c: New file.
2294
2295         New module 'mbsnrtowcs'.
2296         * lib/wchar.in.h (mbsnrtowcs): New declaration.
2297         * lib/mbsnrtowcs.c: New file.
2298         * lib/mbsrtowcs-state.c: New file.
2299         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
2300         (internal_state): Remove variable.
2301         * m4/mbsnrtowcs.m4: New file.
2302         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
2303         compilation units.
2304         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
2305         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2306         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
2307         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
2308         * modules/mbsnrtowcs: New file.
2309         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
2310         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
2311         portability problem.
2312
2313 2008-12-21  Bruno Haible  <bruno@clisp.org>
2314
2315         Work around mbsrtowcs bug.
2316         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
2317         (gl_FUNC_MBSRTOWCS): Invoke it.
2318         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2319         m4/locale-zh.m4.
2320         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
2321
2322 2008-12-21  Bruno Haible  <bruno@clisp.org>
2323
2324         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
2325
2326 2008-12-21  Bruno Haible  <bruno@clisp.org>
2327
2328         Update doc for AIX.
2329         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
2330         16-bit wchar_t type.
2331         * doc/posix-functions/btowc.texi: Likewise.
2332         * doc/posix-functions/fgetwc.texi: Likewise.
2333         * doc/posix-functions/fgetws.texi: Likewise.
2334         * doc/posix-functions/fputwc.texi: Likewise.
2335         * doc/posix-functions/fputws.texi: Likewise.
2336         * doc/posix-functions/fwide.texi: Likewise.
2337         * doc/posix-functions/fwprintf.texi: Likewise.
2338         * doc/posix-functions/fwscanf.texi: Likewise.
2339         * doc/posix-functions/getwchar.texi: Likewise.
2340         * doc/posix-functions/getwc.texi: Likewise.
2341         * doc/posix-functions/iswalnum.texi: Likewise.
2342         * doc/posix-functions/iswalpha.texi: Likewise.
2343         * doc/posix-functions/iswblank.texi: Likewise.
2344         * doc/posix-functions/iswcntrl.texi: Likewise.
2345         * doc/posix-functions/iswctype.texi: Likewise.
2346         * doc/posix-functions/iswdigit.texi: Likewise.
2347         * doc/posix-functions/iswgraph.texi: Likewise.
2348         * doc/posix-functions/iswlower.texi: Likewise.
2349         * doc/posix-functions/iswprint.texi: Likewise.
2350         * doc/posix-functions/iswpunct.texi: Likewise.
2351         * doc/posix-functions/iswspace.texi: Likewise.
2352         * doc/posix-functions/iswupper.texi: Likewise.
2353         * doc/posix-functions/iswxdigit.texi: Likewise.
2354         * doc/posix-functions/mbrtowc.texi: Likewise.
2355         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2356         * doc/posix-functions/mbstowcs.texi: Likewise.
2357         * doc/posix-functions/mbtowc.texi: Likewise.
2358         * doc/posix-functions/putwchar.texi: Likewise.
2359         * doc/posix-functions/putwc.texi: Likewise.
2360         * doc/posix-functions/swprintf.texi: Likewise.
2361         * doc/posix-functions/tolower.texi: Likewise.
2362         * doc/posix-functions/toupper.texi: Likewise.
2363         * doc/posix-functions/towctrans.texi: Likewise.
2364         * doc/posix-functions/ungetwc.texi: Likewise.
2365         * doc/posix-functions/vswprintf.texi: Likewise.
2366         * doc/posix-functions/wcrtomb.texi: Likewise.
2367         * doc/posix-functions/wcscat.texi: Likewise.
2368         * doc/posix-functions/wcschr.texi: Likewise.
2369         * doc/posix-functions/wcscmp.texi: Likewise.
2370         * doc/posix-functions/wcscoll.texi: Likewise.
2371         * doc/posix-functions/wcscpy.texi: Likewise.
2372         * doc/posix-functions/wcscspn.texi: Likewise.
2373         * doc/posix-functions/wcsftime.texi: Likewise.
2374         * doc/posix-functions/wcslen.texi: Likewise.
2375         * doc/posix-functions/wcsncat.texi: Likewise.
2376         * doc/posix-functions/wcsncmp.texi: Likewise.
2377         * doc/posix-functions/wcsncpy.texi: Likewise.
2378         * doc/posix-functions/wcspbrk.texi: Likewise.
2379         * doc/posix-functions/wcsrchr.texi: Likewise.
2380         * doc/posix-functions/wcsrtombs.texi: Likewise.
2381         * doc/posix-functions/wcsspn.texi: Likewise.
2382         * doc/posix-functions/wcsstr.texi: Likewise.
2383         * doc/posix-functions/wcstod.texi: Likewise.
2384         * doc/posix-functions/wcstof.texi: Likewise.
2385         * doc/posix-functions/wcstoimax.texi: Likewise.
2386         * doc/posix-functions/wcstok.texi: Likewise.
2387         * doc/posix-functions/wcstold.texi: Likewise.
2388         * doc/posix-functions/wcstoll.texi: Likewise.
2389         * doc/posix-functions/wcstol.texi: Likewise.
2390         * doc/posix-functions/wcstombs.texi: Likewise.
2391         * doc/posix-functions/wcstoull.texi: Likewise.
2392         * doc/posix-functions/wcstoul.texi: Likewise.
2393         * doc/posix-functions/wcstoumax.texi: Likewise.
2394         * doc/posix-functions/wcswidth.texi: Likewise.
2395         * doc/posix-functions/wcsxfrm.texi: Likewise.
2396         * doc/posix-functions/wctob.texi: Likewise.
2397         * doc/posix-functions/wctomb.texi: Likewise.
2398         * doc/posix-functions/wctrans.texi: Likewise.
2399         * doc/posix-functions/wctype.texi: Likewise.
2400         * doc/posix-functions/wcwidth.texi: Likewise.
2401         * doc/posix-functions/wmemchr.texi: Likewise.
2402         * doc/posix-functions/wmemcmp.texi: Likewise.
2403         * doc/posix-functions/wmemcpy.texi: Likewise.
2404         * doc/posix-functions/wmemmove.texi: Likewise.
2405         * doc/posix-functions/wmemset.texi: Likewise.
2406         * doc/posix-functions/wprintf.texi: Likewise.
2407         * doc/posix-functions/wscanf.texi: Likewise.
2408
2409 2008-12-21  Bruno Haible  <bruno@clisp.org>
2410
2411         Update doc for HP-UX 11.11.
2412         * doc/posix-functions/btowc.texi: Clarify that the function is missing
2413         in HP-UX version 11.00, not in all versions of HP-UX 11.
2414         * doc/posix-functions/fwide.texi: Likewise.
2415         * doc/posix-functions/fwprintf.texi: Likewise.
2416         * doc/posix-functions/fwscanf.texi: Likewise.
2417         * doc/posix-functions/inet_ntop.texi: Likewise.
2418         * doc/posix-functions/inet_pton.texi: Likewise.
2419         * doc/posix-functions/mbrlen.texi: Likewise.
2420         * doc/posix-functions/mbrtowc.texi: Likewise.
2421         * doc/posix-functions/mbsinit.texi: Likewise.
2422         * doc/posix-functions/mbsrtowcs.texi: Likewise.
2423         * doc/posix-functions/swprintf.texi: Likewise.
2424         * doc/posix-functions/swscanf.texi: Likewise.
2425         * doc/posix-functions/towctrans.texi: Likewise.
2426         * doc/posix-functions/vfwprintf.texi: Likewise.
2427         * doc/posix-functions/vswprintf.texi: Likewise.
2428         * doc/posix-functions/vwprintf.texi: Likewise.
2429         * doc/posix-functions/wcrtomb.texi: Likewise.
2430         * doc/posix-functions/wcsrtombs.texi: Likewise.
2431         * doc/posix-functions/wcsstr.texi: Likewise.
2432         * doc/posix-functions/wctob.texi: Likewise.
2433         * doc/posix-functions/wctrans.texi: Likewise.
2434         * doc/posix-functions/wmemchr.texi: Likewise.
2435         * doc/posix-functions/wmemcmp.texi: Likewise.
2436         * doc/posix-functions/wmemcpy.texi: Likewise.
2437         * doc/posix-functions/wmemmove.texi: Likewise.
2438         * doc/posix-functions/wmemset.texi: Likewise.
2439         * doc/posix-functions/wprintf.texi: Likewise.
2440         * doc/posix-functions/wscanf.texi: Likewise.
2441
2442 2008-12-21  Bruno Haible  <bruno@clisp.org>
2443
2444         Work around a portability problem.
2445         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
2446         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
2447
2448 2008-12-20  Bruno Haible  <bruno@clisp.org>
2449
2450         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
2451         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
2452         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
2453         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
2454         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
2455
2456         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
2457         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
2458         set.
2459         (GNULIB_defined_mbstate_t): New macro.
2460         (mbsinit): Redefine if REPLACE_MBSINIT is set.
2461         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
2462         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
2463         reuses the system's mbrtowc function but works around the bugs.
2464         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
2465         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
2466         macros.
2467         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
2468         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
2469         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
2470         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
2471         REPLACE_MBSINIT if mbsinit needs to be overridden.
2472         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
2473         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2474         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
2475         REPLACE_MBSINIT, REPLACE_MBRTOWC.
2476         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
2477         m4/locale-zh.m4.
2478         (Depends): Add mbsinit.
2479         * modules/mbsinit (Depends): Add mbrtowc.
2480         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
2481
2482 2008-12-20  Bruno Haible  <bruno@clisp.org>
2483
2484         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
2485         so that there are no conversion errors on AIX.
2486         * tests/test-mbsrtowcs.c (main): LIkewise.
2487
2488 2008-12-20  Bruno Haible  <bruno@clisp.org>
2489
2490         Work around wctob bug on Solaris <= 9.
2491         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
2492         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
2493         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
2494         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
2495         * modules/wctob (Files): Add m4/locale-fr.m4.
2496         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
2497
2498 2008-12-20  Bruno Haible  <bruno@clisp.org>
2499
2500         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
2501         /dev/null.
2502         * tests/test-select-in.sh: Likewise.
2503         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
2504
2505 2008-12-20  Bruno Haible  <bruno@clisp.org>
2506
2507         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
2508         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
2509         Cygwin 1.5.x.
2510
2511 2008-12-20  Bruno Haible  <bruno@clisp.org>
2512
2513         Ensure mbstate_t is defined on HP-UX 11.11.
2514         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
2515         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
2516         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
2517         AC_USE_SYSTEM_EXTENSIONS.
2518         * modules/fnmatch (Depends-on): Add extensions.
2519         * modules/mbrlen (Depends-on): Likewise.
2520         * modules/mbrtowc (Depends-on): Likewise.
2521         * modules/mbsinit (Depends-on): Likewise.
2522         * modules/mbsrtowcs (Depends-on): Likewise.
2523         * modules/mbswidth (Depends-on): Likewise.
2524         * modules/quotearg (Depends-on): Likewise.
2525         * modules/strftime (Depends-on): Likewise.
2526
2527 2008-12-20  Bruno Haible  <bruno@clisp.org>
2528
2529         Ensure wctob is declared on IRIX 6.5.
2530         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
2531         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
2532         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
2533         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
2534         of HAVE_WCTOB.
2535         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
2536         HAVE_WCTOB.
2537         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
2538
2539 2008-12-19  Bruno Haible  <bruno@clisp.org>
2540
2541         * modules/mbsrtowcs-tests: New file.
2542         * tests/test-mbsrtowcs1.sh: New file.
2543         * tests/test-mbsrtowcs2.sh: New file.
2544         * tests/test-mbsrtowcs3.sh: New file.
2545         * tests/test-mbsrtowcs4.sh: New file.
2546         * tests/test-mbsrtowcs.c: New file.
2547
2548         New module 'mbsrtowcs'.
2549         * lib/wchar.in.h (mbsrtowcs): New declaration.
2550         * lib/mbsrtowcs.c: New file.
2551         * m4/mbsrtowcs.m4: New file.
2552         * modules/mbsrtowcs: New file.
2553         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
2554         HAVE_MBSRTOWCS.
2555         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
2556         HAVE_MBSRTOWCS.
2557         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
2558
2559 2008-12-19  Bruno Haible  <bruno@clisp.org>
2560
2561         New module 'mbrlen'.
2562         * lib/wchar.in.h (mbrlen): New declaration.
2563         * lib/mbrlen.c: New file.
2564         * m4/mbrlen.m4: New file.
2565         * modules/mbrlen: New file.
2566         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
2567         HAVE_MBRLEN.
2568         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
2569         HAVE_MBRLEN.
2570         * doc/posix-functions/mbrlen.texi: Document the new module.
2571
2572 2008-12-19  Bruno Haible  <bruno@clisp.org>
2573
2574         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
2575         * modules/mbrtowc (Depends-on): Add verify.
2576         Suggested by Paul Eggert.
2577
2578 2008-12-18  Bruno Haible  <bruno@clisp.org>
2579
2580         * modules/mbsinit-tests: New file.
2581         * tests/test-mbsinit.sh: New file.
2582         * tests/test-mbsinit.c: New file.
2583
2584 2008-12-18  Bruno Haible  <bruno@clisp.org>
2585
2586         * modules/mbrtowc-tests: New file.
2587         * tests/test-mbrtowc1.sh: New file.
2588         * tests/test-mbrtowc2.sh: New file.
2589         * tests/test-mbrtowc3.sh: New file.
2590         * tests/test-mbrtowc4.sh: New file.
2591         * tests/test-mbrtowc.c: New file.
2592
2593         New module 'mbrtowc'.
2594         * lib/wchar.in.h (mbstate_t): Override when the system does not have
2595         mbsinit and mbrtowc.
2596         (mbrtowc): New declaration.
2597         * lib/mbrtowc.c: New file.
2598         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
2599         * modules/mbrtowc: New file.
2600         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
2601         HAVE_MBRTOWC.
2602         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
2603         HAVE_MBRTOWC.
2604         * doc/posix-functions/mbrtowc.texi: Document the new module.
2605
2606 2008-12-18  Bruno Haible  <bruno@clisp.org>
2607
2608         New module 'wctob'.
2609         * lib/wchar.in.h (wctob): New declaration.
2610         * lib/wctob.c: New file.
2611         * m4/wctob.m4: New file.
2612         * modules/wctob: New file.
2613         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
2614         HAVE_WCTOB.
2615         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
2616         * doc/posix-functions/wctob.texi: Document the new module.
2617
2618 2008-12-18  Bruno Haible  <bruno@clisp.org>
2619
2620         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
2621         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
2622
2623 2008-12-18  Simon Josefsson  <simon@josefsson.org>
2624
2625         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
2626         G. Christensen" <tgc@jupiterrise.com>.
2627
2628         * lib/flock.c: Need to include errno.h.  Reported by "Tom
2629         G. Christensen" <tgc@jupiterrise.com>.
2630
2631         * lib/flock.c: Need to include string.h.  Reported by "Tom
2632         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
2633         <ebb9@byu.net>.
2634
2635 2008-12-18  Bruno Haible  <bruno@clisp.org>
2636
2637         * m4/locale-ja.m4: New file, from GNU gettext.
2638
2639 2008-12-17  Bruno Haible  <bruno@clisp.org>
2640
2641         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
2642         Suggested by Eric Blake.
2643
2644 2008-12-17  Bruno Haible  <bruno@clisp.org>
2645
2646         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
2647
2648 2008-12-17  Bruno Haible  <bruno@clisp.org>
2649
2650         * lib/mbsinit.c: Include verify.h. Verify an assumption.
2651         * modules/mbsinit (Depends-on): Add verify.
2652         Suggested by Paul Eggert.
2653
2654 2008-12-17  Bruno Haible  <bruno@clisp.org>
2655
2656         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
2657         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
2658         gl_FUNC_MBRTOWC.
2659         * m4/mbiter.m4 (gl_MBITER): LIkewise.
2660         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
2661         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
2662         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
2663         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
2664         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
2665         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
2666         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
2667         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
2668         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
2669         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
2670         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
2671         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
2672         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
2673         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
2674         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
2675         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
2676         * modules/trim (configure.ac): Likewise.
2677
2678 2008-12-17  Bruno Haible  <bruno@clisp.org>
2679
2680         * modules/btowc-tests: New file.
2681         * tests/test-btowc1.sh: New file.
2682         * tests/test-btowc2.sh: New file.
2683         * tests/test-btowc.c: New file.
2684
2685         New module 'btowc'.
2686         * lib/wchar.in.h (btowc): New declaration.
2687         * lib/btowc.c: New file.
2688         * m4/btowc.m4: New file.
2689         * modules/btowc: New file.
2690         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
2691         HAVE_BTOWC.
2692         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
2693         * doc/posix-functions/btowc.texi: Document the new module.
2694
2695 2008-12-17  Bruno Haible  <bruno@clisp.org>
2696
2697         New module 'mbsinit'.
2698         * lib/wchar.in.h (mbsinit): New declaration.
2699         * lib/mbsinit.c: New file.
2700         * m4/mbsinit.m4: New file.
2701         * modules/mbsinit: New file.
2702         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
2703         HAVE_MBSINIT.
2704         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
2705         HAVE_MBSINIT.
2706         * doc/posix-functions/mbsinit.texi: Document the new module.
2707
2708 2008-12-16  Bruno Haible  <bruno@clisp.org>
2709
2710         * lib/unistd.in.h: Add comment.
2711         * tests/test-environ.c: Don't include <stdlib.h>.
2712
2713 2008-12-16  Bruno Haible  <bruno@clisp.org>
2714
2715         * lib/parse-duration.h (parse_duration): Document return value
2716         convention.
2717         * lib/parse-duration.c: Include specification header first. Add
2718         comments.
2719         (_): Remove macro.
2720         (parse_year_month_day, parse_hour_minute_second): Move side effects
2721         outside of strchr call.
2722         (parse_non_iso8601): Move side effects outside of isspace call.
2723         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
2724         call.
2725
2726 2008-12-16  Bruno Haible  <bruno@clisp.org>
2727
2728         * tests/test-parse-duration.sh: Produce no output when the test
2729         succeeds.
2730
2731 2008-12-16  Bruno Haible  <bruno@clisp.org>
2732
2733         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
2734         expressions.
2735
2736 2008-12-15  Bruno Haible  <bruno@clisp.org>
2737
2738         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
2739         * doc/glibc-functions/flistxattr.texi: Likewise.
2740         * doc/glibc-functions/fopencookie.texi: Likewise.
2741         * doc/glibc-functions/fremovexattr.texi: Likewise.
2742         * doc/glibc-functions/fsetxattr.texi: Likewise.
2743         * doc/glibc-functions/getxattr.texi: Likewise.
2744         * doc/glibc-functions/lgetxattr.texi: Likewise.
2745         * doc/glibc-functions/listxattr.texi: Likewise.
2746         * doc/glibc-functions/llistxattr.texi: Likewise.
2747         * doc/glibc-functions/lremovexattr.texi: Likewise.
2748         * doc/glibc-functions/lsetxattr.texi: Likewise.
2749         * doc/glibc-functions/removexattr.texi: Likewise.
2750         * doc/glibc-functions/setxattr.texi: Likewise.
2751         * doc/posix-functions/open_memstream.texi: Likewise.
2752
2753 2008-12-15  Eric Blake  <ebb9@byu.net>
2754
2755         Update doc for cygwin 1.7.
2756         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
2757         functions.
2758         * doc/posix-functions/fchmodat.texi: Likewise.
2759         * doc/posix-functions/fchownat.texi: Likewise.
2760         * doc/posix-functions/fdopendir.texi: Likewise.
2761         * doc/posix-functions/fmemopen.texi: Likewise.
2762         * doc/posix-functions/freeaddrinfo.texi: Likewise.
2763         * doc/posix-functions/fstatat.texi: Likewise.
2764         * doc/posix-functions/futimens.texi: Likewise.
2765         * doc/posix-functions/gai_strerror.texi: Likewise.
2766         * doc/posix-functions/getaddrinfo.texi: Likewise.
2767         * doc/posix-functions/getnameinfo.texi: Likewise.
2768         * doc/posix-functions/if_freenameindex.texi: Likewise.
2769         * doc/posix-functions/if_indextoname.texi: Likewise.
2770         * doc/posix-functions/if_nameindex.texi: Likewise.
2771         * doc/posix-functions/if_nametoindex.texi: Likewise.
2772         * doc/posix-functions/insque.texi: Likewise.
2773         * doc/posix-functions/linkat.texi: Likewise.
2774         * doc/posix-functions/llrint.texi: Likewise.
2775         * doc/posix-functions/llrintf.texi: Likewise.
2776         * doc/posix-functions/llrintl.texi: Likewise.
2777         * doc/posix-functions/lockf.texi: Likewise.
2778         * doc/posix-functions/lrintl.texi: Likewise.
2779         * doc/posix-functions/mkdirat.texi: Likewise.
2780         * doc/posix-functions/mkfifoat.texi: Likewise.
2781         * doc/posix-functions/mknodat.texi: Likewise.
2782         * doc/posix-functions/mq_close.texi: Likewise.
2783         * doc/posix-functions/mq_getattr.texi: Likewise.
2784         * doc/posix-functions/mq_notify.texi: Likewise.
2785         * doc/posix-functions/mq_open.texi: Likewise.
2786         * doc/posix-functions/mq_receive.texi: Likewise.
2787         * doc/posix-functions/mq_send.texi: Likewise.
2788         * doc/posix-functions/mq_setattr.texi: Likewise.
2789         * doc/posix-functions/mq_timedreceive.texi: Likewise.
2790         * doc/posix-functions/mq_timedsend.texi: Likewise.
2791         * doc/posix-functions/mq_unlink.texi: Likewise.
2792         * doc/posix-functions/open_memstream.texi: Likewise.
2793         * doc/posix-functions/openat.texi: Likewise.
2794         * doc/posix-functions/posix_fadvise.texi: Likewise.
2795         * doc/posix-functions/posix_fallocate.texi: Likewise.
2796         * doc/posix-functions/posix_madvise.texi: Likewise.
2797         * doc/posix-functions/posix_memalign.texi: Likewise.
2798         * doc/posix-functions/posix_openpt.texi: Likewise.
2799         * doc/posix-functions/readlinkat.texi: Likewise.
2800         * doc/posix-functions/remque.texi: Likewise.
2801         * doc/posix-functions/renameat.texi: Likewise.
2802         * doc/posix-functions/rintl.texi: Likewise.
2803         * doc/posix-functions/sem_unlink.texi: Likewise.
2804         * doc/posix-functions/shm_open.texi: Likewise.
2805         * doc/posix-functions/shm_unlink.texi: Likewise.
2806         * doc/posix-functions/signgam.texi: Likewise.
2807         * doc/posix-functions/sigset.texi: Likewise.
2808         * doc/posix-functions/stpcpy.texi: Likewise.
2809         * doc/posix-functions/stpncpy.texi: Likewise.
2810         * doc/posix-functions/strerror.texi: Likewise.
2811         * doc/posix-functions/strtod.texi: Likewise.
2812         * doc/posix-functions/symlinkat.texi: Likewise.
2813         * doc/posix-functions/unlinkat.texi: Likewise.
2814         * doc/posix-functions/utimensat.texi: Likewise.
2815         * doc/glibc-functions/bindresvport.texi: Likewise.
2816         * doc/glibc-functions/dn_expand.texi: Likewise.
2817         * doc/glibc-functions/exp10.texi: Likewise.
2818         * doc/glibc-functions/exp10f.texi: Likewise.
2819         * doc/glibc-functions/fgetxattr.texi: Likewise.
2820         * doc/glibc-functions/flistxattr.texi: Likewise.
2821         * doc/glibc-functions/fopencookie.texi: Likewise.
2822         * doc/glibc-functions/freeifaddrs.texi: Likewise.
2823         * doc/glibc-functions/fremovexattr.texi: Likewise.
2824         * doc/glibc-functions/fsetxattr.texi: Likewise.
2825         * doc/glibc-functions/getifaddrs.texi: Likewise.
2826         * doc/glibc-functions/getxattr.texi: Likewise.
2827         * doc/glibc-functions/lgetxattr.texi: Likewise.
2828         * doc/glibc-functions/listxattr.texi: Likewise.
2829         * doc/glibc-functions/llistxattr.texi: Likewise.
2830         * doc/glibc-functions/lremovexattr.texi: Likewise.
2831         * doc/glibc-functions/lsetxattr.texi: Likewise.
2832         * doc/glibc-functions/pow10.texi: Likewise.
2833         * doc/glibc-functions/pow10f.texi: Likewise.
2834         * doc/glibc-functions/rcmd_af.texi: Likewise.
2835         * doc/glibc-functions/removexattr.texi: Likewise.
2836         * doc/glibc-functions/res_init.texi: Likewise.
2837         * doc/glibc-functions/res_mkquery.texi: Likewise.
2838         * doc/glibc-functions/res_query.texi: Likewise.
2839         * doc/glibc-functions/res_querydomain.texi: Likewise.
2840         * doc/glibc-functions/res_send.texi: Likewise.
2841         * doc/glibc-functions/rresvport_af.texi: Likewise.
2842         * doc/glibc-functions/setxattr.texi: Likewise.
2843         * doc/glibc-functions/strcasestr.texi: Likewise.
2844
2845 2008-12-15  Bruno Haible  <bruno@clisp.org>
2846
2847         Fix compilation error on OSF/1 4.0.
2848         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
2849         <sys/time.h>, simply delegate to the system header.
2850         Reported by Daniel Richard G. <oss@teragram.com>.
2851
2852 2008-12-15  Bruno Haible  <bruno@clisp.org>
2853
2854         * doc/posix-functions/openat.texi: Mention the 'openat' module.
2855         * doc/posix-functions/fchmodat.texi: Likewise.
2856         * doc/posix-functions/fchownat.texi: Likewise.
2857         * doc/posix-functions/fdopendir.texi: Likewise.
2858         * doc/posix-functions/fstatat.texi: Likewise.
2859         * doc/posix-functions/mkdirat.texi: Likewise.
2860         * doc/posix-functions/unlinkat.texi: Likewise.
2861
2862 2008-12-14  Bruno Haible  <bruno@clisp.org>
2863
2864         Update doc for POSIX:2008.
2865         * doc/posix-functions/faccessat.texi: New file.
2866         * doc/posix-functions/fchmodat.texi: New file.
2867         * doc/posix-functions/fchownat.texi: New file.
2868         * doc/posix-functions/fdopendir.texi: New file.
2869         * doc/posix-functions/fstatat.texi: New file.
2870         * doc/posix-functions/futimens.texi: New file.
2871         * doc/posix-functions/linkat.texi: New file.
2872         * doc/posix-functions/mkdirat.texi: New file.
2873         * doc/posix-functions/mkfifoat.texi: New file.
2874         * doc/posix-functions/mknodat.texi: New file.
2875         * doc/posix-functions/open_wmemstream.texi: New file.
2876         * doc/posix-functions/openat.texi: New file.
2877         * doc/posix-functions/psiginfo.texi: New file.
2878         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
2879         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
2880         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
2881         * doc/posix-functions/readlinkat.texi: New file.
2882         * doc/posix-functions/renameat.texi: New file.
2883         * doc/posix-functions/strerror_l.texi: New file.
2884         * doc/posix-functions/symlinkat.texi: New file.
2885         * doc/posix-functions/unlinkat.texi: New file.
2886         * doc/posix-functions/utimensat.texi: New file.
2887         * doc/gnulib.texi (Function Substitutes): Add these subsections.
2888
2889 2008-12-14  Bruno Haible  <bruno@clisp.org>
2890
2891         Update doc for POSIX:2008.
2892         * doc/posix-functions/alphasort.texi: Renamed from
2893         doc/glibc-functions/alphasort.texi.
2894         * doc/posix-functions/dirfd.texi: Renamed from
2895         doc/glibc-functions/dirfd.texi.
2896         * doc/posix-functions/dprintf.texi: Renamed from
2897         doc/glibc-functions/dprintf.texi.
2898         * doc/posix-functions/duplocale.texi: Renamed from
2899         doc/glibc-functions/duplocale.texi.
2900         * doc/posix-functions/fexecve.texi: Renamed from
2901         doc/glibc-functions/fexecve.texi.
2902         * doc/posix-functions/fmemopen.texi: Renamed from
2903         doc/glibc-functions/fmemopen.texi.
2904         * doc/posix-functions/freelocale.texi: Renamed from
2905         doc/glibc-functions/freelocale.texi.
2906         * doc/posix-functions/getdate_err.texi: Renamed from
2907         doc/glibc-functions/getdate_err.texi.
2908         * doc/posix-functions/isalnum_l.texi: Renamed from
2909         doc/glibc-functions/isalnum_l.texi.
2910         * doc/posix-functions/isalpha_l.texi: Renamed from
2911         doc/glibc-functions/isalpha_l.texi.
2912         * doc/posix-functions/isblank_l.texi: Renamed from
2913         doc/glibc-functions/isblank_l.texi.
2914         * doc/posix-functions/iscntrl_l.texi: Renamed from
2915         doc/glibc-functions/iscntrl_l.texi.
2916         * doc/posix-functions/isdigit_l.texi: Renamed from
2917         doc/glibc-functions/isdigit_l.texi.
2918         * doc/posix-functions/isgraph_l.texi: Renamed from
2919         doc/glibc-functions/isgraph_l.texi.
2920         * doc/posix-functions/islower_l.texi: Renamed from
2921         doc/glibc-functions/islower_l.texi.
2922         * doc/posix-functions/isprint_l.texi: Renamed from
2923         doc/glibc-functions/isprint_l.texi.
2924         * doc/posix-functions/ispunct_l.texi: Renamed from
2925         doc/glibc-functions/ispunct_l.texi.
2926         * doc/posix-functions/isspace_l.texi: Renamed from
2927         doc/glibc-functions/isspace_l.texi.
2928         * doc/posix-functions/isupper_l.texi: Renamed from
2929         doc/glibc-functions/isupper_l.texi.
2930         * doc/posix-functions/iswalnum_l.texi: Renamed from
2931         doc/glibc-functions/iswalnum_l.texi.
2932         * doc/posix-functions/iswalpha_l.texi: Renamed from
2933         doc/glibc-functions/iswalpha_l.texi.
2934         * doc/posix-functions/iswblank_l.texi: Renamed from
2935         doc/glibc-functions/iswblank_l.texi.
2936         * doc/posix-functions/iswcntrl_l.texi: Renamed from
2937         doc/glibc-functions/iswcntrl_l.texi.
2938         * doc/posix-functions/iswctype_l.texi: Renamed from
2939         doc/glibc-functions/iswctype_l.texi.
2940         * doc/posix-functions/iswdigit_l.texi: Renamed from
2941         doc/glibc-functions/iswdigit_l.texi.
2942         * doc/posix-functions/iswgraph_l.texi: Renamed from
2943         doc/glibc-functions/iswgraph_l.texi.
2944         * doc/posix-functions/iswlower_l.texi: Renamed from
2945         doc/glibc-functions/iswlower_l.texi.
2946         * doc/posix-functions/iswprint_l.texi: Renamed from
2947         doc/glibc-functions/iswprint_l.texi.
2948         * doc/posix-functions/iswpunct_l.texi: Renamed from
2949         doc/glibc-functions/iswpunct_l.texi.
2950         * doc/posix-functions/iswspace_l.texi: Renamed from
2951         doc/glibc-functions/iswspace_l.texi.
2952         * doc/posix-functions/iswupper_l.texi: Renamed from
2953         doc/glibc-functions/iswupper_l.texi.
2954         * doc/posix-functions/iswxdigit_l.texi: Renamed from
2955         doc/glibc-functions/iswxdigit_l.texi.
2956         * doc/posix-functions/isxdigit_l.texi: Renamed from
2957         doc/glibc-functions/isxdigit_l.texi.
2958         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
2959         doc/glibc-functions/mbsnrtowcs.texi.
2960         * doc/posix-functions/mkdtemp.texi: Renamed from
2961         doc/glibc-functions/mkdtemp.texi.
2962         * doc/posix-functions/newlocale.texi: Renamed from
2963         doc/glibc-functions/newlocale.texi.
2964         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
2965         doc/glibc-functions/nl_langinfo_l.texi.
2966         * doc/posix-functions/open_memstream.texi: Renamed from
2967         doc/glibc-functions/open_memstream.texi.
2968         * doc/posix-functions/opterr.texi: Renamed from
2969         doc/glibc-functions/opterr.texi.
2970         * doc/posix-functions/optind.texi: Renamed from
2971         doc/glibc-functions/optind.texi.
2972         * doc/posix-functions/optopt.texi: Renamed from
2973         doc/glibc-functions/optopt.texi.
2974         * doc/posix-functions/psignal.texi: Renamed from
2975         doc/glibc-functions/psignal.texi.
2976         * doc/posix-functions/scandir.texi: Renamed from
2977         doc/glibc-functions/scandir.texi.
2978         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
2979         doc/glibc-functions/sched_get_priority_min.texi.
2980         * doc/posix-functions/signgam.texi: Renamed from
2981         doc/glibc-functions/signgam.texi.
2982         * doc/posix-functions/stpcpy.texi: Renamed from
2983         doc/glibc-functions/stpcpy.texi.
2984         * doc/posix-functions/stpncpy.texi: Renamed from
2985         doc/glibc-functions/stpncpy.texi.
2986         * doc/posix-functions/strcasecmp_l.texi: Renamed from
2987         doc/glibc-functions/strcasecmp_l.texi.
2988         * doc/posix-functions/strcoll_l.texi: Renamed from
2989         doc/glibc-functions/strcoll_l.texi.
2990         * doc/posix-functions/strfmon_l.texi: Renamed from
2991         doc/glibc-functions/strfmon_l.texi.
2992         * doc/posix-functions/strftime_l.texi: Renamed from
2993         doc/glibc-functions/strftime_l.texi.
2994         * doc/posix-functions/strncasecmp_l.texi: Renamed from
2995         doc/glibc-functions/strncasecmp_l.texi.
2996         * doc/posix-functions/strndup.texi: Renamed from
2997         doc/glibc-functions/strndup.texi.
2998         * doc/posix-functions/strnlen.texi: Renamed from
2999         doc/glibc-functions/strnlen.texi.
3000         * doc/posix-functions/strsignal.texi: Renamed from
3001         doc/glibc-functions/strsignal.texi.
3002         * doc/posix-functions/strxfrm_l.texi: Renamed from
3003         doc/glibc-functions/strxfrm_l.texi.
3004         * doc/posix-functions/timer_gettime.texi: Renamed from
3005         doc/glibc-functions/timer_gettime.texi.
3006         * doc/posix-functions/tolower_l.texi: Renamed from
3007         doc/glibc-functions/tolower_l.texi.
3008         * doc/posix-functions/toupper_l.texi: Renamed from
3009         doc/glibc-functions/toupper_l.texi.
3010         * doc/posix-functions/towctrans_l.texi: Renamed from
3011         doc/glibc-functions/towctrans_l.texi.
3012         * doc/posix-functions/towlower_l.texi: Renamed from
3013         doc/glibc-functions/towlower_l.texi.
3014         * doc/posix-functions/towupper_l.texi: Renamed from
3015         doc/glibc-functions/towupper_l.texi.
3016         * doc/posix-functions/uselocale.texi: Renamed from
3017         doc/glibc-functions/uselocale.texi.
3018         * doc/posix-functions/vdprintf.texi: Renamed from
3019         doc/glibc-functions/vdprintf.texi.
3020         * doc/posix-functions/wcpcpy.texi:
3021         Renamed from doc/glibc-functions/wcpcpy.texi.
3022         * doc/posix-functions/wcpncpy.texi: Renamed from
3023         doc/glibc-functions/wcpncpy.texi.
3024         * doc/posix-functions/wcscasecmp.texi: Renamed from
3025         doc/glibc-functions/wcscasecmp.texi.
3026         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
3027         doc/glibc-functions/wcscasecmp_l.texi.
3028         * doc/posix-functions/wcscoll_l.texi: Renamed from
3029         doc/glibc-functions/wcscoll_l.texi.
3030         * doc/posix-functions/wcsdup.texi: Renamed from
3031         doc/glibc-functions/wcsdup.texi.
3032         * doc/posix-functions/wcsncasecmp.texi: Renamed from
3033         doc/glibc-functions/wcsncasecmp.texi.
3034         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
3035         doc/glibc-functions/wcsncasecmp_l.texi.
3036         * doc/posix-functions/wcsnlen.texi: Renamed from
3037         doc/glibc-functions/wcsnlen.texi.
3038         * doc/posix-functions/wcsnrtombs.texi: Renamed from
3039         doc/glibc-functions/wcsnrtombs.texi.
3040         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
3041         doc/glibc-functions/wcsxfrm_l.texi.
3042         * doc/posix-functions/wctrans_l.texi: Renamed from
3043         doc/glibc-functions/wctrans_l.texi.
3044         * doc/posix-functions/wctype_l.texi: Renamed from
3045         doc/glibc-functions/wctype_l.texi.
3046         * doc/gnulib.texi (Function Substitutes): Add these subsections.
3047         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
3048         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
3049         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
3050         these subsections.
3051         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
3052         Remove sections.
3053
3054 2008-12-14  Bruno Haible  <bruno@clisp.org>
3055
3056         Update doc for POSIX:2008.
3057         * doc/posix-functions/*.texi: Update URL of POSIX specification.
3058
3059 2008-12-14  Bruno Haible  <bruno@clisp.org>
3060
3061         Update doc for POSIX:2008.
3062         * doc/pastposix-functions/bcmp.texi: Renamed from
3063         doc/posix-functions/bcmp.texi.
3064         * doc/pastposix-functions/bcopy.texi: Renamed from
3065         doc/posix-functions/bcopy.texi.
3066         * doc/pastposix-functions/bsd_signal.texi: Renamed from
3067         doc/posix-functions/bsd_signal.texi.
3068         * doc/pastposix-functions/bzero.texi: Renamed from
3069         doc/posix-functions/bzero.texi.
3070         * doc/pastposix-functions/ecvt.texi: Renamed from
3071         doc/posix-functions/ecvt.texi.
3072         * doc/pastposix-functions/fcvt.texi: Renamed from
3073         doc/posix-functions/fcvt.texi.
3074         * doc/pastposix-functions/ftime.texi: Renamed from
3075         doc/posix-functions/ftime.texi.
3076         * doc/pastposix-functions/gcvt.texi: Renamed from
3077         doc/posix-functions/gcvt.texi.
3078         * doc/pastposix-functions/getcontext.texi: Renamed from
3079         doc/posix-functions/getcontext.texi.
3080         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
3081         doc/posix-functions/gethostbyaddr.texi.
3082         * doc/pastposix-functions/gethostbyname.texi: Renamed from
3083         doc/posix-functions/gethostbyname.texi.
3084         * doc/pastposix-functions/getwd.texi: Renamed from
3085         doc/posix-functions/getwd.texi.
3086         * doc/pastposix-functions/h_errno.texi: Renamed from
3087         doc/posix-functions/h_errno.texi.
3088         * doc/pastposix-functions/index.texi: Renamed from
3089         doc/posix-functions/index.texi.
3090         * doc/pastposix-functions/makecontext.texi: Renamed from
3091         doc/posix-functions/makecontext.texi.
3092         * doc/pastposix-functions/mktemp.texi: Renamed from
3093         doc/posix-functions/mktemp.texi.
3094         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
3095         doc/posix-functions/pthread_attr_getstackaddr.texi.
3096         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
3097         doc/posix-functions/pthread_attr_setstackaddr.texi.
3098         * doc/pastposix-functions/rindex.texi: Renamed from
3099         doc/posix-functions/rindex.texi.
3100         * doc/pastposix-functions/scalb.texi: Renamed from
3101         doc/posix-functions/scalb.texi.
3102         * doc/pastposix-functions/setcontext.texi: Renamed from
3103         doc/posix-functions/setcontext.texi.
3104         * doc/pastposix-functions/swapcontext.texi: Renamed from
3105         doc/posix-functions/swapcontext.texi.
3106         * doc/pastposix-functions/ualarm.texi: Renamed from
3107         doc/posix-functions/ualarm.texi.
3108         * doc/pastposix-functions/usleep.texi: Renamed from
3109         doc/posix-functions/usleep.texi.
3110         * doc/pastposix-functions/vfork.texi: Renamed from
3111         doc/posix-functions/vfork.texi.
3112         * doc/pastposix-functions/wcswcs.texi: Renamed from
3113         doc/posix-functions/wcswcs.texi.
3114         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
3115         (Function Substitutes): Update.
3116
3117 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3118
3119         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
3120         m4/strerror.m4.
3121
3122 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3123             Bruno Haible  <bruno@clisp.org>
3124
3125         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
3126
3127 2008-12-13  Bruno Haible  <bruno@clisp.org>
3128
3129         * modules/strtoull (Depends-on): Remove unistd.
3130
3131 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3132
3133         * modules/strtoull (Depends-on): Add stdlib.
3134
3135 2008-12-11  Simon Josefsson  <simon@josefsson.org>
3136
3137         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
3138
3139 2008-12-10  Jim Meyering  <meyering@redhat.com>
3140
3141         gl_ASSERT: don't say assertions are disabled when they're not
3142         * m4/assert.m4 (gl_ASSERT): Do not make configure report
3143         "checking whether to enable assertions... no", when they are in
3144         fact enabled.  This is solely a bug in the output of configure.
3145         In spite of saying "no", NDEBUG was not defined in that case.
3146         Also, as noted by Eric Blake, leave assertions enabled upon
3147         --enable-assert=INVALID.
3148
3149 2008-12-10  Bruno Haible  <bruno@clisp.org>
3150
3151         Change MODULES.html to refer to POSIX:2008 where possible.
3152         * MODULES.html.sh (POSIX2008_URL): New variable.
3153         (posix_headers): Remove sys/timeb, ucontext.
3154         (posix2001_headers): New variable.
3155         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
3156         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
3157         index, makecontext, mktemp, pthread_attr_getstackaddr,
3158         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
3159         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
3160         (posix2001_functions): New variable.
3161         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
3162         otherwise.
3163
3164 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3165
3166         add missing include to parse-duration.c
3167         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
3168         * modules/parse-duration (Depends-on): Add xalloc.
3169
3170         fix sed script reading maint.mk
3171         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
3172         (syntax-check-rules): Use it.
3173
3174 2008-12-09  Bruno Haible  <bruno@clisp.org>
3175
3176         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
3177         MacOS X 10.4/PowerPC.
3178         Reported by Simon Josefsson.
3179
3180 2008-12-08  Jim Meyering  <meyering@redhat.com>
3181
3182         work around mingw's lack of some S_IF definitions
3183         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
3184         Reported by Simon Josefsson.
3185
3186 2008-12-08  Bruno Haible  <bruno@clisp.org>
3187
3188         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
3189         applied to variables. Needed on MacOS X 10.4/PowerPC.
3190         Reported by Simon Josefsson.
3191
3192 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
3193         and Eric Blake  <ebb9@byu.net>
3194
3195         assert: honor --enable-assert
3196         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
3197         order to honor --enable-assert, rather than treating it as a
3198         synonym for --disable-assert.
3199
3200 2008-12-08  Jim Meyering  <meyering@redhat.com>
3201
3202         * lib/posixtm.c: Remove now-useless declaration of mktime.
3203
3204         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
3205
3206 2008-12-07  Bruno Haible  <bruno@clisp.org>
3207
3208         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
3209         test_once): Mark functions as static.
3210         * tests/test-tls.c (test_tls): Likewise.
3211
3212 2008-12-07  Bruno Haible  <bruno@clisp.org>
3213
3214         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
3215         iconv_register_autodetect.
3216
3217 2008-12-07  Jim Meyering  <meyering@redhat.com>
3218
3219         posixtm.c: avoid a warning
3220         * lib/posixtm.c (posixtime): Don't initialize tm0.
3221         It's no longer needed to placate gcc4's -Wuninitialized,
3222         and the attempt to placate would elicit a new warning.
3223
3224         unicodeio.c: mark unused parameters
3225         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3226         (fallback_failure_callback): Likewise.
3227
3228 2008-12-07  Bruno Haible  <bruno@clisp.org>
3229
3230         * gnulib-tool (func_create_testdir): When building the tests
3231         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
3232         Reported by Simon Josefsson.
3233
3234 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3235
3236         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
3237
3238 2008-12-06  Bruno Haible  <bruno@clisp.org>
3239
3240         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
3241         Suggested by Eric Blake.
3242
3243 2008-12-06  Bruno Haible  <bruno@clisp.org>
3244
3245         Fix a c-stack test failure on MacOS X.
3246         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
3247         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
3248         handler for SIGBUS as well.
3249         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
3250         install a signal handler for SIGBUS as well.
3251         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
3252
3253 2008-12-06  Bruno Haible  <bruno@clisp.org>
3254
3255         Advocacy documentation.
3256         * doc/gnulib-intro.texi (Benefits): New section.
3257         * doc/gnulib.texi: Update.
3258
3259 2008-12-06  Bruno Haible  <bruno@clisp.org>
3260
3261         Document the 'manywarnings' module.
3262         * doc/manywarnings.texi: New file.
3263         * doc/gnulib.texi: Include it.
3264
3265 2008-12-05  Eric Blake  <ebb9@byu.net>
3266
3267         tests: silence some gcc warnings
3268         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
3269         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
3270         type mismatches.
3271
3272 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3273             Bruno Haible  <bruno@clisp.org>
3274
3275         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
3276
3277 2008-11-29  Jim Meyering  <meyering@redhat.com>
3278
3279         unicodeio.c: mark unused parameters
3280         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
3281         (fallback_failure_callback): Likewise.
3282
3283         fts: fix a thinko
3284         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
3285         (set_stat_type): Return S_IF*-valued "type" directly.
3286         Prompted by James Youngman's spotting a related bug.
3287         Confirmed by further testing through find.
3288
3289         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
3290         * lib/fts.c (D_TYPE): Define.
3291         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
3292         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
3293         (s_ifmt_shift_bits): New function.
3294         (set_stat_type): New function.
3295         (fts_build): When not calling fts_stat, call set_stat_type
3296         to propagate dirent.d_type info to fts_read caller.
3297         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
3298         fts_statp->st_mode type information may be valid.
3299
3300 2008-11-28  Simon Josefsson  <simon@josefsson.org>
3301
3302         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
3303         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
3304         <sds@gnu.org>.
3305
3306 2008-11-20  Bruno Haible  <bruno@clisp.org>
3307
3308         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
3309         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
3310         INCLUDE_NEXT.
3311         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
3312         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
3313         * modules/math (Makefile.am): Substitute
3314         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
3315         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3316
3317 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
3318             Bruno Haible  <bruno@clisp.org>
3319
3320         * lib/stdint.in.h: Define all type macros so that their expansion is
3321         a single typedef'ed token. Fixes a compilation failure in Boost which
3322         does "using ::int8_t;".
3323
3324 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3325
3326         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
3327         gl_MANYWARN_ALL_GCC.
3328         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
3329         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
3330         * modules/manywarnings: New file.
3331         * MODULES.html.sh: Mention manywarnings module.
3332
3333 2008-11-18  Bruno Haible  <bruno@clisp.org>
3334
3335         * doc/gnulib-tool.texi (Unit tests): New section.
3336
3337 2008-11-18  Simon Josefsson  <simon@josefsson.org>
3338
3339         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
3340         paths like 'lib/po/foo.po'.
3341
3342 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3343
3344         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
3345         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
3346
3347 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3348
3349         * m4/warnings.m4: Use CPPFLAGS to really check whether the
3350         parameter works.
3351
3352 2008-11-17  Simon Josefsson  <simon@josefsson.org>
3353
3354         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
3355
3356 2008-11-17  Bruce Korb  <bkorb@gnu.org>
3357
3358         * modules/parse-duration-tests: New file.
3359         * tests/test-parse-duration.sh: New file.
3360         * tests/test-parse-duration.c: New file.
3361
3362         New module 'parse-duration'.
3363         * lib/parse-duration.h: New file.
3364         * lib/parse-duration.c: New file.
3365         * modules/parse-duration: New file.
3366
3367 2008-11-17  Bruno Haible  <bruno@clisp.org>
3368
3369         * tests/test-select-out.sh: Comment out the first pipe test.
3370         Reported by Simon Josefsson.
3371
3372 2008-11-17  Bruno Haible  <bruno@clisp.org>
3373
3374         * modules/getaddrinfo (Depends-on): Add servent, hostent.
3375         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
3376         gl_HOSTENT.
3377
3378 2008-11-17  Bruno Haible  <bruno@clisp.org>
3379
3380         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
3381         -lnetwork and -lnet. Needed for Haiku and BeOS.
3382
3383 2008-11-16  Bruno Haible  <bruno@clisp.org>
3384
3385         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
3386
3387 2008-11-16  Bruno Haible  <bruno@clisp.org>
3388
3389         Avoid test failure on Haiku.
3390         * tests/test-fsync.c: Include <errno.h>.
3391         (main): Don't require that fsync (0) fails.
3392
3393 2008-11-15  Bruno Haible  <bruno@clisp.org>
3394
3395         New module 'hostent'.
3396         * modules/hostent: New file.
3397         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
3398
3399 2008-11-15  Bruno Haible  <bruno@clisp.org>
3400
3401         New module 'servent'.
3402         * modules/servent: New file.
3403         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
3404
3405 2008-11-15  Bruno Haible  <bruno@clisp.org>
3406
3407         Avoid generating same test program with two different rules.
3408         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
3409         test-frexp to test-frexp-nolibm.
3410         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
3411         test-frexpl to test-frexpl-nolibm.
3412
3413 2008-11-15  Bruno Haible  <bruno@clisp.org>
3414
3415         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
3416         $(FREXPL_LIBM).
3417
3418 2008-11-15  Bruno Haible  <bruno@clisp.org>
3419
3420         * lib/netdb.in.h: Activate the definitions also when the system's
3421         <netdb.h> has 'struct addrinfo'.
3422         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
3423         EAI_OVERFLOW or AI_NUMERICSERV.
3424         * doc/posix-headers/netdb.texi: Document the problem.
3425
3426 2008-11-15  Bruno Haible  <bruno@clisp.org>
3427
3428         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
3429
3430         Make the 'sched' module work on platforms where <sched.h> exists but
3431         is incomplete (such as Haiku).
3432         * lib/sched.in.h; Include the system's <sched.h> if it exists.
3433         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
3434         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
3435         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
3436         HAVE_STRUCT_SCHED_PARAM.
3437         * modules/sched (Depends-on): Add include_next.
3438         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
3439         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
3440         * doc/posix-headers/sched.texi: Document the issue.
3441
3442 2008-11-13  Jim Meyering  <meyering@redhat.com>
3443
3444         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
3445         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
3446         test would fail due to the difference in the Report bugs to ...
3447         line.  The expected address is empty, "<>", while the actual
3448         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
3449
3450 2008-11-12  Bruno Haible  <bruno@clisp.org>
3451
3452         lstat: don't compile lstat.c on systems lacking lstat
3453         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
3454         which don't have lstat; this is handled by lib/sys_stat.in.h already.
3455         Reported by Daniel P. Berrange via Jim Meyering.
3456
3457 2008-11-12  Jim Meyering  <meyering@redhat.com>
3458
3459         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
3460
3461 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3462
3463         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
3464         instead.
3465
3466 2008-11-12  Bruno Haible  <bruno@clisp.org>
3467
3468         * lib/unicodeio.c: Include unistr.h.
3469         (utf8_wctomb): Remove function.
3470         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
3471
3472 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3473
3474         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
3475         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
3476         <bruno@clisp.org>.
3477         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
3478
3479 2008-11-12  Simon Josefsson  <simon@josefsson.org>
3480
3481         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
3482         * doc/gnulib.texi: Add section for warnings.
3483
3484 2008-11-11  Bruno Haible  <bruno@clisp.org>
3485
3486         * lib/sockets.h: Add a comment.
3487
3488 2008-11-11  Karl Berry  <karl@gnu.org>
3489
3490         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
3491
3492 2008-11-11  Eric Blake  <ebb9@byu.net>
3493
3494         fdl.texi: avoid git symlinks
3495         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
3496
3497 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3498
3499         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
3500
3501 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3502
3503         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
3504         (gl_WARN_ADD): Substitute $2 if literal.
3505
3506 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3507
3508         * m4/warning.m4: Remove.
3509
3510 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
3511
3512         * m4/warnings.m4: Almost complete rewrite. :-)
3513
3514 2008-11-10  Simon Josefsson  <simon@josefsson.org>
3515
3516         * modules/warnings: New module.
3517         * m4/warnings.m4: New file.
3518         * MODULES.html.sh: Mention warnings module.
3519         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
3520         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3521
3522 2008-11-10  Eric Blake  <ebb9@byu.net>
3523
3524         fdl.texi: make a symlink to the latest version
3525         * doc/standards.texi: Revert today's earlier change.
3526         * doc/fdl-1.2.texi: Rename from old fdl.texi...
3527         * doc/fdl.texi: ...and replace this with a symlink to the newer
3528         fdl-1.3.texi.
3529
3530 2008-11-10  Bruno Haible  <bruno@clisp.org>
3531
3532         * tests/test-select-fd.c (main): Accept the result file name as fourth
3533         argument.
3534         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
3535         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
3536
3537 2008-11-10  Bruno Haible  <bruno@clisp.org>
3538
3539         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
3540         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
3541         as autoconf-substituted macros.
3542         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
3543         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
3544         gl_NETDB_H_DEFAULTS. Set these variables.
3545         * modules/netdb (Makefile.am): Substitute these variables.
3546
3547 2008-11-10  Eric Blake  <ebb9@byu.net>
3548
3549         standards.texi: include correct file for FDL 1.3
3550         * doc/standards.texi (GNU Free Documentation License): Change
3551         include file to pull in FDL 1.3, not 1.2.
3552
3553         fdl.texi: revert accidental change to license
3554         * doc/fdl.texi: This is FDL 1.2, not 1.3.
3555
3556 2008-11-10  Bruno Haible  <bruno@clisp.org>
3557
3558         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
3559         cross-compiling guesses also when the native compile gives no result.
3560
3561 2008-11-10  Bruno Haible  <bruno@clisp.org>
3562
3563         * lib/spawni.c (__spawni): Force variable into the stack.
3564
3565 2008-11-10  Bruno Haible  <bruno@clisp.org>
3566
3567         Add support for Haiku.
3568         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
3569         glibc and BeOS, but also on Haiku.
3570         * lib/fpurge.c (fpurge): Likewise.
3571         * lib/freadable.c (freadable): Likewise.
3572         * lib/freadahead.c (freadahead): Likewise.
3573         * lib/freading.c (freading): Likewise.
3574         * lib/freadptr.c (freadptr): Likewise.
3575         * lib/freadseek.c (freadptrinc): Likewise.
3576         * lib/fseeko.c (rpl_fseeko): Likewise.
3577         * lib/fseterr.c (fseterr): Likewise.
3578         * lib/fwritable.c (fwritable): Likewise.
3579         * lib/fwriting.c (fwriting): Likewise.
3580         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
3581
3582 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
3583
3584         * lib/config.charset: Treat Haiku like BeOS.
3585
3586 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
3587
3588         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
3589         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
3590
3591 2008-11-08  Bruno Haible  <bruno@clisp.org>
3592
3593         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
3594         AC_CACHE_CHECK.
3595
3596 2008-11-08  Bruno Haible  <bruno@clisp.org>
3597
3598         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
3599
3600 2008-11-08  Bruno Haible  <bruno@clisp.org>
3601
3602         * tests/test-select-fd.c: New file.
3603         * tests/test-select-in.sh: New file.
3604         * tests/test-select-out.sh: New file.
3605         * tests/test-select-stdin.c: New file.
3606         * modules/select-tests (Files): Add the new files.
3607         (Depends-on): Add gettimeofday.
3608         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
3609         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
3610         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
3611
3612 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
3613             Bruno Haible  <bruno@clisp.org>
3614
3615         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
3616
3617 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
3618
3619         * build-aux/pmccabe2html: Added support for C++ source files.
3620
3621 2008-11-05  Ben Pfaff  <blp@gnu.org>
3622
3623         Fix lib/close.c build on Windows.
3624         * modules/close (Files): Add lib/w32sock.h.
3625
3626 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
3627
3628         Accept Bison's NEWS format.
3629         * build-aux/announce-gen (print_news_deltas): Tweak
3630         $re_prefix.
3631
3632 2008-11-04  Bruno Haible  <bruno@clisp.org>
3633
3634         * modules/random_r (Maintainer): Add glibc.
3635
3636 2008-11-04  Simon Josefsson  <simon@josefsson.org>
3637
3638         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
3639         by karl@freefriends.org (Karl Berry).
3640         * doc/alloca.texi: Likewise.
3641         * doc/c-ctype.texi: Likewise.
3642         * doc/c-strcase.texi: Likewise.
3643         * doc/c-strcaseeq.texi: Likewise.
3644         * doc/c-strcasestr.texi: Likewise.
3645         * doc/c-strstr.texi: Likewise.
3646         * doc/c-strtod.texi: Likewise.
3647         * doc/c-strtold.texi: Likewise.
3648         * doc/ctime.texi: Likewise.
3649         * doc/error.texi: Likewise.
3650         * doc/fdl.texi: Likewise.
3651         * doc/gcd.texi: Likewise.
3652         * doc/getdate.texi: Likewise.
3653         * doc/gnulib-intro.texi: Likewise.
3654         * doc/gnulib-tool.texi: Likewise.
3655         * doc/gnulib.texi: Likewise.
3656         * doc/inet_ntoa.texi: Likewise.
3657         * doc/maintain.texi: Likewise.
3658         * doc/make-stds.texi: Likewise.
3659         * doc/quote.texi: Likewise.
3660         * doc/regexprops-generic.texi: Likewise.
3661         * doc/standards.texi: Likewise.
3662         * doc/verify.texi: Likewise.
3663         * doc/visibility.texi: Likewise.
3664         * doc/gnulib.texi (GNU Free Documentation License): Include
3665         fdl-1.3.texi instead of fdl.texi.
3666
3667 2008-11-04  Simon Josefsson  <simon@josefsson.org>
3668
3669         * doc/fdl-1.3.texi: New file, from
3670         <http://www.gnu.org/licenses/fdl-1.3.texi>.
3671         * modules/fdl-1.3: Add.
3672         * MODULES.html.sh: Add fdl-1.3.
3673
3674 2008-11-03  Bruno Haible  <bruno@clisp.org>
3675
3676         Make determination of absolute name of header file work with AIX xlc.
3677         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
3678         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
3679         preprocessing.
3680         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
3681         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
3682
3683 2008-11-03  Simon Josefsson  <simon@josefsson.org>
3684
3685         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
3686         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
3687         <ludo@gnu.org>.
3688
3689 2008-11-02  Bruno Haible  <bruno@clisp.org>
3690
3691         Mark 'strpbrk' obsolete.
3692         * modules/strpbrk (Status, Notice): New sections.
3693         * modules/strtok_r (Depends-on): Add strpbrk.
3694
3695 2008-11-02  Bruno Haible  <bruno@clisp.org>
3696
3697         Mark 'strdup' obsolete.
3698         * modules/strdup (Status, Notice): New sections.
3699         * modules/findprog (Depends-on): Add strdup.
3700         * modules/getaddrinfo (Depends-on): Likewise.
3701         * modules/localename (Depends-on): Likewise.
3702         * modules/relocatable-lib (Depends-on): Likewise.
3703         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
3704         * modules/relocatable-prog (Depends-on): Likewise.
3705         * modules/trim (Depends-on): Likewise.
3706         * modules/unictype/gen-ctype (Depends-on): Likewise.
3707         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
3708
3709 2008-11-02  Bruno Haible  <bruno@clisp.org>
3710
3711         Mark 'strcspn' obsolete.
3712         * modules/strcspn (Status, Notice): New sections.
3713
3714 2008-11-02  Bruno Haible  <bruno@clisp.org>
3715
3716         Mark 'rmdir' obsolete.
3717         * modules/rmdir (Status, Notice): New sections.
3718         * modules/clean-temp (Depends-on): Add rmdir.
3719         * modules/openat (Depends-on): Likewise.
3720
3721 2008-11-02  Bruno Haible  <bruno@clisp.org>
3722
3723         Mark 'raise' obsolete.
3724         * modules/raise (Status, Notice): New sections.
3725         (Include): Specify <signal.h>.
3726         * modules/stdio (Depends-on): Add raise.
3727         * modules/write (Depends-on): Likewise.
3728
3729 2008-11-02  Bruno Haible  <bruno@clisp.org>
3730
3731         Mark 'memset' obsolete.
3732         * modules/memset (Status, Notice): New sections.
3733
3734 2008-11-02  Bruno Haible  <bruno@clisp.org>
3735
3736         Mark 'memmove' obsolete.
3737         * modules/memmove (Status, Notice): New sections.
3738         * modules/argp (Depends-on): Add memmove.
3739         * modules/argz (Depends-on): Likewise.
3740         * modules/canonicalize (Depends-on): Likewise.
3741         * modules/canonicalize-lgpl (Depends-on): Likewise.
3742         * modules/fts (Depends-on): Likewise.
3743         * modules/getcwd (Depends-on): Likewise.
3744         * modules/human (Depends-on): Likewise.
3745         * modules/regex (Depends-on): Likewise.
3746         * modules/striconveh (Depends-on): Likewise.
3747         * modules/trim (Depends-on): Likewise.
3748         * modules/unistr/u8-move (Depends-on): Likewise.
3749         * modules/unistr/u16-move (Depends-on): Likewise.
3750         * modules/unistr/u32-move (Depends-on): Likewise.
3751
3752 2008-11-02  Bruno Haible  <bruno@clisp.org>
3753
3754         Mark 'memcpy' obsolete.
3755         * modules/memcpy (Status, Notice): New sections.
3756
3757 2008-11-02  Bruno Haible  <bruno@clisp.org>
3758
3759         Mark 'memcmp' obsolete.
3760         * modules/memcmp (Status, Notice): New sections.
3761         * modules/argmatch (Depends-on): Add memchr.
3762         * modules/backupfile (Depends-on): Likewise.
3763         * modules/c-strcasestr (Depends-on): Likewise.
3764         * modules/crypto/des (Depends-on): Likewise.
3765         * modules/csharpcomp (Depends-on): Likewise.
3766         * modules/fnmatch (Depends-on): Likewise.
3767         * modules/git-merge-changelog (Depends-on): Likewise.
3768         * modules/isnand (Depends-on): Likewise.
3769         * modules/isnand-nolibm (Depends-on): Likewise.
3770         * modules/isnanf (Depends-on): Likewise.
3771         * modules/isnanf-nolibm (Depends-on): Likewise.
3772         * modules/isnanl (Depends-on): Likewise.
3773         * modules/isnanl-nolibm (Depends-on): Likewise.
3774         * modules/mbchar (Depends-on): Likewise.
3775         * modules/memcoll (Depends-on): Likewise.
3776         * modules/quotearg (Depends-on): Likewise.
3777         * modules/regex (Depends-on): Likewise.
3778         * modules/relocatable-prog (Depends-on): Likewise.
3779         * modules/same (Depends-on): Likewise.
3780         * modules/signbit (Depends-on): Likewise.
3781         * modules/strcasestr-simple (Depends-on): Likewise.
3782         * modules/unictype/gen-ctype (Depends-on): Likewise.
3783         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
3784         * modules/uniname/uniname (Depends-on): Likewise.
3785         * modules/unistr/u8-cmp (Depends-on): Likewise.
3786
3787 2008-11-02  Bruno Haible  <bruno@clisp.org>
3788
3789         Mark 'memchr' obsolete.
3790         * modules/memchr (Status, Notice): New sections.
3791         * modules/argp (Depends-on): Add memchr.
3792         * modules/base64 (Depends-on): Likewise.
3793         * modules/c-strcasestr (Depends-on): Likewise.
3794         * modules/chdir-long (Depends-on): Likewise.
3795         * modules/fnmatch (Depends-on): Likewise.
3796         * modules/getsubopt (Depends-on): Likewise.
3797         * modules/git-merge-changelog (Depends-on): Likewise.
3798         * modules/glob (Depends-on): Likewise.
3799         * modules/strcasestr-simple (Depends-on): Likewise.
3800         * modules/strnlen (Depends-on): Likewise.
3801
3802 2008-11-02  Bruno Haible  <bruno@clisp.org>
3803
3804         Mark 'atexit' obsolete.
3805         * modules/atexit (Status, Notice): New sections.
3806         * modules/chdir-long (Depends-on): Add atexit.
3807         * modules/wait-process (Depends-on): Likewise.
3808
3809 2008-11-02  Bruno Haible  <bruno@clisp.org>
3810
3811         * gnulib-tool: New option --with-obsolete.
3812         (func_usage): Document it.
3813         (func_modules_transitive_closure): Drop obsolete dependencies if
3814         incobsolete is not true.
3815         (func_import): Read and save the incobsolete variable to the cache.
3816
3817 2008-11-02  Bruno Haible  <bruno@clisp.org>
3818
3819         * modules/TEMPLATE-EXTENDED: New field 'Status'.
3820         * gnulib-tool: New option --extract-status.
3821         (func_usage): Document it.
3822         (sed_extract_prog): Recognize it.
3823         (func_get_status): New function.
3824
3825 2008-10-30  Simon Josefsson  <simon@josefsson.org>
3826
3827         * modules/sockets (License): Change from LGPL to LGPLv2+.
3828
3829 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3830
3831         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
3832
3833 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3834
3835         * MODULES.html.sh (Support for systems lacking POSIX:2001):
3836         Mention times and sys_times.
3837         * modules/sys_times, modules/sys_times-tests: New modules.
3838         * modules/times, modules/times-tests: Likewise
3839         * m4/sys_times_h.m4: New file.
3840         * lib/sys_times.in.h: Likewise
3841         * lib/times.c: Likewise.
3842         * tests/test-sys_times.c: Likewise.
3843         * tests/test-times.c: Likewise.
3844         * doc/posix-headers/sys_times.texi: Update.
3845         * doc/posix-functions/times.texi: Update.
3846
3847 2008-10-28  Jim Meyering  <meyering@redhat.com>
3848
3849         * modules/tempname (Depends-on): Add lstat.
3850
3851         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
3852
3853 2008-10-28  Simon Josefsson  <simon@josefsson.org>
3854
3855         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
3856         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
3857         using idiom used elsewhere in gnulib.
3858
3859 2008-10-27  Jim Meyering  <meyering@redhat.com>
3860
3861         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
3862
3863 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3864
3865         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
3866         TESTS_ENVIRONMENT, for shell scripts that needs to call built
3867         programs.
3868         * tests/test-argp-2.sh: Use $EXEEXT when needed.
3869
3870 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3871
3872         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
3873
3874 2008-10-27  Bruno Haible  <bruno@clisp.org>
3875
3876         * tests/test-lstat.c: Include <stdio.h>.
3877
3878 2008-10-27  Simon Josefsson  <simon@josefsson.org>
3879
3880         * modules/lstat-tests: New module.
3881         * tests/test-lstat.c: New file.
3882
3883 2008-10-26  Jim Meyering  <meyering@redhat.com>
3884
3885         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
3886
3887 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3888             Bruno Haible  <bruno@clisp.org>
3889
3890         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
3891         * modules/configmake (Include): Add a note that the include must come
3892         after all system headers.
3893         * lib/javaversion.c: Include configmake.h after all other includes.
3894
3895 2008-10-26  Bruno Haible  <bruno@clisp.org>
3896
3897         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
3898         HAVE_STRUCT_RANDOM_DATA to 1.
3899         (gl_STDLIB_H): Simplify.
3900
3901 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3902
3903         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
3904         substitute HAVE_STRUCT_RANDOM_DATA.
3905         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
3906         random_data.
3907         * modules/stdlib (Makefile.am): Substitute
3908         HAVE_STRUCT_RANDOM_DATA.
3909
3910 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3911
3912         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
3913         * doc/gnulib-intro.texi (Copyright): Likewise.
3914
3915 2008-10-26  Simon Josefsson  <simon@josefsson.org>
3916
3917         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
3918         findings.
3919
3920 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
3921             Bruno Haible  <bruno@clisp.org>
3922
3923         * lib/unistd.in.h: Include <winsock2.h>.
3924         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
3925         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
3926         Provide dummy declarations.
3927         (gethostname): Override.
3928         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
3929         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
3930         gl_PREREQ_SYS_H_WINSOCK2.
3931         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
3932         * doc/posix-functions/gethostname.texi: More details.
3933
3934 2008-10-25  Bruno Haible  <bruno@clisp.org>
3935
3936         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
3937         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
3938         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
3939
3940         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
3941         here ...
3942         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
3943         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
3944         gl_UNISTD_H_DEFAULTS.
3945
3946 2008-10-25  Eric Blake  <ebb9@byu.net>
3947
3948         signbit: avoid spurious compiler failure
3949         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
3950         declarations inside function.
3951
3952 2008-10-24  Simon Josefsson  <simon@josefsson.org>
3953             Bruno Haible  <bruno@clisp.org>
3954
3955         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
3956         * modules/random_r (Depends-on): Add stdint.
3957
3958 2008-10-24  Bruno Haible  <bruno@clisp.org>
3959
3960         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
3961         Eggert.
3962         * modules/strerror (License): Likewise.
3963
3964 2008-10-24  Jim Meyering  <meyering@redhat.com>
3965
3966         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
3967         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
3968
3969 2008-10-24  Eric Blake  <ebb9@byu.net>
3970
3971         getgroups: fix compilation when getgroups is available
3972         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
3973         but with <config.h> override of getgroups disabled.
3974
3975 2008-10-24  Simon Josefsson  <simon@josefsson.org>
3976
3977         * doc/gnulib.texi (Header files): Add note about C++ problems.
3978         Explained by Bruno Haible <bruno@clisp.org>.
3979
3980 2008-10-23  Bruno Haible  <bruno@clisp.org>
3981
3982         Define a dummy SA_NODEFER macro on Interix.
3983         * lib/signal.in.h (SA_NODEFER): Define fallback.
3984         Reported by Aleksey Cheusov <cheusov@tut.by> via
3985         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
3986
3987 2008-10-23  Bruno Haible  <bruno@clisp.org>
3988
3989         * modules/freadahead (License): Change to LGPLv2+.
3990         Suggested by Simon Josefsson.
3991
3992 2008-10-23  Jim Meyering  <meyering@redhat.com>
3993
3994         random_r: new module
3995         * modules/random_r: New file.
3996         * m4/random_r.m4: New file.
3997         * lib/random_r.c: New file, from glibc.
3998         * modules/random_r-tests: New file.
3999         * tests/test-random_r.c: New file.
4000         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
4001          Declare.
4002         (RAND_MAX): Define.
4003         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
4004         * modules/stdlib: Substitute them, too.
4005         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
4006         * doc/glibc-functions/initstate_r.texi: Mention the new module.
4007         * doc/glibc-functions/random_r.texi: Likewise.
4008         * doc/glibc-functions/setstate_r.texi: Likewise.
4009         * doc/glibc-functions/srandom_r.texi: Likewise.
4010         * config/srclist.txt: Mention it.
4011
4012 2008-10-23  David Lutterkort  <lutter@redhat.com>
4013
4014         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
4015         link requirement
4016
4017 2008-10-23  Jim Meyering  <meyering@redhat.com>
4018
4019         selinux-h: mark parameters of stub functions as intentionally unused
4020         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
4021         * lib/se-context.in.h: Likewise.
4022
4023 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4024
4025         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
4026
4027 2008-10-22  Simon Josefsson  <simon@josefsson.org>
4028
4029         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
4030
4031 2008-10-22  Eric Blake  <ebb9@byu.net>
4032
4033         glthread/thread: avoid compiler warning
4034         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
4035         Add unreachable abort to silence compiler.
4036
4037 2008-10-22  Eric Blake  <ebb9@byu.net>
4038
4039         netdb: also supply struct addrinfo for cygwin 1.5.x
4040         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
4041         older cygwin.
4042         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
4043         cygwin.
4044         * doc/posix-headers/netdb.texi (netdb.h): Document this.
4045
4046 2008-10-22  Bruno Haible  <bruno@clisp.org>
4047
4048         * users.txt: Update entry about pspp.
4049
4050 2008-10-21  Bruno Haible  <bruno@clisp.org>
4051
4052         Simplification.
4053         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
4054         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
4055
4056         Simplification.
4057         * lib/ioctl.c (ioctl): Don't undefine.
4058         * lib/socket.c (socket): Don't undefine.
4059
4060         Remove unused module indicator macros.
4061         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
4062         GNULIB_$1 as a C macro.
4063
4064         * doc/posix-functions/close.texi: Undo last change.
4065         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
4066         Windows platforms.
4067
4068 2008-10-21  Bruno Haible  <bruno@clisp.org>
4069
4070         Add gethostname() declaration to <unistd.h>.
4071         * lib/unistd.in.h (gethostname): New declaration.
4072         * lib/gethostname.c: Include <unistd.h>.
4073         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
4074         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
4075         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
4076         and HAVE_GETHOSTNAME.
4077         * modules/gethostname (Depends-on): Add unistd.
4078         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4079         (Include): Specify <unistd.h>.
4080         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
4081         HAVE_GETHOSTNAME.
4082         * tests/test-gethostname.c: Include <unistd.h> first.
4083
4084 2008-10-21  Bruno Haible  <bruno@clisp.org>
4085
4086         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
4087         * modules/select-tests (Depends-on): Likewise.
4088         Reported by Simon Josefsson.
4089
4090 2008-10-21  Simon Josefsson  <simon@josefsson.org>
4091
4092         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
4093         * lib/accept.c: New file, based on winsock.c.
4094         * lib/bind.c: New file, based on winsock.c.
4095         * lib/connect.c: New file, based on winsock.c.
4096         * lib/getpeername.c: New file, based on winsock.c.
4097         * lib/getsockname.c: New file, based on winsock.c.
4098         * lib/getsockopt.c: New file, based on winsock.c.
4099         * lib/ioctl.c: New file, based on winsock.c.
4100         * lib/listen.c: New file, based on winsock.c.
4101         * lib/recv.c: New file, based on winsock.c.
4102         * lib/recvfrom.c: New file, based on winsock.c.
4103         * lib/send.c: New file, based on winsock.c.
4104         * lib/sendto.c: New file, based on winsock.c.
4105         * lib/setsockopt.c: New file, based on winsock.c.
4106         * lib/shutdown.c: New file, based on winsock.c.
4107         * lib/socket.c: New file, based on winsock.c.
4108         * lib/w32sock.h: New file, based on winsock.c.
4109         * lib/winsock.c: Remove file.
4110         * modules/accept: Likewise.
4111         * modules/bind: Likewise.
4112         * modules/connect: Likewise.
4113         * modules/getpeername: Likewise.
4114         * modules/getsockname: Likewise.
4115         * modules/getsockopt: Likewise.
4116         * modules/ioctl: Likewise.
4117         * modules/listen: Likewise.
4118         * modules/recv: Likewise.
4119         * modules/recvfrom: Likewise.
4120         * modules/send: Likewise.
4121         * modules/sendto: Likewise.
4122         * modules/setsockopt: Likewise.
4123         * modules/shutdown: Likewise.
4124         * modules/socket: Use socket.c instead of winsock.c.
4125         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
4126         * doc/posix-functions/accept.texi: Doc fix.
4127         * doc/posix-functions/bind.texi: Doc fix.
4128         * doc/posix-functions/close.texi: Doc fix.
4129         * doc/posix-functions/connect.texi: Doc fix.
4130         * doc/posix-functions/getpeername.texi: Doc fix.
4131         * doc/posix-functions/getsockname.texi: Doc fix.
4132         * doc/posix-functions/getsockopt.texi: Doc fix.
4133         * doc/posix-functions/ioctl.texi: Doc fix.
4134         * doc/posix-functions/listen.texi: Doc fix.
4135         * doc/posix-functions/recv.texi: Doc fix.
4136         * doc/posix-functions/recvfrom.texi: Doc fix.
4137         * doc/posix-functions/send.texi: Doc fix.
4138         * doc/posix-functions/sendto.texi: Doc fix.
4139         * doc/posix-functions/setsockopt.texi: Doc fix.
4140         * doc/posix-functions/shutdown.texi: Doc fix.
4141         * doc/posix-functions/socket.texi: Doc fix.
4142
4143 2008-10-20  Bruno Haible  <bruno@clisp.org>
4144
4145         Take into account the role of SIGABRT_COMPAT on Windows 2008.
4146         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
4147         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
4148         as an alias for SIGABRT.
4149         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
4150         (sigaction): Map it to SIGABRT.
4151         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
4152
4153 2008-10-20  Bruno Haible  <bruno@clisp.org>
4154
4155         * lib/fts.c: Don't include lstat.h.
4156         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
4157
4158         Move the lstat() declaration to <sys/stat.h>.
4159         * lib/lstat.h: Remove file.
4160         * lib/sys_stat.in.h: Add special invocation convention.
4161         (lstat): New declaration.
4162         * lib/lstat.c (orig_lstat): New function.
4163         (rpl_lstat): Use orig_lstat instead of lstat.
4164         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
4165         AC_C_INLINE. Set REPLACE_LSTAT.
4166         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
4167         and REPLACE_LSTAT.
4168         * modules/lstat (Files): Remove lib/lstat.h.
4169         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4170         (Include): Specify <sys/stat.h> instead of lstat.h.
4171         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
4172         REPLACE_LSTAT.
4173         * NEWS: Mention the change.
4174
4175 2008-10-20  Bruno Haible  <bruno@clisp.org>
4176
4177         * modules/posix_spawn-tests: New file.
4178         * tests/test-posix_spawn3.c: New file.
4179
4180 2008-10-20  Bruno Haible  <bruno@clisp.org>
4181
4182         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
4183         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4184         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
4185         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
4186         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
4187
4188 2008-10-20  Bruno Haible  <bruno@clisp.org>
4189
4190         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
4191         of posix_spawn on AIX 5.3.
4192
4193 2008-10-20  Bruno Haible  <bruno@clisp.org>
4194
4195         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
4196
4197 2008-10-20  Bruno Haible  <bruno@clisp.org>
4198
4199         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
4200         of AC_LANG_PROGRAM.
4201
4202 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4203
4204         * lib/netdb.in.h: Don't define GNU specific constants until they
4205         are supported or needed.  Reported by Bruno Haible
4206         <bruno@clisp.org>.
4207
4208 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4209
4210         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
4211
4212 2008-10-20  Simon Josefsson  <simon@josefsson.org>
4213
4214         * lib/getaddrinfo.h: Remove file.
4215         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
4216         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
4217         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
4218         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
4219         * modules/netdb: Substitute GNULIB_GETADDRINFO.
4220         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
4221         * tests/test-getaddrinfo.c: Likewise.
4222         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
4223         * NEWS: Mention change.
4224
4225 2008-10-19  Bruno Haible  <bruno@clisp.org>
4226
4227         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
4228
4229 2008-10-19  Bruno Haible  <bruno@clisp.org>
4230
4231         * lib/wait-process.c: Include simply <sys/wait.h>.
4232         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
4233         WIFSTOPPED): Remove fallback definitions.
4234         * modules/wait-process (Depends-on): Add sys_wait.
4235
4236         New module 'sys_wait'.
4237         * modules/sys_wait: New file.
4238         * lib/sys_wait.in.h: New file, partially copied from
4239         lib/wait-process.c.
4240         * m4/sys_wait_h.m4: New file.
4241         * doc/posix-headers/sys_wait.texi: Mention the new module.
4242
4243 2008-10-19  Bruno Haible  <bruno@clisp.org>
4244
4245         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
4246
4247 2008-10-19  Bruno Haible  <bruno@clisp.org>
4248
4249         Assume that waitpid() fills an 'int' status, not a 'union wait'.
4250         * lib/wait-process.c (WAIT_T): Remove type.
4251         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
4252         (wait_subprocess): Update.
4253
4254 2008-10-19  Bruno Haible  <bruno@clisp.org>
4255
4256         New module 'atoll'.
4257         * modules/atoll: New file.
4258         * lib/stdlib.in.h (atoll): New declaration.
4259         * lib/atoll.c: New file, from glibc with modifications.
4260         * m4/atoll.m4: New file.
4261         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
4262         HAVE_ATOLL.
4263         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
4264         * doc/posix-functions/atoll.texi: Mention the new module.
4265
4266 2008-10-19  Bruno Haible  <bruno@clisp.org>
4267
4268         Add strtoull() declaration to <stdlib.h>.
4269         * lib/stdlib.in.h (strtoull): New declaration.
4270         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4271         Set HAVE_STRTOULL.
4272         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
4273         HAVE_STRTOULL.
4274         * modules/strtoull (Depends-on): Add stdlib.
4275         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4276         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
4277         HAVE_STRTOULL.
4278
4279 2008-10-19  Bruno Haible  <bruno@clisp.org>
4280
4281         Add strtoll() declaration to <stdlib.h>.
4282         * lib/stdlib.in.h (strtoll): New declaration.
4283         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
4284         Set HAVE_STRTOLL.
4285         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
4286         HAVE_STRTOLL.
4287         * modules/strtoll (Depends-on): Add stdlib.
4288         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4289         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
4290
4291 2008-10-19  Bruno Haible  <bruno@clisp.org>
4292
4293         * modules/bcopy (Depends-on): Add strings.
4294         (Include): Specify <strings.h>.
4295
4296 2008-10-19  Bruno Haible  <bruno@clisp.org>
4297
4298         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
4299
4300 2008-10-19  Bruno Haible  <bruno@clisp.org>
4301
4302         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
4303         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
4304         mingw.
4305
4306 2008-10-19  Bruno Haible  <bruno@clisp.org>
4307
4308         * lib/atanl.c: Don't include isnanl.h.
4309         * lib/cosl.c: Likewise.
4310         * lib/ldexpl.c: Likewise.
4311         * lib/logl.c: Likewise.
4312         * lib/sinl.c: Likewise.
4313         * lib/sqrtl.c: Likewise.
4314         * lib/tanl.c: Likewise.
4315
4316         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
4317         * lib/isnanf.h: Remove file.
4318         * lib/isnand.h: Remove file.
4319         * lib/isnanl.h: Remove file.
4320         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
4321         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
4322         macros.
4323         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
4324         HAVE_ISNANF, don't define it as a C macro.
4325         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
4326         HAVE_ISNAND, don't define it as a C macro.
4327         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
4328         HAVE_ISNANL, don't define it as a C macro.
4329         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
4330         HAVE_ISNAN[FDL].
4331         * modules/isnanf (Files): Remove lib/isnanf.h.
4332         (Depends-on): Add math.
4333         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4334         (Include): Specify <math.h> instead of isnanf.h.
4335         * modules/isnand (Files): Remove lib/isnand.h.
4336         (Depends-on): Add math.
4337         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4338         (Include): Specify <math.h> instead of isnand.h.
4339         * modules/isnanl (Files): Remove lib/isnanl.h.
4340         (Depends-on): Add math.
4341         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
4342         (Include): Specify <math.h> instead of isnanl.h.
4343         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
4344         HAVE_ISNAN[FDL].
4345         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
4346         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
4347         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
4348         * NEWS: Mention the change.
4349
4350 2008-10-18  Bruno Haible  <bruno@clisp.org>
4351
4352         Add getusershell(), setusershell(), endusershell() declarations to
4353         <unistd.h>.
4354         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
4355         declarations.
4356         * lib/getusershell.c: Include unistd.h.
4357         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
4358         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4359         HAVE_GETUSERSHELL.
4360         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
4361         and HAVE_GETUSERSHELL.
4362         * modules/getusershell (Depends-on): Add unistd, extensions.
4363         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4364         (Include): Specify <unistd.h>.
4365         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
4366         HAVE_GETUSERSHELL.
4367
4368 2008-10-18  Bruno Haible  <bruno@clisp.org>
4369
4370         Add a getloadavg() declaration to <stdlib.h>.
4371         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
4372         getloadavg declaration.
4373         (getloadavg): New declaration.
4374         * lib/getloadavg.c: Include <stdlib.h> first.
4375         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
4376         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
4377         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
4378         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
4379         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4380         * modules/getloadavg (Depends-on): Add stdlib, extensions.
4381         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
4382         (Include): Specify <stdlib.h>.
4383         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
4384         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
4385
4386 2008-10-18  Bruno Haible  <bruno@clisp.org>
4387
4388         * lib/dirchownmod.c: Don't include lchmod.h.
4389
4390         Move the lchmod() declaration to <sys/stat.h>.
4391         * lib/lchmod.h: Remove file.
4392         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
4393         (lchmod): New declaration, moved here from lib/lchown.h.
4394         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
4395         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
4396         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
4397         and HAVE_LCHMOD.
4398         * modules/lchmod (Files): Remove lib/lchmod.h.
4399         (Depends-on): Add sys_stat, extensions.
4400         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
4401         (Include): Specify <sys/stat.h> instead of lchmod.h.
4402         * modules/sys_stat (Depends-on): Add link-warning.
4403         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
4404         definition of GL_LINK_WARNING.
4405         * NEWS: Mention the change.
4406
4407 2008-10-18  Bruno Haible  <bruno@clisp.org>
4408
4409         * lib/fchdir.c: Don't include dirfd.h.
4410         * lib/fts.c: Likewise.
4411         * lib/getcwd.c: Likewise.
4412         * lib/glob.c: Likewise.
4413
4414         Move the dirfd() declaration to <dirent.h>.
4415         * lib/dirfd.h: Remove file.
4416         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
4417         (dirfd): New declaration.
4418         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
4419         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
4420         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
4421         HAVE_DECL_DIRFD.
4422         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
4423         HAVE_DECL_DIRFD.
4424         * modules/dirfd (Files): Remove lib/dirfd.h.
4425         (Depends-on): Add dirent, extensions.
4426         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
4427         (Include): Specify <dirent.h> instead of dirfd.h.
4428         * modules/dirent (Depends-on): Add link-warning.
4429         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
4430         definition of GL_LINK_WARNING.
4431         * NEWS: Mention the change.
4432
4433 2008-10-18  Bruno Haible  <bruno@clisp.org>
4434
4435         Move the euidaccess() declaration to <unistd.h>.
4436         * lib/euidaccess.h: Remove file.
4437         * lib/unistd.in.h (euidaccess): New declaration.
4438         * lib/euidaccess.c: Don't include euidaccess.h.
4439         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
4440         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
4441         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
4442         and HAVE_EUIDACCESS.
4443         * modules/euidaccess (Files): Remove lib/euidaccess.h.
4444         (Depends-on): Add unistd.
4445         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4446         (Include): Specify <unistd.h> instead of euidaccess.h.
4447         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
4448         HAVE_EUIDACCESS.
4449         * NEWS: Mention the change.
4450
4451 2008-10-18  Bruno Haible  <bruno@clisp.org>
4452
4453         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
4454
4455         Move the getdomainname() declaration to <unistd.h>.
4456         * lib/getdomainname.h: Remove file.
4457         * lib/unistd.in.h (getdomainname): New declaration.
4458         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
4459         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
4460         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
4461         HAVE_GETDOMAINNAME.
4462         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4463         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
4464         * modules/getdomainname (Files): Remove lib/getdomainname.h.
4465         (Depends-on): Add unistd, extensions.
4466         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
4467         (Includes): Specify <unistd.h> instead of getdomainname.h.
4468         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
4469         HAVE_GETDOMAINNAME.
4470         * NEWS: Mention the change.
4471
4472 2008-10-18  Bruno Haible  <bruno@clisp.org>
4473
4474         * modules/dirent: New file.
4475         * m4/dirent_h.m4: New file.
4476         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
4477         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
4478         * modules/fchdir (Files): Remove lib/dirent.in.h.
4479         (Depends-on): Add dirent.
4480         (Makefile.am): Move rules to modules/dirent.
4481         * doc/posix-headers/dirent.texi: Mention the new module.
4482
4483 2008-10-18  Bruno Haible  <bruno@clisp.org>
4484
4485         Avoid -Wunused-parameter warnings in public gnulib header files.
4486         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
4487         macro.
4488         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
4489
4490 2008-10-18  Bruno Haible  <bruno@clisp.org>
4491
4492         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
4493         * doc/glibc-functions/error.texi: Mention the module 'error'.
4494         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
4495         * doc/glibc-functions/getdomainname.texi: Mention the module
4496         'getdomainname'.
4497         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
4498         * doc/glibc-functions/getpagesize.texi: Mention the module
4499         'getpagesize'.
4500         * doc/glibc-functions/getusershell.texi: Mention the module
4501         'getusershell'.
4502         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
4503         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
4504         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
4505         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
4506         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
4507         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
4508         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
4509         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
4510         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
4511         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
4512         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
4513         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
4514         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
4515         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
4516
4517 2008-10-17  Bruno Haible  <bruno@clisp.org>
4518
4519         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
4520         HP-UX and IRIX, use -0.0L.
4521         * tests/test-ceill.c (minus_zero): Likewise.
4522         * tests/test-floorl.c (minus_zero): Likewise.
4523         * tests/test-frexpl.c (minus_zero): Likewise.
4524         * tests/test-isnan.c (minus_zerol): Likewise.
4525         * tests/test-isnanl.h (minus_zero): Likewise.
4526         * tests/test-ldexpl.c (minus_zero): Likewise.
4527         * tests/test-roundl.c (minus_zero): Likewise.
4528         * tests/test-signbit.c (minus_zerol): Likewise.
4529         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
4530         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
4531         * tests/test-truncl.c (minus_zero): Likewise.
4532         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
4533         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
4534         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
4535         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
4536
4537 2008-10-17  Bruno Haible  <bruno@clisp.org>
4538
4539         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
4540         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
4541         that it gets activated only for gcc >= 3.0.
4542         * lib/dirent.in.h: Likewise.
4543         * lib/errno.in.h: Likewise.
4544         * lib/fcntl.in.h: Likewise.
4545         * lib/float.in.h: Likewise.
4546         * lib/iconv.in.h: Likewise.
4547         * lib/inttypes.in.h: Likewise.
4548         * lib/locale.in.h: Likewise.
4549         * lib/math.in.h: Likewise.
4550         * lib/netdb.in.h: Likewise.
4551         * lib/netinet_in.in.h: Likewise.
4552         * lib/search.in.h: Likewise.
4553         * lib/signal.in.h: Likewise.
4554         * lib/spawn.in.h: Likewise.
4555         * lib/stdarg.in.h: Likewise.
4556         * lib/stdint.in.h: Likewise.
4557         * lib/stdio.in.h: Likewise.
4558         * lib/stdlib.in.h: Likewise.
4559         * lib/string.in.h: Likewise.
4560         * lib/strings.in.h: Likewise.
4561         * lib/sys_file.in.h: Likewise.
4562         * lib/sys_ioctl.in.h: Likewise.
4563         * lib/sys_select.in.h: Likewise.
4564         * lib/sys_socket.in.h: Likewise.
4565         * lib/sys_stat.in.h: Likewise.
4566         * lib/sys_time.in.h: Likewise.
4567         * lib/sysexits.in.h: Likewise.
4568         * lib/time.in.h: Likewise.
4569         * lib/unistd.in.h: Likewise.
4570         * lib/wchar.in.h: Likewise.
4571         * lib/wctype.in.h: Likewise.
4572         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4573
4574 2008-10-17  Jim Meyering  <meyering@redhat.com>
4575
4576         ignore-value: don't depend on inline module
4577         * modules/ignore-value (Depends-on): Remove 'inline'.
4578         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
4579         Suggestion from Bruno Haible.
4580
4581 2008-10-17  Bruno Haible  <bruno@clisp.org>
4582
4583         New implementation of condition variables for Win32.
4584         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
4585         (gl_linked_waitqueue_t): New type.
4586         (gl_cond_t): Use it.
4587         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
4588         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
4589         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
4590         (glthread_cond_init_func, glthread_cond_wait_func,
4591         glthread_cond_timedwait_func, glthread_cond_signal_func,
4592         glthread_cond_broadcast_func, glthread_cond_destroy_func):
4593         Reimplemented on the basis of gl_linked_waitqueue_t.
4594         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
4595         gl_waitqueue_t.
4596         (gl_rwlock_t): Update.
4597         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
4598
4599 2008-10-17  Simon Josefsson  <simon@josefsson.org>
4600
4601         * modules/recvfrom (Depends-on): Add dependency on getpeername.
4602         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
4603
4604 2008-10-17  Jim Meyering  <meyering@redhat.com>
4605
4606         ignore-value: new module
4607         * modules/ignore-value: New file.
4608         * lib/ignore-value.h: New file.
4609         * MODULES.html.sh (Compiler warning management): New section,
4610         just for this module.  More to come.
4611
4612 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4613
4614         open-safer.c: avoid 'signed and unsigned in conditional...' warning
4615         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
4616         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
4617
4618 2008-10-16  Jim Meyering  <meyering@redhat.com>
4619
4620         openat-die.c: avoid 'no previous prototype' warning
4621         * lib/openat-die.c: Include "openat.h".
4622         Reported by Reuben Thomas <rrt@sc3d.org>.
4623
4624 2008-10-16  Simon Josefsson  <simon@josefsson.org>
4625
4626         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
4627         * lib/netdb.in.h: Fix typo.
4628         Reported by Bruno Haible  <bruno@clisp.org>
4629
4630         * lib/netdb.in.h: Include sys/socket.h for platforms without
4631         netdb.h, to get structures like hostent on MinGW.
4632         * modules/netdb (Depends-on): Add sys_socket.
4633
4634 2008-10-15  Simon Josefsson  <simon@josefsson.org>
4635
4636         * modules/netdb, modules/netdb-tests: New file.
4637         * m4/netdb_h.m4: New file.
4638         * lib/netdb.in.h: Add, currently just an empty file pending
4639         definitions.
4640         * tests/test-netdb.c: New file.
4641         * doc/posix-headers/netdb.texi: Mention that we replace it if
4642         needed.
4643         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
4644         netdb.
4645
4646 2008-10-15  Simon Josefsson  <simon@josefsson.org>
4647
4648         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
4649         with code.
4650
4651 2008-10-13  Bruno Haible  <bruno@clisp.org>
4652
4653         * lib/glthread/cond.c (glthread_cond_wait_func,
4654         glthread_cond_timedwait_func): Add a comment.
4655
4656 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
4657
4658         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
4659         * tests/test-select.c: Likewise,
4660
4661 2008-10-13  Bruno Haible  <bruno@clisp.org>
4662
4663         * lib/glthread/cond.c (glthread_cond_wait_func,
4664         glthread_cond_timedwait_func): Fix variable name.
4665         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
4666
4667 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
4668
4669         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
4670         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
4671         struct sockaddr.sa_len.
4672         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
4673
4674 2008-10-13  Simon Josefsson  <simon@josefsson.org>
4675
4676         * build-aux/pmccabe2html: Add css and css_url parameters.
4677
4678 2008-10-12  Bruno Haible  <bruno@clisp.org>
4679
4680         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
4681         calling aclx_get.
4682         Reported by Rainer Tammer <tammer@tammer.net>.
4683
4684 2008-10-12  Bruno Haible  <bruno@clisp.org>
4685
4686         Use msvcrt aware primitives for creation/termination of Win32 threads.
4687         * lib/glthread/thread.c: Include <process.h>.
4688         (glthread_create_func): Use _beginthreadex instead of CreateThread.
4689         (wrapper_func): Update signature.
4690         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
4691
4692 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
4693             Bruno Haible  <bruno@clisp.org>
4694
4695         Provide a Win32 implementation of the 'cond' module.
4696         * lib/glthread/cond.h [USE_WIN32]: New implementation.
4697         * lib/glthread/cond.c (glthread_cond_init_func,
4698         glthread_cond_wait_func, glthread_cond_timedwait_func,
4699         glthread_cond_signal_func, glthread_cond_broadcast_func,
4700         glthread_cond_destroy_func) [USE_WIN32]: New functions.
4701         * modules/cond (Dependencies): Add gettimeofday.
4702
4703 2008-10-11  Bruno Haible  <bruno@clisp.org>
4704
4705         Make sleep work on older versions of mingw.
4706         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
4707         only whether it exists.
4708         * doc/posix-functions/sleep.texi: Mention the problem with older
4709         versions of mingw.
4710
4711 2008-10-11  Bruno Haible  <bruno@clisp.org>
4712
4713         New module 'shutdown'.
4714         * modules/shutdown: New file.
4715         * lib/sys_socket.in.h (shutdown): New declaration.
4716         * lib/winsock.c (shutdown): New function.
4717         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
4718         GNULIB_SHUTDOWN.
4719         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
4720         * doc/posix-functions/shutdown.texi: Document the new module.
4721
4722 2008-10-11  Jim Meyering  <meyering@redhat.com>
4723
4724         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
4725
4726 2008-10-11  Bruno Haible  <bruno@clisp.org>
4727
4728         New module 'fclose'.
4729         * modules/fclose: New file.
4730         * lib/stdio.in.h (fclose): New declaration.
4731         * lib/fclose.c: New file.
4732         * m4/fclose.m4: New file.
4733         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
4734         REPLACE_FCLOSE.
4735         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
4736         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
4737         REPLACE_FCLOSE.
4738         * modules/close (Depends-on): fclose.
4739         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
4740
4741 2008-10-11  Bruno Haible  <bruno@clisp.org>
4742
4743         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
4744         set errno and don't call _close.
4745
4746 2008-10-10  Bruno Haible  <bruno@clisp.org>
4747
4748         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
4749         ACL, not afterwards. Fixes test failure on Cygwin.
4750
4751 2008-10-09  Ben Pfaff  <blp@gnu.org>
4752
4753         * build-aux/announce-gen: Fix gnulib version related part of usage
4754         message.  Die with a useful error message if no tarballs are
4755         found.
4756
4757 2008-10-10  Jim Meyering  <meyering@redhat.com>
4758
4759         bootstrap: use git's --depth=N option only if it's supported
4760         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
4761         recognize the --depth option.  Reported by Pádraig Brady.
4762
4763 2008-10-09  Bruno Haible  <bruno@clisp.org>
4764
4765         New module 'ioctl'.
4766         * modules/ioctl: New file.
4767         * lib/sys_socket.in.h (ioctl): Remove declaration.
4768         * lib/winsock.c: Include <sys/ioctl.h>.
4769         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
4770         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
4771         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
4772         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
4773         * doc/posix-functions/ioctl.texi: Mention the new module.
4774
4775 2008-10-09  Bruno Haible  <bruno@clisp.org>
4776
4777         New module 'sys_ioctl'.
4778         * lib/sys_ioctl.in.h: New file.
4779         * m4/sys_ioctl_h.m4: New file.
4780         * modules/sys_ioctl: New file.
4781         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
4782
4783 2008-10-09  Bruno Haible  <bruno@clisp.org>
4784
4785         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
4786         * lib/winsock.c: Include <stdarg.h>.
4787         (rpl_ioctl): Change to second argument 'int' and then varargs.
4788
4789 2008-10-09  Bruno Haible  <bruno@clisp.org>
4790
4791         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
4792         when the sys_socket module is present and the system has <winsock2.h>.
4793
4794 2008-10-09  Bruno Haible  <bruno@clisp.org>
4795
4796         * doc/posix-functions/close.texi: Mention module 'close' instead of
4797         module 'sys_socket'.
4798
4799 2008-10-09  Bruno Haible  <bruno@clisp.org>
4800
4801         * doc/glibc-headers/sys_ioctl.texi: New file.
4802         * doc/gnulib.texi: Include it.
4803
4804 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4805             Bruno Haible  <bruno@clisp.org>
4806
4807         Combine the two replacements of 'close'.
4808         * lib/sys_socket.in.h (close): Define to a reminder to include
4809         <unistd.h>.
4810         (_gl_close_fd_maybe_socket): New declaration.
4811         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
4812         * lib/winsock.c (close): Remove undefinition.
4813         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
4814         needed for the gnulib module 'close'.
4815         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
4816         define to an error symbol or to a warning, if suitable.
4817         * lib/close.c: Include <sys/socket.h>.
4818         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
4819         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
4820         UNISTD_H_HAVE_WINSOCK2_H.
4821         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
4822         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
4823         UNISTD_H_HAVE_WINSOCK2_H.
4824         * modules/sys_socket (Files): Add m4/unistd_h.m4.
4825         (configure.ac): Set a module indicator.
4826         (Makefile.am): Substitute GNULIB_CLOSE.
4827         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
4828         * modules/poll-tests (Depends-on): Add close.
4829         * modules/select-tests (Depends-on): Likewise.
4830
4831 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4832             Bruno Haible  <bruno@clisp.org>
4833
4834         New module 'close'.
4835         * modules/close: New file.
4836         * lib/unistd.in.h (close): Move declaration out of the
4837         FCHDIR_REPLACEMENT scope.
4838         (_gl_unregister_fd): New declaration.
4839         * lib/close.c: New file.
4840         * lib/fchdir.c (rpl_close): Remove function.
4841         * m4/close.m4: New file.
4842         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
4843         close.
4844         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
4845         REPLACE_CLOSE.
4846         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
4847         REPLACE_CLOSE.
4848         * modules/fchdir (Depends-on): Add close.
4849
4850 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4851             Bruno Haible  <bruno@clisp.org>
4852
4853         * lib/fcntl.in.h (open): Simplify conditionals.
4854         (_gl_register_fd): New declaration.
4855         * lib/fchdir.c (rpl_open): Remove function.
4856         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
4857         also.
4858         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
4859         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
4860         open.
4861
4862 2008-10-09  Jim Meyering  <meyering@redhat.com>
4863
4864         GNUmakefile: use the more name-space-friendly "_version"
4865         * top/GNUmakefile (_dummy): Update.
4866         (_version): Rename from "version".
4867
4868 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4869             Bruno Haible  <bruno@clisp.org>
4870
4871         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
4872         rpl_close.
4873         (_gl_register_fd): New function, extracted from rpl_open.
4874         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
4875         (rpl_open, rpl_opendir): Use _gl_register_fd.
4876
4877 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
4878
4879         Fix organization of 'open' replacement.
4880         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
4881         (gl_FUNC_OPEN): Use it.
4882         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
4883
4884 2008-10-08  Bruno Haible  <bruno@clisp.org>
4885
4886         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
4887
4888 2008-10-08  Simon Josefsson  <simon@josefsson.org>
4889
4890         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
4891         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
4892         listen).
4893
4894 2008-10-08  Eric Blake  <ebb9@byu.net>
4895
4896         GNUmakefile: add 'make version' target
4897         * top/GNUmakefile (_curr-ver): Split version update rules...
4898         (version): ...into a target.
4899
4900 2008-10-07  Bruno Haible  <bruno@clisp.org>
4901
4902         Use a more portable replacement expression for -0.0L.
4903         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
4904         instead of -0.0L. Fix m4 quotation.
4905
4906         * tests/test-signbit.c: Include <float.h>.
4907         (minus_zero): New variable.
4908         (test_signbitl): Use minus_zero instead of -zero.
4909         * modules/signbit-tests (Depends-on): Add float.
4910
4911         * tests/test-ceill.c: Include <float.h>.
4912         (zero): Remove variable.
4913         (minus_zero): New variable.
4914         (main): Use minus_zero instead of -zero.
4915         * modules/ceill-tests (Depends-on): Add float.
4916
4917         * tests/test-floorl.c: Include <float.h>.
4918         (zero): Remove variable.
4919         (minus_zero): New variable.
4920         (main): Use minus_zero instead of -zero.
4921         * modules/floorl-tests (Depends-on): Add float.
4922
4923         * tests/test-roundl.c: Include <float.h>.
4924         (zero): Remove variable.
4925         (minus_zero): New variable.
4926         (main): Use minus_zero instead of -zero.
4927         * modules/roundl-tests (Depends-on): Add float.
4928
4929         * tests/test-truncl.c: Include <float.h>.
4930         (zero): Remove variable.
4931         (minus_zero): New variable.
4932         (main): Use minus_zero instead of -zero.
4933         * modules/truncl-tests (Depends-on): Add float.
4934
4935         * tests/test-frexpl.c (zero): Remove variable.
4936         (minus_zero): New variable.
4937         (main): Use minus_zero instead of -zero.
4938         * modules/frexpl-tests (Depends-on): Add float.
4939
4940         * tests/test-isnan.c (zerol): Remove variable.
4941         (minus_zerol): New variable.
4942         (test_long_double): Use minus_zerol instead of -zerol.
4943         * modules/isnan-tests (Depends-on): Add float.
4944
4945         * tests/test-isnanl.h (zero): Remove variable.
4946         (minus_zero): New variable.
4947         (main): Use minus_zero instead of -zero.
4948         * modules/isnanl-nolibm-tests (Depends-on): Add float.
4949         * modules/isnanl-tests (Depends-on): Add float.
4950
4951         * tests/test-ldexpl.c (zero): Remove variable.
4952         (minus_zero): New variable.
4953         (main): Use minus_zero instead of -zero.
4954         * modules/ldexpl-tests (Depends-on): Add float.
4955
4956         * tests/test-snprintf-posix.h (zerol): Remove variable.
4957         (minus_zerol): New variable.
4958         (test_function): Use minus_zerol instead of -zerol.
4959         * modules/snprintf-posix-tests (Depends-on): Add float.
4960         * modules/vsnprintf-posix-tests (Depends-on): Add float.
4961
4962         * tests/test-sprintf-posix.h (zerol): Remove variable.
4963         (minus_zerol): New variable.
4964         (test_function): Use minus_zerol instead of -zerol.
4965         * modules/sprintf-posix-tests (Depends-on): Add float.
4966         * modules/vsprintf-posix-tests (Depends-on): Add float.
4967
4968         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
4969         (minus_zerol): New variable.
4970         (test_function): Use minus_zerol instead of -zerol.
4971         * modules/vasnprintf-posix-tests (Depends-on): Add float.
4972
4973         * tests/test-vasprintf-posix.c (zerol): Remove variable.
4974         (minus_zerol): New variable.
4975         (test_function): Use minus_zerol instead of -zerol.
4976         * modules/vasprintf-posix-tests (Depends-on): Add float.
4977
4978 2008-10-07  Simon Josefsson  <simon@josefsson.org>
4979
4980         * MODULES.html.sh (Support for building documentation): Mention
4981         pmccabe2html.  Sort entries.
4982
4983         Add pmccabe2html module, from gnupdf.
4984         * build-aux/pmccabe.css: New file.
4985         * build-aux/pmccabe2html: New file.
4986         * m4/pmccabe2html.m4: New file.
4987         * modules/pmccabe2html: New file.
4988
4989 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
4990
4991         flock: new module
4992         * MODULES.html.sh: Add to list of modules.
4993         * lib/flock.c: flock implementation for Windows and Unix systems
4994         which have fcntl.
4995         * doc/glibc-functions/flock.texi: Update documentation.
4996         * lib/sys_file.in.h: <sys/file.h> header file.
4997         * m4/flock.m4: M4 macros.
4998         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
4999         * modules/flock: flock module.
5000         * modules/flock-tests: flock tests module.
5001         * modules/sys_file: sys/file.h module.
5002         * tests/test-flock.c: test suite for flock.
5003
5004 2008-10-06  Jim Meyering  <meyering@redhat.com>
5005
5006         bootstrap: check for LT_INIT more portably still ;-)
5007         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
5008         Spotted by Bruno Haible.
5009
5010 2008-10-06  Eric Blake  <ebb9@byu.net>
5011
5012         test-signbit: avoid tripping Irix cc bug on -0.0L
5013         * tests/test-signbit.c (minus_zerol): Delete, and replace with
5014         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
5015         entire testsuite consistent and avoids an Irix 6.2 bug.
5016
5017 2008-10-05  Bruno Haible  <bruno@clisp.org>
5018             Jim Meyering  <jim@meyering.net>
5019
5020         Add an option for ignoring EPIPE during close_stdout.
5021         * lib/closeout.h: Include <stdbool.h>.
5022         (close_stdout_set_ignore_EPIPE): New declaration.
5023         * lib/closeout.c: Include <stdbool.h>.
5024         (ignore_EPIPE): New variable.
5025         (close_stdout_set_ignore_EPIPE): New function.
5026         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
5027         * lib/close-stream.c (close_stream): Mention the possible EPIPE
5028         failure.
5029         * modules/closeout (Depends-on): Add stdbool.
5030
5031 2008-10-05  Bruno Haible  <bruno@clisp.org>
5032
5033         * modules/accept: New file.
5034         * modules/bind: New file.
5035         * modules/connect: New file.
5036         * modules/getpeername: New file.
5037         * modules/getsockname: New file.
5038         * modules/getsockopt: New file.
5039         * modules/listen: New file.
5040         * modules/recv: New file.
5041         * modules/recvfrom: New file.
5042         * modules/send: New file.
5043         * modules/sendto: New file.
5044         * modules/setsockopt: New file.
5045         * modules/socket: New file.
5046         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
5047         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
5048         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
5049         the particular module is requested. Add a link warning when the
5050         particular module is not requested.
5051         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
5052         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
5053         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
5054         the particular module is requested.
5055         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
5056         gl_SYS_SOCKET_H_DEFAULTS): New macros.
5057         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
5058         * modules/sys_socket (Depends-on): Add link-warning.
5059         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
5060         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
5061         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
5062         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
5063         GL_LINK_WARNING.
5064         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
5065         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
5066         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
5067         * doc/posix-functions/getpeername.texi: Mention the new module
5068         'getpeername'.
5069         * doc/posix-functions/getsockname.texi: Mention the new module
5070         'getsockname'.
5071         * doc/posix-functions/getsockopt.texi: Mention the new module
5072         'getsockopt'.
5073         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
5074         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
5075         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
5076         * doc/posix-functions/send.texi: Mention the new module 'send'.
5077         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
5078         * doc/posix-functions/setsockopt.texi: Mention the new module
5079         'setsockopt'.
5080         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
5081         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
5082         listen, connect, accept.
5083         * modules/select-tests (Depends-on): Likewise.
5084
5085 2008-10-05  Bruno Haible  <bruno@clisp.org>
5086
5087         * lib/winsock.c (strerror): Remove unused #undef.
5088         (rpl_close): Remove unused local variable.
5089
5090         * modules/sys_socket (Depends-on); Add errno.
5091
5092 2008-10-05  Bruno Haible  <bruno@clisp.org>
5093
5094         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
5095         (select): Add a link warning when the 'select' module is not used.
5096         * modules/sys_select (Depends-on): Add link-warning.
5097         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
5098         Suggested by Paolo Bonzini.
5099
5100 2008-10-05  Jim Meyering  <meyering@redhat.com>
5101
5102         bootstrap: check for LT_INIT more portably
5103         * build-aux/bootstrap: Avoid using grep -E, since it's not
5104         portable enough.  Suggestion from Bruno Haible.
5105
5106 2008-10-05  Bruno Haible  <bruno@clisp.org>
5107
5108         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
5109         as being fixed by gnulib.
5110
5111 2008-10-05  Bruno Haible  <bruno@clisp.org>
5112
5113         * modules/select-tests: New file, mostly copied from
5114         modules/sys_select-tests.
5115         * tests/test-select.c: New file, mostly copied from
5116         tests/test-sys_select.c.
5117         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
5118         * modules/sys_select-tests (Depends-on): Remove all dependencies.
5119         (Makefile.am): Remove test_sys_select_LDADD.
5120
5121         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
5122         to an undefined symbol, for an error message.
5123         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
5124         (gl_SYS_SELECT_H_DEFAULTS): New macro.
5125         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
5126         winsock-select.c here.
5127         * modules/sys_select (Files): Remove lib/winsock-select.c.
5128         (Depends-on): Remove alloca.
5129         (Makefile.am): Substitute GNULIB_SELECT.
5130         * modules/select: New file.
5131         * doc/posix-functions/select.texi: Update.
5132
5133 2008-10-05  Bruno Haible  <bruno@clisp.org>
5134
5135         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
5136         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
5137         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
5138         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
5139         getdtablesize.
5140         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
5141         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
5142
5143 2008-10-05  Bruno Haible  <bruno@clisp.org>
5144
5145         * modules/getdtablesize-tests: New file.
5146         * tests/test-getdtablesize.c: New file.
5147
5148         New module 'getdtablesize'.
5149         * lib/unistd.in.h (getdtablesize): New declaration.
5150         * lib/getdtablesize.c: New file.
5151         * m4/getdtablesize.m4: New file.
5152         * modules/getdtablesize: New file.
5153         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5154         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
5155         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
5156         HAVE_GETDTABLESIZE.
5157         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
5158
5159 2008-10-05  Bruno Haible  <bruno@clisp.org>
5160
5161         * modules/sched (Makefile.am): Fix typo.
5162         Reported by Simon Josefsson.
5163
5164 2008-10-05  Jim Meyering  <meyering@redhat.com>
5165
5166         bootstrap: check for LT_INIT, too
5167         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
5168         are deprecated.  Suggestion from Ralf Wildenhues.
5169
5170 2008-10-05  Bruno Haible  <bruno@clisp.org>
5171
5172         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
5173         overriding them by ours.
5174         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
5175
5176 2008-10-05  Jim Meyering  <meyering@redhat.com>
5177
5178         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
5179         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
5180         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
5181
5182 2008-10-04  Bruno Haible  <bruno@clisp.org>
5183
5184         * modules/dup2 (License): Change to LGPLv2+.
5185         * modules/sleep (License): Likewise.
5186         * modules/perror (License): Likewise.
5187         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
5188         Blake.
5189         * modules/signal (License): Likewise.
5190         * modules/sigprocmask (License): Likewise.
5191         * modules/raise (License): Change to LGPLv2+, with approval by Jim
5192         Meyering.
5193
5194 2008-10-04  Bruno Haible  <bruno@clisp.org>
5195
5196         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
5197         Reported by Rainer Tammer <tammer@tammer.net>.
5198
5199 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
5200             Bruno Haible  <bruno@clisp.org>
5201
5202         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
5203         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
5204         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
5205
5206 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
5207
5208         filevercmp: new module
5209         * lib/filevercmp.h: New function filevercmp comparing version strings.
5210         * lib/filevercmp.c: Implementation of filevercmp function.
5211         * modules/filevercmp: Module metadata.
5212         * tests/test-filevercmp.c: Unit test for new module.
5213         * modules/filevercmp-tests: Unit test metadata.
5214         * MODULES.html.sh: Add filevercmp module.
5215
5216 2008-10-03  Bruno Haible  <bruno@clisp.org>
5217
5218         * lib/c-ctype.h: Add comment.
5219         Reported by Jim Meyering.
5220
5221 2008-10-02  Bruno Haible  <bruno@clisp.org>
5222
5223         * modules/posix_spawn-internal (Depends-on): Add 'open'.
5224
5225 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5226
5227         * build-aux/bootstrap: Allow renaming bootstrap, and change the
5228         name of bootstrap.conf accordingly.
5229
5230 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5231
5232         * build-aux/bootstrap: Install git-merge-changelog configuration
5233         items into .gitconfig if needed.
5234
5235 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
5236
5237         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
5238         git repository, and initialize/update it accordingly.
5239
5240 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
5241
5242         * modules/fsync-tests: New file.
5243         * tests/test-fsync.c: New file.
5244
5245         New module 'fsync'.
5246         * lib/fsync.c: New file.
5247         * m4/fsync.m4: New file.
5248         * modules/fsync: New file.
5249         * lib/unistd.in.h (fsync): New declaration.
5250         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
5251         GNULIB_FSYNC and HAVE_FSYNC.
5252         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
5253         * MODULES.html.sh (posix_functions): Add fsync.
5254         * doc/posix-functions/fsync.texi: Mention the new module.
5255
5256 2008-10-02  Jim Meyering  <meyering@redhat.com>
5257
5258         fts.c: sync with similar code from coreutils' remove.c
5259         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
5260         Guard also with "#if defined __linux__", since for now at least,
5261         this code is Linux-kernel-specific.
5262
5263 2008-10-02  Jim Meyering  <meyering@redhat.com>
5264
5265         fts: bug fixes
5266         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
5267         Include <sys/vfs.h>, not <sys/statfs.h>.
5268
5269         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
5270         Include <sys/vfs.h>, not <sys/statfs.h>.
5271
5272 2008-10-01  Bruno Haible  <bruno@clisp.org>
5273
5274         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
5275         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
5276         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
5277         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
5278         * doc/posix-functions/posix_spawnp.texi: Likewise.
5279         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
5280         whether posix_spawn actually works.
5281         * m4/pipe.m4 (gl_PIPE): Likewise.
5282         * modules/execute (Files): Add m4/posix_spawn.m4.
5283         * modules/pipe (Files): Add m4/posix_spawn.m4.
5284         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
5285
5286 2008-10-01  Jim Meyering  <meyering@redhat.com>
5287
5288         remove trailing spaces
5289         * NEWS: Likewise.
5290         * lib/poll.c (poll): Likewise.
5291         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
5292         * lib/winsock.c (rpl_close): Likewise.
5293         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
5294         * modules/yield: Likewise.
5295         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
5296         * tests/test-sys_select.c (connect_to_socket): Likewise.
5297
5298         fts.c: adjust a new interface to be more generally useful
5299         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
5300         (fts_build): Adjust caller.
5301
5302 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5303
5304         * modules/cond-tests: New file.
5305         * tests/test-cond.c: New file.
5306
5307 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5308             Bruno Haible  <bruno@clisp.org>
5309
5310         * modules/cond (Dependencies): Add errno, time.
5311         * lib/glthread/cond.h: Include <time.h>.
5312         (gl_cond_define, gl_cond_define_initialized): Use the same definition
5313         across platforms.
5314
5315 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5316             Bruno Haible  <bruno@clisp.org>
5317
5318         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
5319
5320 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5321             Bruno Haible  <bruno@clisp.org>
5322
5323         * modules/tls-tests (Depends-on): Add thread, yield.
5324         (configure.ac): Remove all checks.
5325         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
5326         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5327         gl_thread_self): Remove definitions. Include glthread/thread.h and
5328         glthread/yield.h instead.
5329         (test_tls): Pass an additional NULL argument to gl_thread_join.
5330
5331 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5332             Bruno Haible  <bruno@clisp.org>
5333
5334         * modules/lock-tests (Depends-on): Add thread, yield.
5335         (configure.ac): Remove all checks.
5336         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
5337         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
5338         gl_thread_self): Remove definitions. Include glthread/thread.h and
5339         glthread/yield.h instead.
5340         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
5341         additional NULL argument to gl_thread_join.
5342
5343 2008-09-30  Bruno Haible  <bruno@clisp.org>
5344
5345         Fix the Win32 implementation of the 'thread' module.
5346         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
5347         pointer type.
5348         (gl_thread_self): Invoke gl_thread_self_func.
5349         (gl_thread_self_func): New declaration.
5350         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
5351         (do_init_self_key, init_self_key): New functions.
5352         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
5353         Remove some fields.
5354         (running_threads, running_lock): Remove variables.
5355         (get_current_thread_handle): New function.
5356         (gl_thread_self_func, wrapper_func, glthread_create_func,
5357         glthread_join_func, gl_thread_exit_func): Largely rewritten and
5358         simplified.
5359
5360 2008-09-30  Bruno Haible  <bruno@clisp.org>
5361
5362         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
5363         files.
5364
5365 2008-09-30  Jim Meyering  <meyering@redhat.com>
5366
5367         fts.m4: correct the test for statfs.f_type
5368         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
5369         when checking for statfs.f_type.
5370
5371 2008-09-15  Simon Josefsson  <simon@josefsson.org>
5372
5373         tests: avoid some compiler warnings
5374         * tests/test-memchr.c (main): Pass NULL indirectly.
5375         * tests/test-getdate.c (main): Remove unused variable 'ret'.
5376
5377 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
5378
5379         getdate.y: disallow countable dayshifts like "4 yesterday ago"
5380         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
5381         exactly specified dayshifts.
5382         (dayshift): New rule.
5383         (rel): Add dayshift.
5384         (relative_time_table) [tomorrow, yesterday, today, now]:
5385         Use tDAY_SHIFT in place of tDAY_UNIT.
5386         * tests/test-getdate.c: Add tests for now-disallowed countable
5387         dayshifts, e.g., "4 yesterday ago".
5388
5389 2008-09-29  Bruno Haible  <bruno@clisp.org>
5390
5391         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
5392         * tests/test-posix_spawn1.in.sh: Renamed from
5393         tests/test-posix_spawn.in.sh.
5394         * tests/test-posix_spawn2.c: New file.
5395         * tests/test-posix_spawn2.in.sh: New file.
5396         * modules/posix_spawnp-tests (Files): Update.
5397         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
5398
5399 2008-09-29  Bruno Haible  <bruno@clisp.org>
5400
5401         Propagate effects of putenv/setenv/unsetenv to child processes.
5402         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
5403         * lib/pipe.c (create_pipe): Likewise.
5404
5405 2008-09-29  Bruno Haible  <bruno@clisp.org>
5406
5407         Enable use of shell scripts as executables in mingw.
5408         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
5409         run the program as a shell script.
5410         * lib/pipe.c (create_pipe): Likewise.
5411         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
5412         resulting array.
5413
5414 2008-09-29  Eric Blake  <ebb9@byu.net>
5415
5416         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
5417
5418 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
5419
5420         * doc/posix-functions/accept.texi: Update mingw problems.
5421         * doc/posix-functions/bind.texi: Update mingw problems.
5422         * doc/posix-functions/close.texi: Update mingw problems.
5423         * doc/posix-functions/connect.texi: Update mingw problems.
5424         * doc/posix-functions/getpeername.texi: Update mingw problems.
5425         * doc/posix-functions/getsockname.texi: Update mingw problems.
5426         * doc/posix-functions/getsockopt.texi: Update mingw problems.
5427         * doc/posix-functions/ioctl.texi: Update mingw problems.
5428         * doc/posix-functions/listen.texi: Update mingw problems.
5429         * doc/posix-functions/recv.texi: Update mingw problems.
5430         * doc/posix-functions/recvfrom.texi: Update mingw problems.
5431         * doc/posix-functions/select.texi: Update mingw problems.
5432         * doc/posix-functions/send.texi: Update mingw problems.
5433         * doc/posix-functions/sendto.texi: Update mingw problems.
5434         * doc/posix-functions/setsockopt.texi: Update mingw problems.
5435         * doc/posix-functions/socket.texi: Update mingw problems.
5436
5437 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
5438             Bruno Haible  <bruno@clisp.org>
5439
5440         * lib/sys_select.in.h: Include sys/time.h.
5441         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
5442         * modules/sys_select: Depend on sys_time.
5443         * tests/test-sys_select.c: Test that sys/select.h defines struct
5444         timeval fully.
5445
5446 2008-09-29  Bruno Haible  <bruno@clisp.org>
5447
5448         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
5449         * lib/sys_select.in.h: Likewise.
5450
5451 2008-09-29  Bruno Haible  <bruno@clisp.org>
5452
5453         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
5454
5455 2008-09-29  Bruno Haible  <bruno@clisp.org>
5456
5457         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
5458         Set LIBSOCKET instead of augmenting LIBS.
5459         * modules/sockets (Link): New section.
5460         * modules/sockets-tests (test_sockets_LDADD): New variable.
5461         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
5462         * modules/poll-tests (test_poll_LDADD): New variable.
5463         * NEWS: Document the change.
5464
5465 2008-09-29  Bruno Haible  <bruno@clisp.org>
5466
5467         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
5468         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
5469         ARPA_INET_H directly.
5470         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
5471
5472 2008-09-28  Bruno Haible  <bruno@clisp.org>
5473
5474         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
5475         from gl_HEADER_SYS_SOCKET.
5476         (gl_HEADER_SYS_SOCKET): Invoke it.
5477         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5478
5479 2008-09-28  Bruno Haible  <bruno@clisp.org>
5480
5481         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
5482         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
5483         Needed on OSF/1 4.0.
5484
5485 2008-09-28  Bruno Haible  <bruno@clisp.org>
5486
5487         Override open more carefully.
5488         * lib/open.c (orig_open): New function.
5489         (rpl_open): Use orig_open instead of open.
5490         * lib/fcntl.in.h: Add special invocation convention.
5491         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
5492         (gl_FUNC_OPEN): Invoke it.
5493
5494         Override freopen more carefully.
5495         * lib/freopen.c (orig_freopen): New function.
5496         (rpl_freopen): Use orig_freopen instead of freopen.
5497         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
5498         (gl_FUNC_FREOPEN): Invoke it.
5499
5500         Override fopen more carefully.
5501         * lib/fopen.c (orig_fopen): New function.
5502         (rpl_fopen): Use orig_fopen instead of fopen.
5503         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
5504         (gl_FUNC_FOPEN): Invoke it.
5505         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
5506
5507 2008-09-28  Bruno Haible  <bruno@clisp.org>
5508
5509         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
5510         SIGPIPE.
5511
5512 2008-09-28  Bruno Haible  <bruno@clisp.org>
5513
5514         * tests/test-sigaction.c (handler, main): Disable the check whether
5515         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
5516         glibc systems with LinuxThreads.
5517
5518 2008-09-28  Bruno Haible  <bruno@clisp.org>
5519
5520         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
5521
5522         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
5523         with AIX xlc.
5524         * lib/fcntl.in.h (open): Likewise.
5525         Reported by Rainer Tammer <tammer@tammer.net>.
5526
5527 2008-09-28  Bruno Haible  <bruno@clisp.org>
5528
5529         * modules/posix_spawnp-tests: New file.
5530         * tests/test-posix_spawn.c: New file.
5531         * tests/test-posix_spawn.in.sh: New file.
5532
5533         New module 'posix_spawnp'.
5534         * modules/posix_spawnp: New file.
5535         * lib/spawnp.c: New file, from GNU libc with modifications.
5536         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
5537
5538         New module 'posix_spawn'.
5539         * modules/posix_spawn: New file.
5540         * lib/spawn.c: New file, from GNU libc with modifications.
5541         * doc/posix-functions/posix_spawn.texi: Mention the new module.
5542
5543         New module 'posix_spawnattr_destroy'.
5544         * modules/posix_spawnattr_destroy: New file.
5545         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
5546         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
5547         module.
5548
5549         New module 'posix_spawnattr_setsigmask'.
5550         * modules/posix_spawnattr_setsigmask: New file.
5551         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
5552         modifications.
5553         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
5554         new module.
5555
5556         New module 'posix_spawnattr_getsigmask'.
5557         * modules/posix_spawnattr_getsigmask: New file.
5558         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
5559         modifications.
5560         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
5561         new module.
5562
5563         New module 'posix_spawnattr_setsigdefault'.
5564         * modules/posix_spawnattr_setsigdefault: New file.
5565         * lib/spawnattr_setdefault.c: New file, from GNU libc with
5566         modifications.
5567         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
5568         new module.
5569
5570         New module 'posix_spawnattr_getsigdefault'.
5571         * modules/posix_spawnattr_getsigdefault: New file.
5572         * lib/spawnattr_getdefault.c: New file, from GNU libc with
5573         modifications.
5574         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
5575         new module.
5576
5577         New module 'posix_spawnattr_setschedpolicy'.
5578         * modules/posix_spawnattr_setschedpolicy: New file.
5579         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
5580         modifications.
5581         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
5582         new module.
5583
5584         New module 'posix_spawnattr_getschedpolicy'.
5585         * modules/posix_spawnattr_getschedpolicy: New file.
5586         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
5587         modifications.
5588         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
5589         new module.
5590
5591         New module 'posix_spawnattr_setschedparam'.
5592         * modules/posix_spawnattr_setschedparam: New file.
5593         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
5594         modifications.
5595         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
5596         new module.
5597
5598         New module 'posix_spawnattr_getschedparam'.
5599         * modules/posix_spawnattr_getschedparam: New file.
5600         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
5601         modifications.
5602         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
5603         new module.
5604
5605         New module 'posix_spawnattr_setpgroup'.
5606         * modules/posix_spawnattr_setpgroup: New file.
5607         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
5608         modifications.
5609         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
5610         module.
5611
5612         New module 'posix_spawnattr_getpgroup'.
5613         * modules/posix_spawnattr_getpgroup: New file.
5614         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
5615         modifications.
5616         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
5617         module.
5618
5619         New module 'posix_spawnattr_setflags'.
5620         * modules/posix_spawnattr_setflags: New file.
5621         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
5622         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
5623         module.
5624
5625         New module 'posix_spawnattr_getflags'.
5626         * modules/posix_spawnattr_getflags: New file.
5627         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
5628         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
5629         module.
5630
5631         New module 'posix_spawnattr_init'.
5632         * modules/posix_spawnattr_init: New file.
5633         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
5634         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
5635         module.
5636
5637         New module 'posix_spawn_file_actions_destroy'.
5638         * modules/posix_spawn_file_actions_destroy: New file.
5639         * lib/spawn_faction_destroy.c: New file, from GNU libc with
5640         modifications.
5641         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
5642         the new module.
5643
5644         New module 'posix_spawn_file_actions_addopen'.
5645         * modules/posix_spawn_file_actions_addopen: New file.
5646         * lib/spawn_faction_addopen.c: New file, from GNU libc with
5647         modifications.
5648         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
5649         the new module.
5650
5651         New module 'posix_spawn_file_actions_adddup2'.
5652         * modules/posix_spawn_file_actions_adddup2: New file.
5653         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
5654         modifications.
5655         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
5656         the new module.
5657
5658         New module 'posix_spawn_file_actions_addclose'.
5659         * modules/posix_spawn_file_actions_addclose: New file.
5660         * lib/spawn_faction_addclose.c: New file, from GNU libc with
5661         modifications.
5662         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
5663         the new module.
5664
5665         New module 'posix_spawn_file_actions_init'.
5666         * modules/posix_spawn_file_actions_init: New file.
5667         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
5668         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
5669         new module.
5670
5671         New module 'posix_spawn-internal'.
5672         * modules/posix_spawn-internal: New file.
5673         * lib/spawn_int.h: New file, from GNU libc with modifications.
5674         * lib/spawni.c: New file, from GNU libc with modifications.
5675         * m4/posix_spawn.m4: New file.
5676
5677         New module 'spawn'.
5678         * modules/spawn: New file.
5679         * lib/spawn.in.h: New file, from GNU libc with modifications.
5680         * m4/spawn_h.m4: New file.
5681         * doc/posix-headers/spawn.texi: Mention the new module.
5682
5683 2008-09-28  Bruno Haible  <bruno@clisp.org>
5684
5685         * modules/sched-tests: New file.
5686         * tests/test-sched.c: New file.
5687
5688         New module 'sched'.
5689         * modules/sched: New file.
5690         * lib/sched.in.h: New file.
5691         * m4/sched_h.m4: New file.
5692         * doc/posix-headers/sched.texi: Mention the new module.
5693
5694 2008-09-27  Eric Blake  <ebb9@byu.net>
5695
5696         Fix previous patch, and tweak references to $0.
5697         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
5698         (func_version, func_gnulib_dir): Don't call this program
5699         gnulib-tool.
5700         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
5701         with using $0 in function.
5702         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
5703         (func_fatal_error): Reuse the name the user invoked us with.
5704
5705 2008-09-27  Bruno Haible  <bruno@clisp.org>
5706
5707         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
5708         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
5709         (gl_ICONV_H): Not here.
5710         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
5711         instead of assigning ICONV_H directly.
5712
5713         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
5714         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
5715         WCHAR_H directly.
5716
5717 2008-09-27  Bruno Haible  <bruno@clisp.org>
5718
5719         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
5720         * modules/arpa_inet (Depends-on): Add link-warning.
5721         (Makefile.am): Insert the definition of GL_LINK-WARNING.
5722         * modules/unistd (Makefile.am): Likewise.
5723
5724 2008-09-26  Bruno Haible  <bruno@clisp.org>
5725
5726         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
5727         variables.
5728         (func_version): Essentially copied from gnulib-tool.
5729         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
5730         func_readlink): Copied from gnulib-tool.
5731
5732 2008-09-26  Bruno Haible  <bruno@clisp.org>
5733
5734         * gnulib-tool (func_version): Change directory to $gnulib_dir before
5735         invoking git-version-gen.
5736
5737 2008-09-26  Bruno Haible  <bruno@clisp.org>
5738
5739         * posix-modules: Update to directory names changed on 2008-01-19.
5740         Remove commas in output before splitting into words. No more need to
5741         avoid 'ftruncate' since 2007-02-19.
5742
5743 2008-09-26  Bruno Haible  <bruno@clisp.org>
5744
5745         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
5746
5747 2008-09-26  Bruno Haible  <bruno@clisp.org>
5748
5749         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
5750         * modules/fwriteerror (Depends-on): Add errno.
5751
5752 2008-09-26  Bruno Haible  <bruno@clisp.org>
5753
5754         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
5755         * tests/test-vc-list-files-cvs.sh: Likewise.
5756
5757 2008-09-26  Bruno Haible  <bruno@clisp.org>
5758
5759         * doc/posix-headers/sys_resource.texi: Reorder items.
5760
5761 2008-09-26  Jim Meyering  <meyering@redhat.com>
5762
5763         fts: tweak inode comparison function
5764         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
5765         inode numbers, as documented.
5766
5767         fts: sort dirent entries on inode number before traversing
5768         This avoids a quadratic, seek-related performance penalty when
5769         operating on a directory containing many entries (measurable at 10k;
5770         3.5 hours at 2 million entries with a cold cache) on certain types
5771         of file systems, including ext3 and ext4, but not tmpfs.
5772         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
5773         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
5774         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
5775         (fs_handles_readdir_ordered_dirents_efficiently): New function.
5776         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
5777         (fts_build): Set the stat.st_ino member from D_INO.
5778         If it is likely to be useful, sort dirent entries on inode number.
5779
5780         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
5781         and the struct statfs.f_type member.
5782         * modules/fts (Depends-on): Add d-ino.
5783
5784 2008-09-26  Bruno Haible  <bruno@clisp.org>
5785
5786         * modules/sigpipe-die (Depends-on): Add sigpipe.
5787
5788         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
5789         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
5790         and GNULIB_STDIO_H_SIGPIPE are set.
5791         * lib/stdio-write.c: New file.
5792         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
5793         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
5794         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
5795         REPLACE_STDIO_WRITE_FUNCS.
5796         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
5797         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
5798         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
5799         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
5800         * modules/stdio (Files): Add lib/stdio-write.c.
5801         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
5802         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
5803         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
5804         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
5805         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
5806         REPLACE_FPRINTF_POSIX.
5807         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
5808         REPLACE_PRINTF_POSIX.
5809         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
5810         REPLACE_VFPRINTF_POSIX.
5811         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
5812         REPLACE_VPRINTF_POSIX.
5813         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
5814         SIGPIPE issue.
5815         * doc/posix-functions/fputc.texi: Likewise.
5816         * doc/posix-functions/fputs.texi: Likewise.
5817         * doc/posix-functions/fwrite.texi: Likewise.
5818         * doc/posix-functions/printf.texi: Likewise.
5819         * doc/posix-functions/putc.texi: Likewise.
5820         * doc/posix-functions/putchar.texi: Likewise.
5821         * doc/posix-functions/puts.texi: Likewise.
5822         * doc/posix-functions/vfprintf.texi: Likewise.
5823         * doc/posix-functions/vprintf.texi: Likewise.
5824
5825         * modules/safe-write (Depends-on): Add write.
5826
5827         * modules/sigpipe-tests: New file.
5828         * tests/test-sigpipe.c: New file.
5829         * tests/test-sigpipe.sh: New file.
5830
5831         * modules/write: New file.
5832         * lib/unistd.in.h: Include <sys/types.h>.
5833         (write): New declaration.
5834         * lib/write.c: New file.
5835         * m4/write.m4: New file.
5836         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5837         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
5838         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
5839         GNULIB_WRITE, REPLACE_WRITE.
5840         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
5841         and the SIGPIPE issue.
5842
5843         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
5844         (raise): New declaration.
5845         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
5846         (ext_signal): New function.
5847         (rpl_raise): New function.
5848         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
5849         GNULIB_SIGNAL_H_SIGPIPE.
5850         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
5851         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
5852
5853         * modules/sigpipe: New file.
5854         * m4/sigpipe.m4: New file.
5855
5856 2008-09-25  Derek Price  <derek@ximbiot.com>
5857             Bruno Haible  <bruno@clisp.org>
5858
5859         * gnulib-tool (func_import): Report all license incompatibilities, not
5860         just the first one.
5861
5862 2008-09-25  Bruno Haible  <bruno@clisp.org>
5863
5864         * gnulib-tool (func_import): When computing the edits, consider not
5865         only the Makefile.ams that exist but also those that will be generated.
5866
5867 2008-09-25  Simon Josefsson  <simon@josefsson.org>
5868
5869         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
5870         fixes gnulib-tool --test warning about duplicate dependency.
5871
5872 2008-09-25  Bruno Haible  <bruno@clisp.org>
5873
5874         * gnulib-tool: Don't ask the user to perform edits in the generated
5875         Makefile.ams.
5876         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
5877         apply to the Makefile.am being generated.
5878         (func_emit_tests_Makefile_am): Execute edits that apply to the
5879         Makefile.am being generated.
5880         (func_import): Setup list of Makefile.am edits before emitting the
5881         Makefile.ams, not at the end.
5882         (func_create_testdir): Update.
5883         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5884
5885 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
5886
5887         * gnulib-tool (func_import): Store the --tests-base option in the
5888         comment in gnulib-cache.m4.
5889
5890 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
5891
5892         * NEWS: Document increased portability that sys_select now provides.
5893
5894         * lib/sys_select.in.h: Install select wrapper.
5895         * lib/sys_socket.in.h: Use more descriptive name when there is no
5896         select wrapper.
5897         * lib/winsock-select.c: New.
5898         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
5899         Require gl_HEADER_SYS_SOCKET.
5900         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
5901         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
5902         * tests/test-sys_select.c: Add functional tests.
5903
5904 2008-09-24  Eric Blake  <ebb9@byu.net>
5905
5906         open, fopen: close fd leak in last patch
5907         * lib/open.c (rpl_open): Close fd before returning error.
5908         * lib/fopen.c (rpl_fopen): Close fd before returning error.
5909         * doc/posix-functions/open.texi (open): Document that Irix also
5910         has the bug.
5911         * doc/posix-functions/fopen.texi (fopen): Likewise.
5912         Reported by Paolo Bonzini.
5913
5914 2008-09-24  Bruno Haible  <bruno@clisp.org>
5915
5916         Ensure that a filename ending in a slash cannot be used to access a
5917         non-directory.
5918         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
5919         to check whether it's really a directory.
5920         * lib/fopen.c: Include fcntl.h, unistd.h.
5921         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
5922         and fdopen().
5923         * modules/fopen (Depends-on): Add unistd.
5924         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
5925         * tests/test-fopen.c (main): Likewise.
5926         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
5927         * doc/posix-functions/fopen.texi: Likewise.
5928         Reported by Eric Blake.
5929
5930 2008-09-23  Eric Blake  <ebb9@byu.net>
5931
5932         c-stack: avoid compiler optimizations when provoking overflow
5933         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
5934         recursion harder to optimize, to ensure a stack overflow occurs.
5935         * tests/test-c-stack.c (recurse): Likewise.
5936         Borrowed from libsigsegv.
5937
5938         c-stack: work around Irix sigaltstack bug
5939         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
5940         whether sigaltstack uses wrong end of stack_t (copied in part from
5941         libsigsegv).
5942         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
5943         Irix bug, without requiring an over-allocation.
5944         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
5945         bug.
5946
5947         fopen: document mingw bug on directories
5948         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
5949         not allowing a stream visiting a directory, even though reading
5950         from such a stream is not portable.
5951
5952 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5953
5954         * lib/poll.c: Rewrite.
5955         * modules/poll: Depend on alloca.
5956
5957 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5958
5959         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
5960         instead define prototypes for a full set of wrappers.  Ensure
5961         that Cygwin does not use the compatibility code, which is only
5962         for MinGW.
5963         * lib/winsock.c: New.
5964         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
5965         * modules/sys_socket: Add lib/winsock.c.
5966
5967         * modules/poll-tests: Add errno and perror.
5968         * tests/test-poll.c: Use ioctl, not ioctlsocket.
5969
5970 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
5971
5972         * tests/test-poll.c: Downgrade minimum needed Winsock version.
5973
5974 2008-09-23  Bruno Haible  <bruno@clisp.org>
5975
5976         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
5977         * doc/glibc-functions/*: Likewise.
5978
5979 2008-09-23  Simon Josefsson  <simon@josefsson.org>
5980
5981         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
5982         success.
5983
5984 2008-09-22  Eric Blake  <ebb9@byu.net>
5985             Bruno Haible  <bruno@clisp.org>
5986
5987         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
5988         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
5989         supply %A but mishandle pseudo-NaN.
5990         Reported by Simon Josefsson.
5991
5992 2008-09-21  Bruno Haible  <bruno@clisp.org>
5993
5994         * tests/test-lock.c (main): Tweak skip message.
5995         * tests/test-tls.c (main): Likewise.
5996
5997 2008-09-21  Bruno Haible  <bruno@clisp.org>
5998
5999         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
6000         whether 'struct sigaction' has sa_sigaction here...
6001         (gl_PREREQ_SIG_HANDLER_H): ... not here.
6002         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
6003
6004 2008-09-21  Bruno Haible  <bruno@clisp.org>
6005
6006         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
6007         section.
6008         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
6009         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
6010         the new section.
6011         (Support for obsolete systems lacking POSIX:2001): New section.
6012         (String handling <string.h>): Move strdup to the new section.
6013         Suggested by Simon Josefsson and Paolo Bonzini.
6014
6015 2008-09-21  Bruno Haible  <bruno@clisp.org>
6016
6017         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
6018         exponents in %e and %g results on 'long double'. Needed for mingw's
6019         improved *printf functions.
6020         * tests/test-vasprintf-posix.c (test_function): Likewise.
6021         * tests/test-snprintf-posix.h (test_function): Likewise.
6022         * tests/test-sprintf-posix.h (test_function): Likewise.
6023         Reported by Eric Blake.
6024
6025 2008-09-21  Bruno Haible  <bruno@clisp.org>
6026
6027         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
6028         * tests/test-sprintf-posix.h (test_function): Likewise.
6029
6030 2008-09-21  Bruno Haible  <bruno@clisp.org>
6031
6032         * modules/getpass (Depends-on): Add strdup-posix.
6033
6034         New module 'strdup-posix'.
6035         * modules/strdup-posix: New file.
6036         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
6037         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
6038         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
6039         REPLACE_STRDUP.
6040         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
6041         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
6042         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
6043         strdup-posix.
6044
6045         * modules/strdup (Depends-on): Remove malloc-posix.
6046
6047 2008-09-20  Bruno Haible  <bruno@clisp.org>
6048
6049         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
6050         Wildenhues.
6051
6052 2008-09-20  Bruno Haible  <bruno@clisp.org>
6053
6054         Ensure that wint_t gets defined on IRIX 5.3.
6055         * lib/wchar.in.h (wint_t): Define if not defined by the system.
6056         * lib/wctype.in.h (wint_t): Likewise.
6057         (__wctype_wint_t): Remove type.
6058         (isw*): Use wint_t instead of __wctype_wint_t.
6059         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
6060         * modules/wchar (Files): Add m4/wint_t.m4.
6061         (Makefile.am): Substitute HAVE_WINT_T.
6062         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
6063         * tests/test-wctype.c: Check that wint_t is defined.
6064         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
6065         * doc/posix-headers/wctype.texi: Likewise.
6066         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
6067
6068 2008-09-18  Bruno Haible  <bruno@clisp.org>
6069
6070         * gnulib-tool (func_exit): Update comment.
6071
6072 2008-09-18  Simon Josefsson  <simon@josefsson.org>
6073
6074         * modules/getaddrinfo (Depends-on): Remove strdup, this module
6075         assumes strdup exists and does not depend on strdup to return
6076         ENOMEM on out of memory conditions.
6077
6078 2008-09-18  Bruno Haible  <bruno@clisp.org>
6079
6080         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
6081         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
6082         digits for the exponent.
6083
6084 2008-09-18  Jim Meyering  <meyering@redhat.com>
6085             Bruno Haible  <bruno@clisp.org>
6086
6087         * lib/vasnprintf.c (decimal_point_char): Define also if
6088         NEED_PRINTF_INFINITE_LONG_DOUBLE.
6089
6090 2008-09-16  Bruno Haible  <bruno@clisp.org>
6091         and Eric Blake  <ebb9@byu.net>
6092
6093         vasnprintf: support Irix 5.3
6094         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
6095         that mishandle long double infinity.
6096         Reported by Tom G. Christensen.
6097
6098 2008-09-16  Bruno Haible  <bruno@clisp.org>
6099
6100         * doc/glibc-functions/scandir.texi: Mention the function is missing on
6101         Solaris 9.
6102         * doc/glibc-functions/alphasort.texi: Likewise.
6103         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
6104
6105 2008-09-16  Jim Meyering  <meyering@redhat.com>
6106
6107         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
6108         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
6109         a umask modification leak out of a subshell.  Otherwise, the
6110         opensolaris /bin/sh would be accepted and thus cause unwarranted
6111         failures in the coreutils test suite.
6112
6113 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
6114
6115         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
6116         to succeed.
6117
6118 2008-09-16  Jim Meyering  <meyering@redhat.com>
6119
6120         avoid spurious test failure when library is built without ACL support
6121         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
6122         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
6123         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
6124         * tests/test-copy-acl.sh: Likewise.
6125
6126 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6127
6128         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
6129         based on character occurrence counts.
6130
6131 2008-09-15  Eric Blake  <ebb9@byu.net>
6132
6133         tests: avoid some compiler warnings
6134         * tests/test-memchr.c (main): Pass NULL indirectly.
6135         * tests/test-closein.c (main): Avoid unused variable.
6136
6137 2008-09-15  Bruno Haible  <bruno@clisp.org>
6138
6139         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
6140         are missing on OpenBSD 4.0 individually.
6141         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
6142
6143 2008-09-15  Bruno Haible  <bruno@clisp.org>
6144
6145         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
6146         * doc/posix-functions/strerror.texi: Mention also Cygwin.
6147         * doc/posix-functions/perror.texi: Likewise.
6148         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
6149         is missing.
6150         Reported by Eric Blake.
6151
6152         * lib/errno.in.h: Use replacement values >= 2000.
6153         Reported by Eric Blake.
6154
6155 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6156
6157         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
6158         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
6159         limit.
6160         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
6161         compareseq was aborted.
6162
6163 2008-09-14  Bruno Haible  <bruno@clisp.org>
6164
6165         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
6166         yvec_edit_count.
6167         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
6168         (fstrcmp_bounded): Simplify result computation accordingly.
6169
6170 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6171
6172         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
6173         (fstrcmp): Define in terms of fstrcmp_bounded.
6174         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
6175         lower_bound argument.
6176         Return quickly if the result is certainly < lower_bound.
6177         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
6178
6179 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6180
6181         * lib/diffseq.h (EARLY_ABORT): New macro.
6182         (compareseq): Change return type to bool. Return true when EARLY_ABORT
6183         evaluates to true.
6184
6185 2008-09-14  Bruno Haible  <bruno@clisp.org>
6186
6187         * modules/perror-tests: New file.
6188         * tests/test-perror.sh: New file.
6189         * tests/test-perror.c: New file.
6190
6191         New module 'perror'.
6192         * lib/stdio.in.h (perror): New declaration.
6193         * lib/perror.c: New file.
6194         * m4/perror.m4: New file.
6195         * modules/perror: New file.
6196         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
6197         * doc/posix-functions/perror.texi: Mention the perror module.
6198         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
6199         REPLACE_PERROR.
6200         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
6201         REPLACE_PERROR.
6202
6203 2008-09-14  Bruno Haible  <bruno@clisp.org>
6204
6205         * modules/stdio (Makefile.am): Reorder to match the order in
6206         lib/stdio.in.h.
6207         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
6208
6209 2008-09-13  Bruno Haible  <bruno@clisp.org>
6210
6211         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
6212
6213 2008-09-13  Bruno Haible  <bruno@clisp.org>
6214
6215         Extend strerror to cover the added errno values.
6216         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
6217         (rpl_strerror): Provide error messages for the added errno values and
6218         for the WSA* values.
6219         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
6220         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
6221         strerror.
6222         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
6223         * modules/strerror (Depends-on): Add errno.
6224         * doc/posix-functions/strerror.texi: Document the change.
6225         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
6226         and EOVERFLOW.
6227
6228 2008-09-13  Bruno Haible  <bruno@clisp.org>
6229
6230         * modules/EOVERFLOW: Remove file.
6231         * m4/eoverflow.m4: Remove file.
6232         * modules/EOVERFLOW-tests: Remove file.
6233         * tests/test-EOVERFLOW.c: Remove file.
6234         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
6235         * modules/ftell (Depends-on): Likewise.
6236         * modules/getdelim (Depends-on): Likewise.
6237         * modules/getugroups (Depends-on): Likewise.
6238         * modules/poll (Depends-on): Likewise.
6239         * modules/snprintf (Depends-on): Likewise.
6240         * modules/sprintf-posix (Depends-on): Likewise.
6241         * modules/vasnprintf (Depends-on): Likewise.
6242         * modules/vasprintf (Depends-on): Likewise.
6243         * modules/vfprintf-posix (Depends-on): Likewise.
6244         * modules/vsnprintf (Depends-on): Likewise.
6245         * modules/vsprintf-posix (Depends-on): Likewise.
6246         * modules/xvasprintf (Depends-on): Likewise.
6247         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6248         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
6249         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
6250         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
6251         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6252         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
6253         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
6254         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
6255         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6256         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
6257         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
6258         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
6259         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6260         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
6261         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
6262         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
6263         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6264         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
6265         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
6266         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
6267         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6268         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
6269         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
6270         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
6271         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
6272         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6273         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
6274         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
6275         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
6276         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
6277         * MODULES.html.sh: Remove EOVERFLOW.
6278         * NEWS: Mention the change.
6279
6280 2008-09-13  Bruno Haible  <bruno@clisp.org>
6281
6282         * modules/errno-tests: New file.
6283         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
6284
6285         * lib/errno.in.h: New file.
6286         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
6287         * modules/errno: New file.
6288         * doc/posix-headers/errno.texi: Update documentation.
6289         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
6290
6291 2008-09-13  Bruno Haible  <bruno@clisp.org>
6292
6293         * tests/test-poll.c: Use #if for native Windows, rather than testing
6294         __MSVCRT__.
6295
6296 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6297             Bruno Haible  <bruno@clisp.org>
6298
6299         * lib/glob.c: Don't include <pwd.h> on native Windows.
6300         (WINDOWS32): New macro.
6301         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
6302
6303 2008-09-13  Bruno Haible  <bruno@clisp.org>
6304
6305         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
6306         (ETIMEDOUT): Remove macro.
6307         (glthread_cond_timedwait_multithreaded): New declaration.
6308         (glthread_cond_timedwait): Use it.
6309         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
6310         (glthread_cond_timedwait_multithreaded): New function.
6311
6312 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6313
6314         * modules/poll-tests: Do not check for io.h.
6315         * tests/test-poll.c: Check for __MSVCRT__ instead.
6316
6317 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6318
6319         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
6320         * modules/poll-tests: Add inet_pton, stdbool, sockets.
6321         * tests/test-poll.c: Use them.  Use _pipe on Windows.
6322
6323 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
6324
6325         * modules/poll-tests: New.
6326         * tests/test-poll.c: New.
6327
6328 2008-09-12  Eric Blake  <ebb9@byu.net>
6329
6330         frexp: test for NetBSD failure on -0.0
6331         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
6332         not all, bugs from NetBSD 3.0 have been fixed.
6333         * doc/posix-functions/frexp.texi (frexp): Document bug.
6334         Reported by Thomas Klausner.
6335
6336         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
6337         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
6338         literal -0.0.
6339         Reported by Jonathan C. Patschke <jp@centtech.com>.
6340
6341 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6342
6343         * lib/glthread/cond.h: Use dummy implementation also if
6344         USE_WIN32_THREADS.
6345
6346 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6347
6348         * modules/fnmatch-posix (License): Change to LGPLv2+.
6349         * modules/fnmatch-gnu (License): Likewise.
6350
6351 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6352
6353         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
6354
6355 2008-09-11  Jim Meyering  <meyering@redhat.com>
6356
6357         * users.txt: Add gtk-vnc.
6358
6359 2008-09-08  Simon Josefsson  <simon@josefsson.org>
6360
6361         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
6362         rotate amounts.
6363
6364         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
6365         required for 16-bit and 8-bit rotates.
6366         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
6367         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
6368         UINT8_MAX instead of hard-coded constants.
6369         Suggested by Paul Eggert.
6370
6371 2008-09-07  Bruno Haible  <bruno@clisp.org>
6372
6373         * tests/test-striconveh.c (main): Check behaviour when converting from
6374         UTF-7.
6375
6376         Make striconveh work better with stateful encodings.
6377         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
6378         that iconv does not increment the inptr when returning -1/EINVAL.
6379
6380 2008-09-07  Bruno Haible  <bruno@clisp.org>
6381
6382         * build-aux/config.rpath: Update according to libtool-2.2.6.
6383         * build-aux/config.libpath: Likewise.
6384
6385 2008-09-06  Bruno Haible  <bruno@clisp.org>
6386
6387         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
6388         * lib/freadptr.c (freadptr): Likewise.
6389         * lib/freadseek.c (freadptrinc): Likewise.
6390         Reported by Simon Josefsson.
6391
6392 2008-09-06  Bruno Haible  <bruno@clisp.org>
6393
6394         * modules/freadptr (License): Change to LGPLv2+.
6395         * modules/freadseek (License): Likewise.
6396         Suggested by Eric Blake.
6397
6398         * modules/memchr2 (License): Change to LGPLv2+.
6399         Approved by Eric Blake.
6400
6401 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6402             Bruno Haible  <bruno@clisp.org>
6403
6404         Make gnulib-tool work with native 'sed' on AIX.
6405         * gnulib-tool (sed_noop): New variable.
6406         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
6407         func_add_or_update, func_create_testdir): Use it to initialize sed
6408         script variables.
6409         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6410
6411 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
6412             Bruno Haible  <bruno@clisp.org>
6413
6414         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
6415         also works after #include directives.
6416
6417 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
6418
6419         getdate.y: reject an out-of-range timezone value
6420         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
6421         the range [-24...+24].  When specified with only one or two digits,
6422         * tests/test-getdate.c: Tests for the fix.
6423         * doc/getdate.texi: Document this change.
6424
6425 2008-09-03  Bruno Haible  <bruno@clisp.org>
6426
6427         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
6428
6429 2008-09-02  Simon Josefsson  <simon@josefsson.org>
6430
6431         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
6432         <bruce.korb@gmail.com> with ideas from Ben Pfaff
6433         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
6434         Blake <ebb9@byu.net>.
6435
6436         * tests/test-bitrotate.c: Add more test vectors.
6437
6438 2008-09-02  Eric Blake  <ebb9@byu.net>
6439
6440         vasnprintf-posix: handle large precision via %.*d
6441         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
6442         when handling it ourselves.
6443         * tests/test-vasnprintf-posix.c (test_function): Add test.
6444         * tests/test-snprintf-posix.h (test_function): Likewise.
6445         * tests/test-sprintf-posix.h (test_function): Likewise.
6446         * tests/test-vasprintf-posix.c (test_function): Likewise.
6447         Reported by Alain Guibert.
6448
6449 2008-09-01  Eric Blake  <ebb9@byu.net>
6450
6451         c-stack: make configure-time check more robust
6452         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
6453         successful sigaction call.
6454         Reported by Tom G. Christensen.
6455
6456 2008-09-01  Bruno Haible  <bruno@clisp.org>
6457
6458         New module 'findprog-lgpl'.
6459         * modules/findprog-lgpl: New file.
6460         * lib/findprog-lgpl.c: New file.
6461         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
6462         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
6463         to decide whether to use strdup or xstrdup, concatenated_filename or
6464         xconcatenated_filename.
6465
6466 2008-09-01  Bruno Haible  <bruno@clisp.org>
6467
6468         Split module 'concat-filename' into 'concat-filename' (LGPL) and
6469         'xconcat-filename' (GPL).
6470         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
6471         (License): Change to LGPLv2+.
6472         * modules/xconcat-filename: New file.
6473         * lib/concat-filename.h (concatenated_filename): Change specification.
6474         (xconcatenated_filename): New declaration.
6475         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
6476         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
6477         memory situations.
6478         * lib/xconcat-filename.c: New file.
6479         * NEWS: Mention the change.
6480         * lib/findprog.c: Include concat-filename.h, not filename.h.
6481         (find_in_path): Use xconcatenated_filename instead of
6482         concatenated_filename.
6483         * lib/javacomp.c: Include concat-filename.h, not filename.h.
6484         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
6485         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
6486         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
6487         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
6488         instead of concatenated_filename.
6489         * lib/javaexec.c: Include concat-filename.h, not filename.h.
6490         (execute_java_class): Use xconcatenated_filename instead of
6491         concatenated_filename.
6492         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
6493         * modules/javacomp (Depends-on): Likewise.
6494         * modules/javaexec (Depends-on): Likewise.
6495
6496 2008-09-01  Bruno Haible  <bruno@clisp.org>
6497
6498         Split module 'filename' into 'filename' and 'concat-filename'.
6499         * modules/filename: Keep only lib/filename.h.
6500         (License): Change to LGPLv2+.
6501         * modules/concat-filename: New file, extracted from modules/filename.
6502         * lib/filename.h (concatenated_filename): Remove declaration.
6503         * lib/concat-filename.h: New file, extracted from lib/filename.h.
6504         * lib/concat-filename.c: Include concat-filename.h.
6505         * NEWS: Mention the change.
6506
6507 2008-09-01  Simon Josefsson  <simon@josefsson.org>
6508
6509         * lib/bitrotate.h (rotl8, rotr8): Add.
6510
6511         * modules/bitrotate (configure.ac): Need
6512         AC_REQUIRE([AC_C_INLINE]).
6513         (Description): Mention stdint.h.  Reported by Bruno Haible
6514         <bruno@clisp.org>.
6515
6516         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
6517         Paolo Bonzini <bonzini@gnu.org>.
6518
6519 2008-08-31  Bruno Haible  <bruno@clisp.org>
6520
6521         Assume Solaris specific bi-arch conventions on Solaris systems.
6522         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
6523         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
6524         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
6525         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
6526         like acl_libdirstem.
6527         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
6528         acl_libdirstem.
6529         * NEWS: Mention the change.
6530         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
6531
6532 2008-08-31  Jim Meyering  <meyering@redhat.com>
6533
6534         * lib/strftime.h: Add comments describing the two added arguments.
6535
6536         remove duplicate #include directives
6537         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
6538         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
6539
6540 2008-08-31  Bruno Haible  <bruno@clisp.org>
6541
6542         New module 'sigpipe-die'.
6543         * modules/sigpipe-die: New file.
6544         * lib/sigpipe-die.h: New file.
6545         * lib/sigpipe-die.c: New file.
6546         * MODULES.html.sh (Signal handling): Add sigpipe-die.
6547
6548 2008-08-31  Bruno Haible  <bruno@clisp.org>
6549
6550         Don't override previously installed signal handlers.
6551         * lib/fatal-signal.c (saved_sigactions): New variable.
6552         (uninstall_handlers): Reset the signal to the saved handler, not
6553         to SIG_DFL (except when ignored).
6554         (install_handlers): Save the previous handlers.
6555
6556 2008-08-30  Bruno Haible  <bruno@clisp.org>
6557
6558         * gnulib-tool (func_reset_sigpipe): New function.
6559         (func_get_automake_snippet, func_modules_transitive_closure,
6560         func_import): Invoke it before a join command that reads from stdin,
6561         to avoid "echo: write error: Broken pipe" error messages on stderr.
6562         Reported by Sam Steingold <sds@gnu.org>.
6563
6564 2008-08-30  Bruno Haible  <bruno@clisp.org>
6565
6566         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
6567         Code copied from m4/open.m4.
6568         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
6569         access and the filename ends in a slash. Code copied from lib/open.c.
6570         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
6571         * tests/test-fopen.c (main): Check against bug with trailing slash.
6572
6573 2008-08-29  Bruno Haible  <bruno@clisp.org>
6574
6575         Avoid some "gcc -pedantic" warnings.
6576         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
6577         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
6578         * lib/dirent.in.h: Likewise.
6579         * lib/fcntl.in.h: Likewise.
6580         * lib/float.in.h: Likewise.
6581         * lib/iconv.in.h: Likewise.
6582         * lib/inttypes.in.h: Likewise.
6583         * lib/locale.in.h: Likewise.
6584         * lib/math.in.h: Likewise.
6585         * lib/netinet_in.in.h: Likewise.
6586         * lib/search.in.h: Likewise.
6587         * lib/signal.in.h: Likewise.
6588         * lib/stdarg.in.h: Likewise.
6589         * lib/stdint.in.h: Likewise.
6590         * lib/stdio.in.h: Likewise.
6591         * lib/stdlib.in.h: Likewise.
6592         * lib/string.in.h: Likewise.
6593         * lib/strings.in.h: Likewise.
6594         * lib/sys_select.in.h: Likewise.
6595         * lib/sys_socket.in.h: Likewise.
6596         * lib/sys_stat.in.h: Likewise.
6597         * lib/sys_time.in.h: Likewise.
6598         * lib/sysexits.in.h: Likewise.
6599         * lib/time.in.h: Likewise.
6600         * lib/unistd.in.h: Likewise.
6601         * lib/wchar.in.h: Likewise.
6602         * lib/wctype.in.h: Likewise.
6603         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
6604         * modules/fchdir (Makefile.am): Likewise.
6605         * modules/fcntl (Makefile.am): Likewise.
6606         * modules/float (Makefile.am): Likewise.
6607         * modules/iconv_open (Makefile.am): Likewise.
6608         * modules/inttypes (Makefile.am): Likewise.
6609         * modules/locale (Makefile.am): Likewise.
6610         * modules/math (Makefile.am): Likewise.
6611         * modules/netinet_in (Makefile.am): Likewise.
6612         * modules/search (Makefile.am): Likewise.
6613         * modules/signal (Makefile.am): Likewise.
6614         * modules/stdarg (Makefile.am): Likewise.
6615         * modules/stdint (Makefile.am): Likewise.
6616         * modules/stdio (Makefile.am): Likewise.
6617         * modules/stdlib (Makefile.am): Likewise.
6618         * modules/string (Makefile.am): Likewise.
6619         * modules/strings (Makefile.am): Likewise.
6620         * modules/sys_select (Makefile.am): Likewise.
6621         * modules/sys_socket (Makefile.am): Likewise.
6622         * modules/sys_stat (Makefile.am): Likewise.
6623         * modules/sys_time (Makefile.am): Likewise.
6624         * modules/sysexits (Makefile.am): Likewise.
6625         * modules/time (Makefile.am): Likewise.
6626         * modules/unistd (Makefile.am): Likewise.
6627         * modules/wchar (Makefile.am): Likewise.
6628         * modules/wctype (Makefile.am): Likewise.
6629         Reported by Reuben Thomas <rrt@sc3d.org>.
6630
6631 2008-08-29  Bruno Haible  <bruno@clisp.org>
6632
6633         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
6634         any more.
6635
6636 2008-08-29  Simon Josefsson  <simon@josefsson.org>
6637
6638         * MODULES.html.sh (Misc): Add bitrotate.
6639
6640         * modules/bitrotate: New file.
6641
6642         * lib/bitrotate.h: New file.
6643
6644         * modules/bitrotate-tests: New file.
6645
6646         * tests/test-bitrotate.c: New file.
6647
6648         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
6649         on the bitrotate module.
6650
6651         * lib/arctwo.c: Use new bitrotate module.
6652
6653 2008-08-29  Jim Meyering  <meyering@redhat.com>
6654
6655         bootstrap: merge changes from coreutils
6656         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
6657         of copied files.  Remove a kludge, now that this is fixed.
6658         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
6659         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
6660         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
6661
6662 2008-08-29  Bruno Haible  <bruno@clisp.org>
6663
6664         * MODULES.html.sh: Remove --cvs-urls option.
6665
6666 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
6667
6668         maint.mk: adjust to file name change
6669         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
6670
6671 2008-08-28  Jim Meyering  <meyering@redhat.com>
6672
6673         * modules/getndelim2 (License): Relicense to LGPLv2+.
6674         Approved by Richard Stallman for the version of 1995, and by
6675         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
6676
6677 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
6678
6679         * lib/getdelim.c (flockfile, funlockfile): Make all of them
6680         dummy if one is not available.  Do not touch them if
6681         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
6682         (getc_maybe_unlocked): New.
6683         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
6684
6685 2008-08-26  Eric Blake  <ebb9@byu.net>
6686
6687         doc/INSTALL: resync from autoconf
6688         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
6689         (INSTALL_PRELUDE): Delete; this is done more efficiently by
6690         moving...
6691         * install.texi [!autoconf]: ...here.  Resync from autoconf.
6692         * INSTALL: Regenerate.
6693         * INSTALL.ISO: New file.
6694         * INSTALL.UTF-8: Likewise.
6695
6696 2008-08-26  Jim Meyering  <meyering@redhat.com>
6697
6698         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
6699         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
6700         these definitions conditional, so that they may be overridden, too.
6701
6702 2008-08-26  Bruno Haible  <bruno@clisp.org>
6703
6704         Generate INSTALL file variants with prettier quotes.
6705         * doc/Makefile (INSTALL_PRELUDE): New macro.
6706         (INSTALL): Use it.
6707         (INSTALL.ISO, INSTALL.UTF-8): New rules.
6708
6709 2008-08-26  Bruno Haible  <bruno@clisp.org>
6710
6711         Run makeinfo in an English locale.
6712         * doc/Makefile (MAKEINFO): New variable.
6713
6714 2008-08-26  Bruno Haible  <bruno@clisp.org>
6715
6716         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
6717         Suggested by Eric Blake.
6718
6719 2008-08-25  Bruno Haible  <bruno@clisp.org>
6720
6721         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
6722
6723 2008-08-25  Eric Blake  <ebb9@byu.net>
6724
6725         c-stack: test that stack overflow can be caught
6726         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
6727         that platform allows handling stack overflow; at least OS/2 EMX
6728         has sigaltstack, but crashes before transferring control to
6729         handler on stack overflow.
6730         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
6731         check for HAVE_STACK_OVERFLOW_HANDLING.
6732         Reported by Elbert Pol.
6733
6734 2008-08-25  Bruno Haible  <bruno@clisp.org>
6735
6736         * doc/posix-functions/strftime.texi: Fix description of strftime
6737         module.
6738
6739 2008-08-24  Bruno Haible  <bruno@clisp.org>
6740
6741         * tests/uniwidth/test-uc_width2.c: New file.
6742         * tests/uniwidth/test-uc_width2.sh: New file.
6743         * modules/uniwidth/width-tests (Files): Add the new files.
6744         (TESTS): Add uniwidth/test-uc_width2.sh.
6745         (TESTS_ENVIRONMENT): New variable.
6746         (check_PROGRAMS): Add test-uc_width2.
6747         (test_uc_width2_SOURCES): New variable.
6748
6749         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
6750         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
6751         not 0x00AB.
6752         Reported by Alexander V. Lukyanov <lav@netis.ru>.
6753
6754 2008-08-22  Eric Blake  <ebb9@byu.net>
6755
6756         test-lock, test-tls: mention why a test is skipped
6757         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
6758         skipped.
6759         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
6760
6761         count-one-bits: relax license
6762         * modules/count-one-bits (License): Relicense to LGPLv2+.
6763         Suggested by Ludovic Courtès, approved by Ben Pfaff.
6764
6765 2008-08-22  Andreas Schwab  <schwab@suse.de>
6766
6767         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
6768         Remove spurious space in assignment.
6769
6770 2008-08-21  Simon Josefsson  <simon@josefsson.org>
6771
6772         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
6773         Paul Eggert <eggert@CS.UCLA.EDU>.
6774
6775 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
6776
6777         * modules/gettext: Add m4/threadlib.m4.
6778
6779 2008-08-19  Eric Blake  <ebb9@byu.net>
6780
6781         test-c-stack: fix compilation failure on FreeBSD 5.0
6782         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
6783         headers before <sys/resource.h>.
6784         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
6785         the bug.
6786         Reported by Nelson H. F. Beebe.
6787
6788         strverscmp: migrate from "strverscmp.h" to <string.h>
6789         * modules/string (Makefile.am): Add new hooks.
6790         * modules/strverscmp (Files): Remove strverscmp.h.
6791         (Depends-on): Add string.
6792         (configure.ac): Add indicator.
6793         (Include): Mention new header.
6794         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
6795         defaults.
6796         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
6797         results.
6798         * lib/strverscmp.h: Delete.
6799         * lib/string.in.h (strverscmp): Provide declaration, when needed.
6800         * tests/test-strverscmp.c (includes): Adjust client.
6801         * lib/check-version.c (includes): Likewise.
6802         * NEWS: Document the change.
6803
6804         strverscmp: add unit test
6805         * modules/strverscmp-tests: New file.
6806         * tests/test-strverscmp.c: Likewise.
6807
6808 2008-08-19  Simon Josefsson  <simon@josefsson.org>
6809
6810         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
6811         regarding Windows crypto stuff, from Mono.
6812
6813 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
6814
6815         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
6816         if present, for intel RND.  Return error on failures.
6817
6818 2008-08-18  Ben Pfaff  <blp@gnu.org>
6819
6820         gitlog-to-changelog: give better diagnostic for failed pipe-open
6821         * build-aux/gitlog-to-changelog: Improve error message: suggest
6822         that the version of Git may be too old.
6823
6824 2008-08-18  Simon Josefsson  <simon@josefsson.org>
6825
6826         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
6827         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
6828
6829 2008-08-18  Bruno Haible  <bruno@clisp.org>
6830
6831         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
6832         pthread_in_use().
6833
6834 2008-08-18  Bruno Haible  <bruno@clisp.org>
6835
6836         * lib/glthread/threadlib.c: Include <pthread.h>.
6837
6838 2008-08-18  Bruno Haible  <bruno@clisp.org>
6839
6840         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
6841         glthread_recursive_lock_* macros.
6842         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
6843         Fix syntax error.
6844
6845 2008-08-18  Bruno Haible  <bruno@clisp.org>
6846
6847         * lib/glthread/thread.c: Avoid forcing a context switch right after
6848         thread creation.
6849
6850 2008-08-17  Bruno Haible  <bruno@clisp.org>
6851
6852         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
6853         * lib/glthread/thread.h: Provide Win32 specific implementation.
6854         * modules/thread (Files): Add lib/glthread/thread.c.
6855         (Depends-on): Add lock.
6856         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
6857
6858 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6859
6860         New module 'yield'.
6861         * modules/yield: New file.
6862         * lib/glthread/yield.h: New file.
6863         * m4/yield.m4: New file.
6864         * MODULES.html.sh (Multithreading): Add yield.
6865
6866 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6867
6868         New module 'thread'.
6869         * modules/thread: New file.
6870         * lib/glthread/thread.h: New file.
6871         * m4/thread.m4: New file.
6872         * MODULES.html.sh (Multithreading): Add thread.
6873
6874 2008-08-17  Bruno Haible  <bruno@clisp.org>
6875
6876         * lib/glthread/lock.h: Include <stdlib.h> always.
6877         * lib/glthread/tls.h: Likewise.
6878         * lib/glthread/cond.h: Likewise.
6879
6880 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
6881
6882         New module 'cond'.
6883         * modules/cond: New file.
6884         * lib/glthread/cond.h: New file.
6885         * lib/glthread/cond.c: New file.
6886         * m4/cond.m4: New file.
6887         * MODULES.html.sh (Multithreading): Add cond.
6888
6889 2008-08-16  Eric Blake  <ebb9@byu.net>
6890
6891         c-stack: fix regression on Irix 5.3 from 2008-06-21
6892         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
6893         sa_sigaction...
6894         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
6895         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
6896         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
6897         * modules/signal (Makefile.am): Use the value.
6898         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
6899         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
6900         * doc/posix-headers/signal.texi (signal.h): Document this
6901         portability issue.
6902         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
6903         Reported by Tom G. Christensen.
6904
6905 2008-08-17  Bruno Haible  <bruno@clisp.org>
6906
6907         New module 'threadlib'.
6908         * modules/threadlib: New file.
6909         * lib/glthread/threadlib.c: New file, extracted from
6910         lib/glthread/lock.c.
6911         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
6912         functions.
6913         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
6914         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
6915         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
6916         macros.
6917         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
6918         (gl_DISABLE_THREADS): Remove macro.
6919         * modules/lock (Files): Remove build-aux/config.rpath.
6920         (Depends-on): Remove havelib. Add threadlib.
6921         (configure.ac-early): Remove section.
6922         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
6923         * modules/tls (Depends-on): Remove lock. Add threadlib.
6924         (Link): New section, copied from threadlib.
6925         * MODULES.html.sh (Multithreading): Add threadlib.
6926
6927 2008-08-14  Bruno Haible  <bruno@clisp.org>
6928
6929         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
6930         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
6931         glthread_rwlock_unlock, glthread_rwlock_destroy,
6932         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
6933         glthread_recursive_lock_destroy): Define as macros always.
6934         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
6935         glthread_lock_lock.
6936         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
6937         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
6938         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
6939         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
6940         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
6941         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
6942         (glthread_recursive_lock_lock_func): Renamed from
6943         glthread_recursive_lock_lock.
6944         (glthread_recursive_lock_unlock_func): Renamed from
6945         glthread_recursive_lock_unlock.
6946         (glthread_recursive_lock_destroy_func): Renamed from
6947         glthread_recursive_lock_destroy.
6948
6949 2008-08-14  Bruno Haible  <bruno@clisp.org>
6950
6951         * lib/glthread/lock.h: Renamed from lib/lock.h.
6952         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
6953         * lib/glthread/tls.h: Renamed from lib/tls.h.
6954         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
6955         * lib/fstrcmp.c: Update includes.
6956         * lib/strsignal.c: Update includes.
6957         * modules/lock (Files, Makefile.am): Update.
6958         (Include): Change to "glthread/lock.h".
6959         * modules/tls (Files, Makefile.am): Update.
6960         (Include): Change to "glthread/tls.h".
6961         * tests/test-lock.c: Update includes.
6962         * tests/test-tls.c: Update includes.
6963         * NEWS: Mention the renamed header files.
6964
6965 2008-08-11  Jim Meyering  <meyering@redhat.com>
6966
6967         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
6968
6969 2008-08-11  Eric Blake  <ebb9@byu.net>
6970
6971         test-c-stack: avoid C99-ism
6972         * tests/test-c-stack.c (main): Fix whitespace, move declaration
6973         before statement.
6974         Reported by Alain Guibert.
6975
6976 2008-08-10  Jim Meyering  <meyering@redhat.com>
6977
6978         ensure that return value of uinttostr et al are not ignored
6979         * lib/inttostr.h (__GNUC_PREREQ): Define.
6980         (__attribute_warn_unused_result__): Define.
6981         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
6982
6983 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
6984
6985         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
6986         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
6987
6988 2008-08-07  Jim Meyering  <meyering@redhat.com>
6989
6990         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
6991
6992         * modules/mkstemp (License): Relicense under LGPLv2+.
6993         * modules/tempname (License): Likewise.
6994
6995 2008-08-06  Bruno Haible  <bruno@clisp.org>
6996
6997         * lib/poll.c (poll): Further micro-optimization.
6998
6999 2008-08-06  Jim Meyering  <meyering@redhat.com>
7000
7001         inet_pton.c: use locale-independent tolower
7002         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
7003         (inet_pton6): Use c_tolower rather than tolower.
7004         * modules/inet_pton (Depends-on): Add c-ctype.
7005
7006 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
7007
7008         * lib/poll.c (poll): Avoid division when timeout is 0, cache
7009         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
7010
7011 2008-08-06  Jim Meyering  <meyering@redhat.com>
7012
7013         * modules/inet_pton (License): Relicense under LGPLv2+.
7014
7015 2008-08-03  Bruno Haible  <bruno@clisp.org>
7016
7017         Additional non-aborting API for lock and tls.
7018         * lib/lock.h: Include <errno.h>.
7019         (glthread_lock_init): New macro/function.
7020         (gl_lock_init): Define as wrapper around glthread_lock_init.
7021         (glthread_lock_lock): New macro/function.
7022         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
7023         (glthread_lock_unlock): New macro/function.
7024         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
7025         (glthread_lock_destroy): New macro/function.
7026         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
7027         (glthread_rwlock_init): New macro/function.
7028         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
7029         (glthread_rwlock_rdlock): New macro/function.
7030         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
7031         (glthread_rwlock_wrlock): New macro/function.
7032         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
7033         (glthread_rwlock_unlock): New macro/function.
7034         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
7035         (glthread_rwlock_destroy): New macro/function.
7036         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
7037         (glthread_recursive_lock_init): New macro/function.
7038         (gl_recursive_lock_init): Define as wrapper around
7039         glthread_recursive_lock_init.
7040         (glthread_recursive_lock_lock): New macro/function.
7041         (gl_recursive_lock_lock): Define as wrapper around
7042         glthread_recursive_lock_lock.
7043         (glthread_recursive_lock_unlock): New macro/function.
7044         (gl_recursive_lock_unlock): Define as wrapper around
7045         glthread_recursive_lock_unlock.
7046         (glthread_recursive_lock_destroy): New macro/function.
7047         (gl_recursive_lock_destroy): Define as wrapper around
7048         glthread_recursive_lock_destroy.
7049         (glthread_once): New macro/function.
7050         (gl_once): Define as wrapper around glthread_once.
7051         Update function declarations.
7052         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
7053         glthread_rwlock_init. Return error code.
7054         (glthread_rwlock_rdlock_multithreaded): Renamed from
7055         glthread_rwlock_rdlock. Return error code.
7056         (glthread_rwlock_wrlock_multithreaded): Renamed from
7057         glthread_rwlock_wrlock. Return error code.
7058         (glthread_rwlock_unlock_multithreaded): Renamed from
7059         glthread_rwlock_unlock. Return error code.
7060         (glthread_rwlock_destroy_multithreaded): Renamed from
7061         glthread_rwlock_destroy. Return error code.
7062         (glthread_recursive_lock_init_multithreaded): Renamed from
7063         glthread_recursive_lock_init. Return error code.
7064         (glthread_recursive_lock_lock_multithreaded): Renamed from
7065         glthread_recursive_lock_lock. Return error code.
7066         (glthread_recursive_lock_unlock_multithreaded): Renamed from
7067         glthread_recursive_lock_unlock. Return error code.
7068         (glthread_recursive_lock_destroy_multithreaded): Renamed from
7069         glthread_recursive_lock_destroy. Return error code.
7070         (glthread_once_call): Make static.
7071         (glthread_once_multithreaded): Renamed from glthread_once.
7072         * lib/tls.h: Include <errno.h>.
7073         (glthread_tls_key_init): New macro/function.
7074         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
7075         (glthread_tls_set): New macro/function.
7076         (gl_tls_set): Define as wrapper around glthread_tls_set.
7077         (glthread_tls_key_destroy): New macro/function.
7078         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
7079         Update function declarations.
7080         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
7081         glthread_tls_get.
7082         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
7083
7084 2008-08-04  Eric Blake  <ebb9@byu.net>
7085
7086         gnumakefile: use space, not TAB, outside of targets
7087         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
7088
7089 2008-08-02  Jim Meyering  <meyering@redhat.com>
7090
7091         getdate.y: avoid locale-dependent date parsing failure
7092         In Turkish locales, getdate would fail to recognize keywords
7093         containing a lowercase "i".  The solution is not to rely on
7094         locale-sensitive case-conversion.
7095         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
7096         (lookup_word): Use c_toupper in place of toupper.
7097         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
7098         Reported by Vefa Bicakci <bicave@superonline.com> in
7099         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
7100         * modules/getdate (Depends-on): Add c-ctype.
7101
7102 2008-08-02  Bruno Haible  <bruno@clisp.org>
7103
7104         * gnulib-tool (func_import): When updating or creating a .gitignore
7105         file, prepend each added line with a slash, and ignore leading slashes
7106         from the existing lines.
7107         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
7108
7109 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7110
7111         Portability fix for GNU make 3.79.1.
7112         * top/GNUmakefile: Avoid 'else COND', which older GNU make
7113         versions do not understand.
7114
7115 2008-08-01  Bruno Haible  <bruno@clisp.org>
7116
7117         Work around bug of HP-UX 10.20 cc with -0.0 literal.
7118         * tests/test-isnanf.h (zero): New variable.
7119         (main): Avoid literal -0.0f.
7120         * tests/test-isnand.h (zero): New variable.
7121         (main): Avoid literal -0.0.
7122         * tests/test-isnanl.h (zero): New variable.
7123         (main): Avoid literal -0.0L.
7124         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
7125         (test_float, test_double, test_long_double): Avoid literals -0.0f,
7126         -0.0, -0.0L.
7127         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
7128         (test_signbitd): Avoid literal -0.0.
7129         (test_signbitl): Avoid literal -0.0L.
7130         * tests/test-ceilf1.c (zero): New variable.
7131         (main): Avoid literal -0.0f.
7132         * tests/test-ceill.c (zero): New variable.
7133         (main): Avoid literal -0.0L.
7134         * tests/test-floorf1.c (zero): New variable.
7135         (main): Avoid literal -0.0f.
7136         * tests/test-floorl.c (zero): New variable.
7137         (main): Avoid literal -0.0L.
7138         * tests/test-roundf1.c (zero): New variable.
7139         (main): Avoid literal -0.0f.
7140         * tests/test-round1.c (zero): New variable.
7141         (main): Avoid literal -0.0.
7142         * tests/test-roundl.c (zero): New variable.
7143         (main): Avoid literal -0.0L.
7144         * tests/test-truncf1.c (zero): New variable.
7145         (main): Avoid literal -0.0f.
7146         * tests/test-trunc1.c (zero): New variable.
7147         (main): Avoid literal -0.0.
7148         * tests/test-truncl.c (zero): New variable.
7149         (main): Avoid literal -0.0L.
7150         * tests/test-frexp.c (zero): New variable.
7151         (main): Avoid literal -0.0.
7152         * tests/test-frexpl.c (zero): New variable.
7153         (main): Avoid literal -0.0L.
7154         * tests/test-ldexpl.c (zero): New variable.
7155         (main): Avoid literal -0.0L.
7156         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7157         (zerod, zerol): New variables.
7158         (test_function): Avoid literals -0.0, -0.0L.
7159         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
7160         (zerod, zerol): New variables.
7161         (test_function): Avoid literals -0.0, -0.0L.
7162         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7163         (zerod, zerol): New variables.
7164         (test_function): Avoid literals -0.0, -0.0L.
7165         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
7166         (zerod, zerol): New variables.
7167         (test_function): Avoid literals -0.0, -0.0L.
7168         * tests/test-strtod.c (zero): New variable.
7169         (main): Avoid literal -0.0.
7170         Reported by Jonathan C. Patschke <jp@centtech.com>.
7171
7172 2008-07-31  Jim Meyering  <meyering@redhat.com>
7173
7174         sha256.h: correct definition of SHA224_DIGEST_SIZE
7175         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
7176         Reported by Paulie Pena IV <paulie4@gmail.com>.
7177         Define as 224 / 8, rather than as a literal.
7178         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
7179         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
7180         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
7181
7182 2008-07-31  Bruno Haible  <bruno@clisp.org>
7183
7184         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
7185         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
7186         Reported by Jonathan Patschke <jp@centtech.com>.
7187
7188 2008-07-31  Bruno Haible  <bruno@clisp.org>
7189
7190         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
7191         Reported by Paolo Bonzini <bonzini@gnu.org>.
7192
7193 2008-07-30  Eric Blake  <ebb9@byu.net>
7194
7195         test-strtod: allow compilation without -lm
7196         * tests/test-strtod.c (main): Avoid link dependence on fabs.
7197         Reported by Dennis Clarke <blastwave@gmail.com>.
7198
7199 2008-07-28  Jim Meyering  <meyering@redhat.com>
7200
7201         bootstrap: work also when there are no .po files in po/
7202         * build-aux/bootstrap (update_po_files): Complete the change
7203         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
7204
7205 2008-07-27  Jim Meyering  <meyering@redhat.com>
7206
7207         * users.txt: Add zile.
7208
7209 2008-07-26  Ben Pfaff  <blp@gnu.org>
7210
7211         Add missing dependencies on new m4/exponent[fdl].m4 files.
7212         * modules/isnanf-nolibm: Add m4/exponentf.m4.
7213         * modules/isnand-nolibm: Add m4/exponentd.m4.
7214         * modules/isnanl-nolibm: Add m4/exponentl.m4.
7215         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
7216         m4/isnan[fdl].m4, because the macros actually used moved.
7217         Reported by Jim Meyering.
7218
7219 2008-07-14  Ben Pfaff  <blp@gnu.org>
7220
7221         Add isinf module.
7222         * lib/isinf.c: New file.
7223         * lib/math.in.h: Define isinf macro if we have decided to replace
7224         it.
7225         * m4/isinf.m4: New file.
7226         * m4/math_h.m4: Initialize and substitute variables for isinf
7227         module.
7228         * modules/isinf: New file.
7229         * modules/isinf-tests: New file.
7230         * modules/math: Add substitutions for new module.
7231         * tests/test-isinf.c: New file.
7232         * doc/posix-functions/isinf.texi: Mention new module.
7233         * MODULES.html.sh: Mention new module.
7234
7235 2008-07-14  Ben Pfaff  <blp@gnu.org>
7236
7237         Factor out some macros for use by additional modules.
7238         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
7239         exponentf.m4.
7240         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
7241         exponentd.m4.
7242         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
7243         file exponentl.m4.
7244         * m4/exponentf.m4: New file.
7245         * m4/exponentd.m4: New file.
7246         * m4/exponentl.m4: New file.
7247         * modules/isnanf: Use new file m4/exponentf.m4.
7248         * modules/isnand: Use new file m4/exponentd.m4.
7249         * modules/isnanl: Use new file m4/exponentl.m4.
7250
7251 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
7252
7253         mktime.c: normalize tp->tm_isdst value to -1/0/1.
7254         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
7255         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
7256         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
7257
7258         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
7259         readlink on platforms without PATH_MAX.
7260
7261 2008-07-21  Eric Blake  <ebb9@byu.net>
7262
7263         Warn, not fail, on stale version.
7264         * top/GNUmakefile (_curr-ver): Tone down previous patch.
7265
7266         Don't allow installation with stale devel version number.
7267         * top/GNUmakefile (_is-install-target): New macro.
7268         (_curr-ver): Forbid installation with stale version number.
7269
7270 2008-07-20  Bruno Haible  <bruno@clisp.org>
7271
7272         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
7273         TESTS_ENVIRONMENT.
7274         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
7275
7276 2008-07-20  Bruno Haible  <bruno@clisp.org>
7277
7278         * lib/c-stack.h (c_stack_action): Add documentation.
7279         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
7280
7281 2008-07-20  Bruno Haible  <bruno@clisp.org>
7282
7283         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
7284         * modules/readlink (License): Likewise.
7285
7286 2008-07-17  Eric Blake  <ebb9@byu.net>
7287
7288         * modules/c-stack (Link): Fix typo.
7289
7290         Make c-stack use libsigsegv, when available.
7291         * modules/c-stack (Depends-on): Add libsigsegv.
7292         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
7293         needed.
7294         * lib/c-stack.c (SIGSTKSZ): Define fallback.
7295         (segv_handler, overflow_handler, c_stack_action)
7296         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
7297         implementation when libsigsegv is available, but only when using
7298         the library is necessary.
7299         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
7300         comment, explaining why XSI check fails on Linux.
7301         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
7302         * tests/test-c-stack2.sh: Tweak skip message.
7303         * NEWS: Document new link-time requirements.
7304
7305 2008-07-16  Eric Blake  <ebb9@byu.net>
7306
7307         c-stack: Expose false positives when not using libsigsegv.
7308         * modules/c-stack-tests (Files): Expand test.
7309         * tests/test-c-stack.c (main): Add means to conditionally trigger
7310         non-overflow SIGSEGV.
7311         * tests/test-c-stack2.sh: New file.
7312
7313 2008-07-14  Bruno Haible  <bruno@clisp.org>
7314
7315         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
7316         Reported by Eric Blake.
7317
7318 2008-07-14  Sam Steingold  <sds@gnu.org>
7319             Bruno Haible  <bruno@clisp.org>
7320
7321         New module libsigsegv.
7322         * modules/libsigsegv: New file.
7323         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
7324         modifications.
7325         * MODULES.html.sh (Signal handling): New section.
7326
7327 2008-07-14  Bruno Haible  <bruno@clisp.org>
7328
7329         * modules/unictype/ctype-* (Description): Add the word "function".
7330         Improves the resulting doc in MODULES.html.
7331
7332 2008-07-12  Ben Pfaff  <blp@gnu.org>
7333
7334         Add longlong module.
7335         * modules/longlong: New file.
7336
7337 2008-07-12  Bruno Haible  <bruno@clisp.org>
7338
7339         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
7340         to empty.
7341
7342 2008-07-10  Ben Pfaff  <blp@gnu.org>
7343
7344         Add isnan module.
7345         * doc/posix-functions/isnan.texi: Mention new module.
7346         * lib/math.in.h: Define isnan macro if we have decided to replace
7347         it.
7348         * m4/isnan.m4: New file.
7349         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
7350         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
7351         also.
7352         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
7353         redundancy.
7354         * m4/math_h.m4: Initialize and substitute variables for isnan
7355         module.
7356         * modules/isnan: New file.
7357         * modules/isnan-tests: New file.
7358         * modules/math: Add substitutions for new module.
7359         * tests/test-isnan.c: New file.
7360         * MODULES.html.sh: Mention new module.
7361
7362 2008-07-10  Ben Pfaff  <blp@gnu.org>
7363
7364         Add isnanf module.
7365         * lib/isnanf.m4: New file.
7366         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
7367         (gl_HAVE_ISNANF_IN_LIBM): New macro.
7368         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
7369         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
7370         * modules/isnanf: New file.
7371         * modules/isnanf-tests: New file.
7372         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
7373         files.
7374         * tests/test-isnanf-nolibm.c: factored most of its contents into
7375         new file tests/test-isnanf.h.
7376         * tests/test-isnanf.h: New file.
7377         * tests/test-isnanf.c: New file.
7378         * MODULES.html.sh: Mention new module.
7379         * doc/glibc-functions/isnanf.texi: Mention new module.
7380
7381 2008-07-10  Ben Pfaff  <blp@gnu.org>
7382
7383         Add isnand module.
7384         * lib/isnand.h: New file.
7385         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
7386         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
7387         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
7388         functionality also.
7389         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
7390         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
7391         (gl_HAVE_ISNAND_IN_LIBM): New macro.
7392         * modules/isnand: New file.
7393         * modules/isnand-tests: New file.
7394         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
7395         files.
7396         * tests/test-isnand-nolibm.c: factored most of its contents into
7397         new file tests/test-isnand.h.
7398         * tests/test-isnand.h: New file.
7399         * tests/test-isnand.c: New file.
7400         * MODULES.html.sh: Mention new module.
7401
7402 2008-07-10  Ben Pfaff  <blp@gnu.org>
7403
7404         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
7405         * lib/isnand.h: Rename lib/isnand-nolibm.h.
7406         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
7407         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
7408         * modules/isnanf-nolibm: Update references to renamed files.
7409         * modules/isnand-nolibm: Likewise.
7410         * modules/isnanf-nolibm-tests: Likewise.
7411         * modules/isnand-nolibm-tests: Likewise.
7412         * lib/frexp.c: Likewise.
7413         * lib/isfinite.c: Likewise.
7414         * lib/signbitd.c: Likewise.
7415         * lib/signbitf.c: Likewise.
7416         * lib/vasnprintf.c: Likewise.
7417         * tests/test-ceilf1.c: Likewise.
7418         * tests/test-ceilf2.c: Likewise.
7419         * tests/test-floorf1.c: Likewise.
7420         * tests/test-floorf2.c: Likewise.
7421         * tests/test-frexp.c: Likewise.
7422         * tests/test-round1.c: Likewise.
7423         * tests/test-round2.c: Likewise.
7424         * tests/test-roundf1.c: Likewise.
7425         * tests/test-strtod.c: Likewise.
7426         * tests/test-trunc1.c: Likewise.
7427         * tests/test-trunc2.c: Likewise.
7428         * tests/test-truncf1.c: Likewise.
7429         * tests/test-truncf2.c: Likewise.
7430         * NEWS: Mention the renamed header files.
7431
7432 2008-07-11  Jim Meyering  <meyering@redhat.com>
7433
7434         vc-list-files: make the last-resort awk code more portable
7435         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
7436         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
7437         does not support it.
7438
7439 2008-07-10  Eric Blake  <ebb9@byu.net>
7440
7441         Work with tar's bootstrap.
7442         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
7443         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
7444         an m4 comment.
7445
7446 2008-07-09  Jim Meyering  <meyering@redhat.com>
7447
7448         posix-shell.m4: fix typo that made this test malfunction
7449         * m4/posix-shell.m4: Remove capitalization in variable name.
7450
7451 2008-07-08  Bruno Haible  <bruno@clisp.org>
7452
7453         * m4/onceonly.m4: Update comments.
7454         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7455
7456 2008-07-04  Jim Meyering  <meyering@redhat.com>
7457
7458         * users.txt: Add vc-dwim.
7459         (bison, coreutils): Use the gitweb URL.
7460
7461 2008-07-03  Jim Meyering  <meyering@redhat.com>
7462
7463         * users.txt: Add libffcall.  From Sam Steingold.
7464
7465 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
7466
7467         getdate.y: do not ignore TZ with relative day, month or year offset
7468         * lib/getdate.y (get_date): Move the tz-handling block to follow the
7469         relative-date-handling, since otherwise, the latter would clobber the
7470         sole output (an updated Start value) of the tz-handling block.
7471         * tests/test-getdate.c: Tests for the fix
7472
7473 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7474
7475         Recognize 'foo_LIBRARIES += libgnu.a'.
7476         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
7477         makefile snippet has already specified an installation location,
7478         also using '+='.
7479
7480 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
7481
7482         getdate.y: factor out common actions
7483         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
7484         Use them in place of open-coded actions.
7485
7486 2008-07-01  Simon Josefsson  <simon@josefsson.org>
7487
7488         Add self-test for getdate module.
7489         * modules/getdate-tests: New file.
7490         * tests/test-getdate.c: New file.
7491
7492 2008-06-29  Bruno Haible  <bruno@clisp.org>
7493
7494         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
7495         .gitignore.
7496         Reported by Sylvain Beucler <beuc@beuc.net>.
7497
7498 2008-06-29  Bruno Haible  <bruno@clisp.org>
7499
7500         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
7501         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
7502
7503 2008-06-29  Bruno Haible  <bruno@clisp.org>
7504
7505         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
7506         EXTRA_DIST.
7507         Reported by Sylvain Beucler <beuc@beuc.net>.
7508
7509 2008-06-26  Jim Meyering  <meyering@redhat.com>
7510
7511         make several modules depend on the "open" module
7512         This provides slightly increased consistency when opening-for-write
7513         the name of a non-directory spelled with a trailing slash.
7514         * modules/chdir-safer: Likewise.
7515         * modules/chown: Likewise.
7516         * modules/clean-temp: Likewise.
7517         * modules/copy-file: Likewise.
7518         * modules/fchdir: Likewise.
7519         * modules/fcntl-safer: Likewise.
7520         * modules/pipe: Likewise.
7521         * modules/utime: Likewise.
7522         Prompted by Eric Blake and Bruno Haible.
7523
7524 2008-06-24  Andreas Schwab  <schwab@suse.de>
7525
7526         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
7527         literals can be used as initializers for global variables.
7528
7529 2008-06-23  Eric Blake  <ebb9@byu.net>
7530
7531         Make gnulib-cache.m4 easier to diff.
7532         * gnulib-tool (func_import): Allow newlines when reading cached
7533         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
7534
7535 2008-06-23  Bruno Haible  <bruno@clisp.org>
7536
7537         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
7538         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
7539         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
7540         m4/signalblocking.m4.
7541         (gl_PREREQ_SIGACTION): Don't invoke it.
7542         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
7543         gl_PREREQ_SIG_HANDLER_H.
7544         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
7545         Don't check for sigaction here.
7546
7547 2008-06-23  Bruno Haible  <bruno@clisp.org>
7548
7549         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
7550         (install_handlers): Don't set the SA_RESETHAND flag.
7551
7552 2008-06-23  Bruno Haible  <bruno@clisp.org>
7553
7554         * m4/sigaction.m4: Comment fixes.
7555         * lib/signal.in.h: Likewise.
7556
7557 2008-06-23  Eric Blake  <ebb9@byu.net>
7558
7559         Fix typo.
7560         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
7561
7562         Avoid SA_ namespace.
7563         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
7564         Reported by Ralf Wildenhues.
7565
7566         Avoid test failure due to SA_RESTORER.
7567         * tests/test-sigaction.c (SA_MASK): New macro.
7568         (main): Avoid failing due to extension flags being set.
7569         Reported by Jim Meyering.
7570
7571         Revert use of sig-handler.h in sigprocmask.c.
7572         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
7573         it requires the existence of struct sigaction.
7574         * lib/sigprocmask.c (handler_t): Restore typedef.
7575         (rpl_signal, old_handlers): Use local type.
7576
7577 2008-06-22  Bruno Haible  <bruno@clisp.org>
7578
7579         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
7580         conditionally.
7581         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
7582
7583 2008-06-22  Bruno Haible  <bruno@clisp.org>
7584
7585         * doc/posix-functions/siginterrupt.texi: Move note.
7586
7587         * lib/signal.in.h (SA_RESTART): New macro.
7588         * lib/sigaction.c: Update comment.
7589
7590         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
7591
7592         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
7593         (gl_PREREQ_SIGPROCMASK): Invoke it.
7594         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
7595
7596         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
7597
7598         * lib/sigprocmask.c: Update a comment.
7599
7600 2008-06-21  Eric Blake  <ebb9@byu.net>
7601
7602         Use sigaction module rather than signal().
7603         * modules/c-stack (Depends-on): Add sigaction.
7604         * modules/fatal-signal (Depends-on): Likewise.
7605         * modules/nanosleep (Depends-on): Likewise.
7606         * modules/sigprocmask (Files): Add sig-handler.h.
7607         * modules/sigaction (Files): Likewise.
7608         * lib/sig-handler.h (get_handler): New file, suggested by Paul
7609         Eggert.
7610         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
7611         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
7612         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
7613         (init_fatal_signals): Likewise.
7614         * lib/nanosleep.c (rpl_nanosleep): Likewise.
7615         (siginterrupt): Delete fallback.
7616         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
7617         instead.
7618         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
7619         siginterrupt.
7620
7621         New module sigaction, for mingw.
7622         * modules/sigaction: New module...
7623         * modules/sigaction-tests: ...and its test.
7624         * m4/sigaction.m4: New file.
7625         * lib/sigaction.c: Likewise.
7626         * tests/test-sigaction.c: Likewise.
7627         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
7628         * modules/signal (Makefile.am): Likewise.
7629         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
7630         needed.
7631         * doc/posix-headers/signal.texi (signal.h): Mention provided
7632         types.
7633         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
7634         that sigaction is preferable.
7635         * doc/posix-functions/sigaction.texi (sigaction): Mention new
7636         module.
7637         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
7638         sigaction.
7639
7640         Improve robustness of sigprocmask by overriding signal.
7641         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
7642         is in use.
7643         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
7644         (SIGKILL, SIGSTOP): Provide fallbacks.
7645         (rpl_signal): Implement.
7646         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
7647         signal can be called inside handlers.
7648
7649         Fix nanosleep module on mingw.
7650         * modules/nanosleep (Depends-on): Add sys_select.
7651         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
7652
7653         Fix licensing of sigprocmask.
7654         * modules/raise (License): Relicense as LGPL.
7655
7656 2008-06-21  Bruno Haible  <bruno@clisp.org>
7657
7658         * lib/propername.c (proper_name_utf8): Don't use the transliterated
7659         result if it contains question marks.
7660         Reported by Michael Geng <linux@michaelgeng.de>.
7661
7662 2008-06-19  Bruno Haible  <bruno@clisp.org>
7663
7664         Fix CVS-ism.
7665         * doc/gnulib.texi: Include updated-stamp.texi.
7666         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
7667         (updated-stamp.texi): New rule.
7668         (gnulib.info): Depend on it.
7669         * doc/.gitignore: Add updated-stamp.texi.
7670         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
7671
7672 2008-06-19  Bruno Haible  <bruno@clisp.org>
7673
7674         * doc/Makefile (gnulib.info): Update and simplify dependencies.
7675         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
7676
7677 2008-06-19  Eric Blake  <ebb9@byu.net>
7678
7679         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
7680         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
7681         Reported by Stepan Kasal.
7682
7683 2008-06-18  Bruno Haible  <bruno@clisp.org>
7684
7685         * lib/fatal-signal.c (init_fatal_signals): Add comment.
7686         Reported by Eric Blake.
7687
7688 2008-06-18  Eric Blake  <ebb9@byu.net>
7689
7690         Work around cygwin 1.5.25 strsignal bug.
7691         * tests/test-strsignal.c: Allow for const char *.
7692         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
7693
7694 2008-06-18  Simon Josefsson  <simon@josefsson.org>
7695
7696         * users.txt: Update URL to article and add author/date
7697         information.
7698
7699 2008-06-17  Bruno Haible  <bruno@clisp.org>
7700
7701         New macro gl_DISABLE_THREADS.
7702         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
7703         if the user did not pass --enable-threads or --disable-threads option.
7704         (gl_DISABLE_THREADS): New macro.
7705         Reported by Eric Blake <ebb9@byu.net>.
7706
7707 2008-06-17  Bruno Haible  <bruno@clisp.org>
7708
7709         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
7710         when the macro ignores it.
7711         Based on a patch by Eric Blake <ebb9@byu.net>.
7712
7713 2008-06-17  Bruno Haible  <bruno@clisp.org>
7714
7715         * modules/tls (License): Change to LGPLv2+.
7716         Reported by Eric Blake.
7717
7718 2008-06-17  Eric Blake  <ebb9@byu.net>
7719
7720         Simplify c-stack prerequisites.
7721         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
7722         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
7723         no longer requires <ucontext.h> to exist.  Optimize setrlimit
7724         check.
7725         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
7726         <sys/resource.h>.
7727
7728         Move c-stack test into testsuite.
7729         * modules/c-stack-tests: New file.
7730         * lib/c-stack.c [DEBUG]: Move test program...
7731         * tests/test-c-stack.c: ...into this new file.  Skip rather than
7732         fail test if sigaltstack is lacking.
7733         * tests/test-c-stack.sh: New driver file.
7734
7735 2008-06-16  Eric Blake  <ebb9@byu.net>
7736
7737         Use raise module consistently.
7738         * modules/fatal-signal (Depends-on): Add raise.
7739         * modules/sigprocmask (Depends-on): Likewise.
7740         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
7741         * lib/sigprocmask.c (sigprocmask): Likewise.
7742         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
7743         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
7744
7745         Fix compliance bug in sigpending.
7746         * lib/sigprocmask.c (sigpending): Return pending array via
7747         parameter, not return value.
7748
7749 2008-06-14  Eric Blake  <ebb9@byu.net>
7750
7751         Improve obstack-printf test code.
7752         * tests/test-obstack-printf.c (test_function): Fix comment, and
7753         simplify usage of obstack_* in macros.  Add a test for coverage.
7754         Reported by Bruno Haible.
7755
7756 2008-06-14  Bruno Haible  <bruno@clisp.org>
7757
7758         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
7759         array size as a constant, not as a const variable.
7760         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
7761         AC_USE_SYSTEM_EXTENSIONS.
7762         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
7763         Test whether the obstack_printf function actually exists.
7764         * modules/obstack-printf (Depends-on): Add extensions.
7765         (Include): Remove obstack.h.
7766         * modules/obstack-printf-posix (Depends-on): Add extensions.
7767         (Include): Remove obstack.h.
7768
7769 2008-06-13  Eric Blake  <ebb9@byu.net>
7770
7771         Add obstack-printf and obstack-printf-posix modules.
7772         * modules/obstack-printf: New file.
7773         * modules/obstack-printf-posix: Likewise.
7774         * MODULES.html.sh (Misc): Mention them.
7775         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
7776         Likewise.
7777         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
7778         Likewise.
7779         * modules/stdio (Makefile.am): Accomodate new modules.
7780         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
7781         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
7782         Declare.
7783         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
7784         functions.
7785         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
7786         (gl_REPLACE_OBSTACK_PRINTF): New macros
7787         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
7788         * tests/test-obstack-printf.c: New file.
7789         * modules/obstack-printf-tests: Likewise.
7790         * modules/obstack-printf-posix-tests: Likewise.
7791
7792 2008-06-11  Bruno Haible  <bruno@clisp.org>
7793
7794         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
7795         * lib/open.c: Include errno.h.
7796         (open): Fail when attempting to write to a file that has a trailing
7797         slash.
7798         * tests/test-open.c (main): Test against trailing slash bug.
7799         * doc/posix-functions/open.texi: Mention the trailing slash bug.
7800
7801 2008-06-10  Bruno Haible  <bruno@clisp.org>
7802
7803         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
7804         for $? to work inside the trap command, with various /bin/sh-s.
7805         * tests/test-vc-list-files-cvs.sh: Likewise.
7806
7807 2008-06-10  Bruno Haible  <bruno@clisp.org>
7808
7809         * lib/acl-internal.h: Don't include gettext.h here.
7810         * lib/set-mode-acl.c: Include gettext.h here.
7811         * lib/copy-acl.c: Likewise.
7812
7813 2008-06-10  Bruno Haible  <bruno@clisp.org>
7814
7815         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
7816         * lib/wait-process.c (wait_subprocess): Likewise.
7817         * lib/execute.h (execute): Add termsigp argument.
7818         * lib/execute.c (execute): Likewise.
7819         * lib/csharpcomp.c (compile_csharp_using_pnet,
7820         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
7821         * lib/csharpexec.c (execute_csharp_using_pnet,
7822         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
7823         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
7824         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
7825         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
7826         is_jikes_present): Update.
7827         * lib/javaexec.c (execute_java_class): Update.
7828         * lib/javaversion.c (execute_and_read_line): Update.
7829         * NEWS: Document the changes.
7830         Reported by Eric Blake.
7831
7832 2008-06-10  Eric Blake  <ebb9@byu.net>
7833
7834         Add missing include.
7835         * tests/test-strstr.c (includes): Add <signal.h>.
7836         * tests/test-strcasestr.c (includes): Likewise.
7837         * tests/test-memmem.c (includes): Likewise.
7838
7839 2008-06-10  Bruno Haible  <bruno@clisp.org>
7840
7841         * lib/wait-process.c (wait_subprocess): Add an assertion.
7842
7843 2008-06-10  Bruno Haible  <bruno@clisp.org>
7844
7845         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
7846
7847 2008-06-10  Bruno Haible  <bruno@clisp.org>
7848
7849         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
7850         using alarm().
7851         * tests/test-strcasestr.c (main): Likewise.
7852         * tests/test-strstr.c (main): Likewise.
7853
7854 2008-06-09  Bruno Haible  <bruno@clisp.org>
7855
7856         Work around the Solaris 10 ACE ACLs ABI change.
7857         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
7858         declare if ACL_NO_TRIVIAL is present.
7859         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
7860         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
7861         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
7862         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
7863         define if ACL_NO_TRIVIAL is present.
7864         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
7865         and use the current ABI.
7866         (file_has_acl): Use same #if condition as elsewhere.
7867         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
7868         in use, and use the current ABI.
7869         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
7870         Reported by Jim Meyering.
7871
7872 2008-06-09  Eric Blake  <ebb9@byu.net>
7873
7874         Work around environments that (stupidly) ignore SIGALRM.
7875         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
7876         before using alarm().
7877         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7878         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
7879         Reported by Ian Beckwith <ianb@erislabs.net>.
7880
7881         Produce autobuild blurb earlier in log.
7882         * modules/autobuild (configure.ac-early): Move AB_INIT here.
7883
7884 2008-06-09  Jim Meyering  <meyering@redhat.com>
7885         and OndÅ™ej Vašík  <ovasik@redhat.com>
7886
7887         utimens.c: correct kernel bug work-around
7888         OndÅ™ej Vašík found that the invalid return value of 280 indicates
7889         failure, not success, and the kernel bug we're trying to work
7890         around affects not just the utimensat call, but also the fallback
7891         futimens call.
7892         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
7893         not success.
7894         [HAVE_FUTIMENS]: Use the same work-around, here.
7895
7896 2008-06-09  Jim Meyering  <meyering@redhat.com>
7897
7898         add more guards around definition of ACE_-related code
7899         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
7900         ALLOW and ACE_OWNER are also defined.
7901
7902 2008-06-08  Bruno Haible  <bruno@clisp.org>
7903
7904         * lib/acl-internal.h: Add me as co-author.
7905         * lib/file-has-acl.c: Likewise.
7906         * lib/set-mode-acl.c: Likewise.
7907         * lib/copy-acl.c: Likewise.
7908
7909 2008-06-08  Bruno Haible  <bruno@clisp.org>
7910
7911         Add support for AIX ACLs.
7912         * lib/acl-internal.h (acl_nontrivial): New declaration.
7913         * lib/file-has-acl.c (acl_nontrivial): New function.
7914         (file_has_acl): Add implementation using AIX 4 ACL API.
7915         * lib/set-mode-acl.c (qset_acl): Likewise.
7916         * lib/copy-acl.c (qcopy_acl): Likewise.
7917
7918 2008-06-08  Bruno Haible  <bruno@clisp.org>
7919
7920         Add support for HP-UX ACLs.
7921         * lib/acl-internal.h (acl_nontrivial): New declaration.
7922         * lib/file-has-acl.c (acl_nontrivial): New function.
7923         (file_has_acl): Add implementation using HP-UX 11 ACL API.
7924         * lib/set-mode-acl.c (qset_acl): Likewise.
7925         * lib/copy-acl.c (qcopy_acl): Likewise.
7926
7927 2008-06-08  Bruno Haible  <bruno@clisp.org>
7928
7929         Add support for Cygwin ACLs.
7930         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
7931         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
7932         the chmod_or_fchmod call.
7933         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
7934
7935 2008-06-08  Bruno Haible  <bruno@clisp.org>
7936
7937         Fix bug with setuid modes in Solaris 10+ code.
7938         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
7939         succeeded, when the mode contains some special bits.
7940
7941 2008-06-08  Bruno Haible  <bruno@clisp.org>
7942
7943         Add support for Solaris 7..10 ACLs.
7944         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
7945         declarations.
7946         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
7947         functions.
7948         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
7949         * lib/set-mode-acl.c (qset_acl): Likewise.
7950         * lib/copy-acl.c (qcopy_acl): Likewise.
7951
7952 2008-06-08  Bruno Haible  <bruno@clisp.org>
7953
7954         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
7955         declaration.
7956         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
7957         (acl_access_nontrivial): Remove MacOS X case.
7958         (file_has_acl): Use acl_extended_nontrivial.
7959         * lib/copy-acl.c (qcopy_acl): Likewise.
7960
7961 2008-06-08  Bruno Haible  <bruno@clisp.org>
7962
7963         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
7964
7965 2008-06-08  Jim Meyering  <meyering@redhat.com>
7966
7967         * modules/acl (Maintainer): Add Bruno Haible.
7968
7969 2008-06-07  Bruno Haible  <bruno@clisp.org>
7970
7971         Improve support for Tru64 ACLs.
7972         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
7973         ACL on OSF/1.
7974
7975 2008-06-07  Bruno Haible  <bruno@clisp.org>
7976
7977         Add support for MacOS X ACLs.
7978         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
7979         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
7980         * lib/set-mode-acl.c (qset_acl): Likewise.
7981         * lib/copy-acl.c (qcopy_acl): Likewise.
7982
7983 2008-06-07  Bruno Haible  <bruno@clisp.org>
7984
7985         Fix memory leak introduced on 2008-05-22.
7986         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
7987         use.
7988
7989 2008-06-07  Bruno Haible  <bruno@clisp.org>
7990
7991         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
7992         to construct an empty ACL.
7993
7994 2008-06-07  Bruno Haible  <bruno@clisp.org>
7995
7996         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
7997         precisely.
7998         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
7999
8000 2008-06-07  Bruno Haible  <bruno@clisp.org>
8001
8002         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
8003         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
8004
8005 2008-06-07  Bruno Haible  <bruno@clisp.org>
8006
8007         * doc/posix-functions/_setjmp.texi: Explain the use of this function
8008         regardless of POSIX.
8009         * doc/posix-functions/_longjmp.texi: Likewise.
8010         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
8011         SystemV platform in this case.
8012
8013 2008-06-06  Eric Blake  <ebb9@byu.net>
8014
8015         Document abort() bugs.
8016         * doc/posix-functions/abort.texi (abort): Mention anomalies.
8017
8018         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
8019         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
8020         sigsetjmp.
8021         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
8022         siglongjmp, but only as a macro.
8023         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
8024         is obsolete.
8025         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
8026
8027         Tweak documentation to cover cygwin argz bugs.
8028         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
8029         argz bug fix; no code change needed since no cygwin releases
8030         occurred between the last fix and the bug being tested.
8031         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
8032         module and recently fixed cygwin bugs.
8033         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
8034         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
8035         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
8036         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
8037         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
8038         Likewise.
8039         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
8040         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
8041         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
8042         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
8043         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
8044         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
8045         Likewise.
8046
8047         Avoid gcc warning on cygwin.
8048         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
8049         !ACL_NO_TRIVIAL]: Avoid unused variable.
8050
8051 2008-06-05  Eric Blake  <ebb9@byu.net>
8052
8053         Be tolerant of UNKNOWN version in gnulib-tool test dir.
8054         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
8055         git-version-gen fails to come up with a version.
8056         Reported by Simon Josefsson.
8057
8058 2008-06-05  Jim Meyering  <meyering@redhat.com>
8059             Paul Eggert  <eggert@cs.ucla.edu>
8060
8061         utimens.c: work around a probable Linux kernel bug
8062         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
8063         appears to be a kernel bug that causes utimensat to return 280
8064         instead of 0, indicating success.
8065
8066 2008-06-04  Bruno Haible  <bruno@clisp.org>
8067
8068         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
8069         2008-06-01 commit.
8070
8071 2008-06-04  Bruno Haible  <bruno@clisp.org>
8072
8073         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
8074         * lib/file-has-acl.c (acl_access_nontrivial): New function.
8075         (file_has_acl): Use it. Save errno afterwards.
8076         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
8077
8078 2008-06-03  Bruno Haible  <bruno@clisp.org>
8079
8080         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
8081         draft code. Simplify #ifs.
8082         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
8083         Put Solaris code after POSIX-draft code. Fix comments regarding
8084         Solaris 10, HP-UX. Mention Cygwin.
8085         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
8086
8087 2008-06-03  Eric Blake  <ebb9@byu.net>
8088
8089         Provide fallback for older kernels.
8090         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
8091         Provide runtime fallback if kernel lacks support.
8092         Reported by Mike Frysinger.
8093
8094 2008-06-02  Bruno Haible  <bruno@clisp.org>
8095
8096         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
8097         it exists.
8098
8099 2008-06-02  Bruno Haible  <bruno@clisp.org>
8100
8101         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
8102         * lib/copy-acl.c (qcopy_acl): Update comment.
8103
8104 2008-06-02  Bruno Haible  <bruno@clisp.org>
8105
8106         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
8107         like ACL APIs.
8108
8109 2008-06-02  Bruno Haible  <bruno@clisp.org>
8110
8111         * tests/test-file-has-acl.sh: Use different code for Cygwin.
8112         * tests/test-set-mode-acl.sh: Likewise.
8113         * tests/test-copy-acl.sh: Likewise.
8114         * tests/test-copy-file.sh: Likewise.
8115
8116 2008-06-02  Bruno Haible  <bruno@clisp.org>
8117
8118         * tests/test-file-has-acl.sh: Remove unused code.
8119
8120 2008-06-01  Bruno Haible  <bruno@clisp.org>
8121
8122         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
8123         (copy_acl): Just a wrapper around qcopy_acl that emits the error
8124         messages.
8125         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
8126
8127 2008-06-01  Bruno Haible  <bruno@clisp.org>
8128
8129         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
8130         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
8131         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
8132         APIs.
8133         * modules/acl-tests (configure.ac): Remove tests now contained in
8134         m4/acl.m4.
8135
8136 2008-06-02  Jim Meyering  <meyering@redhat.com>
8137
8138         announce-gen: use a better key-server host name
8139         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
8140         it may be more consistently reliable.  Suggested by Werner Koch
8141         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
8142
8143 2008-06-01  Bruno Haible  <bruno@clisp.org>
8144
8145         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
8146         Reported by Voroskoi Andras <voroskoi@gmail.com>.
8147
8148 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
8149
8150         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
8151
8152 2008-06-01  Bruno Haible  <bruno@clisp.org>
8153
8154         New ACL tests.
8155         * tests/test-file-has-acl.sh: New file.
8156         * tests/test-file-has-acl.c: New file.
8157         * tests/test-set-mode-acl.sh: New file.
8158         * tests/test-set-mode-acl.c: New file.
8159         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
8160         * tests/test-copy-acl.c: New file.
8161         * modules/acl-tests: New file, based on modules/copy-file-tests.
8162         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
8163         (Depends-on): Add acl-tests.
8164         (configure.ac): Remove checks.
8165         (Makefile.am): Don't create test-sameacls program here any more.
8166
8167 2008-06-01  Bruno Haible  <bruno@clisp.org>
8168
8169         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
8170         * tests/test-sameacls.c: Include progname.h.
8171         (main): Invoke set_program_name. Portability fixes for MacOS X,
8172         Solaris, HP-UX.
8173
8174 2008-06-01  Bruno Haible  <bruno@clisp.org>
8175
8176         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
8177         function.
8178         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
8179
8180 2008-06-01  Bruno Haible  <bruno@clisp.org>
8181
8182         * modules/rpmatch (Depends-on): Add strdup.
8183
8184 2008-06-01  Bruno Haible  <bruno@clisp.org>
8185
8186         * lib/pipe.c: Include unistd-safer.h.
8187         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
8188         * modules/pipe (Depends-on): Add unistd-safer.
8189
8190 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8191
8192         * modules/autobuild (configure.ac): Call AB_INIT.
8193
8194 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8195
8196         * tests/test-getaddrinfo.c: Don't print debug messages by default.
8197         Suggested by Bruno Haible <bruno@clisp.org>.
8198
8199 2008-05-30  Simon Josefsson  <simon@josefsson.org>
8200
8201         * tests/test-base64.c: Cast size_t to unsigned long when invoking
8202         printf.  Use %lu instead of %d.  Reported by Bruno Haible
8203         <bruno@clisp.org>.
8204
8205 2008-05-29  Eric Blake  <ebb9@byu.net>
8206
8207         Prefer new POSIX 200x interfaces over futimesat.
8208         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
8209         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
8210         when available.
8211         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
8212
8213 2008-05-28  Bruno Haible  <bruno@clisp.org>
8214
8215         * modules/stpcpy (License): Change to LGPLv2+.
8216         Requested by David Lutterkort <dlutter@redhat.com>.
8217
8218 2008-05-27  Bruno Haible  <bruno@clisp.org>
8219
8220         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
8221         current mingw.
8222         Reported by Jose E. Marchesi <jemarch@gnu.org>.
8223
8224 2008-05-27  Bruno Haible  <bruno@clisp.org>
8225
8226         * modules/iconv_open (Link): New section, from module 'iconv'.
8227         * modules/striconv (Link): Likewise.
8228         * modules/striconveh (Link): Likewise.
8229         * modules/xstriconv (Link): Likewise.
8230         * modules/unicodeio (Link): Likewise.
8231         * modules/propername (Link): Likewise.
8232         Reported by Jim Meyering.
8233
8234 2008-05-26  Jim Meyering  <meyering@redhat.com>
8235
8236         sha256: do not artificially restrict buffer length to be < 2^32
8237         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
8238         uint32_t to size_t.
8239         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
8240         to match.
8241
8242         avoid unaligned access errors, e.g., on sparc
8243         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
8244         direct access through a possibly-unaligned uint64* pointer.
8245         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
8246         direct access through a possibly-unaligned uint32* pointer.
8247         Prompted by this patch from Tom "spot" Callaway:
8248         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
8249
8250         sha512.c: fix typo in comment
8251         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
8252
8253 2008-05-25  Bruno Haible  <bruno@clisp.org>
8254
8255         * lib/set-mode-acl.c: Renamed from lib/acl.c.
8256         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
8257         (Makefile.am): Update lib_SOURCES.
8258
8259 2008-05-25  Bruno Haible  <bruno@clisp.org>
8260
8261         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
8262
8263 2008-05-25  Jim Meyering  <meyering@redhat.com>
8264
8265         useless-if-before-free: freed expr may have white-space differences
8266         * build-aux/useless-if-before-free: Recognize cases in which the
8267         freed expression differs from the tested one in embedded white
8268         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
8269         $1 was used, so we can't make any regexp shy.  Improved tests now
8270         detect this.
8271
8272         useless-if-before-free: accept white space in the expression.
8273         * build-aux/useless-if-before-free: For now, any white space
8274         in the expression must be identical in the free argument.
8275
8276         useless-if-before-free: efficiency tweak
8277         * build-aux/useless-if-before-free: Make the expression-matching
8278         regexp "shy".
8279         Make the *outer* regexp shy, not the expr-matching one.
8280
8281         update code-in-comment to accept cast of free arg
8282         * build-aux/useless-if-before-free: Update regexp.
8283
8284 2008-05-25  Bruno Haible  <bruno@clisp.org>
8285
8286         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
8287         * modules/copy-file-tests (Files, Makefile.am): Update.
8288         * tests/test-copy-file.c (func_test_copy): Update.
8289
8290 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
8291
8292         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
8293
8294 2008-05-23  Bruno Haible  <bruno@clisp.org>
8295
8296         Improve support for ACLs on OSF/1.
8297         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
8298         Remove fallback for unknown flavors of ACLs.
8299
8300 2008-05-22  Bruno Haible  <bruno@clisp.org>
8301
8302         Add support for ACLs on OSF/1.
8303         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
8304         replacements.
8305         (acl_free_text): New macro fallback.
8306         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
8307         acl_free.
8308         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
8309         acl_free_text function. Require AC_C_INLINE.
8310
8311 2008-05-22  Bruno Haible  <bruno@clisp.org>
8312
8313         Make copy_acl work on MacOS X 10.5.
8314         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
8315         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
8316         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
8317         If MODE_INSIDE_ACL, don't assume that every system has the same text
8318         representation for ACLs as FreeBSD.
8319         * lib/copy-acl.c (copy_acl): Add support for platforms with
8320         !MODE_INSIDE_ACL.
8321         * lib/file-has-acl.c (file_has_acl): Likewise.
8322         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
8323         FreeBSD, MacOS X, or IRIX, respectively.
8324
8325 2008-05-22  Bruno Haible  <bruno@clisp.org>
8326
8327         * lib/acl.h: Don't include <sys/acl.h>.
8328         (GETACLCNT): Move fallback to lib/acl-internal.h.
8329         * lib/acl-internal.h: Include <sys/acl.h> here.
8330         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
8331
8332 2008-05-22  Bruno Haible  <bruno@clisp.org>
8333
8334         Split off copy_acl function to separate file.
8335         * lib/copy-acl.c: New file, extracted from lib/acl.c.
8336         * lib/acl.c (copy_acl): Moved function to separate file.
8337         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
8338         * modules/acl (Files): Add lib/copy-acl.c.
8339         (Makefiles.am): Augment lib_SOURCES.
8340
8341 2008-05-22  Bruno Haible  <bruno@clisp.org>
8342
8343         * modules/copy-file-tests: New file.
8344         * tests/test-copy-file.sh: New file.
8345         * tests/test-copy-file.c: New file.
8346         * tests/test-copy-file-sameacls.c: New file.
8347
8348 2008-05-22  Eric Blake  <ebb9@byu.net>
8349
8350         Avoid gcc warning.
8351         * tests/test-memcmp.c (main): Pass NULL indirectly.
8352
8353 2008-05-21  Bruno Haible  <bruno@clisp.org>
8354
8355         Add reference doc about ACLs.
8356         * doc/acl-resources.txt: New file.
8357         * doc/acl-cygwin.txt: New file.
8358
8359 2008-05-21  Bruno Haible  <bruno@clisp.org>
8360
8361         Avoid one more warning from gcc.
8362         * lib/vasnprintf.c (IF_LINT): Update comments.
8363         (VASNPRINTF): Use it also for the 'prefix' array initializer.
8364
8365 2008-05-21  Jim Meyering  <meyering@redhat.com>
8366
8367         avoid a warning from gcc
8368         * lib/vasnprintf.c (IF_LINT): Define.
8369         (scale10_round_decimal_long_double):
8370         Use it to avoid a "may be used uninitialized" warning.
8371         (scale10_round_decimal_double): Likewise.
8372
8373 2008-05-21  Simon Josefsson  <simon@josefsson.org>
8374
8375         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
8376         declared.
8377
8378 2008-05-20  Bruno Haible  <bruno@clisp.org>
8379
8380         * tests/test-memcmp.c (main): Test also the sign of the result. Test
8381         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
8382
8383 2008-05-20  Simon Josefsson  <simon@josefsson.org>
8384
8385         * modules/memcmp-tests: New file.
8386         * tests/test-memcmp.c: New file.
8387
8388 2008-05-19  Bruno Haible  <bruno@clisp.org>
8389
8390         * modules/propername (Notice, configure.ac): Put quoted "..." into
8391         --keyword option.
8392         * lib/propername.h: Update comments accordingly.
8393         Reported by Eric Blake.
8394
8395 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
8396
8397         * modules/getpass-gnu (Depends-on): Add fseeko.
8398
8399 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8400
8401         * modules/base64-tests: New file.
8402
8403 2008-05-19  Bo Borgerson <gigabo@gmail.com>
8404
8405         * lib/base64.c (base64_decode_ctx): If a decode context structure
8406         was passed in use it to ignore newlines.  If a context structure
8407         was _not_ passed in, continue to treat newlines as garbage (this
8408         is the historical behavior).  Formerly base64_decode.
8409         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8410         takes a decode context structure.
8411         * lib/base64.h (base64_decode): Macro for four-argument calls.
8412         (base64_decode_alloc): Likewise.
8413         * lib/base64.c (base64_decode_ctx): If a decode context structure
8414         was passed in use it to ignore newlines.  If a context structure
8415         was _not_ passed in, continue to treat newlines as garbage (this
8416         is the historical behavior).  Formerly base64_decode.
8417         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
8418         takes a decode context structure.
8419         * lib/base64.h (base64_decode): Macro for four-argument calls.
8420         (base64_decode_alloc): Likewise.
8421
8422 2008-05-19  Jim Meyering  <meyering@redhat.com>
8423
8424         avoid a warning from gcc
8425         * lib/trim.c (IF_LINT): Define.
8426         (trim2): Use it to avoid a "may be used uninitialized" warning.
8427
8428         Fix doc typo.
8429         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
8430
8431 2008-05-19  Bruno Haible  <bruno@clisp.org>
8432
8433         * doc/glibc-functions/getpass.texi: Document limits of other
8434         implementations.
8435
8436 2008-05-19  Simon Josefsson  <simon@josefsson.org>
8437             Bruno Haible <bruno@clisp.org>
8438
8439         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
8440
8441 2008-05-18  Bruno Haible  <bruno@clisp.org>
8442
8443         * modules/propername: New file, from GNU gettext.
8444         * lib/propername.h: New file, from GNU gettext.
8445         * lib/propername.c: New file, from GNU gettext.
8446         * MODULES.html.sh (Internationalization functions): Add propername.
8447
8448 2008-05-16  Jim Meyering  <meyering@redhat.com>
8449             Bruno Haible  <bruno@clisp.org>
8450
8451         Avoid some warnings from "gcc -Wshadow".
8452         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
8453
8454 2008-05-15  Eric Blake  <ebb9@byu.net>
8455
8456         Extend previous patch to cygwin 1.7.0.
8457         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
8458         fast implementation in cygwin >= 1.7.0.
8459         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8460         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8461
8462 2008-05-15  Bruno Haible  <bruno@clisp.org>
8463
8464         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
8465         implementation in glibc >= 2.9.
8466         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
8467         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
8468
8469 2008-05-15  Bruno Haible  <bruno@clisp.org>
8470
8471         * MODULES.html.sh (Internationalization functions): Remove linebreak.
8472         (Unicode string functions): Add unilbrk/*.
8473         Reported by Karl Berry.
8474
8475 2008-05-15  Eric Blake  <ebb9@byu.net>
8476
8477         Fix violation of <stdbool.h> replacement in regex.
8478         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
8479         * lib/regexec.c (re_search_internal): Likewise.
8480         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
8481
8482 2008-05-15  Jim Meyering  <meyering@redhat.com>
8483
8484         avoid distracting test output when git or cvs is not found
8485         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
8486         * tests/test-vc-list-files-git.sh: Likewise.
8487
8488 2008-05-15  Eric Blake  <ebb9@byu.net>
8489
8490         Glibc finally accepted the memmem speedup code, bugzilla #5514.
8491         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
8492         glibc version.
8493         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
8494         * doc/posix-functions/strstr.texi (strstr): Likewise.
8495         * lib/str-two-way.h (MAX): Sychronize with glibc.
8496
8497 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
8498
8499         * lib/regcomp.c (optimize_utf8): Add a note on why we test
8500         opr.ctx_type.
8501         (calc_first): Initialize constraint field.
8502         (duplicate_node_closure): Use it instead of special casing ANCHORS.
8503         Fix grammar.
8504         (duplicate_node): Merge constraint field for all node types.
8505         (calc_eclosure_iter): Look at constraint field for all node types.
8506         * lib/regex_internal.c (create_cd_newstate): Don't look at
8507         opr.ctx_type.
8508
8509 2008-05-14  Bruno Haible  <bruno@clisp.org>
8510
8511         Help GCC to do better code generation.
8512         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
8513         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
8514         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
8515         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
8516         Declare with attribute 'malloc' if supported.
8517
8518 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
8519
8520         use "echo STR|wc -c" rather than unportable "expr length STR"
8521         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
8522         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
8523
8524 2008-05-14  Jim Meyering  <meyering@redhat.com>
8525
8526         use dd ibs=$n count=1 ... rather than less-portable head -c$n
8527         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
8528         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
8529         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
8530         via Collin Lasse.
8531
8532 2008-05-14  Eric Blake  <ebb9@byu.net>
8533
8534         Avoid quadratic growth in gl_LIBSOURCES.
8535         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
8536         Suggested by Bruno Haible.
8537
8538         Test xmemdup0.
8539         * modules/xmemdup0-tests: New file.
8540         * tests/test-xmemdup0.c: Likewise.
8541
8542 2008-05-13  Eric Blake  <ebb9@byu.net>
8543
8544         Split xmemdup0 into its own module.
8545         * modules/xmemdup0: New file.
8546         * lib/xmemdup0.h: Likewise.
8547         * lib/xmemdup0.c: Likewise.
8548         * MODULES.html.sh (Memory management functions): Add xmemdup0.
8549         * lib/xalloc.h (xmemdup0): Remove.
8550         * lib/xmalloc.c (xmemdup0): Likewise.
8551
8552 2008-05-13  Eric Blake  <ebb9@byu.net>
8553             Bruno Haible  <bruno@clisp.org>
8554
8555         Reduce number of forks required during autoconf.
8556         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
8557         and gl_LIBSOURCES_DIR.
8558         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
8559         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
8560         m4_syscmd per file.
8561         <m4_foreach_w>: Move...
8562         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
8563
8564 2008-05-13  Eric Blake  <ebb9@byu.net>
8565
8566         * gnulib-tool: Fix various comment typos.
8567
8568 2008-05-12  Bruno Haible  <bruno@clisp.org>
8569
8570         Tailor the linebreaking algorithm.
8571         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
8572
8573 2008-05-12  Bruno Haible  <bruno@clisp.org>
8574
8575         Update to Unicode 5.0.0.
8576         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
8577         LBP_JV, LBP_JT. Redistribute values.
8578         (unilbrk_table): Change size.
8579         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
8580         Unicode TR#14 rev. 22.
8581         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
8582         LBP_JV, LBP_JT. Redistribute values.
8583         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
8584         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
8585         Update.
8586         * lib/unilbrk/lbrkprop1.h: Regenerated.
8587         * lib/unilbrk/lbrkprop2.h: Regenerated.
8588         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
8589         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
8590         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
8591         Likewise.
8592         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
8593         Likewise.
8594         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
8595         result.
8596         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
8597         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
8598         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
8599         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
8600         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
8601         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
8602
8603 2008-05-11  Bruno Haible  <bruno@clisp.org>
8604
8605         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
8606
8607 2008-05-11  Bruno Haible  <bruno@clisp.org>
8608
8609         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
8610         * modules/unilbrk/gen-lbrk: New file.
8611
8612 2008-05-11  Bruno Haible  <bruno@clisp.org>
8613
8614         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
8615         * m4/sha512.m4 (gl_SHA512): Likewise.
8616
8617 2008-05-11  Jim Meyering  <meyering@redhat.com>
8618
8619         New modules: crypto/sha256, crypto/sha512 (from coreutils)
8620         * modules/crypto/sha256: New file.
8621         * modules/crypto/sha512: Likewise.
8622         * lib/sha256.c: Likewise.
8623         * lib/sha256.h: Likewise.
8624         * lib/sha512.c: Likewise.
8625         * lib/sha512.h: Likewise.
8626         * lib/u64.h: Likewise.
8627         * m4/sha256.m4: Likewise.
8628         * m4/sha512.m4: Likewise.
8629         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
8630
8631 2008-05-10  Bruno Haible  <bruno@clisp.org>
8632
8633         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
8634         (Input/Output <stdio.h>): Add xprintf.
8635         (Signal handling <signal.h>): Add strsignal.
8636         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
8637         (Core language properties): Add func.
8638         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
8639         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
8640         strings.
8641         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
8642         (Input/output): New section.
8643         (File system functions): Add openat-die, stat-macros.
8644         (Networking functions): Add sockets.
8645         (Unicode string functions): Add unictype/*.
8646         (Support for building libraries and executables): Add gperf.
8647         (Support for building documentation): Add agpl-3.0.
8648         (Misc): Add nocrash.
8649
8650 2008-05-10  Bruno Haible  <bruno@clisp.org>
8651
8652         * modules/unictype/gen-ctype: New file.
8653
8654 2008-05-10  Jim Meyering  <meyering@redhat.com>
8655
8656         Make chdir-safer.c more efficient on a system with no symlinks.
8657         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
8658         also if ELOOP is zero.  Suggested by Bruno Haible.
8659
8660         Make chdir-safer.c slightly safer.
8661         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
8662         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
8663
8664         Avoid compile failure on systems without ELOOP (like mingw).
8665         * lib/chdir-safer.c (ELOOP): Define if not already defined.
8666         Reported by Bruno Haible.
8667
8668 2008-05-10  Bruno Haible  <bruno@clisp.org>
8669
8670         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
8671         (is_utf8_encoding): Use a case-insensitive comparison.
8672         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
8673         streq.
8674
8675 2008-05-10  Bruno Haible  <bruno@clisp.org>
8676
8677         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
8678         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
8679         * lib/unilbrk/ulc-common.h (iconv_string_length,
8680         iconv_string_keeping_offsets): Remove declarations.
8681         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
8682         Don't include <iconv.h>, streq.h, xsize.h.
8683         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
8684         conversion.
8685         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
8686         <iconv.h>, streq.h, xsize.h.
8687         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
8688         conversion.
8689         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
8690         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
8691         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
8692         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
8693
8694 2008-05-10  Bruno Haible  <bruno@clisp.org>
8695
8696         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
8697         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
8698
8699         * modules/unilbrk/u32-width-linebreaks-tests: New file.
8700         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
8701
8702         * modules/unilbrk/u16-width-linebreaks-tests: New file.
8703         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
8704
8705         * modules/unilbrk/u8-width-linebreaks-tests: New file.
8706         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
8707
8708         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
8709         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
8710
8711         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
8712         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
8713
8714         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
8715         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
8716
8717         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
8718         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
8719
8720 2008-05-10  Bruno Haible  <bruno@clisp.org>
8721
8722         Split up 'linebreak' module.
8723         * lib/unilbrk.h: New file, based on lib/linebreak.h.
8724         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
8725         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
8726         modifications.
8727         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
8728         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
8729         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
8730         lib/linebreak.c.
8731         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
8732         lib/linebreak.c.
8733         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
8734         lib/linebreak.c.
8735         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
8736         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
8737         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
8738         lib/linebreak.c.
8739         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
8740         lib/linebreak.c.
8741         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
8742         lib/linebreak.c.
8743         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
8744         lib/linebreak.c.
8745         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
8746         lib/linebreak.c.
8747         * modules/unilbrk/base: New file.
8748         * modules/unilbrk/tables: New file.
8749         * modules/unilbrk/u8-possible-linebreaks: New file.
8750         * modules/unilbrk/u16-possible-linebreaks: New file.
8751         * modules/unilbrk/u32-possible-linebreaks: New file.
8752         * modules/unilbrk/ulc-common: New file.
8753         * modules/unilbrk/ulc-possible-linebreaks: New file.
8754         * modules/unilbrk/u8-width-linebreaks: New file.
8755         * modules/unilbrk/u16-width-linebreaks: New file.
8756         * modules/unilbrk/u32-width-linebreaks: New file.
8757         * modules/unilbrk/ulc-width-linebreaks: New file.
8758         * lib/linebreak.h: Remove file.
8759         * lib/linebreak.c: Remove file.
8760         * m4/linebreak.m4: Remove file.
8761         * modules/linebreak: Remove file.
8762         * NEWS: Mention the changes.
8763
8764 2008-05-09  Eric Blake  <ebb9@byu.net>
8765
8766         Add xmemdup0.
8767         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
8768         implementation.
8769         * lib/xmalloc.c (xmemdup0): New C implementation.
8770
8771 2008-05-08  Bruno Haible  <bruno@clisp.org>
8772
8773         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
8774
8775 2008-05-07  Eric Blake  <ebb9@byu.net>
8776
8777         Support cross-compilation of <wctype.h>.
8778         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
8779         AC_CACHE_CHECK.
8780
8781 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
8782
8783         * build-aux/vc-list-files: Add support for bzr.
8784
8785 2008-05-03  Jim Meyering  <meyering@redhat.com>
8786
8787         avoid failed assertion with tight malloc
8788         * tests/test-getndelim2.c: Correct an off-by-one assertion.
8789
8790 2008-05-03  Simon Josefsson  <simon@josefsson.org>
8791
8792         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
8793         are needed from arpa/inet.h.
8794         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
8795         Reported by Bruno Haible.
8796
8797 2008-05-02  Jim Meyering  <meyering@redhat.com>
8798
8799         avoid compilation error on FreeBSD 6
8800         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
8801
8802 2008-05-01  Jim Meyering  <meyering@redhat.com>
8803
8804         useless-if-before-free: correct --help's exit status description
8805         * build-aux/useless-if-before-free (usage): Like grep, exit 0
8806         for one or more matches, etc.  Reported by Bruno Haible.
8807
8808         vc-list-files: make the stand-alone gnulib test work
8809         * modules/vc-list-files-tests (configure.ac):
8810         Define and AC_SUBST abs_aux_dir.
8811         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
8812         $(abs_top_srcdir) to each script and having each of them
8813         duplicate the work of setting PATH, set PATH here, using
8814         the new variable, abs_aux_dir instead.
8815         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
8816         * tests/test-vc-list-files-git.sh: Likewise.
8817         Reported by Bruno Haible.
8818
8819 2008-05-01  Bruno Haible  <bruno@clisp.org>
8820
8821         * lib/getndelim2.c (getndelim2): Fix newsize computation during
8822         reallocation. Rename 'done' to 'found_delimiter'.
8823
8824 2008-05-01  Jim Meyering  <meyering@redhat.com>
8825
8826         vc-list-files: accommodate /bin/sh like the one from Solaris 10
8827         * build-aux/vc-list-files: Use `...`, not $(...).
8828
8829 2008-04-30  Jim Meyering  <meyering@redhat.com>
8830
8831         add tests for vc-list-files
8832         * modules/vc-list-files-tests: New module.
8833         * tests/test-vc-list-files-cvs.sh: New file.
8834         * tests/test-vc-list-files-git.sh: New file.
8835
8836         avoid a warning from gcc
8837         * lib/getndelim2.c (IF_LINT): Define.
8838         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
8839
8840         vc-list-files: work properly with build-aux/cvsu, too
8841         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
8842         to all cvs-based clauses.
8843
8844         vc-list-files: work properly in the CVS+awk case, too
8845         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
8846
8847         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
8848         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
8849         take more than one file argument, so .  Add quotes, just in case $dir
8850         ever contains a shell meta-character.  Prompted by Soren Hansen in
8851         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
8852
8853 2008-04-29  Eric Blake  <ebb9@byu.net>
8854
8855         Optimize getndelim2 to use block operations when possible.
8856         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
8857         freadseek, and memchr2.
8858         * lib/getndelim2.c (getndelim2): Use them for block reads.
8859
8860 2008-04-29  Bruno Haible  <bruno@clisp.org>
8861
8862         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
8863         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
8864         * modules/inet_ntop (Depends-on): Add extensions.
8865         * modules/inet_pton (Depends-on): Likewise.
8866         Reported by Simon Josefsson.
8867
8868 2008-04-29  Jim Meyering  <meyering@redhat.com>
8869
8870         When the is more than one match in a block, match all of them.
8871         * build-aux/useless-if-before-free: Iterate through each block
8872         until there are no more matches.
8873
8874         Fix broken useless-if-before-free script.
8875         * build-aux/useless-if-before-free: Fix typo: missing "?" after
8876         the expression to match cast of argument to free-like function.
8877
8878 2008-04-29  Eric Blake  <ebb9@byu.net>
8879
8880         Use new header.
8881         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
8882
8883 2008-04-29  Jim Meyering  <meyering@redhat.com>
8884
8885         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
8886         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
8887         by gnulib to exist and to declare e.g., inet_ntop.
8888         Don't include "inet_ntop.h", now removed.
8889
8890         * m4/arpa_inet_h.m4: Remove trailing blanks.
8891
8892 2008-04-29  Eric Blake  <ebb9@byu.net>
8893
8894         Silence valgrind on safe reads beyond potential array bounds.
8895         * lib/rawmemchr.valgrind: New file.
8896         * lib/strchrnul.valgrind: Likewise.
8897         * modules/rawmemchr (Files): Distribute new file.
8898         * modules/strchrnul (Files): Likewise.
8899         Suggested by Bruno Haible.
8900
8901 2008-04-29  Bruno Haible  <bruno@clisp.org>
8902
8903         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
8904         (inet_ntop, inet_pton): Change portability warning's wording.
8905         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
8906         Invoke gl_CHECK_NEXT_HEADERS.
8907         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
8908         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
8909         set ARPA_INET_H.
8910         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
8911         * modules/arpa_inet (Description): No longer only for systems that
8912         lack it.
8913         (Depends-on): Add include_next.
8914         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
8915         HAVE_ARPA_INET_H.
8916
8917 2008-04-29  Jim Meyering  <meyering@redhat.com>
8918
8919         * modules/mkdir (License): Re-license as LGPLv2+.
8920
8921 2008-04-29  Bruno Haible  <bruno@clisp.org>
8922
8923         * modules/rawmemchr (Maintainer): Set to Eric.
8924         * modules/strchrnul (Maintainer): Likewise.
8925
8926 2008-04-29  Simon Josefsson  <simon@josefsson.org>
8927
8928         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
8929         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
8930
8931         * modules/arpa_inet (arpa/inet.h): Use them.
8932
8933 2008-04-28  Eric Blake  <ebb9@byu.net>
8934
8935         Test getndelim2.
8936         * modules/getndelim2-tests: New file.
8937         * tests/test-getndelim2.c: Likewise.
8938         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
8939         stream.
8940         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
8941
8942         * MODULES.html.sh: Document new module.
8943
8944 2008-04-20  Bruno Haible  <bruno@clisp.org>
8945
8946         * lib/c-stack.c (die): Use raise.
8947         * modules/c-stack (Depends-on): Add raise.
8948
8949 2008-04-28  Bruno Haible  <bruno@clisp.org>
8950
8951         Expect rpmatch to be declared.
8952         * lib/yesno.c (rpmatch): Remove declaration.
8953
8954         Declare rpmatch.
8955         * lib/stdlib.in.h (rpmatch): New declaration.
8956         * lib/rpmatch.c: Include <stdlib.h> first.
8957         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
8958         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
8959         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
8960         HAVE_RPMATCH.
8961         * modules/rpmatch (Depends-on): Add stdlib, extensions.
8962         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
8963         (Include): Set to <stdlib.h>.
8964         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
8965         HAVE_RPMATCH.
8966         * NEWS: Document the change.
8967
8968 2008-04-28  Bruno Haible  <bruno@clisp.org>
8969
8970         Change rpmatch to use nl_langinfo when appropriate.
8971         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
8972         (N_): New macro.
8973         (localized_pattern): New function/macro.
8974         (try): Remove match, nomatch arguments. Copy the pattern into safe
8975         memory before caching it.
8976         (rpmatch): Use localized_pattern. Add translator comments.
8977         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
8978         Suggested by Eric Blake.
8979         * modules/rpmatch (Depends-on): Add stdbool.
8980
8981 2008-04-28  Eric Blake  <ebb9@byu.net>
8982
8983         Add rawmemchr module, matching glibc.
8984         * modules/string (Makefile.am): New indicator.
8985         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
8986         * lib/string.in.h (rawmemchr): Declare when appropriate.
8987         * modules/rawmemchr: New file.
8988         * m4/rawmemchr.m4: Likewise.
8989         * lib/rawmemchr.c: Likewise.
8990         * modules/rawmemchr-tests: Likewise.
8991         * tests/test-rawmemchr.c: Likewise.
8992         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
8993         module.
8994         * modules/strchrnul (Depends-on): Add rawmemchr.
8995         * lib/strchrnul.c (strchrnul): Optimize a corner case.
8996
8997         Whitespace cleanup.
8998         * tests/test-strchrnul.c: Reindent.
8999         * lib/strchrnul.c: Likewise.
9000
9001         Optimize and test strchrnul.
9002         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
9003         * modules/strchrnul-tests: New file.
9004         * tests/test-strchrnul.c: Likewise.
9005
9006         Remove intprops dependency.
9007         * modules/memchr (Depends-on): Remove intprops.
9008         * modules/memrchr (Depends-on): Likewise.
9009         * modules/memchr2 (Depends-on): Likewise.
9010         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
9011         * lib/memrchr.c (__memrchr): Likewise.
9012         * lib/memrchr2.c (memchr2): Likewise.
9013         Reported by Simon Josefsson.
9014
9015 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9016
9017         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
9018         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9019
9020 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9021
9022         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
9023
9024         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
9025
9026         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
9027
9028         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
9029         declarations.
9030         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
9031
9032         * m4/inet_pton.m4: Don't check for header files.
9033
9034         * m4/inet_ntop.m4: Don't check for header files.
9035
9036 2008-04-28  Simon Josefsson  <simon@josefsson.org>
9037
9038         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
9039         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
9040         trigger for cygwin).
9041         Reported by Bruno Haible  <bruno@clisp.org>.
9042
9043 2008-04-28  Bruno Haible  <bruno@clisp.org>
9044
9045         * doc/posix-functions/strdup.texi: Mention mingw problem.
9046
9047 2008-04-27  Bruno Haible  <bruno@clisp.org>
9048
9049         * modules/stat-time-tests (Depends-on): Add sleep.
9050         * tests/test-stat-time.c (force_unlink): New function.
9051         (cleanup): Use it.
9052         (test_mtime): Remove the ctime related tests.
9053         (test_ctime): New function, containing the ctime related tests.
9054         (main): Call test_ctime, except on native Windows platforms.
9055
9056 2008-04-27  Bruno Haible  <bruno@clisp.org>
9057
9058         * lib/rpmatch.c (rpmatch): Add some comments.
9059         Reported by James Youngman <jay@gnu.org>.
9060
9061 2008-04-27  Bruno Haible  <bruno@clisp.org>
9062
9063         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
9064         quiet NaNs.
9065
9066 2008-04-27  Bruno Haible  <bruno@clisp.org>
9067
9068         Make test-yesno.sh work on mingw.
9069         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
9070         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
9071         (main): Set stdin to binary mode.
9072         * modules/yesno-tests (Depends-on): Add binary-io.
9073
9074 2008-04-27  Bruno Haible  <bruno@clisp.org>
9075
9076         Fix 'isfinite' on x86, x86_64, ia64 platforms.
9077         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
9078         argument that lie outside the IEEE 854 domain.
9079         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
9080         (gl_ISFINITE): Use it.
9081         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
9082
9083 2008-04-27  Bruno Haible  <bruno@clisp.org>
9084
9085         Allow local renaming in config.h.
9086         * lib/memrchr.c (memrchr): Don't undefine outside libc.
9087
9088 2008-04-27  Bruno Haible  <bruno@clisp.org>
9089
9090         * lib/memchr.c (__memchr): Change type of 'i'.
9091         * lib/memchr2.c (memchr2): Likewise.
9092
9093 2008-04-26  Eric Blake  <ebb9@byu.net>
9094         and Bruno Haible  <bruno@clisp.org>
9095
9096         Optimize and test memrchr.
9097         * modules/memrchr (Depends-on): Add intprops.
9098         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
9099         * modules/memrchr-tests: New file.
9100         * tests/test-memrchr.c: New file.
9101
9102 2008-04-26  Bruno Haible  <bruno@clisp.org>
9103
9104         Add tentative support for DragonFly BSD.
9105         * lib/stdio-impl.h: Add macros for DragonFly BSD.
9106         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
9107         fp.
9108         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9109         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
9110         * lib/fpurge.c (fpurge): Likewise.
9111         * lib/freadable.c (freaadable): Likewise.
9112         * lib/freadahead.c (freadahead): Likewise.
9113         * lib/freading.c (freading): Likewise.
9114         * lib/freadptr.c (freadptr): Likewise.
9115         * lib/freadseek.c (freadptrinc): Likewise.
9116         * lib/fseeko.c (fseeko): Likewise.
9117         * lib/fseterr.c (fseterr): Likewise.
9118         * lib/fwritable.c (fwritable): Likewise.
9119         * lib/fwriting.c (fwriting): Likewise.
9120
9121 2008-04-26  Bruno Haible  <bruno@clisp.org>
9122
9123         * lib/stdio-impl.h: New file.
9124         * lib/fbufmode.c: Include stdio-impl.h.
9125         (fbufmode): Use fp_, remove redundant #defines.
9126         * lib/fflush.c: Include stdio-impl.h.
9127         (clear_ungetc_buffer): Remove redundant #defines.
9128         * lib/fpurge.c: Include stdio-impl.h.
9129         (fpurge): Remove redundant #defines.
9130         * lib/freadable.c: Include stdio-impl.h.
9131         (freadable): Remove redundant #defines.
9132         * lib/freadahead.c: Include stdio-impl.h.
9133         (freadahead): Remove redundant #defines.
9134         * lib/freading.c: Include stdio-impl.h.
9135         (freading): Remove redundant #defines.
9136         * lib/freadptr.c: Include stdio-impl.h.
9137         (freadptr): Remove redundant #defines.
9138         * lib/freadseek.c: Include stdio-impl.h.
9139         (freadptrinc): Remove redundant #defines.
9140         * lib/fseeko.c: Include stdio-impl.h.
9141         (rpl_fseeko): Remove redundant #defines.
9142         * lib/fseterr.c: Include stdio-impl.h.
9143         (fseterr): Remove redundant #defines.
9144         * lib/fwritable.c: Include stdio-impl.h.
9145         (fwritable: Remove redundant #defines.
9146         * lib/fwriting.c: Include stdio-impl.h.
9147         (fwriting): Remove redundant #defines.
9148         * modules/fbufmode (Files): Add lib/stdio-impl.h.
9149         * modules/fflush (Files): Likewise.
9150         * modules/fpurge (Files): Likewise.
9151         * modules/freadable (Files): Likewise.
9152         * modules/freadahead (Files): Likewise.
9153         * modules/freading (Files): Likewise.
9154         * modules/freadptr (Files): Likewise.
9155         * modules/freadseek (Files): Likewise.
9156         * modules/fseeko (Files): Likewise.
9157         * modules/fseterr (Files): Likewise.
9158         * modules/fwritable (Files): Likewise.
9159         * modules/fwriting (Files): Likewise.
9160
9161 2008-04-26  Bruno Haible  <bruno@clisp.org>
9162
9163         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
9164         restore_seek_optimization, update_fpos_cache): New functions, extracted
9165         from rpl_fflush.
9166         (rpl_fflush): Use them.
9167         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
9168         (gl_REPLACE_FFLUSH): Use it.
9169
9170 2008-04-26  Bruno Haible  <bruno@clisp.org>
9171
9172         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
9173         on Solaris.
9174         * tests/test-xstrtoimax.sh: Likewise.
9175         * tests/test-xstrtoumax.sh: Likewise.
9176         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9177
9178 2008-04-26  Bruno Haible  <bruno@clisp.org>
9179
9180         * modules/memchr-tests: New file.
9181         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
9182
9183 2008-04-26  Eric Blake  <ebb9@byu.net>
9184             Bruno Haible  <bruno@clisp.org>
9185
9186         * lib/memchr.c: Include intprops.h.
9187         (__memchr): Optimize parallel detection of matching bytes. Rename local
9188         variables. Add explanatory comments.
9189
9190 2008-04-26  Bruno Haible  <bruno@clisp.org>
9191
9192         Fix module 'memchr', broken since 2000-10-28.
9193         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
9194
9195 2008-04-26  Bruno Haible  <bruno@clisp.org>
9196
9197         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
9198         comments.
9199
9200 2008-04-25  Eric Blake  <ebb9@byu.net>
9201
9202         Use native fstatat on cygwin 1.7.0.
9203         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
9204         first.
9205
9206 2008-04-23  Eric Blake  <ebb9@byu.net>
9207
9208         Improve memchr2 performance.
9209         * lib/memchr2.c (memchr2): Further optimize parallel detection of
9210         NUL bytes.
9211         * modules/memchr2 (Depends-on): Use intprops.h.
9212
9213 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9214
9215         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
9216         an inline function instead of a CPP macro.  Patch by Ben Pfaff
9217         <blp@cs.stanford.edu>.
9218
9219 2008-04-23  Simon Josefsson  <simon@josefsson.org>
9220
9221         * lib/arpa_inet.in.h: New file.
9222
9223         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
9224         (Makefile.am): Sed in substitute header file.
9225
9226         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
9227         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
9228
9229         * modules/inet_ntop (configure.ac): Use
9230         gl_ARPA_INET_MODULE_INDICATOR.
9231
9232         * modules/inet_pton (configure.ac): Use
9233         gl_ARPA_INET_MODULE_INDICATOR.
9234
9235 2008-04-22  Jim Meyering  <meyering@redhat.com>
9236
9237         * modules/verify (License): Re-license as LGPLv2+.
9238
9239 2008-04-22  Simon Josefsson  <simon@josefsson.org>
9240
9241         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
9242         parameter to void* as per POSIX standard (MinGW uses char*).
9243
9244 2008-04-21  Bruno Haible  <bruno@clisp.org>
9245
9246         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
9247         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
9248         Define to replacements if REPLACE_ISWCNTRL is 1.
9249         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
9250         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
9251         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
9252         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
9253         what it fixes.
9254         * doc/posix-functions/iswalpha.texi: Likewise.
9255         * doc/posix-functions/iswblank.texi: Likewise.
9256         * doc/posix-functions/iswcntrl.texi: Likewise.
9257         * doc/posix-functions/iswdigit.texi: Likewise.
9258         * doc/posix-functions/iswgraph.texi: Likewise.
9259         * doc/posix-functions/iswlower.texi: Likewise.
9260         * doc/posix-functions/iswprint.texi: Likewise.
9261         * doc/posix-functions/iswpunct.texi: Likewise.
9262         * doc/posix-functions/iswspace.texi: Likewise.
9263         * doc/posix-functions/iswupper.texi: Likewise.
9264         * doc/posix-functions/iswxdigit.texi: Likewise.
9265         Reported by Alain Guibert.
9266
9267 2008-04-21  Bruno Haible  <bruno@clisp.org>
9268
9269         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
9270         Patch by Alain Guibert.
9271
9272 2008-04-21  Bruno Haible  <bruno@clisp.org>
9273
9274         Fix test failures on mingw.
9275         * tests/test-xstrtol.c (print_no_progname): New function.
9276         (main): Install it in error_print_progname hook.
9277         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
9278         * tests/test-xstrtoimax.sh: Likewise.
9279         * tests/test-xstrtoumax.sh: Likewise.
9280
9281 2008-04-21  Bruno Haible  <bruno@clisp.org>
9282
9283         Fix test failure on mingw.
9284         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
9285
9286 2008-04-21  Bruno Haible  <bruno@clisp.org>
9287
9288         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
9289         Actually assign a value.
9290
9291 2008-04-20  Bruno Haible  <bruno@clisp.org>
9292
9293         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
9294         take 2.
9295         * lib/canonicalize.c (canonicalize_file_name): Elide if the
9296         'canonicalize-lgpl' module is also used.
9297         * lib/canonicalize-lgpl.c: Undo last change.
9298         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
9299
9300 2008-04-20  Bruno Haible  <bruno@clisp.org>
9301
9302         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
9303         config.h. Provide _mkdir based fallback for mingw.
9304         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
9305         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
9306         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
9307         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
9308         rather than defining mkdir in config.h.
9309         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
9310         (gl_SYS_STAT_H_DEFAULTS): New macro.
9311         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
9312         HAVE_IO_H any more.
9313         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
9314         HAVE_DECL_MKDIR and HAVE_IO_H.
9315
9316 2008-04-20  Bruno Haible  <bruno@clisp.org>
9317
9318         * lib/isapipe.c: Port to native Windows platforms.
9319
9320 2008-04-20  Bruno Haible  <bruno@clisp.org>
9321
9322         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
9323
9324 2008-04-21  Eric Blake  <ebb9@byu.net>
9325
9326         Work around preprocessors that don't handle UINTMAX_MAX.
9327         * lib/memchr2.c (memchr2): Avoid embedded #if.
9328         Reported by Alain Guibert, fix suggested by Bruno Haible.
9329
9330 2008-04-21  Simon Josefsson  <simon@josefsson.org>
9331
9332         * doc/posix-functions/strftime.texi (strftime): Explain better
9333         Windows incompatibility.  Suggested by Micah Cowan
9334         <micah@cowan.name>.
9335
9336 2008-04-20  Bruno Haible  <bruno@clisp.org>
9337
9338         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
9339         unistr/u8-mblen.
9340
9341 2008-04-20  Bruno Haible  <bruno@clisp.org>
9342
9343         Fix test failure on platforms with non-GNU iconv.
9344         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
9345         (U_TO_U8): Use it, rather than u16_to_u8.
9346         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
9347         units at the end of the input string.
9348         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
9349
9350 2008-04-20  Bruno Haible  <bruno@clisp.org>
9351
9352         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
9353         when the resulting length is 0.
9354         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
9355
9356 2008-04-20  Bruno Haible  <bruno@clisp.org>
9357
9358         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
9359         works.
9360         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
9361
9362 2008-04-20  Bruno Haible  <bruno@clisp.org>
9363
9364         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
9365         * modules/tsearch-tests (configure.ac): Test for initstate function.
9366
9367 2008-04-20  Bruno Haible  <bruno@clisp.org>
9368
9369         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
9370         for nlink_t if missing.
9371         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
9372
9373 2008-04-19  Bruno Haible  <bruno@clisp.org>
9374
9375         Work around snprintf bug on Linux libc5.
9376         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
9377         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
9378         gl_SNPRINTF_SIZE1.
9379         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9380         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
9381         that test failed.
9382         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
9383         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
9384         * modules/snprintf (Files): Add m4/printf.m4.
9385         * modules/vsnprintf (Files): Likewise.
9386         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
9387         * doc/posix-functions/vsnprintf.texi: Likewise.
9388
9389 2008-04-19  Bruno Haible  <bruno@clisp.org>
9390
9391         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
9392         from 0.0058 to less than 10^-7.
9393
9394 2008-04-19  Bruno Haible  <bruno@clisp.org>
9395
9396         Fix rounding when a precision is given.
9397         * lib/vasnprintf.c (is_borderline): New function.
9398         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
9399         9...9x.
9400         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
9401         %e, %g.
9402         * tests/test-vasprintf-posix.c (test_function): Likewise.
9403         * tests/test-snprintf-posix.h (test_function): Likewise.
9404         * tests/test-sprintf-posix.h (test_function): Likewise.
9405         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
9406         * tests/test-printf-posix.h (test_function): Likewise.
9407         * tests/test-printf-posix.output: Update.
9408         Reported by John Darrington <john@darrington.wattle.id.au> via
9409         Ben Pfaff <blp@cs.stanford.edu>.
9410
9411 2008-04-18  Simon Josefsson  <simon@josefsson.org>
9412
9413         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
9414         Suggested by Bruno Haible <bruno@clisp.org>.
9415
9416 2008-04-17  Bruno Haible  <bruno@clisp.org>
9417
9418         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
9419         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
9420         implementation.
9421         Patch by Bruce Merry <bmerry@gmail.com>.
9422
9423 2008-04-17  Simon Josefsson  <simon@josefsson.org>
9424
9425         * doc/posix-functions/strftime.texi (strftime): Mention that %e
9426         doesn't work under Windows.
9427
9428 2008-04-16  Bruno Haible  <bruno@clisp.org>
9429
9430         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
9431         New macros.
9432         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
9433         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
9434         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
9435         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
9436         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
9437         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
9438         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
9439         macros.
9440         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
9441         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
9442         Northern Sotho, Uighur.
9443
9444 2008-04-16  Bruno Haible  <bruno@clisp.org>
9445
9446         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
9447         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
9448         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
9449         Reported by Daniel Bergström <daniel@octocode.com>.
9450
9451 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
9452             Bruno Haible  <bruno@clisp.org>
9453
9454         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
9455         function.
9456         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
9457         New functions, mostly extracted from gl_locale_name_default.
9458         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
9459
9460 2008-04-16  Eric Blake  <ebb9@byu.net>
9461
9462         Adjust strtod detection to catch glibc 2.7 bug.
9463         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
9464         Reported by John Gatewood Ham.
9465
9466 2008-04-16  Bruno Haible  <bruno@clisp.org>
9467
9468         Add tentative support for Linux libc5.
9469         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
9470         * lib/fpurge.c (fpurge): Likewise.
9471         * lib/freadable.c (freadable): Likewise.
9472         * lib/freadahead.c (freadahead): Likewise.
9473         * lib/freading.c (freading): Likewise.
9474         * lib/freadptr.c (freadptr): Likewise.
9475         * lib/freadseek.c (freadptrinc): Likewise.
9476         * lib/fseeko.c (rpl_fseeko): Likewise.
9477         * lib/fseterr.c (fseterr): Likewise.
9478         * lib/fwritable.c (fwritable): Likewise.
9479         * lib/fwriting.c (fwriting): Likewise.
9480         Reported by Alain Guibert <alguibert+bts@free.fr>.
9481
9482 2008-04-15  Bruno Haible  <bruno@clisp.org>
9483
9484         * modules/mathl (configure.ac): Define module indicator.
9485
9486 2008-04-15  Bruno Haible  <bruno@clisp.org>
9487
9488         * lib/logl.c (logl): Remove unused variables.
9489
9490 2008-04-15  Bruno Haible  <bruno@clisp.org>
9491
9492         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
9493         fails.
9494
9495 2008-04-15  Bruno Haible  <bruno@clisp.org>
9496
9497         * lib/trim.c (trim2): Fix argument of isspace() macro.
9498
9499 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
9500
9501         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
9502         to 0.
9503         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
9504
9505 2008-04-14  Bruno Haible  <bruno@clisp.org>
9506
9507         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
9508         AC_LANG_PROGRAM argument.
9509         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
9510         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
9511         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
9512         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
9513         * m4/math_h.m4 (gl_MATH_H): Likewise.
9514         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
9515         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
9516         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
9517         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
9518         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
9519         * m4/regex.m4 (gl_REGEX): Likewise.
9520         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
9521         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
9522         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
9523         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
9524         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9525         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
9526         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9527         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
9528
9529 2008-04-14  Jim Meyering  <meyering@redhat.com>
9530
9531         test-strtod: fix typos: s/abs/fabs/
9532         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
9533
9534 2008-04-13  Bruno Haible  <bruno@clisp.org>
9535
9536         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
9537         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
9538         module is also used and while not building the reloc-wrapper.
9539
9540 2008-04-13  Bruno Haible  <bruno@clisp.org>
9541
9542         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
9543
9544 2008-04-13  Bruno Haible  <bruno@clisp.org>
9545
9546         Fix AIX compilation failure introduced on 2008-04-02.
9547         * tests/test-frexp.c (exp): Undefine before redefining.
9548         * tests/test-frexpl.c (exp): Likewise.
9549
9550 2008-04-13  Bruno Haible  <bruno@clisp.org>
9551
9552         Work around a HP-UX stdio bug.
9553         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
9554         * tests/test-ftello.c (main): Likewise.
9555         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
9556         * doc/posix-functions/ftello.texi: Likewise.
9557
9558 2008-04-13  Bruno Haible  <bruno@clisp.org>
9559
9560         Make test-signbit pass on HP-UX/hppa.
9561         * tests/test-signbit.c (minus_zerol): New variable.
9562         (test_signbitl): Use it.
9563
9564 2008-04-13  Bruno Haible  <bruno@clisp.org>
9565
9566         Make truncl work on OSF/1 4.0.
9567         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
9568         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
9569         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
9570         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
9571         HAVE_DECL_TRUNCL.
9572         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
9573         HAVE_DECL_TRUNCL.
9574         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
9575
9576 2008-04-13  Bruno Haible  <bruno@clisp.org>
9577
9578         * lib/unictype.h: Remove trailing comma from enumeration definitions.
9579
9580 2008-04-13  Bruno Haible  <bruno@clisp.org>
9581
9582         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
9583         expression, so as to avoid HP-UX 11 cc compiler bug.
9584
9585 2008-04-13  Bruno Haible  <bruno@clisp.org>
9586
9587         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
9588
9589 2008-04-13  Bruno Haible  <bruno@clisp.org>
9590
9591         * lib/git-merge-changelog.c: Remove empty declaration outside of
9592         functions.
9593
9594 2008-04-13  Bruno Haible  <bruno@clisp.org>
9595
9596         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
9597
9598 2008-04-13  Bruno Haible  <bruno@clisp.org>
9599
9600         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
9601         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
9602         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
9603         also if it exists but lacks definitions of the SHUT_* macros.
9604         * modules/sys_socket (Description): Update.
9605         Reported by Elbert Pol <e.pol@chello.nl>.
9606
9607 2008-04-13  Bruno Haible  <bruno@clisp.org>
9608
9609         * lib/localcharset.c (OS2): Don't redefine if already defined.
9610         Reported by Elbert Pol <e.pol@chello.nl>.
9611
9612 2008-04-13  Bruno Haible  <bruno@clisp.org>
9613
9614         * lib/binary-io.h [__EMX__]: Include <io.h>.
9615         Reported by Elbert Pol <e.pol@chello.nl>.
9616
9617 2008-04-12  Bruno Haible  <bruno@clisp.org>
9618
9619         * lib/fpucw.h: Enable the definitions also for x86_64.
9620         Needed for NetBSD/x86_64.
9621         Reported by Thomas Klausner <tk@giga.or.at>.
9622
9623 2008-04-12  Bruno Haible  <bruno@clisp.org>
9624
9625         * tests/test-strtod.c: Include isnand.h.
9626         (main): Use isnand instead of isnan.
9627         Reported by Jim Meyering.
9628
9629 2008-04-12  Bruno Haible  <bruno@clisp.org>
9630
9631         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
9632         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
9633
9634 2008-04-12  Jim Meyering  <meyering@redhat.com>
9635
9636         * m4/math_h.m4 (gl_MATH_H): Fix typos.
9637
9638 2008-04-12  Bruno Haible  <bruno@clisp.org>
9639
9640         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
9641         Reported by Elbert Pol <e.pol@chello.nl>.
9642
9643 2008-04-12  Eric Blake  <ebb9@byu.net>
9644
9645         Work around Solaris 10 math.h bug.
9646         * m4/math_h.m4 (gl_MATH_H): Check for bug.
9647         (gl_MATH_H_DEFAULTS): Set up default.
9648         * modules/math (Makefile.am): Replace new indicators.
9649         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
9650         * tests/test-math.c (main): Test this.
9651         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
9652         * doc/posix-headers/math.texi (math.h): Mention bug.
9653         Reported by Nelson H. F. Beebe and Jim Meyering.
9654
9655 2008-04-11  Bruno Haible  <bruno@clisp.org>
9656
9657         Adapt to future versions of Apple GCC.
9658         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
9659         Reported by Peter O'Gorman <peter@pogma.com>.
9660
9661 2008-04-11  Bruno Haible  <bruno@clisp.org>
9662
9663         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
9664
9665 2008-04-11  Bruno Haible  <bruno@clisp.org>
9666
9667         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
9668
9669         * modules/getaddrinfo-tests (Makefile.am): Define
9670         test_getaddrinfo_LDADD.
9671
9672 2008-04-11  Bruno Haible  <bruno@clisp.org>
9673
9674         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
9675         (init): Fix syntax error.
9676         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
9677         is declared.
9678
9679 2008-04-11  Bruno Haible  <bruno@clisp.org>
9680
9681         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
9682         * modules/glob (Depends-on): Add stdbool.
9683
9684 2008-04-11  Bruno Haible  <bruno@clisp.org>
9685
9686         * lib/trim.c: Include <string.h>.
9687
9688 2008-04-11  Eric Blake  <ebb9@byu.net>
9689
9690         Avoid compile failure on OS/2.
9691         * lib/regex_internal.h (internal_function): Disable optimization
9692         on OS/2 (__EMX__), where it caused compiler error.
9693         Reported by Elbert Pol.
9694
9695 2008-04-11  Bruno Haible  <bruno@clisp.org>
9696
9697         Flush the standard error stream before aborting. Needed on mingw.
9698         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
9699         * tests/test-array_list.c (ASSERT): Likewise.
9700         * tests/test-array_oset.c (ASSERT): Likewise.
9701         * tests/test-avltree_list.c (ASSERT): Likewise.
9702         * tests/test-avltree_oset.c (ASSERT): Likewise.
9703         * tests/test-avltreehash_list.c (ASSERT): Likewise.
9704         * tests/test-binary-io.c (ASSERT): Likewise.
9705         * tests/test-byteswap.c (ASSERT): Likewise.
9706         * tests/test-c-ctype.c (ASSERT): Likewise.
9707         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
9708         * tests/test-c-strcasestr.c (ASSERT): Likewise.
9709         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
9710         * tests/test-c-strstr.c (ASSERT): Likewise.
9711         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
9712         * tests/test-canonicalize.c (ASSERT): Likewise.
9713         * tests/test-carray_list.c (ASSERT): Likewise.
9714         * tests/test-ceilf1.c (ASSERT): Likewise.
9715         * tests/test-ceilf2.c (ASSERT): Likewise.
9716         * tests/test-ceill.c (ASSERT): Likewise.
9717         * tests/test-count-one-bits.c (ASSERT): Likewise.
9718         * tests/test-fbufmode.c (ASSERT): Likewise.
9719         * tests/test-fflush2.c (ASSERT): Likewise.
9720         * tests/test-floorf1.c (ASSERT): Likewise.
9721         * tests/test-floorf2.c (ASSERT): Likewise.
9722         * tests/test-floorl.c (ASSERT): Likewise.
9723         * tests/test-fopen.c (ASSERT): Likewise.
9724         * tests/test-fpending.c (ASSERT): Likewise.
9725         * tests/test-fprintf-posix.c (ASSERT): Likewise.
9726         * tests/test-fpurge.c (ASSERT): Likewise.
9727         * tests/test-freadable.c (ASSERT): Likewise.
9728         * tests/test-freadahead.c (ASSERT): Likewise.
9729         * tests/test-freading.c (ASSERT): Likewise.
9730         * tests/test-freadptr.c (ASSERT): Likewise.
9731         * tests/test-freadptr2.c (ASSERT): Likewise.
9732         * tests/test-freadseek.c (ASSERT): Likewise.
9733         * tests/test-freopen.c (ASSERT): Likewise.
9734         * tests/test-frexp.c (ASSERT): Likewise.
9735         * tests/test-frexpl.c (ASSERT): Likewise.
9736         * tests/test-fseek.c (ASSERT): Likewise.
9737         * tests/test-fseeko.c (ASSERT): Likewise.
9738         * tests/test-fstrcmp.c (ASSERT): Likewise.
9739         * tests/test-ftell.c (ASSERT): Likewise.
9740         * tests/test-ftello.c (ASSERT): Likewise.
9741         * tests/test-func.c (ASSERT): Likewise.
9742         * tests/test-fwritable.c (ASSERT): Likewise.
9743         * tests/test-fwriting.c (ASSERT): Likewise.
9744         * tests/test-getdelim.c (ASSERT): Likewise.
9745         * tests/test-getline.c (ASSERT): Likewise.
9746         * tests/test-i-ring.c (ASSERT): Likewise.
9747         * tests/test-iconv-utf.c (ASSERT): Likewise.
9748         * tests/test-iconv.c (ASSERT): Likewise.
9749         * tests/test-isfinite.c (ASSERT): Likewise.
9750         * tests/test-isnand.c (ASSERT): Likewise.
9751         * tests/test-isnanf.c (ASSERT): Likewise.
9752         * tests/test-isnanl.h (ASSERT): Likewise.
9753         * tests/test-ldexpl.c (ASSERT): Likewise.
9754         * tests/test-linked_list.c (ASSERT): Likewise.
9755         * tests/test-linkedhash_list.c (ASSERT): Likewise.
9756         * tests/test-localename.c (ASSERT): Likewise.
9757         * tests/test-lseek.c (ASSERT): Likewise.
9758         * tests/test-mbscasecmp.c (ASSERT): Likewise.
9759         * tests/test-mbscasestr1.c (ASSERT): Likewise.
9760         * tests/test-mbscasestr2.c (ASSERT): Likewise.
9761         * tests/test-mbscasestr3.c (ASSERT): Likewise.
9762         * tests/test-mbscasestr4.c (ASSERT): Likewise.
9763         * tests/test-mbschr.c (ASSERT): Likewise.
9764         * tests/test-mbscspn.c (ASSERT): Likewise.
9765         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
9766         * tests/test-mbspbrk.c (ASSERT): Likewise.
9767         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
9768         * tests/test-mbsrchr.c (ASSERT): Likewise.
9769         * tests/test-mbsspn.c (ASSERT): Likewise.
9770         * tests/test-mbsstr1.c (ASSERT): Likewise.
9771         * tests/test-mbsstr2.c (ASSERT): Likewise.
9772         * tests/test-mbsstr3.c (ASSERT): Likewise.
9773         * tests/test-memchr2.c (ASSERT): Likewise.
9774         * tests/test-memmem.c (ASSERT): Likewise.
9775         * tests/test-open.c (ASSERT): Likewise.
9776         * tests/test-printf-frexp.c (ASSERT): Likewise.
9777         * tests/test-printf-frexpl.c (ASSERT): Likewise.
9778         * tests/test-printf-posix.c (ASSERT): Likewise.
9779         * tests/test-quotearg.c (ASSERT): Likewise.
9780         * tests/test-rbtree_list.c (ASSERT): Likewise.
9781         * tests/test-rbtree_oset.c (ASSERT): Likewise.
9782         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
9783         * tests/test-round1.c (ASSERT): Likewise.
9784         * tests/test-roundf1.c (ASSERT): Likewise.
9785         * tests/test-roundl.c (ASSERT): Likewise.
9786         * tests/test-signbit.c (ASSERT): Likewise.
9787         * tests/test-sleep.c (ASSERT): Likewise.
9788         * tests/test-snprintf-posix.c (ASSERT): Likewise.
9789         * tests/test-snprintf.c (ASSERT): Likewise.
9790         * tests/test-sprintf-posix.c (ASSERT): Likewise.
9791         * tests/test-stat-time.c (ASSERT): Likewise.
9792         * tests/test-strcasestr.c (ASSERT): Likewise.
9793         * tests/test-strerror.c (ASSERT): Likewise.
9794         * tests/test-striconv.c (ASSERT): Likewise.
9795         * tests/test-striconveh.c (ASSERT): Likewise.
9796         * tests/test-striconveha.c (ASSERT): Likewise.
9797         * tests/test-strsignal.c (ASSERT): Likewise.
9798         * tests/test-strstr.c (ASSERT): Likewise.
9799         * tests/test-strtod.c (ASSERT): Likewise.
9800         * tests/test-trunc1.c (ASSERT): Likewise.
9801         * tests/test-trunc2.c (ASSERT): Likewise.
9802         * tests/test-truncf1.c (ASSERT): Likewise.
9803         * tests/test-truncf2.c (ASSERT): Likewise.
9804         * tests/test-truncl.c (ASSERT): Likewise.
9805         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
9806         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
9807         * tests/test-vasnprintf.c (ASSERT): Likewise.
9808         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
9809         * tests/test-vasprintf.c (ASSERT): Likewise.
9810         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
9811         * tests/test-vprintf-posix.c (ASSERT): Likewise.
9812         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
9813         * tests/test-vsnprintf.c (ASSERT): Likewise.
9814         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
9815         * tests/test-wcwidth.c (ASSERT): Likewise.
9816         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
9817         * tests/test-xprintf-posix.c (ASSERT): Likewise.
9818         * tests/test-xvasprintf.c (ASSERT): Likewise.
9819         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
9820         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
9821         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
9822         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
9823         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
9824         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
9825         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
9826         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
9827         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
9828         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
9829         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
9830         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
9831         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
9832         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
9833         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
9834         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
9835         * tests/unictype/test-block_list.c (ASSERT): Likewise.
9836         * tests/unictype/test-block_of.c (ASSERT): Likewise.
9837         * tests/unictype/test-block_test.c (ASSERT): Likewise.
9838         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
9839         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
9840         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
9841         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
9842         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
9843         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
9844         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
9845         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
9846         * tests/unictype/test-combining.c (ASSERT): Likewise.
9847         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
9848         * tests/unictype/test-digit.c (ASSERT): Likewise.
9849         * tests/unictype/test-mirror.c (ASSERT): Likewise.
9850         * tests/unictype/test-numeric.c (ASSERT): Likewise.
9851         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
9852         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
9853         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
9854         * tests/unictype/test-scripts.c (ASSERT): Likewise.
9855         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
9856         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
9857         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
9858         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
9859         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
9860         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
9861         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
9862         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
9863         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
9864         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
9865         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
9866         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
9867         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
9868         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
9869         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
9870         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
9871         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
9872         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
9873         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
9874         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
9875         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
9876         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
9877         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
9878         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
9879         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
9880         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
9881         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
9882         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
9883         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
9884         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
9885         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
9886         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
9887         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
9888         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
9889         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
9890         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
9891         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
9892         Reported by Eric Blake.
9893
9894 2008-04-11  Bruno Haible  <bruno@clisp.org>
9895
9896         * lib/wchar.in.h: Tweak comment.
9897
9898 2008-04-11  Bruno Haible  <bruno@clisp.org>
9899
9900         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
9901         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
9902         gl_COMMON.
9903         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
9904
9905 2008-04-11  Bruno Haible  <bruno@clisp.org>
9906
9907         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
9908
9909 2008-04-11  Simon Josefsson  <simon@josefsson.org>
9910
9911         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
9912         of attempting to use non-existing /dev/*random.  Based on patch
9913         from Adam Strzelecki <ono@java.pl> in
9914         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
9915
9916 2008-04-08  Bruno Haible  <bruno@clisp.org>
9917
9918         Add tentative support for emx+gcc.
9919         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
9920         * lib/fpurge.c (fpurge): Likewise.
9921         * lib/freadable.c (freadable): Likewise.
9922         * lib/freadahead.c (freadahead): Likewise.
9923         * lib/freading.c (freading): Likewise.
9924         * lib/freadptr.c (freadptr): Likewise.
9925         * lib/freadseek.c (freadptrinc): Likewise.
9926         * lib/fseeko.c (rpl_fseeko): Likewise.
9927         * lib/fseterr.c (fseterr): Likewise.
9928         * lib/fwritable.c (fwritable): Likewise.
9929         * lib/fwriting.c (fwriting): Likewise.
9930         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
9931
9932 2008-04-09  Eric Blake  <ebb9@byu.net>
9933
9934         Avoid some autoconf warnings.
9935         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
9936         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
9937         * m4/afs.m4 (gl_AFS): Likewise.
9938         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
9939         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
9940         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
9941         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
9942         (gl_INTEGER_TYPE_SUFFIX): Likewise.
9943         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
9944         (AC_CHECK_DECLS_ONCE): Likewise.
9945         Rename file...
9946         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
9947         gnulib-tool requires autoconf 2.59 or better.
9948         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
9949
9950 2008-04-08  Eric Blake  <ebb9@byu.net>
9951
9952         Use 'git describe --match' if present (added in git 1.5.5).
9953         * build-aux/git-version-gen: Limit result to tags that match 'v*'
9954         if possible.
9955
9956 2008-04-08  Bruno Haible  <bruno@clisp.org>
9957
9958         Add tentative support for OpenServer.
9959         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
9960         _ptr, _cnt.
9961         * lib/fpurge.c (fpurge): Likewise.
9962         * lib/freadable.c (freadable): Likewise.
9963         * lib/freadahead.c (freadahead): Likewise.
9964         * lib/freading.c (freading): Likewise.
9965         * lib/freadptr.c (freadptr): Likewise.
9966         * lib/freadseek.c (freadptrinc): Likewise.
9967         * lib/fseeko.c (rpl_fseeko): Likewise.
9968         * lib/fseterr.c (fseterr): Likewise.
9969         * lib/fwritable.c (fwritable): Likewise.
9970         * lib/fwriting.c (fwriting): Likewise.
9971         Reported by Roger Cornelius <rac@tenzing.org> and
9972         Brian K. White <brian@aljex.com>.
9973
9974 2008-04-06  Jim Meyering  <meyering@redhat.com>
9975
9976         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
9977
9978 2008-04-06  Bruno Haible  <bruno@clisp.org>
9979
9980         Avoid possible error with non-ASCII bytes in UTF-8 locales.
9981         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
9982         * tests/test-printf-posix.sh: Likewise.
9983         * tests/test-vfprintf-posix.sh: Likewise.
9984         * tests/test-vprintf-posix.sh: Likewise.
9985         * tests/test-xprintf-posix.sh: Likewise.
9986
9987 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9988
9989         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
9990         hide error from 'ls', needed on OS/2.
9991         Report by Elbert Pol <elbert.pol@gmail.com>.
9992
9993 2008-04-04  Eric Blake  <ebb9@byu.net>
9994
9995         Make test-fseeko.c failures meaningful.
9996         * tests/test-fseeko.c: Print line number on failure.
9997         * tests/test-fseek.c: Likewise.
9998         Reported by Nelson H. F. Beebe.
9999
10000         Improve strtod bug detection check.
10001         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
10002         required for Solaris 10.
10003         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
10004
10005 2008-04-04  Bruno Haible  <bruno@clisp.org>
10006
10007         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
10008         by m4/setenv.m4.
10009
10010 2008-04-03  Eric Blake  <ebb9@byu.net>
10011
10012         Ensure sane .version contents.
10013         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
10014         version string.
10015         * build-aux/git-version-gen: Improve documentation.
10016
10017         Make GNU make output nicer.
10018         * top/GNUmakefile [!_have-Makefile]: Add dependency on
10019         MAKECMDGOALS to enforce message for all command line targets.  Set
10020         srcdir for use in maint.mk.
10021
10022         Another maintainer tweak.
10023         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
10024         a target that regenerates version.
10025
10026 2008-04-03  Jim Meyering  <meyering@redhat.com>
10027
10028         vc-list-files: don't cause coreutils "make po-check" failure
10029         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
10030
10031 2008-04-03  Eric Blake  <ebb9@byu.net>
10032
10033         Allow VPATH usage of vc-list-files.
10034         * build-aux/vc-list-files (scriptversion): Add timestamp.
10035         (options): Add --help, --version, -C.
10036         (CVS): Support installed cvsu.
10037
10038 2008-04-02  Bruno Haible  <bruno@clisp.org>
10039
10040         Avoid some "statement with no effect" warnings from gcc.
10041         * tests/test-wctype.c (main): Explicitly ignore unused values.
10042         Reported by Jim Meyering.
10043
10044 2008-04-02  Jim Meyering  <meyering@redhat.com>
10045
10046         Avoid some warnings from "gcc -Wshadow".
10047         * tests/test-frexp.c (exp): Define to a different identifier.
10048         * tests/test-frexpl.c (exp): Likewise.
10049
10050 2008-04-03  Jim Meyering  <meyering@redhat.com>
10051
10052         bootstrap: remove dangling *.[ch] symlinks from lib
10053         * build-aux/bootstrap [dangling symlink removal]: Move find's
10054         -depth option to precede all others, to avoid a warning.
10055         Remove *.[ch] files too, and from "$source_base" (usually lib/).
10056
10057 2008-04-02  Bruno Haible  <bruno@clisp.org>
10058
10059         Avoid some warnings from "gcc -Wshadow".
10060         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
10061         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
10062         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
10063         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
10064         Reported by Jim Meyering.
10065
10066 2008-04-01  Bruno Haible  <bruno@clisp.org>
10067
10068         Fix test to work on IRIX 6.5 with cc.
10069         * tests/test-math.c (numeric_equal): New function.
10070         (main): Use it.
10071
10072 2008-04-01  Bruno Haible  <bruno@clisp.org>
10073
10074         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
10075
10076 2008-04-01  Bruno Haible  <bruno@clisp.org>
10077
10078         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
10079         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10080         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
10081         (Depends-on): Remove math.
10082
10083         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
10084         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10085         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
10086         (Depends-on): Remove math.
10087
10088         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
10089         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10090         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
10091         (Depends-on): Remove math.
10092         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
10093         (Depends-on): Remove math.
10094
10095         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
10096         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
10097         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
10098         (Depends-on): Remove math.
10099         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
10100         (Depends-on): Remove math.
10101
10102         * tests/test-round1.c: Include nan.h.
10103         (main): Use NaNd instead of NAN.
10104         * modules/round-tests (Files): Add tests/nan.h.
10105
10106         * tests/test-trunc1.c: Include nan.h.
10107         (main): Use NaNd instead of NAN.
10108         * modules/trunc-tests (Files): Add tests/nan.h.
10109
10110         * tests/test-roundf1.c: Include nan.h.
10111         (main): Use NaNf instead of NAN.
10112         * modules/roundf-tests (Files): Add tests/nan.h.
10113
10114         * tests/test-truncf1.c: Include nan.h.
10115         (main): Use NaNf instead of NAN.
10116         * modules/truncf-tests (Files): Add tests/nan.h.
10117
10118         * tests/test-ceilf1.c: Include nan.h.
10119         (main): Use NaNf instead of NAN.
10120         * modules/ceilf-tests (Files): Add tests/nan.h.
10121
10122         * tests/test-floorf1.c: Include nan.h.
10123         (main): Use NaNf instead of NAN.
10124         * modules/floorf-tests (Files): Add tests/nan.h.
10125
10126         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
10127         (main): Use NaNf instead of NAN.
10128         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
10129
10130         * tests/test-isnand.c: Include nan.h instead of <math.h>.
10131         (main): Use NaNd instead of NAN.
10132         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
10133
10134         * tests/test-frexp.c: Include nan.h.
10135         (main): Use NaNd instead of NAN.
10136         * modules/frexp-tests (Files): Add tests/nan.h.
10137
10138         * lib/isnan.c: Don't include <math.h>.
10139         (FUNC): Don't use NAN macro.
10140         * modules/isnand-nolibm (Depends-on): Remove math.
10141         * modules/isnanf-nolibm (Depends-on): Remove math.
10142         * modules/isnanl (Depends-on): Remove math.
10143         * modules/isnanl-nolibm (Depends-on): Remove math.
10144
10145         * tests/nan.h: New file.
10146
10147 2008-04-01  Eric Blake  <ebb9@byu.net>
10148
10149         Fix typos.
10150         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
10151         values to be the right type.
10152
10153         For now, cater to gnulib strtod inaccuracies.
10154         * tests/test-strtod.c (main): Allow 1-ulp error on expected
10155         fractional results.  While not as nice from a QoI perspective, it
10156         is a quicker patch than correctly implementing decimal to binary
10157         rounding.
10158
10159 2008-03-31  Eric Blake  <ebb9@byu.net>
10160
10161         Guarantee a definition of NAN.
10162         * lib/math.in.h (NAN): Define if missing.
10163         * tests/test-math.c (main): Test it.
10164         * doc/posix-headers/math.texi (math.h): Document this.
10165         * lib/isnan.c (rpl_isnand): Use it.
10166         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
10167         * tests/test-floorf1.c (NaN): Likewise.
10168         * tests/test-frexp.c (NaN): Likewise.
10169         * tests/test-isnand.c (NaN): Likewise.
10170         * tests/test-isnanf.c (NaN): Likewise.
10171         * tests/test-round1.c (NaN): Likewise.
10172         * tests/test-roundf1.c (NaN): Likewise.
10173         * tests/test-snprintf-posix.h (NaN): Likewise.
10174         * tests/test-sprintf-posix.h (NaN): Likewise.
10175         * tests/test-trunc1.c (NaN): Likewise.
10176         * tests/test-truncf1.c (NaN): Likewise.
10177         * tests/test-vasnprintf-posix.c (NaN): Likewise.
10178         * tests/test-vasprintf-posix.c (NaN): Likewise.
10179         * modules/isnand-nolibm (Depends-on): Add math.
10180         * modules/isnanf-nolibm (Depends-on): Likewise.
10181         * modules/isnanl (Depends-on): Likewise.
10182         * modules/isnanl-nolibm (Depends-on): Likewise.
10183         * modules/snprintf-posix-tests (Depends-on): Likewise.
10184         * modules/sprintf-posix-tests (Depends-on): Likewise.
10185         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
10186         * modules/vsprintf-posix-tests (Depends-on): Likewise.
10187         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
10188         * modules/vasprintf-posix-tests (Depends-on): Likewise.
10189
10190 2008-03-31  Bruno Haible  <bruno@clisp.org>
10191
10192         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
10193         * doc/posix-functions/strtod.texi: Likewise.
10194
10195 2008-03-31  Bruno Haible  <bruno@clisp.org>
10196
10197         * tests/test-strtod.c (main): Don't use C99 syntax.
10198
10199 2008-03-31  Bruno Haible  <bruno@clisp.org>
10200
10201         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
10202         Reported by Eric Blake.
10203
10204 2008-03-31  Jim Meyering  <meyering@redhat.com>
10205
10206         Don't compare actual signbit return values.
10207         * tests/test-strtod.c (main): Rather, compare only their
10208         zero/non-zero nature.
10209
10210 2008-03-31  Eric Blake  <ebb9@byu.net>
10211
10212         More strtod documentation.
10213         * doc/posix-functions/strtod.texi (strtod): Interpret more test
10214         failures as distinct bugs.
10215
10216 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
10217
10218         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
10219         Problem reported by Erik Benada in
10220         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
10221
10222 2008-03-30  Bruno Haible  <bruno@clisp.org>
10223
10224         * tests/test-strtod.c: Add comments about which assertion fails on which
10225         platform.
10226         * doc/posix-functions/strtod.texi: Add info about many more platforms.
10227
10228 2008-03-30  Eric Blake  <ebb9@byu.net>
10229
10230         Test signbit behavior on zeros.
10231         * tests/test-signbit.c (test_signbitf): Add tests for zero.
10232         (test_signbitd, test_signbitl): Likewise.
10233
10234         More strtod touchups.
10235         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
10236         sign of negative underflow, for now.  Use .5, not .1.
10237         * doc/posix-functions/strtod.texi (strtod): Mention these
10238         limitations.
10239         Reported by Jim Meyering.
10240
10241 2008-03-30  Bruno Haible  <bruno@clisp.org>
10242
10243         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
10244         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
10245
10246 2008-03-30  Bruno Haible  <bruno@clisp.org>
10247
10248         Avoid failure when attempting to return empty iconv results on some
10249         platforms.
10250         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
10251         allocation, don't report ENOMEM when the resulting string is empty.
10252
10253 2008-03-30  Bruno Haible  <bruno@clisp.org>
10254
10255         Fix buffer overrun.
10256         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
10257         Don't consider the width for tmp_length. Check count against tmp_length
10258         before doing the padding. Ensure enough allocation during padding.
10259
10260 2008-03-30  Eric Blake  <ebb9@byu.net>
10261
10262         strtod touchups.
10263         * lib/strtod.c (strtod): Avoid compiler warnings.
10264         Reported by Jim Meyering.
10265
10266 2008-03-30  Bruno Haible  <bruno@clisp.org>
10267
10268         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
10269         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
10270         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
10271         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
10272         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
10273         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
10274         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
10275         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
10276
10277         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
10278         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
10279         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
10280         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
10281         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
10282         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
10283         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
10284         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
10285
10286         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
10287         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
10288         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
10289         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
10290         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
10291         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
10292         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
10293         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
10294
10295         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
10296         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
10297
10298         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
10299         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
10300
10301         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
10302         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
10303
10304         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
10305         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
10306         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
10307
10308         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
10309         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
10310         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
10311
10312         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
10313         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
10314         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
10315
10316         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
10317         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
10318         * modules/vasprintf (Depends-on): Add EOVERFLOW.
10319
10320         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
10321         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
10322         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
10323         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
10324         (Depends-on): Add EOVERFLOW.
10325         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
10326         (Depends-on): Add EOVERFLOW.
10327         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10328         (Depends-on): Add EOVERFLOW.
10329         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
10330         (Depends-on): Add EOVERFLOW.
10331         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10332         (Depends-on): Add EOVERFLOW.
10333         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
10334         (Depends-on): Add EOVERFLOW.
10335         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10336         (Depends-on): Add EOVERFLOW.
10337         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
10338         (Depends-on): Add EOVERFLOW.
10339
10340         * lib/sprintf.c (EOVERFLOW): Remove fallback.
10341         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
10342         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
10343
10344         * lib/snprintf.c (EOVERFLOW): Remove fallback.
10345         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
10346         * modules/snprintf (Depends-on): Add EOVERFLOW.
10347
10348         * lib/poll.c (EOVERFLOW): Remove fallback.
10349         * modules/poll (Depends-on): Add EOVERFLOW.
10350
10351         * lib/getugroups.c (EOVERFLOW): Remove fallback.
10352         * modules/getugroups (Depends-on): Add EOVERFLOW.
10353
10354         * lib/getdelim.c (EOVERFLOW): Remove fallback.
10355         * modules/getdelim (Depends-on): Add EOVERFLOW.
10356
10357         * lib/ftell.c (EOVERFLOW): Remove fallback.
10358         * modules/ftell (Depends-on): Add EOVERFLOW.
10359
10360         * lib/fprintf.c (EOVERFLOW): Remove fallback.
10361         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
10362         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
10363
10364         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
10365
10366         * modules/EOVERFLOW-tests: New file.
10367         * tests/test-EOVERFLOW.c: New file.
10368
10369         * modules/EOVERFLOW: New file.
10370         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
10371
10372 2008-03-30  Bruno Haible  <bruno@clisp.org>
10373
10374         Fix bug introduced on 2007-06-10.
10375         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
10376         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
10377
10378 2008-03-30  Bruno Haible  <bruno@clisp.org>
10379
10380         Improve freadseek's efficiency after ungetc.
10381         * lib/freadseek.c: Include freadahead.h.
10382         (freadptrinc): New function, extracted from freadseek.
10383         (freadseek): Use it in a loop. Use freadahead to determine the number
10384         of loop iterations.
10385         * modules/freadseek (Depends-on): Add freadahead.
10386         (configure.ac): Require AC_C_INLINE.
10387
10388 2008-03-30  Bruno Haible  <bruno@clisp.org>
10389
10390         * lib/freadseek.c (freadseek): Don't ignore the return value of
10391         freadptr.
10392
10393 2008-03-29  Eric Blake  <ebb9@byu.net>
10394
10395         Add hex float support.
10396         * modules/strtod (Depends-on): Add c-ctype.
10397         (Link): Mention POW_LIB.
10398         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
10399         whitespace between 'e' and exponent.
10400         * tests/test-strtod.c (main): Enable hex float tests.
10401         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
10402         now provides.
10403
10404         Document various strtod bugs, with some fixes.
10405         * doc/posix-functions/strtod.texi (strtod): Document bugs with
10406         "-0x", "inf", "nan", and hex constants.
10407         * doc/posix-functions/atof.texi (atof): Likewise.
10408         * modules/stdlib (Makefile.am): Support strtod.
10409         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
10410         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
10411         detect additional strtod bugs.
10412         * lib/stdlib.in.h (rpl_strtod): Add declarations.
10413         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
10414         bool where appropriate.  Parse 'inf' and 'nan'.
10415         * tests/test-strtod.c: New file.
10416         * modules/strtod (Depends-on): Add stdbool, stdlib.
10417         (configure.ac): Turn on module indicator.
10418         * modules/strtod-tests: New module.
10419
10420 2008-03-29  Eric Blake  <ebb9@byu.net>
10421
10422         Fix ftell on mingw.
10423         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
10424         * modules/ftell-tests (Depends-on): Add binary-io.
10425         * modules/ftello-tests (Depends-on): Likewise.
10426         * tests/test-ftell.c (main): Enhance test to cover behavior after
10427         ungetc.  Enforce binary mode.
10428         * tests/test-ftello.c (main): Likewise.
10429
10430         Pass test-freadseek on cygwin.
10431         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
10432         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
10433         ungetc buffer.
10434
10435         * tests/test-fflush2.c (main): Fix typo.
10436
10437 2008-03-29  Bruno Haible  <bruno@clisp.org>
10438
10439         * tests/test-fflush2.c (main): Temporarily disable the contents of
10440         this test.
10441         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
10442         Reported by Eric Blake.
10443
10444 2008-03-28  Simon Josefsson  <simon@josefsson.org>
10445
10446         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
10447         (GC_SHA224_DIGEST_SIZE): Add.
10448
10449         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
10450         (gc_hash_digest_length): Likewise.
10451         (gc_hash_buffer): Likewise.
10452
10453 2008-03-25  Bruno Haible  <bruno@clisp.org>
10454
10455         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
10456         detail which gettext release to use.
10457         Reported by Simon Josefsson.
10458
10459 2008-03-26  Jim Meyering  <meyering@redhat.com>
10460
10461         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
10462         * modules/gnumakefile (clean-GNUmakefile): Also, use
10463         test ... && ... || : syntax rather than if-then ... fi.
10464
10465         gnumakefile: Don't double-quote-expand $(VPATH) value.
10466         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
10467
10468 2008-03-24  Eric Blake  <ebb9@byu.net>
10469
10470         Alter GNUmakefile to install into top directory.
10471         * modules/maintainer-makefile: Split, and add dependency...
10472         * modules/gnumakefile: to this new module.
10473         * build-aux/GNUmakefile: Move...
10474         * top/GNUmakefile: ...here.
10475         * build-aux/maint.mk: Move...
10476         * top/maint.mk: ...here.
10477         * MODULES.html.sh (Support for maintaining...): Document new
10478         module.
10479
10480 2008-03-23  Bruno Haible  <bruno@clisp.org>
10481
10482         * gnulib-tool: New options --vc-files, --no-vc-files.
10483         (func_usage): Document them.
10484         (vc_files): New variable.
10485         (func_import): Consider vc_files.
10486         (func_create_testdir): Set vc_files to empty.
10487         Suggested by Jim Meyering and Karl Berry.
10488
10489 2008-03-23  Bruno Haible  <bruno@clisp.org>
10490
10491         Fix regex compilation error on HP-UX 11.
10492         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
10493         * modules/regex (Files): Add m4/mbstate_t.m4.
10494         Reported by Ton Voon <ton.voon@altinity.com>.
10495
10496 2008-03-23  Bruno Haible  <bruno@clisp.org>
10497
10498         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
10499
10500 2008-03-23  Eric Blake  <ebb9@byu.net>
10501             Bruno Haible  <bruno@clisp.org>
10502
10503         Install files from top/ in the destination directory.
10504         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
10505         augmentation also for the files from top/.
10506         (func_import, func_create_testdir): Rewrite file names:
10507         top/filename -> filename.
10508
10509 2008-03-23  Bruno Haible  <bruno@clisp.org>
10510
10511         Tweak "gnulib --version" output.
10512         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
10513
10514 2008-03-23  Bruno Haible  <bruno@clisp.org>
10515
10516         Tweak "gnulib --version" output.
10517         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
10518         rather than contents of ChangeLog, when possible.
10519
10520 2008-03-21  Eric Blake  <ebb9@byu.net>
10521
10522         More --version tweaks.
10523         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
10524         date of last ChangeLog entry.
10525
10526 2008-03-21  Jim Meyering  <meyering@redhat.com>
10527
10528         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
10529
10530 2008-03-20  Eric Blake  <ebb9@byu.net>
10531
10532         VPATH fix.
10533         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
10534
10535 2008-03-20  Simon Josefsson  <simon@josefsson.org>
10536
10537         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
10538         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
10539
10540 2008-03-20  Eric Blake  <ebb9@byu.net>
10541
10542         Sync GNUmakefile with coreutils.
10543         * build-aux/GNUmakefile (have-Makefile): Rename...
10544         (_have-Makefile): ...to this, for namespace consideration.
10545         (GNUmakefile.cfg): Include, if present.
10546         (_autoreconf): Define a default.
10547         (_is-dist-target): New rule for rebuilds to pick up intra-release
10548         version.
10549         (maint-cfg.mk): Rename...
10550         (cfg.mk): ...to this.
10551
10552 2008-03-18  Jim Meyering  <meyering@redhat.com>
10553
10554         New script and module: mktempd
10555         * MODULES.html.sh (maint+release support): Add mktempd.
10556         * build-aux/mktempd: New file.
10557         * modules/mktempd: New file.
10558
10559 2008-03-15  Jim Meyering  <meyering@redhat.com>
10560
10561         Undo last change.
10562         * lib/sha1.c, lib/md5.c: 63 != ~63.
10563         Reported by Andreas Schwab.
10564
10565         sha1.c, md5.c: Hoist a redundant expression.
10566         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
10567         "ctx->buflen" only once, before calling *_process_block.
10568         * lib/md5.c (md5_process_bytes): Likewise.
10569
10570 2008-03-14  Eric Blake  <ebb9@byu.net>
10571
10572         Bump copyright year in files generated by gnulib-tool.
10573         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
10574         gnulib-tool, rather than hard-coding it.
10575
10576         Fix 'gnulib-tool --version' output to work with git.
10577         * gnulib-tool (func_gnulib_dir): New function, extracted from...
10578         (startup): ...here.
10579         (func_version): Use it to invoke git-version-gen, rather than
10580         relying on CVS keyword expansion.  Modernize wording.
10581         (cvsdatestamp, last_checkin_date, version): Kill unused
10582         variables.
10583
10584 2008-03-12  Jim Meyering  <meyering@redhat.com>
10585
10586         Recognize optional cast of the argument to free.
10587         * build-aux/useless-if-before-free: Update regexps.
10588
10589         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
10590
10591 2008-03-11  Bruno Haible  <bruno@clisp.org>
10592
10593         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
10594         by a single package.
10595         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
10596         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
10597         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
10598         Reported by Sam Steingold <sds@gnu.org>.
10599
10600 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
10601
10602         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
10603         repositories.
10604
10605 2008-03-11  Bruno Haible  <bruno@clisp.org>
10606
10607         Avoid conflicts between local macro definitions.
10608         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
10609         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
10610
10611 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
10612             Bruno Haible  <bruno@clisp.org>
10613
10614         Make va_copy work with some version of xlc on AIX 5.1.
10615         * lib/stdarg.in.h: New file.
10616         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
10617         On AIX, use a <stdarg.h> file substitute.
10618         * modules/stdarg (Files): Add lib/stdarg.in.h.
10619         (Depends-on): Add include_next.
10620         (Makefile.am): Build a stdarg.h substitute if requested.
10621         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
10622
10623 2008-03-10  Bruno Haible  <bruno@clisp.org>
10624
10625         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
10626         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
10627         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
10628
10629 2008-03-10  Bruno Haible  <bruno@clisp.org>
10630
10631         * modules/stdlib (Depends-on): Add include_next, remove
10632         absolute-header.
10633
10634 2008-03-09  Bruno Haible  <bruno@clisp.org>
10635
10636         * lib/freadahead.h (freadahead): Document more precisely.
10637         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
10638         the sum of both buffer sizes.
10639         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
10640         * NEWS: Document the change.
10641
10642 2008-03-09  Bruno Haible  <bruno@clisp.org>
10643
10644         Extend freadptr to return also the buffer size.
10645         * lib/freadptr.h (freadptr): Add sizep argument.
10646         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
10647         (freadptr): Add sizep argument. Determine buffer size like freadahead
10648         does.
10649         * tests/test-freadptr.c: Don't include freadahead.h.
10650         (main): Adapt for new calling convention of freadptr.
10651         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
10652         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
10653         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
10654         tests/test-freadptr2.sh.
10655         (Depends): Remove freadahead.
10656         (TESTS): Add test-freadptr2.sh.
10657         (check_PROGRAMS): Add test-freadptr2.
10658
10659 2008-03-09  Bruno Haible  <bruno@clisp.org>
10660
10661         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
10662         Report and solution by Simon Josefsson.
10663
10664 2008-03-06  Bruno Haible  <bruno@clisp.org>
10665
10666         Make fflush after ungetc work on BSD platforms.
10667         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
10668         * tests/test-fflush2.c: New file.
10669         * tests/test-fflush2.sh: New file.
10670         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
10671         tests/test-fflush2.c.
10672         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
10673         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
10674
10675 2008-03-06  Eric Blake  <ebb9@byu.net>
10676
10677         Likewise for ftello.
10678         * modules/ftello (Dependencies): Add extensions.
10679         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
10680
10681 2008-03-06  Bruno Haible  <bruno@clisp.org>
10682
10683         * modules/fseeko (Dependencies): Add extensions.
10684         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
10685         Needed on glibc systems.
10686
10687 2008-03-06  Bruno Haible  <bruno@clisp.org>
10688
10689         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
10690         email address.
10691         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
10692
10693 2008-03-06  Bruno Haible  <bruno@clisp.org>
10694
10695         * users.txt: Add libgnupdf.
10696
10697 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
10698
10699         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
10700         (Header File Substitutes, Function Substitutes,
10701         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
10702         (Build robot for gnulib): Fix typo.
10703
10704 2008-03-06  Bruno Haible  <bruno@clisp.org>
10705
10706         * doc/gnulib-tool.texi (VCS Issues): Small updates.
10707         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
10708
10709 2008-03-06  Bruno Haible  <bruno@clisp.org>
10710
10711         * doc/func.texi: New file, extracted from doc/gnulib.texi.
10712         * doc/gnulib.texi: Include it.
10713
10714 2008-03-06  Simon Josefsson  <simon@josefsson.org>
10715
10716         * modules/func (License): Change license to unlimited; there was
10717         no LGPL parts in the module anyway.
10718
10719 2008-03-06  Simon Josefsson  <simon@josefsson.org>
10720
10721         * modules/__func__: Renamed to modules/func.
10722         * modules/__func__-tests: Renamed to modules/func-tests.
10723         * tests/test-__func__.c: Renamed to tests/test-func.c.
10724         * m4/__func__.m4: Renamed to m4/func.m4.
10725         * doc/gnulib.texi (__func__): Section renamed to func.
10726         Suggested by Eric Blake <ebb9@byu.net>.
10727
10728 2008-03-06  Simon Josefsson  <simon@josefsson.org>
10729
10730         * doc/gnulib.texi (__func__): Use C99 terminology when talking
10731         about __func__.  Make example self-contained.  Suggested by Eric
10732         Blake <ebb9@byu.net>.
10733
10734         * tests/test-__func__.c (main): Avoid extraneous () around __func.
10735         Suggested by Eric Blake <ebb9@byu.net>.
10736
10737 2008-03-06  Simon Josefsson  <simon@josefsson.org>
10738
10739         * modules/__func__: New file.
10740         * modules/__func__-tests: New file.
10741         * tests/test-__func__.c: New file.
10742         * m4/__func__.m4: New file.
10743         * doc/gnulib.texi (__func__): Document __func__ module.
10744
10745 2008-03-05  Simon Josefsson  <simon@josefsson.org>
10746
10747         * modules/byteswap (License): Re-license as LGPLv2+.
10748
10749 2008-03-05  Simon Josefsson  <simon@josefsson.org>
10750
10751         * doc/Makefile: Add pdf target.
10752
10753 2008-03-05  Simon Josefsson  <simon@josefsson.org>
10754
10755         * modules/inline (License): Use 'unlimited', since there are only
10756         *.m4 files in this module.
10757
10758 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
10759             Bruno Haible  <bruno@clisp.org>
10760
10761         Add support for HP C 7.1 on OpenVMS 8.3.
10762         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
10763
10764 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
10765
10766         Update VMS specifics.
10767         * lib/getopt.c [VMS]: Remove include of unixlib.h.
10768
10769 2008-03-02  Jim Meyering  <meyering@redhat.com>
10770
10771         Remove the last dependency on the "free" module.
10772         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
10773         Reported by Bob Proulx.
10774
10775         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
10776
10777         Remove useless "if" tests before free.  Deprecate "free" module.
10778         * doc/posix-functions/free.texi: Mention that this
10779         module is no longer useful.
10780         * modules/free (Notice): Say this module is obsolete.
10781         * modules/readutmp (Depends-on): Remove free.
10782         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
10783         * lib/putenv.c (putenv): Likewise.
10784         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
10785         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
10786         * tests/test-c-strcasestr.c (main): Likewise.
10787         * tests/test-c-strstr.c (main): Likewise.
10788         * tests/test-mbscasestr1.c (main): Likewise.
10789         * tests/test-mbscasestr2.c (main): Likewise.
10790         * tests/test-mbsstr1.c (main): Likewise.
10791         * tests/test-mbsstr2.c (main): Likewise.
10792         * tests/test-memmem.c (main): Likewise.
10793         * tests/test-strcasestr.c (main): Likewise.
10794         * tests/test-striconv.c (main): Likewise.
10795         * tests/test-striconveh.c (main): Likewise.
10796         * tests/test-striconveha.c (main): Likewise.
10797         * tests/test-strstr.c (main): Likewise.
10798
10799         * build-aux/git-version-gen: Adjust a comment and the Usage string.
10800
10801         bootstrap: sync from coreutils again
10802         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
10803
10804 2008-03-01  Jim Meyering  <meyering@redhat.com>
10805
10806         bootstrap: sync from coreutils
10807         * build-aux/bootstrap (update_po_files): Copy a .po file into place
10808         also when the target doesn't exist.
10809
10810 2008-03-01  Eric Blake  <ebb9@byu.net>
10811
10812         Fix bugs in last patch.
10813         * lib/memchr2.c (memchr2): Fix typo.
10814         * tests/test-memchr2.c: Test previous bug, and don't use GNU
10815         extension.
10816         Reported by Bruce Korb.
10817
10818         New module 'memchr2'.
10819         * modules/memchr2: New file.
10820         * modules/memchr2-tests: Likewise.
10821         * lib/memchr2.h: Likewise.
10822         * lib/memchr2.c: Likewise, based on memchr.c.
10823         * tests/test-memchr2.c: New test.
10824         * MODULES.html.sh (String handling): Add memchr2.
10825
10826 2008-02-29  Bruno Haible  <bruno@clisp.org>
10827
10828         * modules/freadseek-tests: New file.
10829         * tests/test-freadseek.sh: New file.
10830         * tests/test-freadseek.c: New file.
10831
10832         New module 'freadseek'.
10833         * modules/freadseek: New file.
10834         * lib/freadseek.h: New file.
10835         * lib/freadseek.c: New file.
10836         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
10837
10838 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
10839
10840         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
10841         wydawca.
10842
10843         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
10844         program_invocation_name and program_invocation_short_name are
10845         present.
10846
10847 2008-02-28  Bruno Haible  <bruno@clisp.org>
10848
10849         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
10850         * tests/test-freadptr.sh: Also test non-seekable stdin.
10851
10852 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
10853
10854         * build-aux/bootstrap (source_base, m4_base)
10855         (doc_base, tests_base): New variables.
10856         (gnulib_tool_options): Do not hardcode base directories, use
10857         the above variables instead.
10858
10859 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
10860
10861         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
10862
10863 2008-02-28  Bruno Haible  <bruno@clisp.org>
10864
10865         * modules/freadptr-tests: New file.
10866         * tests/test-freadptr.sh: New file.
10867         * tests/test-freadptr.c: New file.
10868
10869         New module 'freadptr'.
10870         * modules/freadptr: New file.
10871         * lib/freadptr.h: New file.
10872         * lib/freadptr.c: New file.
10873         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
10874
10875 2008-02-26  Karl Berry  <karl@freefriends.org>
10876
10877         Sync from Libtool:
10878         * libltdl/argz.c (argz_add, argz_count): New functions.
10879         * libltdl/argz.in.h: Declare them.
10880         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
10881
10882 2008-02-22  Bruno Haible  <bruno@clisp.org>
10883
10884         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
10885         is a pointer type.  Needed for HP-UX 10.
10886         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
10887         * doc/posix-functions/gmtime_r.texi: Likewise.
10888         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
10889
10890 2008-02-24  Bruno Haible  <bruno@clisp.org>
10891
10892         * modules/environ-tests: New file.
10893         * tests/test-environ.c: New file.
10894
10895         New module 'environ'.
10896         * modules/environ: New file.
10897         * lib/unistd.in.h (environ): New declaration.
10898         * m4/environ.m4: New file.
10899         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
10900         after use.
10901         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
10902         HAVE_DECL_ENVIRON.
10903         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
10904         HAVE_DECL_ENVIRON.
10905         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
10906         wrong claim that 'environ' is missing on some systems.
10907         * modules/execute (Depends-on): Add environ.
10908         * lib/execute.c (environ): Remove fallback declaration.
10909         * modules/pipe (Depends-on): Add environ.
10910         * lib/pipe.c (environ): Remove fallback declaration.
10911         * modules/setenv (Depends-on): Add environ.
10912         * lib/setenv.c (environ): Remove fallback declaration.
10913         * modules/unsetenv (Depends-on): Add environ.
10914         * lib/unsetenv.c (environ): Remove fallback declaration.
10915         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
10916         m4/environ.m4.
10917         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
10918         (gl_PREREQ_UNSETENV): Likewise.
10919
10920 2008-02-24  Bruno Haible  <bruno@clisp.org>
10921
10922         * doc/posix-functions/environ.texi: Document the MacOS X problem.
10923
10924 2008-02-20  Bob Proulx  <bob@proulx.com>
10925
10926         Enable use of older two part flavor 'git describe'.
10927         * build-aux/git-version-gen: If using the older two part flavor of
10928         git version then recreate the third part now present in the
10929         newer three part flavor of git describe.
10930
10931 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
10932
10933         * lib/fts.c (fts_build): Typo correction to comment.
10934
10935 2008-02-17  Bruno Haible  <bruno@clisp.org>
10936
10937         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
10938         generating no-op conflicts.
10939
10940 2008-02-17  Bruno Haible  <bruno@clisp.org>
10941
10942         Speed up by 10%.
10943         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
10944         result_entries, rather than an index-based loop.
10945
10946 2008-02-17  Bruno Haible  <bruno@clisp.org>
10947
10948         Speed up by 25%.
10949         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
10950         'hashcode_cached'.
10951         (entry_create): New function.
10952         (entry_hashcode): Use the cached hashcode if possible.
10953         (read_changelog_file, try_split_merged_entry): Use entry_create.
10954
10955 2008-02-17  Bruno Haible  <bruno@clisp.org>
10956
10957         Speed up from O(n^2) to O(n) for long ChangeLog files.
10958         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
10959         (read_changelog_file): Change implementation of entries_reversed list
10960         to rbtreehash.
10961         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
10962
10963 2008-02-17  Bruno Haible  <bruno@clisp.org>
10964
10965         New option --split-merged-entry.
10966         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
10967         (find_paragraph_end, try_split_merged_entry): New functions.
10968         (long_options): Add option --split-merged-entry.
10969         (usage): Document option --split-merged-entry.
10970         (main): Implement option --split-merged-entry.
10971         Reported by Eric Blake.
10972
10973 2008-02-17  Bruno Haible  <bruno@clisp.org>
10974
10975         * lib/git-merge-changelog.c: Include c-strstr.h.
10976         (main): Support the "git pull --rebase" situation.
10977         * modules/git-merge-changelog (Depends-on): Add c-strstr.
10978         Reported by Eric Blake.
10979
10980 2008-02-16  Eric Blake  <ebb9@byu.net>
10981
10982         Avoid doubling \ in common case of "c-maybe" quoting style.
10983         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
10984         eliding outer quotes.
10985         * lib/quotearg.h: Document this.
10986         * tests/test-quotearg.c (result_strings, inputs, results_g)
10987         (flag_results, locale_results): Test it by adding a new string to
10988         each test group.
10989         (compare_strings): Test new string.
10990
10991 2008-02-13  Eric Blake  <ebb9@byu.net>
10992
10993         Avoid trigraph quoting in default output.
10994         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
10995         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
10996         unless explicitly requested.
10997         * tests/test-quotearg.c (flag_results, main): Add additional tests.
10998
10999 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
11000
11001         Don't rely on signed integer overflowing to negative value.
11002         * lib/getugroups.c (getugroups): Include <limits.h>.
11003         Instead, compare against INT_MAX, and increment only if the test passes.
11004
11005 2008-02-13  Jim Meyering  <meyering@redhat.com>
11006         and Eric Blake  <ebb9@byu.net>
11007
11008         Avoid shadowing warning and compile errors on Linux.
11009         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
11010         forwarding macros on Linux.
11011         (dcgettext): Define a stub, for Linux.
11012         (results_g, main): Avoid warnings.
11013
11014 2008-02-12  Eric Blake  <ebb9@byu.net>
11015
11016         Silence warning in last patch.
11017         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
11018
11019         Quotearg part 4: add tests, fix c-maybe colon quoting.
11020         * lib/quotearg.h: Improve documentation.
11021         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
11022         escapes when adding outer quotes.  When quoting trigraphs, use
11023         valid C notation.  When quoting NUL, omit extra characters if next
11024         character is not digit.  Alter prototype.
11025         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
11026         callers.
11027         * modules/quotearg-tests: New module.
11028         * tests/test-quotearg.c: New test.
11029
11030 2008-02-07  Eric Blake  <ebb9@byu.net>
11031
11032         Quotearg part 3: add flag to control outer quote elision.
11033         * lib/quotearg.h (c_maybe_quoting_style): New style.
11034         (enum quoting_flags): Better documentation of flags.
11035         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
11036         c-maybe style.
11037         (quotearg_buffer_restyled): Handle new flag to elide outer
11038         quotes.
11039
11040         Quotearg part 2: add flag that can control NUL elision.
11041         * lib/quotearg.h (set_quoting_flags): New prototype.
11042         * lib/quotearg.c (struct quoting_options): Add flag field.
11043         (set_quoting_flags): New function.
11044         (quotearg_buffer_restyled): Add flags parameter.
11045         (quotearg_alloc_mem): Set the flag if length cannot be returned.
11046         (quotearg_n_options): Set the flag, since length cannot be
11047         returned.
11048         (quoting_options_from_style): Default flags correctly.
11049
11050         Quotearg part 1: more wrappers, restore quotearg_char state.
11051         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
11052         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
11053         (quotearg_colon_mem): New wrappers.
11054         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
11055         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
11056         functions.
11057         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
11058         (quotearg_colon_mem): New functions.
11059
11060 2008-02-11  Bruno Haible  <bruno@clisp.org>
11061
11062         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
11063         library in the current directory: it does not work with parallel make.
11064         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
11065
11066 2008-02-11  Bruno Haible  <bruno@clisp.org>
11067
11068         * .gitattributes: New file.
11069
11070 2008-02-11  Jim Meyering  <meyering@redhat.com>
11071
11072         useless-if-before-free: Fix reversed exit values.
11073         * build-aux/useless-if-before-free: Use correct values
11074         for EXIT_MATCH and EXIT_NO_MATCH.
11075
11076         * build-aux/useless-if-before-free: Close stdout carefully.
11077
11078 2008-02-10  Bruno Haible  <bruno@clisp.org>
11079
11080         New module 'git-merge-changelog'.
11081         * modules/git-merge-changelog: New file.
11082         * lib/git-merge-changelog.c: New file.
11083
11084 2008-02-10  Jim Meyering  <meyering@redhat.com>
11085
11086         useless-if-before-free: New option: --list (-l).
11087
11088         useless-if-before-free: Don't exit immediately upon open failure.
11089         * build-aux/useless-if-before-free: Exit 2 for errors.
11090         Upon failure to open a file, don't exit immediately.
11091         Rather, just warn and continue with any remaining files.
11092
11093 2008-02-10  Bruno Haible  <bruno@clisp.org>
11094
11095         New abstract list operation 'node_set_value'.
11096         * lib/gl_list.h (gl_list_node_set_value): New function.
11097         (struct gl_list_implementation): New field node_set_value.
11098         * lib/gl_list.c (gl_list_node_set_value): New function.
11099         * lib/gl_array_list.c (gl_array_node_set_value): New function.
11100         (gl_array_list_implementation): Update.
11101         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
11102         (gl_carray_list_implementation): Update.
11103         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
11104         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
11105         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
11106         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
11107         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
11108         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
11109         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
11110         Update.
11111         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
11112         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
11113         (gl_sublist_list_implementation): Update.
11114
11115 2008-02-10  Bruno Haible  <bruno@clisp.org>
11116
11117         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
11118         Needed when ELEMENT is #defined to 'some_type *'.
11119
11120 2008-02-10  Jim Meyering  <meyering@redhat.com>
11121
11122         New script and module: useless-if-before-free
11123         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
11124         * build-aux/useless-if-before-free: New file.
11125         * modules/useless-if-before-free: New file.
11126
11127         * build-aux/gitlog-to-changelog: Use committer date, not author date.
11128
11129         xstrtol_error: Fix typo.
11130         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
11131         s/exit_failure/exit_status/.
11132
11133 2008-02-09  Jim Meyering  <meyering@redhat.com>
11134
11135         New script and module: gitlog-to-changelog
11136         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
11137         * modules/gitlog-to-changelog: New file.
11138         * build-aux/gitlog-to-changelog: New file.
11139
11140 2008-02-08  Jim Meyering  <meyering@redhat.com>
11141
11142         Avoid two "parameter unused" warnings.
11143         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
11144         Mark "st" as used.
11145
11146         Use "git COMMAND", not "git-COMMAND".
11147         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
11148         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
11149         * build-aux/git-version-gen: Use "git status", not "git-status".
11150
11151 2008-02-07  Bruno Haible  <bruno@clisp.org>
11152
11153         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
11154         Avoids a crash on Windows Vista.
11155         Reported by Adam Strzelecki <ono@java.pl> via
11156         Simon Josefsson <simon@josefsson.org>.
11157
11158 2008-02-06  Bruno Haible  <bruno@clisp.org>
11159
11160         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
11161         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
11162         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
11163         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
11164         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
11165         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11166         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
11167         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
11168         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11169         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11170         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11171         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11172         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11173         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11174         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11175         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
11176         left-adjust flag.
11177         * tests/test-snprintf-posix.h (test_function): Likewise.
11178         * tests/test-sprintf-posix.h (test_function): Likewise.
11179         * tests/test-vasprintf-posix.c (test_function): Likewise.
11180         * doc/posix-functions/fprintf.texi: Update.
11181         * doc/posix-functions/printf.texi: Update.
11182         * doc/posix-functions/snprintf.texi: Update.
11183         * doc/posix-functions/sprintf.texi: Update.
11184         * doc/posix-functions/vfprintf.texi: Update.
11185         * doc/posix-functions/vprintf.texi: Update.
11186         * doc/posix-functions/vsnprintf.texi: Update.
11187         * doc/posix-functions/vsprintf.texi: Update.
11188         Reported by Peter Fales <psfales@alcatel-lucent.com>.
11189
11190 2008-02-06  Bruno Haible  <bruno@clisp.org>
11191
11192         Fix bug introduced on 2008-01-26.
11193         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
11194
11195 2008-02-06  Bruno Haible  <bruno@clisp.org>
11196
11197         Fix bug introduced on 2007-06-10.
11198         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
11199         !NEED_PRINTF_FLAG_ZERO.
11200
11201 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
11202
11203         getloadavg: use libperfstat on AIX5
11204         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
11205
11206 2008-02-03  Bruno Haible  <bruno@clisp.org>
11207
11208         * lib/diffseq.h: Add comments about required #includes.
11209         Reported by Michael Biggs <gnulib@doubleplum.net>.
11210
11211 2008-02-01  Bruno Haible  <bruno@clisp.org>
11212
11213         * users.txt: Add gnuit.
11214
11215 2008-01-31  Bruno Haible  <bruno@clisp.org>
11216
11217         * lib/md4.c (set_uint32): Mark as inline.
11218         * lib/md5.c (set_uint32): Likewise.
11219         * lib/sha1.c (set_uint32): Likewise.
11220         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
11221         * m4/md5.m4 (gl_MD5): Likewise.
11222         * m4/sha1.m4 (gl_SHA1): Likewise.
11223
11224 2008-01-31  Jim Meyering  <meyering@redhat.com>
11225
11226         Use "sizeof VAR", rather than a literal "4".
11227         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
11228         * lib/md4.c (md4_read_ctx): Likewise.
11229         * lib/sha1.c (sha1_read_ctx): Likewise.
11230
11231 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11232
11233         * tests/test-sha1.c: New file, based on test-md5.c.
11234
11235         * modules/crypto/sha1-tests: New file.
11236
11237 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11238
11239         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
11240
11241 2008-01-31  Jim Meyering  <meyering@redhat.com>
11242
11243         Prefer "sizeof v" over the equivalent "4".
11244         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
11245         * lib/md5.c (set_uint32): Likewise.
11246         * lib/sha1.c (set_uint32): Likewise.
11247
11248 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11249
11250         * lib/sha1.c (set_uint32): Mark function as static.
11251
11252 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11253
11254         md2: clarify comments to say that alignment is not required.
11255         * lib/md2.h: Remove warning about alignment in comment.
11256         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
11257         never been required.
11258
11259 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11260
11261         md4: adapt alignment constraint fix from sha1.
11262         * lib/md4.c (set_uint32): New function, from sha1.c
11263         (md4_read_ctx): Use it.
11264         (md4_finish_ctx): Doc fix.
11265         * lib/md4.h: Doc fix.
11266
11267 2008-01-31  Simon Josefsson  <simon@josefsson.org>
11268
11269         md5: adapt alignment constraint fix from sha1.
11270         * lib/md5.c (set_uint32): New function, from sha1.c
11271         (md5_read_ctx): Use it.
11272         (md5_finish_ctx): Doc fix.
11273         * lib/md5.h: Doc fix.
11274
11275 2008-01-30  Peter Palfrader  <weasel@debian.org>
11276
11277         sha1: remove the result buffer alignment constraint
11278         * lib/sha1.c (set_uint32): New function.
11279         (sha1_read_ctx): Rewrite to remove the result buffer alignment
11280         constraint.
11281         (sha1_finish_ctx): Remove comment warning about alignment constraint.
11282         * lib/sha1.h: Likewise.
11283
11284 2008-01-30  Andreas Schwab  <schwab@suse.de>
11285             Bruno Haible  <bruno@clisp.org>
11286
11287         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
11288         correct definition of LDBL_MIN_EXP.
11289
11290 2008-01-30  Karl Berry  <karl@gnu.org>
11291
11292         * config/srclist-update: try to preserve x bit on updates.
11293         * config/srclistvars.sh: update for karl.
11294
11295 2008-01-29  Jim Meyering  <meyering@redhat.com>
11296
11297         vasnprintf.c: Avoid warning about unused label
11298         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
11299         "overflow" label definition and associated code with the
11300         same cpp condition that guards the sole use of that label.
11301
11302 2008-01-26  Bruno Haible  <bruno@clisp.org>
11303
11304         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
11305         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
11306         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
11307         * lib/isnanl-nolibm.h (isnanl): Likewise.
11308         Reported by Paul Eggert <eggert@cs.ucla.edu>.
11309
11310 2008-01-26  Bruno Haible  <bruno@clisp.org>
11311
11312         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
11313         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
11314
11315 2008-01-26  Bruno Haible  <bruno@clisp.org>
11316
11317         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
11318         GCC >= 4.0 built-in.
11319         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
11320
11321 2008-01-26  Bruno Haible  <bruno@clisp.org>
11322
11323         Rename isnan, applicable to 'double' only, to isnand.
11324         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
11325         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
11326         (configure.ac): Update.
11327         (Include): Replace "isnan.h" with "isnand.h".
11328         * m4/isnand.m4: Renamed from m4/isnan.m4.
11329         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
11330         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
11331         instead of isnan.c.
11332         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
11333         instead of HAVE_ISNAN_IN_LIBC.
11334         (isnand): Renamed from isnan.
11335         * lib/isnand.c: New file.
11336         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
11337         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
11338         (Makefile.am): Update.
11339         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
11340         Include isnand.h instead of isnan.h.
11341         (main): Test isnand instead of isnan.
11342         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
11343         isnan-nolibm.
11344         * modules/frexp (Depends-on): Likewise.
11345         * modules/frexp-tests (Depends-on): Likewise.
11346         * modules/frexp-nolibm (Depends-on): Likewise.
11347         * modules/frexp-nolibm-tests (Depends-on): Likewise.
11348         * modules/isfinite (Depends-on): Likewise.
11349         * modules/round-tests (Depends-on): Likewise.
11350         * modules/signbit (Depends-on): Likewise.
11351         * modules/signbit-tests (Depends-on): Likewise.
11352         * modules/snprintf-posix (Depends-on): Likewise.
11353         * modules/sprintf-posix (Depends-on): Likewise.
11354         * modules/trunc-tests (Depends-on): Likewise.
11355         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11356         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11357         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11358         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11359         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11360         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11361         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11362         * modules/vasnprintf-posix (Depends-on): Likewise.
11363         * modules/vasprintf-posix (Depends-on): Likewise.
11364         * modules/vfprintf-posix (Depends-on): Likewise.
11365         * modules/vsnprintf-posix (Depends-on): Likewise.
11366         * modules/vsprintf-posix (Depends-on): Likewise.
11367         * lib/frexp.c: Include isnand.h instead of isnan.h.
11368         (ISNAN): Set to isnand instead of isnan.
11369         * lib/isfinite.c: Include isnand.h instead of isnan.h.
11370         (gl_isfinited): Use isnand instead of isnan.
11371         * lib/signbitd.c: Include isnand.h instead of isnan.h.
11372         (gl_signbitd): Use isnand instead of isnan.
11373         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
11374         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
11375         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
11376         (main): Use isnand instead of isnan.
11377         * tests/test-round1.c: Include isnand.h.
11378         (main): Use isnand instead of isnan.
11379         * tests/test-round2.c: Include isnand.h instead of isnan.h.
11380         (ISNAN): Set to isnand instead of isnan.
11381         * tests/test-trunc1.c: Include isnand.h.
11382         (main): Use isnand instead of isnan.
11383         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
11384         (equal): Use isnand instead of isnan.
11385         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
11386         isnand-nolibm.
11387         * NEWS: Mention the change.
11388
11389 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
11390             Bruno Haible  <bruno@clisp.org>
11391
11392         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
11393         the GCC builtins for signbits are present and set
11394         REPLACE_SIGNBIT_USING_GCC if so.
11395         * lib/math.in.h (signbit): Define using GCC builtins if
11396         REPLACE_SIGNBIT_USING_GCC is set.
11397         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
11398         REPLACE_SIGNBIT_USING_GCC.
11399         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
11400
11401 2008-01-25  Jim Meyering  <meyering@redhat.com>
11402
11403         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
11404         * lib/poll.c: Include <config.h>, not "config.h".
11405         * tests/test-getaddrinfo.c: Likewise.
11406
11407 2008-01-25  Simon Josefsson  <simon@josefsson.org>
11408
11409         * modules/sockets-tests: New file.
11410
11411 2008-01-24  Simon Josefsson  <simon@josefsson.org>
11412
11413         * modules/sockets: New module, can be used to call WSA_Startup and
11414         WSA_Cleanup when needed.
11415
11416         * lib/sockets.h, lib/sockets.c: New files.
11417
11418         * m4/sockets.m4: New file.
11419
11420         * tests/test-sockets.c: New file.
11421
11422 2008-01-19  Bruno Haible  <bruno@clisp.org>
11423
11424         * doc/posix-headers: Renamed from doc/headers.
11425         * doc/posix-functions: Renamed from doc/functions.
11426         * doc/gnulib.texi: Update.
11427
11428 2008-01-19  Bruno Haible  <bruno@clisp.org>
11429
11430         * doc/glibc-functions/strcasestr.texi: Include contents of
11431         doc/functions/strcasestr.texi, fixing the list of platforms.
11432         * doc/functions/strcasestr.texi: Remove file.
11433
11434 2008-01-19  Bruno Haible  <bruno@clisp.org>
11435
11436         * doc/glibc-functions/memmem.texi: Include contents of
11437         doc/functions/memmem.texi.
11438         * doc/functions/memmem.texi: Remove file.
11439
11440 2008-01-18  Bruno Haible  <bruno@clisp.org>
11441
11442         * doc/glibc-functions/*.texi: New files.
11443         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
11444         to use the new files.
11445
11446 2008-01-17  Bruno Haible  <bruno@clisp.org>
11447
11448         * tests/test-gethostname.c (main): Fix printf statement.
11449
11450 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11451
11452         * modules/gethostname-tests: New file.
11453
11454         * tests/test-gethostname.c: New file.
11455
11456 2008-01-17  Simon Josefsson  <simon@josefsson.org>
11457
11458         * lib/gethostname.c: Include string.h unconditionally, strncpy is
11459         used by the UNAME case.  Reported by Bruno Haible
11460         <bruno@clisp.org>.
11461
11462 2008-01-17  Eric Blake  <ebb9@byu.net>
11463
11464         Convert c-strcasestr to be more efficient.
11465         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
11466         (Depends-on): Add c-strcase, remove malloca, strnlen.
11467         * tests/test-c-strcasestr.c (main): Enhance test.
11468         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
11469
11470 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
11471
11472         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
11473         Use it in creating po/Makevars.
11474
11475 2008-01-15  Simon Josefsson  <simon@josefsson.org>
11476
11477         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
11478         Applications that requires it should initialize libgcrypt
11479         manually.
11480
11481 2008-01-16  Simon Josefsson  <simon@josefsson.org>
11482
11483         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
11484
11485 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
11486
11487         Fix problem with getdate on mingw32 reported by Simon Josefsson
11488         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
11489         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
11490         tzname", when deciding whether to declare tzname.
11491         * lib/strftime.c (tzname): Likewise.
11492
11493 2008-01-15  Bruno Haible  <bruno@clisp.org>
11494
11495         Work around a MacOS X 10.5 bug in frexpl().
11496         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
11497         * doc/functions/frexpl.texi: Document the bug.
11498         Reported by Elias Pipping <pipping@gentoo.org>.
11499
11500 2008-01-14  Eric Blake  <ebb9@byu.net>
11501
11502         Touch up previous patch.
11503         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
11504         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
11505
11506         Convert strcasestr module to use Two-Way algorithm.
11507         * modules/strcasestr-simple: New module, based on the old
11508         strcasestr, but with Two-Way rather than KMP.
11509         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
11510         * lib/string.in.h (rpl_strcasestr): Declare.
11511         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
11512         performance.
11513         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
11514         * modules/string (Makefile.am): Support strcasestr.
11515         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
11516         * modules/strcasestr-tests (Depends-on): Check for alarm.
11517         * tests/test-strcasestr.c: Augment test.
11518         * lib/str-two-way.h: Clean up stray macro.
11519         * NEWS: Document new module.
11520         * MODULES.html.sh (string handling): Likewise.
11521         * doc/functions/strcasestr.texi: New file.
11522         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
11523         here, since it is not a POSIX function.
11524
11525 2008-01-14  Colin Watson  <cjwatson@debian.org>
11526             Bruno Haible  <bruno@clisp.org>
11527
11528         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
11529         works fine; if not, set REPLACE_STRSIGNAL.
11530         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
11531         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11532         REPLACE_STRSIGNAL.
11533         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
11534         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
11535         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
11536
11537 2008-01-14  Bruno Haible  <bruno@clisp.org>
11538
11539         * modules/strsignal (Include): Change to <string.h>.
11540
11541 2008-01-14  Colin Watson  <cjwatson@debian.org>
11542
11543         * modules/argp (Notice): Add a notice recommending to change
11544         XGETTEXT_OPTIONS.
11545         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
11546
11547 2008-01-13  Colin Watson  <cjwatson@debian.org>
11548
11549         * modules/strsignal-tests: New file.
11550         * tests/test-strsignal.c: New file.
11551
11552         * lib/strsignal.c: New file, from glibc with modifications.
11553         * lib/siglist.h: New file, from glibc with modifications.
11554         * lib/string.in.h (strsignal): New declaration.
11555         * m4/strsignal.m4: New file.
11556         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11557         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
11558         * modules/strsignal: New file.
11559         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
11560         HAVE_DECL_STRSIGNAL.
11561
11562 2008-01-13  Bruno Haible  <bruno@clisp.org>
11563
11564         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
11565         locale encoding is not ASCII. Needed for OpenBSD 4.0.
11566         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
11567         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
11568
11569 2008-01-13  Bruno Haible  <bruno@clisp.org>
11570
11571         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
11572         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
11573         * lib/argp.h (__attribute__): Likewise.
11574         * lib/c-stack.c (__attribute__): Likewise.
11575         * lib/error.h (__attribute__): Likewise.
11576         * lib/fts.c (__attribute__): Likewise.
11577         * lib/openat.h (__attribute__): Likewise.
11578         * lib/stdio.in.h (__attribute__): Likewise.
11579         * lib/string.in.h (__attribute__): Likewise.
11580         * lib/utimens.c (__attribute__): Likewise.
11581         * lib/vasnprintf.h (__attribute__): Likewise.
11582         * lib/xalloc.h (__attribute__): Likewise.
11583         * lib/xprintf.h (__attribute__): Likewise.
11584         * lib/xstrtol.h (__attribute__): Likewise.
11585         * lib/xvasprintf.h (__attribute__): Likewise.
11586
11587 2008-01-12  Bruno Haible  <bruno@clisp.org>
11588
11589         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
11590         * doc/glibc-headers/a.out.texi: New file.
11591         * doc/glibc-headers/aliases.texi: New file.
11592         * doc/glibc-headers/alloca.texi: New file.
11593         * doc/glibc-headers/ar.texi: New file.
11594         * doc/glibc-headers/argp.texi: New file.
11595         * doc/glibc-headers/argz.texi: New file.
11596         * doc/glibc-headers/byteswap.texi: New file.
11597         * doc/glibc-headers/crypt.texi: New file.
11598         * doc/glibc-headers/endian.texi: New file.
11599         * doc/glibc-headers/envz.texi: New file.
11600         * doc/glibc-headers/err.texi: New file.
11601         * doc/glibc-headers/error.texi: New file.
11602         * doc/glibc-headers/execinfo.texi: New file.
11603         * doc/glibc-headers/fpu_control.texi: New file.
11604         * doc/glibc-headers/fstab.texi: New file.
11605         * doc/glibc-headers/fts.texi: New file.
11606         * doc/glibc-headers/getopt.texi: New file.
11607         * doc/glibc-headers/ieee754.texi: New file.
11608         * doc/glibc-headers/ifaddrs.texi: New file.
11609         * doc/glibc-headers/libintl.texi: New file.
11610         * doc/glibc-headers/mcheck.texi: New file.
11611         * doc/glibc-headers/mntent.texi: New file.
11612         * doc/glibc-headers/obstack.texi: New file.
11613         * doc/glibc-headers/paths.texi: New file.
11614         * doc/glibc-headers/printf.texi: New file.
11615         * doc/glibc-headers/pty.texi: New file.
11616         * doc/glibc-headers/resolv.texi: New file.
11617         * doc/glibc-headers/shadow.texi: New file.
11618         * doc/glibc-headers/sysexits.texi: New file.
11619         * doc/glibc-headers/ttyent.texi: New file.
11620
11621 2008-01-12  Jim Meyering  <meyering@redhat.com>
11622
11623         announce-gen: emit Gnulib's git-based version string.
11624         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
11625         New option --gnulib-version=V, where V is expected to be
11626         the output of running git describe in the gnulib directory.
11627         (get_tool_versions): Request feedback on xdelta.  I suspect it's
11628         not useful, and plan to stop publishing an xdelta file with each
11629         coreutils release.
11630
11631         * build-aux/announce-gen: Also check for lzma-compressed files.
11632
11633 2008-01-11  Bruno Haible  <bruno@clisp.org>
11634
11635         * tests/test-memmem.c (main): Increase maximum allowed time.
11636         * tests/test-strstr.c (main): Likewise.
11637
11638 2008-01-11  Bruno Haible  <bruno@clisp.org>
11639
11640         * doc/functions/memmem.texi: Add more precisions about platforms.
11641         * doc/functions/strstr.texi: Likewise.
11642
11643 2008-01-10  Eric Blake  <ebb9@byu.net>
11644
11645         * m4/strstr.m4: Delete cruft from copy-n-paste.
11646         Reported by Bruno Haible.
11647
11648 2008-01-10  Bruno Haible  <bruno@clisp.org>
11649
11650         Make c-strstr rely on strstr.
11651         * lib/c-strstr.c: Don't include str-kmp.h.
11652         (c_strstr): Define in terms of strstr.
11653         * modules/c-strstr (Files): Remove lib/str-kmp.h.
11654         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
11655
11656 2008-01-10  Bruno Haible  <bruno@clisp.org>
11657
11658         * doc/gnulib.texi (String Functions in C Locale): New section.
11659         * doc/c-ctype.texi: New file.
11660         * doc/c-strcase.texi: New file.
11661         * doc/c-strcaseeq.texi: New file.
11662         * doc/c-strcasestr.texi: New file.
11663         * doc/c-strstr.texi: New file.
11664         * doc/c-strtod.texi: New file.
11665         * doc/c-strtold.texi: New file.
11666
11667 2008-01-10  Eric Blake  <ebb9@byu.net>
11668
11669         * lib/relocatable.h: Fix a comment.
11670
11671 2008-01-10  Eric Blake  <ebb9@byu.net>
11672
11673         Share two-way algorithm.
11674         * lib/str-two-way.h: New file, merged from...
11675         * lib/memmem.c: ...here...
11676         * lib/strstr.c: ...and here.
11677         * modules/memmem (Files): Use it.
11678         * modules/strstr (Files): Likewise.
11679
11680         Avoid quadratic strstr implementations.
11681         * lib/strstr.c: New file.
11682         * m4/strstr.m4: Likewise.
11683         * modules/strstr: Likewise.
11684         * modules/strstr-tests: Likewise.
11685         * tests/test-strstr.c: Likewise.
11686         * lib/string.in.h (rpl_strstr): Declare.
11687         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
11688         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
11689         * modules/string (Makefile.am): Likewise.
11690         * MODULES.html.sh (string handling): Mention new module.
11691         * doc/functions/strstr.texi (strstr): Document the bug.
11692
11693 2008-01-10  Bruno Haible  <bruno@clisp.org>
11694
11695         * lib/relocatable.h (relocate): State whether result is freshly
11696         allocated or not.
11697         * lib/relocatable.c (relocate): Return a freshly allocated string
11698         instead of a pointer to a privately held string.
11699         Reported by Sylvain Beucler <beuc@gnu.org>.
11700
11701 2008-01-10  Colin Watson  <cjwatson@debian.org>
11702
11703         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
11704         s/S_ISNLK/S_ISLNK/.
11705
11706 2008-01-09  Bruno Haible  <bruno@clisp.org>
11707
11708         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
11709         and other files.
11710         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
11711         if it's only a guess.
11712         * modules/memmem: Simplify by depending on memmem-simple.
11713
11714 2008-01-09  Bruno Haible  <bruno@clisp.org>
11715
11716         Work around OpenBSD 4.0 tdelete() bug.
11717         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
11718         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
11719         macros and don't redefine the enum values.
11720         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
11721         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
11722         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
11723
11724 2008-01-09  Bruno Haible  <bruno@clisp.org>
11725
11726         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
11727         (main): Don't perform the tests if setlocale did not install a UTF-8
11728         locale. Needed on OpenBSD 4.0.
11729         * modules/wcwidth-tests (Depends-on): Add localcharset.
11730
11731 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11732
11733         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
11734         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
11735         * NEWS: announce this.
11736         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
11737
11738 2008-01-09  Simon Josefsson  <simon@josefsson.org>
11739         and Eric Blake  <ebb9@byu.net>
11740
11741         Add memmem-simple module.
11742         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
11743         (gl_FUNC_MEMMEM): Separate performance from presence checks.
11744         * modules/memmem-simple: New file.
11745         * modules/memmem (Description): Tweak.
11746         * MODULES.html.sh (string handling): Mention new module.
11747         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
11748         addressed by memmem-simple.
11749         * NEWS: Document the difference.
11750
11751 2008-01-09  Eric Blake  <ebb9@byu.net>
11752
11753         Give gcc some memmem optimization hints.
11754         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
11755         (strcasestr): Declare as pure.
11756         * modules/memmem (Maintainer): Claim my implementation.
11757
11758 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11759
11760         Support AIX 6.1 and higher.
11761         * build-aux/config.libpath: Likewise.
11762         * build-aux/config.rpath: Likewise.
11763
11764 2008-01-08  Jim Meyering  <meyering@redhat.com>
11765             Bruno Haible  <bruno@clisp.org>
11766
11767         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
11768         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
11769         Reported by Peter Fales in
11770         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
11771
11772 2008-01-08  Bruno Haible  <bruno@clisp.org>
11773
11774         * modules/unictype/category-of (Depends-on): Add
11775         unictype/category-none.
11776         * modules/unictype/category-and-tests (Depends-on): Add
11777         unictype/category-{L,N,Lu,Nd}.
11778         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
11779         * modules/unictype/category-or-tests (Depends-on): Add
11780         unictype/category-{L,N}.
11781         * modules/unictype/category-name-tests (Depends-on): Add
11782         unictype/category-{Z,Nl}.
11783         Reported by Simon Josefsson.
11784
11785 2008-01-08  Bruno Haible  <bruno@clisp.org>
11786
11787         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
11788         convention better.
11789         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
11790         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
11791         Reported by Peter Miller <millerp@canb.auug.org.au>.
11792
11793 2008-01-08  Eric Blake  <ebb9@byu.net>
11794
11795         Rewrite memmem to guarantee linear complexity without malloc.
11796         * lib/memmem.c (memmem): Use Two-Way rather than
11797         Knuth-Morris-Pratt, to allow O(1) space usage.
11798         (critical_factorization, two_way_short_needle)
11799         (two_way_long_needle): New functions.
11800         (knuth_morris_pratt): Delete.
11801         * modules/memmem (Depends-on): No longer need malloca or stdbool.
11802         Add stdint.
11803         * tests/test-memmem.c (main): Add tests for periodic needle and
11804         sublinear performance.
11805         * doc/functions/memmem.texi (memmem): Document other deficiencies
11806         in cygwin and older glibc.
11807
11808 2008-01-08  Bruno Haible  <bruno@clisp.org>
11809
11810         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
11811         augmentation.
11812
11813 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
11814
11815         Add a configure time option: --disable-acl.
11816         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
11817         AC_ARG_ENABLE(acl).
11818
11819 2008-01-06  Simon Josefsson  <simon@josefsson.org>
11820
11821         * tests/test-localename.c: Don't include obsolete "setenv.h".
11822
11823         * modules/localename-tests (Depends-on): Need unsetenv.
11824
11825 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11826
11827         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
11828
11829 2008-01-06  Colin Watson  <cjwatson@debian.org>
11830
11831         * users.txt: Add man-db.
11832
11833 2008-01-07  Bruno Haible  <bruno@clisp.org>
11834
11835         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
11836         previous section name.
11837
11838 2008-01-07  Bruno Haible  <bruno@clisp.org>
11839
11840         * lib/progname.c (set_program_name): Don't strip off a leading
11841         "lt-" prefix outside a .libs directory.
11842         Suggested by Paul Eggert.
11843
11844 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
11845             Bruno Haible  <bruno@clisp.org>
11846
11847         Improve memory cleanup in 'relocatable' module.
11848         * lib/relocatable.h (compute_curr_prefix): Change return type to
11849         'char *'.
11850         * lib/relocatable.c (compute_curr_prefix): Change return type to
11851         'char *'. Free curr_installdir after use.
11852         (relocate): Free curr_prefix_better after use.
11853         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
11854
11855 2008-01-01  Bruno Haible  <bruno@clisp.org>
11856
11857         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
11858         failure on older glibc systems.
11859         Reported by Peter Fales <psfales@alcatel-lucent.com>.
11860
11861 2008-01-05  Eric Blake  <ebb9@byu.net>
11862
11863         Avoid quadratic system memmem.
11864         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
11865         Reported by Ralf Wildenhues.
11866
11867         Fix memmem test for mingw.
11868         * modules/memmem-tests (configure.ac): Check for alarm.
11869         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
11870         it.
11871         * doc/functions/memmem.texi: New file.
11872         * doc/gnulib.texi (Function Substitutes): Add memmem.
11873         Reported by Bruno Haible.
11874
11875 2008-01-04  Bruno Haible  <bruno@clisp.org>
11876
11877         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
11878         Require gl_HEADER_STRINGS_H_DEFAULTS, not
11879         gl_HEADER_STRING_H_DEFAULTS.
11880
11881 2008-01-04  Eric Blake  <ebb9@byu.net>
11882
11883         Shorten duration of memmem test.
11884         * tests/test-memmem.c (main): Use alarm to declare failure if test
11885         is taking too long.
11886         Reported by Ralf Wildenhues.
11887
11888 2007-12-21  Simon Josefsson  <simon@josefsson.org>
11889
11890         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
11891         string, needed by strerror.
11892
11893 2008-01-03  Colin Watson  <cjwatson@debian.org>
11894             Bruno Haible  <bruno@clisp.org>
11895
11896         * doc/gnulib-tool.texi (Localization): New section.
11897
11898 2008-01-02  Bruno Haible  <bruno@clisp.org>
11899
11900         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
11901         variables to 'unsigned char *' type.
11902         Reported by Paul Eggert.
11903
11904 2008-01-02  Jim Meyering  <jim@meyering.net>
11905
11906         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
11907
11908 2007-12-31  Jim Meyering  <jim@meyering.net>
11909
11910         Avoid use of private FTS type name.
11911         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
11912
11913 2007-12-30  Karl Berry  <karl@gnu.org>
11914
11915         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
11916         work around defect in Texinfo and/or the standalone Info browser.
11917
11918 2007-12-30  Bruno Haible  <bruno@clisp.org>
11919
11920         Unify 5 copies of the KMP code.
11921         * lib/str-kmp.h: New file.
11922         * lib/c-strcasestr.c: Include str-kmp.h.
11923         (knuth_morris_pratt): Remove function.
11924         (c_strcasestr): Update.
11925         * lib/c-strstr.c: Include str-kmp.h.
11926         (knuth_morris_pratt): Remove function.
11927         (c_strcasestr): Update.
11928         * lib/mbscasestr.c: Include str-kmp.h.
11929         (knuth_morris_pratt_unibyte): Remove function.
11930         * lib/mbsstr.c: Include str-kmp.h.
11931         (knuth_morris_pratt_unibyte): Remove function.
11932         * lib/strcasestr.c: Include str-kmp.h.
11933         (knuth_morris_pratt): Remove function.
11934         (strcasestr): Update.
11935         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
11936         * modules/c-strstr (Files): Likewise.
11937         * modules/mbscasestr (Files): Likewise.
11938         * modules/mbsstr (Files): Likewise.
11939         * modules/strcasestr (Files): Likewise.
11940         Suggested by Paul Eggert.
11941
11942 2007-12-30  Bruno Haible  <bruno@clisp.org>
11943
11944         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
11945         defined.
11946
11947 2007-12-30  Bruno Haible  <bruno@clisp.org>
11948
11949         * lib/xmalloca.h: Include xalloc.h.
11950         (xnmalloca): New macro.
11951
11952 2007-12-30  Bruno Haible  <bruno@clisp.org>
11953
11954         * lib/malloca.h (nmalloca): New macro.
11955         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
11956         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
11957         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
11958         knuth_morris_pratt_multibyte): Likewise.
11959         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
11960         knuth_morris_pratt_multibyte): Likewise.
11961         * lib/memmem.c (knuth_morris_pratt): Likewise.
11962         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
11963
11964 2007-12-25  Bruno Haible  <bruno@clisp.org>
11965
11966         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
11967         * lib/glob.c: Don't include openat.h.
11968         (link_exists2_p): Add back the code that deals with the
11969         !GLOB_ALTDIRFUNC case.
11970         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
11971         let it do the filename concatenation.
11972         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
11973         * modules/glob (Depends-on): Remove openat.
11974
11975 2007-12-31  Bruno Haible  <bruno@clisp.org>
11976
11977         * modules/dirfd (License): Change to LGPLv2+.
11978         Approved by Jim Meyering.
11979
11980 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
11981
11982         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
11983         when multiplying M by sizeof (size_t).
11984
11985 2007-12-10  Martin Lambers  <marlam@marlam.de>
11986
11987         Override getpagesize on mingw.
11988         * lib/getpagesize.c: New file.
11989         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
11990         * modules/getpagesize (Files): Add lib/getpagesize.c.
11991         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
11992         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
11993         REPLACE_GETPAGESIZE.
11994         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
11995
11996 2007-12-25  Bruno Haible  <bruno@clisp.org>
11997
11998         * modules/localcharset (Notice): New field.
11999         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
12000         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
12001
12002 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
12003             Bruno Haible  <bruno@clisp.org>
12004
12005         Avoid using the syntax symbol() in formatted documentation.
12006         * MODULES.html.sh (func_module): When replacing symbol() with a
12007         hyperlink, remove the parentheses. Show an error if some remain.
12008         Recognize and render the '...' syntax.
12009         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
12010         Rework. Add paragraph about GCC's inlining.
12011         * doc/alloca.texi: Likewise.
12012         * doc/error.texi: Remove parentheses from symbol reference.
12013         * doc/gnulib-intro.texi: Likewise.
12014         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
12015         * modules/fnmatch (Description): Reword to say "the ... function".
12016         * modules/full-read (Description): Likewise.
12017         * modules/full-write (Description): Likewise.
12018         * modules/safe-read (Description): Likewise.
12019         * modules/safe-write (Description): Likewise.
12020         * modules/strchrnul (Description): Likewise.
12021         * modules/trim (Description): Likewise.
12022         * modules/error (Description): Remove parentheses from symbol
12023         references.
12024         * modules/verror (Description): Likewise.
12025         Reported by Karl Berry.
12026
12027 2007-12-25  Bruno Haible  <bruno@clisp.org>
12028
12029         Fixup after 2007-10-16 commit.
12030         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
12031
12032 2007-12-24  Bruno Haible  <bruno@clisp.org>
12033
12034         Make --enable-relocatable work with DESTDIR.
12035         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
12036         to compute installdir from destprog.
12037         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
12038         also set the RELOC_DESTDIR variable.
12039         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
12040
12041 2007-12-24  Bruno Haible  <bruno@clisp.org>
12042
12043         Fix link error due to xalloc_die().
12044         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
12045         of xreadlink.
12046         * lib/relocwrapper.c: Update comments.
12047         * build-aux/install-reloc: Remove xreadlink.c from file list.
12048         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
12049         xreadlink.c.
12050         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
12051
12052 2007-12-24  Bruno Haible  <bruno@clisp.org>
12053
12054         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
12055         * lib/setenv.h: Remove file.
12056         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
12057         lib/setenv.h.
12058         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
12059         (Depends-on): Add stdlib.
12060         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
12061         gl_FUNC_UNSETENV.
12062         (Include): Replace setenv.h with <stdlib.h>.
12063         * modules/unsetenv: New file.
12064         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
12065         * lib/unsetenv.c: Include <stdlib.h> first.
12066         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
12067         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
12068         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
12069         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
12070         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
12071         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12072         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
12073         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
12074         * doc/functions/unsetenv.texi: Update.
12075         * modules/xsetenv (Depends-on): Add unsetenv.
12076         * modules/getdate (Depends-on): Likewise.
12077         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
12078         * lib/xsetenv.c: Don't include setenv.h.
12079         * lib/getdate.y: Likewise.
12080         * lib/relocwrapper.c: Likewise.
12081         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
12082         (Depends-on): Add stdlib.
12083         * NEWS: Mention the changes.
12084         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
12085
12086 2007-12-23  Bruno Haible  <bruno@clisp.org>
12087
12088         * lib/memmem.c (memmem): Use lowercase variable names. Tab
12089         indentation.
12090
12091 2007-12-23  Bruno Haible  <bruno@clisp.org>
12092
12093         * lib/c-strcasestr.c: Add more comments.
12094         * lib/c-strstr.c: Likewise.
12095         * lib/mbscasestr.c: Likewise.
12096         * lib/mbsstr.c: Likewise.
12097         * lib/strcasestr.c: Likewise.
12098         * lib/memmem.c: Likewise.
12099
12100 2007-12-23  Bruno Haible  <bruno@clisp.org>
12101
12102         * tests/test-memmem.c: Include <string.h> first.
12103
12104 2007-12-22  Bruno Haible  <bruno@clisp.org>
12105
12106         * gnulib-tool (func_create_testdir): Change $auxdir while generating
12107         the contents of $testsbase.
12108         Reported by Ralf Wildenhues.
12109
12110 2007-12-22  Bruno Haible  <bruno@clisp.org>
12111
12112         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
12113         two variables local_ldadd_before, local_ldadd_last.
12114
12115 2007-12-20  Eric Blake  <ebb9@byu.net>
12116
12117         Work around circular library issue when cross-compiling.
12118         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
12119         that progname.o does not need to pull in rpl_memcmp.
12120
12121 2007-12-19  Eric Blake  <ebb9@byu.net>
12122
12123         Fix memmem to avoid O(n^2) worst-case complexity.
12124         * lib/memmem.c (knuth_morris_pratt): New function.
12125         (memmem): Use it if first few naive iterations fail.
12126         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
12127         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
12128         * modules/memchr (License): Likewise.
12129         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
12130         malloca.
12131         * tests/test-memmem.c: Rewrite, borrowing ideas from
12132         test-mbsstr1.c; the old version wouldn't even compile!
12133         * modules/memmem-tests: New file.
12134         * lib/string.in.h (rpl_memmem): Add declaration.
12135         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
12136         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
12137         REPLACE_MEMMEM.
12138
12139 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12140
12141         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
12142         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
12143         before any system include files, and undef after them all.  This
12144         should fix a problem on VMS reported by John E. Malmberg in
12145         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
12146
12147 2007-12-17  Eric Blake  <ebb9@byu.net>
12148
12149         Revert addition of verify, for BSD/OS.
12150         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
12151         can't handle large files, for the sake of obsolete platforms.
12152         * modules/fseeko (Depends-on): Remove verify.
12153         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
12154         * doc/functions/ftello.texi (ftello): Likewise.
12155         * doc/functions/fgetpos.texi (fgetpos): Likewise.
12156         Reported by Larry Jones.
12157
12158 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
12159
12160         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
12161         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
12162
12163 2007-12-17  Jim Meyering  <meyering@redhat.com>
12164
12165         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
12166         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
12167         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
12168         * modules/getcwd (Depends-on): Add openat.
12169         Reported by Petr Salinger.
12170
12171 2007-12-17  Bruno Haible  <bruno@clisp.org>
12172
12173         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
12174         avoid a segmentation fault of the configure test on x86_64 systems.
12175
12176 2007-12-15  Jim Meyering  <meyering@redhat.com>
12177
12178         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
12179
12180 2007-12-13  Eric Blake  <ebb9@byu.net>
12181
12182         Another fseek test.
12183         * tests/test-fseek.c (main): Also test ungetc handling.
12184         * tests/test-fseeko.c (main): Likewise.
12185         * modules/fseeko (Depends-on): Add verify.
12186         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
12187         large.
12188         Reported by Larry Jones.
12189
12190         Fix fseeko on mingw.
12191         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
12192         seek.
12193
12194         Beef up fseek tests.
12195         * tests/test-fseek.c (main): Also test eof handling.
12196         * tests/test-fseeko.c (main): Likewise.
12197         Reported by Larry Jones.
12198
12199 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
12200
12201         Fix fseeko on BSD-based platforms.
12202         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
12203         successful seek.
12204
12205 2007-12-12  Eric Blake  <ebb9@byu.net>
12206
12207         Allow circular dependency of separate libtests.a
12208         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
12209         when use_libtests.
12210
12211 2007-12-11  Eric Blake  <ebb9@byu.net>
12212
12213         Fix bug with -0.0L in previous patch.
12214         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
12215         * tests/test-isnan.c (main): Also test on zeroes.
12216         * tests/test-isnanf.c (main): Likewise.
12217         * tests/test-isnanl.h (main): Likewise.
12218
12219         Detect pseudo-denormals on x86 even when cross-compiling.
12220         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
12221         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
12222         invalid bit patterns that happen to satisfy ==.
12223
12224         Avoid link failures with separate libtests.a.
12225         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
12226         last, to satisfy circular dependencies.
12227
12228 2007-12-11  Eric Blake  <ebb9@byu.net>
12229         and Bruno Haible  <bruno@clisp.org>
12230
12231         Fix OpenBSD 4.0 <float.h> handling of long double.
12232         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
12233         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
12234         * doc/headers/float.texi (float.h): Document OpenBSD bug.
12235
12236 2007-12-11  Jim Meyering  <meyering@redhat.com>
12237
12238         * users.txt: Add libvirt.
12239
12240         Support versions of autoconf prior to 2.59c.
12241         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
12242         if it is not already defined.
12243
12244 2007-12-09  Bruno Haible  <bruno@clisp.org>
12245
12246         Let 'gnulib-tool --import' collect sources needed for the tests in
12247         tests/ rather than in lib/.
12248         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
12249         argument. If true, add rules to generate libtests.a, and put libtests.a
12250         into $(LDADD). Consider source files in subdirectories and set
12251         uses_subdirs.
12252         (func_emit_initmacro_start, func_emit_initmacro_end,
12253         func_emit_initmacro_done): Pass all arguments explicitly.
12254         (func_import): Determine two module lists main_modules,
12255         testsrelated_modules. Determine use_libtests. Determine two variables
12256         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
12257         instead of just sed_transform_lib_file. Determine two variables
12258         main_files and testsrelated_files. Compute 'files' as the union of
12259         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
12260         func_add_or_update. In the generated gnulib-comp.m4, collect the
12261         object files for tests/ in different variables than those for lib/.
12262         Substitute LIBTESTS_LIBDEPS.
12263         (func_create_testdir): Combine the uses_subdirs results from
12264         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
12265
12266 2007-12-09  Bruno Haible  <bruno@clisp.org>
12267
12268         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
12269         the build-aux directory.
12270
12271 2007-12-09  Bruno Haible  <bruno@clisp.org>
12272
12273         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
12274         introduced on 2006-09-09.
12275
12276 2007-12-07  Jim Meyering  <meyering@redhat.com>
12277
12278         Let these macros work also with autoconf-2.59.
12279         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
12280         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
12281         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
12282
12283 2007-12-06  Jim Meyering  <meyering@redhat.com>
12284
12285         Avoid a configure-time syntax error in gl_FUNC_ACL.
12286         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
12287         function in each branch, before testing the cache variable.
12288
12289 2007-12-04  Eric Blake  <ebb9@byu.net>
12290
12291         Make scripts executable.
12292         * build-aux/config.guess: Add execute permissions.
12293         * build-aux/config.sub: Likewise.
12294         * build-aux/gendocs.sh: Likewise.
12295
12296         Fix frexp on mingw.
12297         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
12298         cross-compiling.
12299         * doc/functions/frexp.texi (frexp): Document the bug.
12300
12301         Make cygwin fseeko check more reliable.
12302         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
12303         version numbers, rather than unrelated feature check.
12304         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
12305         * doc/functions/ftello.texi (ftello): Likewise.
12306         Reported by Bruno Haible.
12307
12308         * m4/strerror.m4: Bump version number.
12309
12310 2007-12-03  Bruno Haible  <bruno@clisp.org>
12311
12312         * doc/functions/mprotect.texi: Mention the mingw problem.
12313
12314 2007-12-03  Eric Blake  <ebb9@byu.net>
12315
12316         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
12317         REPLACE_STRERROR is initialized before this macro.
12318
12319 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
12320
12321         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
12322         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
12323         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
12324         put -lsec in even for programs other than 'ls'.  This fixes a problem
12325         for gettext reported by Bruno Haible in
12326         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
12327         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
12328         Add support for Solaris 10.  This isn't efficient, but should get the
12329         job done for now.
12330
12331 2007-12-03  James Youngman  <jay@gnu.org>
12332
12333         * doc/regexprops-generic.texi: change "an close-group" to "a
12334         close-group" and "illegal" to "not allowed".
12335
12336 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12337
12338         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
12339         pr_byname.h. Needed for the rare case when the maintainer has done
12340         "make maintainer-clean" in the source directory and then attempts a
12341         build outside the source directory.
12342         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
12343         scripts_byname.h.
12344
12345 2007-12-02  Martin Lambers <marlam@marlam.de>
12346             Bruno Haible  <bruno@clisp.org>
12347
12348         * lib/getpagesize.h: Remove file.
12349         * lib/unistd.in.h: Include declaration of getpagesize here.
12350         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
12351         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
12352         HAVE_SYS_PARAM_H.
12353         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
12354         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12355         * modules/getpagesize (Files): Remove lib/getpagesize.h.
12356         (Depends-on): Add unistd.
12357         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
12358         (Include): Use <unistd.h> instead of getpagesize.h.
12359         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
12360         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
12361         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
12362         gl_GETPAGESIZE invocation, already handled by module dependency.
12363         * lib/pagealign_alloc.c: Don't include getpagesize.h.
12364
12365 2007-12-02  Bruno Haible  <bruno@clisp.org>
12366
12367         * modules/strings-tests: New file.
12368         * tests/test-strings.c: New file.
12369
12370         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
12371         * lib/strings.in.h: New file.
12372         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
12373         * m4/strings_h.m4: New file.
12374         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
12375         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
12376         * modules/strings: New file.
12377         * modules/string (Makefile.am): Update.
12378         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
12379         Reported by Karl Berry.
12380
12381 2007-12-01  Eric Blake  <ebb9@byu.net>
12382
12383         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
12384         accomodate fix in cygwin 1.5.25.
12385
12386 2007-12-01  Jim Meyering  <meyering@redhat.com>
12387
12388         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
12389         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
12390         that would inhibit utf8-optimization of a regexp containing line-
12391         or buffer-anchors, e.g., `^', `$'.
12392
12393 2007-11-30  Bruno Haible  <bruno@clisp.org>
12394
12395         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
12396         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
12397         glthread_recursive_lock_init.
12398         * lib/lock.c (glthread_recursive_lock_init)
12399         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
12400         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
12401
12402 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
12403
12404         New function qset_acl, like set_acl but with syscall semantics.
12405         * lib/acl.h (qset_acl): New decl.
12406         * lib/acl.c (qset_acl): New function.
12407         (set_acl): Use new function.  Use more-consistent diagnostics.
12408
12409 2007-11-28  Jim Meyering  <meyering@redhat.com>
12410
12411         * modules/physmem (License): Change from GPL to LGPLv2+.
12412
12413 2007-11-26  Bruno Haible  <bruno@clisp.org>
12414
12415         * lib/vasnprintf.c (decode_long_double): Don't abort if the
12416         'long double' type has excess precision.
12417         Reported by Jim Meyering in
12418         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
12419
12420 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12421
12422         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
12423         Sync from <http://gnu.org/licenses>.
12424         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
12425         with license text from same location.
12426         * doc/maintain.texi, doc/standards.texi:  Sync from
12427         <http://savannah.gnu.org/projects/gnustandards>.
12428
12429 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
12430         and Jim Meyering  <meyering@redhat.com>
12431
12432         Adjust getdate' grammar to accept a slightly more regular language.
12433         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
12434         Before, the former was rejected.
12435         * lib/getdate.y (digits_to_date_time): New function, factored
12436         out of ...
12437         (number): ...here.  Just call digits_to_date_time.
12438         (hybrid): New non-terminal to handle an <unsigned number,
12439         signed relative offset> sequence consistently.
12440
12441 2007-11-18  Jim Meyering  <meyering@redhat.com>
12442
12443         Pull my changes from coreutils:
12444         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
12445         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
12446         use of $gnulib_tool_option_extras, so that it's separated from the
12447         preceding argument.
12448
12449         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
12450         * build-aux/bootstrap (cp_mark_as_generated): Create any required
12451         parent destination directories before copying a file into place.
12452
12453 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
12454
12455         bootstrap: work also with 4-argument variant of AC_INIT
12456         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
12457
12458 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
12459
12460         Port test-getaddrinfo to Solaris.
12461         Problem reported by Bruno Haible in
12462         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
12463         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
12464         explanation of setting 'hints'.
12465         Don't reject an implementation merely because it returns EAI_SERVICE.
12466         (EAI_SERVICE): Define to 0 if not defined.
12467
12468 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
12469
12470         The license of gnu-make and posix-shell is now "GPLed build tool".
12471         * modules/gnu-make (License): Likewise.
12472         * modules/posix-shell (License): Likewise.
12473
12474         New module posix-shell, for determining a POSIX shell
12475         or perhaps something that is close enough to a POSIX shell.
12476         * m4/posix-shell.m4: New file.
12477         * modules/posix-shell: New file.
12478
12479         * MODULES.html.sh: Mention new module.
12480
12481         New module gnu-make, for determining whether we're using GNU Make.
12482         * m4/gnu-make.m4: New file.
12483         * modules/gnu-make: New file.
12484         * MODULES.html.sh: Mention new module.
12485
12486 2007-11-14  Jim Meyering  <meyering@redhat.com>
12487
12488         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
12489         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
12490         use this macro to create a function _definition_.
12491         Remove useless "#undef ARGMATCH_DIE".
12492
12493 2007-11-14  Bruno Haible  <bruno@clisp.org>
12494
12495         * lib/config.charset: Update for OpenBSD 4.1.
12496         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
12497
12498 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
12499
12500         Document 64-bit #if problems in stdint.texi.
12501         * doc/headers/stdint.texi (stdint.h): Mention problems with
12502         64-bit-#if, and how to work around them.
12503
12504         Don't insist on 'long long int' support in the preprocessor.  It
12505         breaks too many things.  For example, PRIdMAX still uses a 'long
12506         long int' format with the latest Sun compiler, even though
12507         HAVE_LONG_LONG_INT isn't defined due to that compiler's
12508         preprocessor problem.  This causes the latest coreutils to dump
12509         core on Solaris 10 sparc with the Sun C compiler.
12510         Instead, fix the 2007-10-16 problem in a different way, by evaluating
12511         the troublesome expressions at configure-time, not at #if-time.
12512         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
12513         preprocessor.
12514         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
12515         compile-time C checks, done at 'configure'-time.
12516         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
12517         * modules/inttypes (Makefile): Substitute the new symbols that
12518         gl_INTTYPES_H now generates.
12519         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
12520
12521 2007-11-12  Bruno Haible  <bruno@clisp.org>
12522
12523         Tests for Unicode character classification functions.
12524
12525         * modules/unictype/bidicategory-byname-tests: New file.
12526         * modules/unictype/bidicategory-name-tests: New file.
12527         * modules/unictype/bidicategory-of-tests: New file.
12528         * modules/unictype/bidicategory-test-tests: New file.
12529         * modules/unictype/block-list-tests: New file.
12530         * modules/unictype/block-of-tests: New file.
12531         * modules/unictype/block-test-tests: New file.
12532         * modules/unictype/category-C-tests: New file.
12533         * modules/unictype/category-Cc-tests: New file.
12534         * modules/unictype/category-Cf-tests: New file.
12535         * modules/unictype/category-Cn-tests: New file.
12536         * modules/unictype/category-Co-tests: New file.
12537         * modules/unictype/category-Cs-tests: New file.
12538         * modules/unictype/category-L-tests: New file.
12539         * modules/unictype/category-Ll-tests: New file.
12540         * modules/unictype/category-Lm-tests: New file.
12541         * modules/unictype/category-Lo-tests: New file.
12542         * modules/unictype/category-Lt-tests: New file.
12543         * modules/unictype/category-Lu-tests: New file.
12544         * modules/unictype/category-M-tests: New file.
12545         * modules/unictype/category-Mc-tests: New file.
12546         * modules/unictype/category-Me-tests: New file.
12547         * modules/unictype/category-Mn-tests: New file.
12548         * modules/unictype/category-N-tests: New file.
12549         * modules/unictype/category-Nd-tests: New file.
12550         * modules/unictype/category-Nl-tests: New file.
12551         * modules/unictype/category-No-tests: New file.
12552         * modules/unictype/category-P-tests: New file.
12553         * modules/unictype/category-Pc-tests: New file.
12554         * modules/unictype/category-Pd-tests: New file.
12555         * modules/unictype/category-Pe-tests: New file.
12556         * modules/unictype/category-Pf-tests: New file.
12557         * modules/unictype/category-Pi-tests: New file.
12558         * modules/unictype/category-Po-tests: New file.
12559         * modules/unictype/category-Ps-tests: New file.
12560         * modules/unictype/category-S-tests: New file.
12561         * modules/unictype/category-Sc-tests: New file.
12562         * modules/unictype/category-Sk-tests: New file.
12563         * modules/unictype/category-Sm-tests: New file.
12564         * modules/unictype/category-So-tests: New file.
12565         * modules/unictype/category-Z-tests: New file.
12566         * modules/unictype/category-Zl-tests: New file.
12567         * modules/unictype/category-Zp-tests: New file.
12568         * modules/unictype/category-Zs-tests: New file.
12569         * modules/unictype/category-and-not-tests: New file.
12570         * modules/unictype/category-and-tests: New file.
12571         * modules/unictype/category-byname-tests: New file.
12572         * modules/unictype/category-name-tests: New file.
12573         * modules/unictype/category-none-tests: New file.
12574         * modules/unictype/category-of-tests: New file.
12575         * modules/unictype/category-or-tests: New file.
12576         * modules/unictype/category-test-withtable-tests: New file.
12577         * modules/unictype/combining-class-tests: New file.
12578         * modules/unictype/ctype-alnum-tests: New file.
12579         * modules/unictype/ctype-alpha-tests: New file.
12580         * modules/unictype/ctype-blank-tests: New file.
12581         * modules/unictype/ctype-cntrl-tests: New file.
12582         * modules/unictype/ctype-digit-tests: New file.
12583         * modules/unictype/ctype-graph-tests: New file.
12584         * modules/unictype/ctype-lower-tests: New file.
12585         * modules/unictype/ctype-print-tests: New file.
12586         * modules/unictype/ctype-punct-tests: New file.
12587         * modules/unictype/ctype-space-tests: New file.
12588         * modules/unictype/ctype-upper-tests: New file.
12589         * modules/unictype/ctype-xdigit-tests: New file.
12590         * modules/unictype/decimal-digit-tests: New file.
12591         * modules/unictype/digit-tests: New file.
12592         * modules/unictype/mirror-tests: New file.
12593         * modules/unictype/numeric-tests: New file.
12594         * modules/unictype/property-alphabetic-tests: New file.
12595         * modules/unictype/property-ascii-hex-digit-tests: New file.
12596         * modules/unictype/property-bidi-arabic-digit-tests: New file.
12597         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
12598         * modules/unictype/property-bidi-block-separator-tests: New file.
12599         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
12600         * modules/unictype/property-bidi-common-separator-tests: New file.
12601         * modules/unictype/property-bidi-control-tests: New file.
12602         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
12603         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
12604         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
12605         * modules/unictype/property-bidi-european-digit-tests: New file.
12606         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
12607         * modules/unictype/property-bidi-left-to-right-tests: New file.
12608         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
12609         * modules/unictype/property-bidi-other-neutral-tests: New file.
12610         * modules/unictype/property-bidi-pdf-tests: New file.
12611         * modules/unictype/property-bidi-segment-separator-tests: New file.
12612         * modules/unictype/property-bidi-whitespace-tests: New file.
12613         * modules/unictype/property-byname-tests: New file.
12614         * modules/unictype/property-combining-tests: New file.
12615         * modules/unictype/property-composite-tests: New file.
12616         * modules/unictype/property-currency-symbol-tests: New file.
12617         * modules/unictype/property-dash-tests: New file.
12618         * modules/unictype/property-decimal-digit-tests: New file.
12619         * modules/unictype/property-default-ignorable-code-point-tests: New file.
12620         * modules/unictype/property-deprecated-tests: New file.
12621         * modules/unictype/property-diacritic-tests: New file.
12622         * modules/unictype/property-extender-tests: New file.
12623         * modules/unictype/property-format-control-tests: New file.
12624         * modules/unictype/property-grapheme-base-tests: New file.
12625         * modules/unictype/property-grapheme-extend-tests: New file.
12626         * modules/unictype/property-grapheme-link-tests: New file.
12627         * modules/unictype/property-hex-digit-tests: New file.
12628         * modules/unictype/property-hyphen-tests: New file.
12629         * modules/unictype/property-id-continue-tests: New file.
12630         * modules/unictype/property-id-start-tests: New file.
12631         * modules/unictype/property-ideographic-tests: New file.
12632         * modules/unictype/property-ids-binary-operator-tests: New file.
12633         * modules/unictype/property-ids-trinary-operator-tests: New file.
12634         * modules/unictype/property-ignorable-control-tests: New file.
12635         * modules/unictype/property-iso-control-tests: New file.
12636         * modules/unictype/property-join-control-tests: New file.
12637         * modules/unictype/property-left-of-pair-tests: New file.
12638         * modules/unictype/property-line-separator-tests: New file.
12639         * modules/unictype/property-logical-order-exception-tests: New file.
12640         * modules/unictype/property-lowercase-tests: New file.
12641         * modules/unictype/property-math-tests: New file.
12642         * modules/unictype/property-non-break-tests: New file.
12643         * modules/unictype/property-not-a-character-tests: New file.
12644         * modules/unictype/property-numeric-tests: New file.
12645         * modules/unictype/property-other-alphabetic-tests: New file.
12646         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
12647         * modules/unictype/property-other-grapheme-extend-tests: New file.
12648         * modules/unictype/property-other-id-continue-tests: New file.
12649         * modules/unictype/property-other-id-start-tests: New file.
12650         * modules/unictype/property-other-lowercase-tests: New file.
12651         * modules/unictype/property-other-math-tests: New file.
12652         * modules/unictype/property-other-uppercase-tests: New file.
12653         * modules/unictype/property-paired-punctuation-tests: New file.
12654         * modules/unictype/property-paragraph-separator-tests: New file.
12655         * modules/unictype/property-pattern-syntax-tests: New file.
12656         * modules/unictype/property-pattern-white-space-tests: New file.
12657         * modules/unictype/property-private-use-tests: New file.
12658         * modules/unictype/property-punctuation-tests: New file.
12659         * modules/unictype/property-quotation-mark-tests: New file.
12660         * modules/unictype/property-radical-tests: New file.
12661         * modules/unictype/property-sentence-terminal-tests: New file.
12662         * modules/unictype/property-soft-dotted-tests: New file.
12663         * modules/unictype/property-space-tests: New file.
12664         * modules/unictype/property-terminal-punctuation-tests: New file.
12665         * modules/unictype/property-test-tests: New file.
12666         * modules/unictype/property-titlecase-tests: New file.
12667         * modules/unictype/property-unassigned-code-value-tests: New file.
12668         * modules/unictype/property-unified-ideograph-tests: New file.
12669         * modules/unictype/property-uppercase-tests: New file.
12670         * modules/unictype/property-variation-selector-tests: New file.
12671         * modules/unictype/property-white-space-tests: New file.
12672         * modules/unictype/property-xid-continue-tests: New file.
12673         * modules/unictype/property-xid-start-tests: New file.
12674         * modules/unictype/property-zero-width-tests: New file.
12675         * modules/unictype/scripts-tests: New file.
12676         * modules/unictype/syntax-c-ident-tests: New file.
12677         * modules/unictype/syntax-c-whitespace-tests: New file.
12678         * modules/unictype/syntax-java-ident-tests: New file.
12679         * modules/unictype/syntax-java-whitespace-tests: New file.
12680         * tests/unictype/test-bidi_byname.c: New file.
12681         * tests/unictype/test-bidi_name.c: New file.
12682         * tests/unictype/test-bidi_of.c: New file.
12683         * tests/unictype/test-bidi_test.c: New file.
12684         * tests/unictype/test-block_list.c: New file.
12685         * tests/unictype/test-block_of.c: New file.
12686         * tests/unictype/test-block_test.c: New file.
12687         * tests/unictype/test-categ_and.c: New file.
12688         * tests/unictype/test-categ_and_not.c: New file.
12689         * tests/unictype/test-categ_byname.c: New file.
12690         * tests/unictype/test-categ_name.c: New file.
12691         * tests/unictype/test-categ_none.c: New file.
12692         * tests/unictype/test-categ_of.c: New file.
12693         * tests/unictype/test-categ_or.c: New file.
12694         * tests/unictype/test-categ_test_withtable.c: New file.
12695         * tests/unictype/test-combining.c: New file.
12696         * tests/unictype/test-decdigit.c: New file.
12697         * tests/unictype/test-digit.c: New file.
12698         * tests/unictype/test-mirror.c: New file.
12699         * tests/unictype/test-numeric.c: New file.
12700         * tests/unictype/test-pr_byname.c: New file.
12701         * tests/unictype/test-pr_test.c: New file.
12702         * tests/unictype/test-predicate-part1.h: New file.
12703         * tests/unictype/test-predicate-part2.h: New file.
12704         * tests/unictype/test-scripts.c: New file.
12705         * tests/unictype/test-sy_c_ident.c: New file.
12706         * tests/unictype/test-sy_java_ident.c: New file.
12707
12708         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
12709         for Unicode 5.0.0.
12710         * tests/unictype/test-categ_Cc.c: Likewise.
12711         * tests/unictype/test-categ_Cf.c: Likewise.
12712         * tests/unictype/test-categ_Cn.c: Likewise.
12713         * tests/unictype/test-categ_Co.c: Likewise.
12714         * tests/unictype/test-categ_Cs.c: Likewise.
12715         * tests/unictype/test-categ_L.c: Likewise.
12716         * tests/unictype/test-categ_Ll.c: Likewise.
12717         * tests/unictype/test-categ_Lm.c: Likewise.
12718         * tests/unictype/test-categ_Lo.c: Likewise.
12719         * tests/unictype/test-categ_Lt.c: Likewise.
12720         * tests/unictype/test-categ_Lu.c: Likewise.
12721         * tests/unictype/test-categ_M.c: Likewise.
12722         * tests/unictype/test-categ_Mc.c: Likewise.
12723         * tests/unictype/test-categ_Me.c: Likewise.
12724         * tests/unictype/test-categ_Mn.c: Likewise.
12725         * tests/unictype/test-categ_N.c: Likewise.
12726         * tests/unictype/test-categ_Nd.c: Likewise.
12727         * tests/unictype/test-categ_Nl.c: Likewise.
12728         * tests/unictype/test-categ_No.c: Likewise.
12729         * tests/unictype/test-categ_P.c: Likewise.
12730         * tests/unictype/test-categ_Pc.c: Likewise.
12731         * tests/unictype/test-categ_Pd.c: Likewise.
12732         * tests/unictype/test-categ_Pe.c: Likewise.
12733         * tests/unictype/test-categ_Pf.c: Likewise.
12734         * tests/unictype/test-categ_Pi.c: Likewise.
12735         * tests/unictype/test-categ_Po.c: Likewise.
12736         * tests/unictype/test-categ_Ps.c: Likewise.
12737         * tests/unictype/test-categ_S.c: Likewise.
12738         * tests/unictype/test-categ_Sc.c: Likewise.
12739         * tests/unictype/test-categ_Sk.c: Likewise.
12740         * tests/unictype/test-categ_Sm.c: Likewise.
12741         * tests/unictype/test-categ_So.c: Likewise.
12742         * tests/unictype/test-categ_Z.c: Likewise.
12743         * tests/unictype/test-categ_Zl.c: Likewise.
12744         * tests/unictype/test-categ_Zp.c: Likewise.
12745         * tests/unictype/test-categ_Zs.c: Likewise.
12746         * tests/unictype/test-ctype_alnum.c: Likewise.
12747         * tests/unictype/test-ctype_alpha.c: Likewise.
12748         * tests/unictype/test-ctype_blank.c: Likewise.
12749         * tests/unictype/test-ctype_cntrl.c: Likewise.
12750         * tests/unictype/test-ctype_digit.c: Likewise.
12751         * tests/unictype/test-ctype_graph.c: Likewise.
12752         * tests/unictype/test-ctype_lower.c: Likewise.
12753         * tests/unictype/test-ctype_print.c: Likewise.
12754         * tests/unictype/test-ctype_punct.c: Likewise.
12755         * tests/unictype/test-ctype_space.c: Likewise.
12756         * tests/unictype/test-ctype_upper.c: Likewise.
12757         * tests/unictype/test-ctype_xdigit.c: Likewise.
12758         * tests/unictype/test-decdigit.h: Likewise.
12759         * tests/unictype/test-digit.h: Likewise.
12760         * tests/unictype/test-numeric.h: Likewise.
12761         * tests/unictype/test-pr_alphabetic.c: Likewise.
12762         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
12763         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
12764         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
12765         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
12766         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
12767         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
12768         * tests/unictype/test-pr_bidi_control.c: Likewise.
12769         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
12770         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
12771         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
12772         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
12773         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
12774         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
12775         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
12776         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
12777         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
12778         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
12779         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
12780         * tests/unictype/test-pr_combining.c: Likewise.
12781         * tests/unictype/test-pr_composite.c: Likewise.
12782         * tests/unictype/test-pr_currency_symbol.c: Likewise.
12783         * tests/unictype/test-pr_dash.c: Likewise.
12784         * tests/unictype/test-pr_decimal_digit.c: Likewise.
12785         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
12786         * tests/unictype/test-pr_deprecated.c: Likewise.
12787         * tests/unictype/test-pr_diacritic.c: Likewise.
12788         * tests/unictype/test-pr_extender.c: Likewise.
12789         * tests/unictype/test-pr_format_control.c: Likewise.
12790         * tests/unictype/test-pr_grapheme_base.c: Likewise.
12791         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
12792         * tests/unictype/test-pr_grapheme_link.c: Likewise.
12793         * tests/unictype/test-pr_hex_digit.c: Likewise.
12794         * tests/unictype/test-pr_hyphen.c: Likewise.
12795         * tests/unictype/test-pr_id_continue.c: Likewise.
12796         * tests/unictype/test-pr_id_start.c: Likewise.
12797         * tests/unictype/test-pr_ideographic.c: Likewise.
12798         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
12799         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
12800         * tests/unictype/test-pr_ignorable_control.c: Likewise.
12801         * tests/unictype/test-pr_iso_control.c: Likewise.
12802         * tests/unictype/test-pr_join_control.c: Likewise.
12803         * tests/unictype/test-pr_left_of_pair.c: Likewise.
12804         * tests/unictype/test-pr_line_separator.c: Likewise.
12805         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
12806         * tests/unictype/test-pr_lowercase.c: Likewise.
12807         * tests/unictype/test-pr_math.c: Likewise.
12808         * tests/unictype/test-pr_non_break.c: Likewise.
12809         * tests/unictype/test-pr_not_a_character.c: Likewise.
12810         * tests/unictype/test-pr_numeric.c: Likewise.
12811         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
12812         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
12813         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
12814         * tests/unictype/test-pr_other_id_continue.c: Likewise.
12815         * tests/unictype/test-pr_other_id_start.c: Likewise.
12816         * tests/unictype/test-pr_other_lowercase.c: Likewise.
12817         * tests/unictype/test-pr_other_math.c: Likewise.
12818         * tests/unictype/test-pr_other_uppercase.c: Likewise.
12819         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
12820         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
12821         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
12822         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
12823         * tests/unictype/test-pr_private_use.c: Likewise.
12824         * tests/unictype/test-pr_punctuation.c: Likewise.
12825         * tests/unictype/test-pr_quotation_mark.c: Likewise.
12826         * tests/unictype/test-pr_radical.c: Likewise.
12827         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
12828         * tests/unictype/test-pr_soft_dotted.c: Likewise.
12829         * tests/unictype/test-pr_space.c: Likewise.
12830         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
12831         * tests/unictype/test-pr_titlecase.c: Likewise.
12832         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
12833         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
12834         * tests/unictype/test-pr_uppercase.c: Likewise.
12835         * tests/unictype/test-pr_variation_selector.c: Likewise.
12836         * tests/unictype/test-pr_white_space.c: Likewise.
12837         * tests/unictype/test-pr_xid_continue.c: Likewise.
12838         * tests/unictype/test-pr_xid_start.c: Likewise.
12839         * tests/unictype/test-pr_zero_width.c: Likewise.
12840         * tests/unictype/test-sy_c_whitespace.c: Likewise.
12841         * tests/unictype/test-sy_java_whitespace.c: Likewise.
12842
12843 2007-11-12  Bruno Haible  <bruno@clisp.org>
12844
12845         Unicode character classification functions.
12846         * lib/unictype.h: New file.
12847         * modules/unictype/base: New file.
12848         * modules/unictype/category-L: New file.
12849         * modules/unictype/category-Lu: New file.
12850         * modules/unictype/category-Ll: New file.
12851         * modules/unictype/category-Lt: New file.
12852         * modules/unictype/category-Lm: New file.
12853         * modules/unictype/category-Lo: New file.
12854         * modules/unictype/category-M: New file.
12855         * modules/unictype/category-Mn: New file.
12856         * modules/unictype/category-Mc: New file.
12857         * modules/unictype/category-Me: New file.
12858         * modules/unictype/category-N: New file.
12859         * modules/unictype/category-Nd: New file.
12860         * modules/unictype/category-Nl: New file.
12861         * modules/unictype/category-No: New file.
12862         * modules/unictype/category-P: New file.
12863         * modules/unictype/category-Pc: New file.
12864         * modules/unictype/category-Pd: New file.
12865         * modules/unictype/category-Ps: New file.
12866         * modules/unictype/category-Pe: New file.
12867         * modules/unictype/category-Pi: New file.
12868         * modules/unictype/category-Pf: New file.
12869         * modules/unictype/category-Po: New file.
12870         * modules/unictype/category-S: New file.
12871         * modules/unictype/category-Sm: New file.
12872         * modules/unictype/category-Sc: New file.
12873         * modules/unictype/category-Sk: New file.
12874         * modules/unictype/category-So: New file.
12875         * modules/unictype/category-Z: New file.
12876         * modules/unictype/category-Zs: New file.
12877         * modules/unictype/category-Zl: New file.
12878         * modules/unictype/category-Zp: New file.
12879         * modules/unictype/category-C: New file.
12880         * modules/unictype/category-Cc: New file.
12881         * modules/unictype/category-Cf: New file.
12882         * modules/unictype/category-Cs: New file.
12883         * modules/unictype/category-Co: New file.
12884         * modules/unictype/category-Cn: New file.
12885         * modules/unictype/category-or: New file.
12886         * modules/unictype/category-of: New file.
12887         * modules/unictype/category-test: New file.
12888         * modules/unictype/category-test-withtable: New file.
12889         * modules/unictype/category-byname: New file.
12890         * modules/unictype/category-none: New file.
12891         * modules/unictype/category-and: New file.
12892         * modules/unictype/category-and-not: New file.
12893         * modules/unictype/category-name: New file.
12894         * modules/unictype/combining-class: New file.
12895         * modules/unictype/category-all: New file.
12896         * modules/unictype/bidicategory-all: New file.
12897         * modules/unictype/bidicategory-byname: New file.
12898         * modules/unictype/bidicategory-name: New file.
12899         * modules/unictype/bidicategory-of: New file.
12900         * modules/unictype/bidicategory-test: New file.
12901         * modules/unictype/decimal-digit: New file.
12902         * modules/unictype/digit: New file.
12903         * modules/unictype/numeric: New file.
12904         * modules/unictype/mirror: New file.
12905         * modules/unictype/property-white-space: New file.
12906         * modules/unictype/property-alphabetic: New file.
12907         * modules/unictype/property-other-alphabetic: New file.
12908         * modules/unictype/property-not-a-character: New file.
12909         * modules/unictype/property-default-ignorable-code-point: New file.
12910         * modules/unictype/property-other-default-ignorable-code-point: New
12911         file.
12912         * modules/unictype/property-deprecated: New file.
12913         * modules/unictype/property-logical-order-exception: New file.
12914         * modules/unictype/property-variation-selector: New file.
12915         * modules/unictype/property-private-use: New file.
12916         * modules/unictype/property-unassigned-code-value: New file.
12917         * modules/unictype/property-uppercase: New file.
12918         * modules/unictype/property-other-uppercase: New file.
12919         * modules/unictype/property-lowercase: New file.
12920         * modules/unictype/property-other-lowercase: New file.
12921         * modules/unictype/property-titlecase: New file.
12922         * modules/unictype/property-soft-dotted: New file.
12923         * modules/unictype/property-id-start: New file.
12924         * modules/unictype/property-other-id-start: New file.
12925         * modules/unictype/property-id-continue: New file.
12926         * modules/unictype/property-other-id-continue: New file.
12927         * modules/unictype/property-xid-start: New file.
12928         * modules/unictype/property-xid-continue: New file.
12929         * modules/unictype/property-pattern-white-space: New file.
12930         * modules/unictype/property-pattern-syntax: New file.
12931         * modules/unictype/property-join-control: New file.
12932         * modules/unictype/property-grapheme-base: New file.
12933         * modules/unictype/property-grapheme-extend: New file.
12934         * modules/unictype/property-other-grapheme-extend: New file.
12935         * modules/unictype/property-grapheme-link: New file.
12936         * modules/unictype/property-bidi-control: New file.
12937         * modules/unictype/property-bidi-left-to-right: New file.
12938         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
12939         * modules/unictype/property-bidi-arabic-right-to-left: New file.
12940         * modules/unictype/property-bidi-european-digit: New file.
12941         * modules/unictype/property-bidi-eur-num-separator: New file.
12942         * modules/unictype/property-bidi-eur-num-terminator: New file.
12943         * modules/unictype/property-bidi-arabic-digit: New file.
12944         * modules/unictype/property-bidi-common-separator: New file.
12945         * modules/unictype/property-bidi-block-separator: New file.
12946         * modules/unictype/property-bidi-segment-separator: New file.
12947         * modules/unictype/property-bidi-whitespace: New file.
12948         * modules/unictype/property-bidi-non-spacing-mark: New file.
12949         * modules/unictype/property-bidi-boundary-neutral: New file.
12950         * modules/unictype/property-bidi-pdf: New file.
12951         * modules/unictype/property-bidi-embedding-or-override: New file.
12952         * modules/unictype/property-bidi-other-neutral: New file.
12953         * modules/unictype/property-hex-digit: New file.
12954         * modules/unictype/property-ascii-hex-digit: New file.
12955         * modules/unictype/property-ideographic: New file.
12956         * modules/unictype/property-unified-ideograph: New file.
12957         * modules/unictype/property-radical: New file.
12958         * modules/unictype/property-ids-binary-operator: New file.
12959         * modules/unictype/property-ids-trinary-operator: New file.
12960         * modules/unictype/property-zero-width: New file.
12961         * modules/unictype/property-space: New file.
12962         * modules/unictype/property-non-break: New file.
12963         * modules/unictype/property-iso-control: New file.
12964         * modules/unictype/property-format-control: New file.
12965         * modules/unictype/property-dash: New file.
12966         * modules/unictype/property-hyphen: New file.
12967         * modules/unictype/property-punctuation: New file.
12968         * modules/unictype/property-line-separator: New file.
12969         * modules/unictype/property-paragraph-separator: New file.
12970         * modules/unictype/property-quotation-mark: New file.
12971         * modules/unictype/property-sentence-terminal: New file.
12972         * modules/unictype/property-terminal-punctuation: New file.
12973         * modules/unictype/property-currency-symbol: New file.
12974         * modules/unictype/property-math: New file.
12975         * modules/unictype/property-other-math: New file.
12976         * modules/unictype/property-paired-punctuation: New file.
12977         * modules/unictype/property-left-of-pair: New file.
12978         * modules/unictype/property-combining: New file.
12979         * modules/unictype/property-composite: New file.
12980         * modules/unictype/property-decimal-digit: New file.
12981         * modules/unictype/property-numeric: New file.
12982         * modules/unictype/property-diacritic: New file.
12983         * modules/unictype/property-extender: New file.
12984         * modules/unictype/property-ignorable-control: New file.
12985         * modules/unictype/property-test: New file.
12986         * modules/unictype/property-byname: New file.
12987         * modules/unictype/property-all: New file.
12988         * modules/unictype/scripts: New file.
12989         * modules/unictype/scripts-all: New file.
12990         * modules/unictype/block-of: New file.
12991         * modules/unictype/block-test: New file.
12992         * modules/unictype/block-list: New file.
12993         * modules/unictype/block-all: New file.
12994         * modules/unictype/syntax-c-whitespace: New file.
12995         * modules/unictype/syntax-java-whitespace: New file.
12996         * modules/unictype/syntax-c-ident: New file.
12997         * modules/unictype/syntax-java-ident: New file.
12998         * modules/unictype/ctype-alnum: New file.
12999         * modules/unictype/ctype-alpha: New file.
13000         * modules/unictype/ctype-cntrl: New file.
13001         * modules/unictype/ctype-digit: New file.
13002         * modules/unictype/ctype-graph: New file.
13003         * modules/unictype/ctype-lower: New file.
13004         * modules/unictype/ctype-print: New file.
13005         * modules/unictype/ctype-punct: New file.
13006         * modules/unictype/ctype-space: New file.
13007         * modules/unictype/ctype-upper: New file.
13008         * modules/unictype/ctype-xdigit: New file.
13009         * modules/unictype/ctype-blank: New file.
13010         * lib/unictype/bidi_byname.c: New file.
13011         * lib/unictype/bidi_name.c: New file.
13012         * lib/unictype/bidi_of.c: New file.
13013         * lib/unictype/bidi_test.c: New file.
13014         * lib/unictype/bitmap.h: New file.
13015         * lib/unictype/block_test.c: New file.
13016         * lib/unictype/blocks.c: New file.
13017         * lib/unictype/categ_C.c: New file.
13018         * lib/unictype/categ_Cc.c: New file.
13019         * lib/unictype/categ_Cf.c: New file.
13020         * lib/unictype/categ_Cn.c: New file.
13021         * lib/unictype/categ_Co.c: New file.
13022         * lib/unictype/categ_Cs.c: New file.
13023         * lib/unictype/categ_L.c: New file.
13024         * lib/unictype/categ_Ll.c: New file.
13025         * lib/unictype/categ_Lm.c: New file.
13026         * lib/unictype/categ_Lo.c: New file.
13027         * lib/unictype/categ_Lt.c: New file.
13028         * lib/unictype/categ_Lu.c: New file.
13029         * lib/unictype/categ_M.c: New file.
13030         * lib/unictype/categ_Mc.c: New file.
13031         * lib/unictype/categ_Me.c: New file.
13032         * lib/unictype/categ_Mn.c: New file.
13033         * lib/unictype/categ_N.c: New file.
13034         * lib/unictype/categ_Nd.c: New file.
13035         * lib/unictype/categ_Nl.c: New file.
13036         * lib/unictype/categ_No.c: New file.
13037         * lib/unictype/categ_P.c: New file.
13038         * lib/unictype/categ_Pc.c: New file.
13039         * lib/unictype/categ_Pd.c: New file.
13040         * lib/unictype/categ_Pe.c: New file.
13041         * lib/unictype/categ_Pf.c: New file.
13042         * lib/unictype/categ_Pi.c: New file.
13043         * lib/unictype/categ_Po.c: New file.
13044         * lib/unictype/categ_Ps.c: New file.
13045         * lib/unictype/categ_S.c: New file.
13046         * lib/unictype/categ_Sc.c: New file.
13047         * lib/unictype/categ_Sk.c: New file.
13048         * lib/unictype/categ_Sm.c: New file.
13049         * lib/unictype/categ_So.c: New file.
13050         * lib/unictype/categ_Z.c: New file.
13051         * lib/unictype/categ_Zl.c: New file.
13052         * lib/unictype/categ_Zp.c: New file.
13053         * lib/unictype/categ_Zs.c: New file.
13054         * lib/unictype/categ_and.c: New file.
13055         * lib/unictype/categ_and_not.c: New file.
13056         * lib/unictype/categ_byname.c: New file.
13057         * lib/unictype/categ_name.c: New file.
13058         * lib/unictype/categ_none.c: New file.
13059         * lib/unictype/categ_of.c: New file.
13060         * lib/unictype/categ_or.c: New file.
13061         * lib/unictype/categ_test.c: New file.
13062         * lib/unictype/combining.c: New file.
13063         * lib/unictype/ctype_alnum.c: New file.
13064         * lib/unictype/ctype_alpha.c: New file.
13065         * lib/unictype/ctype_blank.c: New file.
13066         * lib/unictype/ctype_cntrl.c: New file.
13067         * lib/unictype/ctype_digit.c: New file.
13068         * lib/unictype/ctype_graph.c: New file.
13069         * lib/unictype/ctype_lower.c: New file.
13070         * lib/unictype/ctype_print.c: New file.
13071         * lib/unictype/ctype_punct.c: New file.
13072         * lib/unictype/ctype_space.c: New file.
13073         * lib/unictype/ctype_upper.c: New file.
13074         * lib/unictype/ctype_xdigit.c: New file.
13075         * lib/unictype/decdigit.c: New file.
13076         * lib/unictype/digit.c: New file.
13077         * lib/unictype/identsyntaxmap.h: New file.
13078         * lib/unictype/mirror.c: New file.
13079         * lib/unictype/numeric.c: New file.
13080         * lib/unictype/pr_alphabetic.c: New file.
13081         * lib/unictype/pr_ascii_hex_digit.c: New file.
13082         * lib/unictype/pr_bidi_arabic_digit.c: New file.
13083         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
13084         * lib/unictype/pr_bidi_block_separator.c: New file.
13085         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
13086         * lib/unictype/pr_bidi_common_separator.c: New file.
13087         * lib/unictype/pr_bidi_control.c: New file.
13088         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
13089         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
13090         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
13091         * lib/unictype/pr_bidi_european_digit.c: New file.
13092         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
13093         * lib/unictype/pr_bidi_left_to_right.c: New file.
13094         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
13095         * lib/unictype/pr_bidi_other_neutral.c: New file.
13096         * lib/unictype/pr_bidi_pdf.c: New file.
13097         * lib/unictype/pr_bidi_segment_separator.c: New file.
13098         * lib/unictype/pr_bidi_whitespace.c: New file.
13099         * lib/unictype/pr_byname.c: New file.
13100         * lib/unictype/pr_byname.gperf: New file.
13101         * lib/unictype/pr_combining.c: New file.
13102         * lib/unictype/pr_composite.c: New file.
13103         * lib/unictype/pr_currency_symbol.c: New file.
13104         * lib/unictype/pr_dash.c: New file.
13105         * lib/unictype/pr_decimal_digit.c: New file.
13106         * lib/unictype/pr_default_ignorable_code_point.c: New file.
13107         * lib/unictype/pr_deprecated.c: New file.
13108         * lib/unictype/pr_diacritic.c: New file.
13109         * lib/unictype/pr_extender.c: New file.
13110         * lib/unictype/pr_format_control.c: New file.
13111         * lib/unictype/pr_grapheme_base.c: New file.
13112         * lib/unictype/pr_grapheme_extend.c: New file.
13113         * lib/unictype/pr_grapheme_link.c: New file.
13114         * lib/unictype/pr_hex_digit.c: New file.
13115         * lib/unictype/pr_hyphen.c: New file.
13116         * lib/unictype/pr_id_continue.c: New file.
13117         * lib/unictype/pr_id_start.c: New file.
13118         * lib/unictype/pr_ideographic.c: New file.
13119         * lib/unictype/pr_ids_binary_operator.c: New file.
13120         * lib/unictype/pr_ids_trinary_operator.c: New file.
13121         * lib/unictype/pr_ignorable_control.c: New file.
13122         * lib/unictype/pr_iso_control.c: New file.
13123         * lib/unictype/pr_join_control.c: New file.
13124         * lib/unictype/pr_left_of_pair.c: New file.
13125         * lib/unictype/pr_line_separator.c: New file.
13126         * lib/unictype/pr_logical_order_exception.c: New file.
13127         * lib/unictype/pr_lowercase.c: New file.
13128         * lib/unictype/pr_math.c: New file.
13129         * lib/unictype/pr_non_break.c: New file.
13130         * lib/unictype/pr_not_a_character.c: New file.
13131         * lib/unictype/pr_numeric.c: New file.
13132         * lib/unictype/pr_other_alphabetic.c: New file.
13133         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
13134         * lib/unictype/pr_other_grapheme_extend.c: New file.
13135         * lib/unictype/pr_other_id_continue.c: New file.
13136         * lib/unictype/pr_other_id_start.c: New file.
13137         * lib/unictype/pr_other_lowercase.c: New file.
13138         * lib/unictype/pr_other_math.c: New file.
13139         * lib/unictype/pr_other_uppercase.c: New file.
13140         * lib/unictype/pr_paired_punctuation.c: New file.
13141         * lib/unictype/pr_paragraph_separator.c: New file.
13142         * lib/unictype/pr_pattern_syntax.c: New file.
13143         * lib/unictype/pr_pattern_white_space.c: New file.
13144         * lib/unictype/pr_private_use.c: New file.
13145         * lib/unictype/pr_punctuation.c: New file.
13146         * lib/unictype/pr_quotation_mark.c: New file.
13147         * lib/unictype/pr_radical.c: New file.
13148         * lib/unictype/pr_sentence_terminal.c: New file.
13149         * lib/unictype/pr_soft_dotted.c: New file.
13150         * lib/unictype/pr_space.c: New file.
13151         * lib/unictype/pr_terminal_punctuation.c: New file.
13152         * lib/unictype/pr_test.c: New file.
13153         * lib/unictype/pr_titlecase.c: New file.
13154         * lib/unictype/pr_unassigned_code_value.c: New file.
13155         * lib/unictype/pr_unified_ideograph.c: New file.
13156         * lib/unictype/pr_uppercase.c: New file.
13157         * lib/unictype/pr_variation_selector.c: New file.
13158         * lib/unictype/pr_white_space.c: New file.
13159         * lib/unictype/pr_xid_continue.c: New file.
13160         * lib/unictype/pr_xid_start.c: New file.
13161         * lib/unictype/pr_zero_width.c: New file.
13162         * lib/unictype/scripts.c: New file.
13163         * lib/unictype/sy_c_ident.c: New file.
13164         * lib/unictype/sy_c_whitespace.c: New file.
13165         * lib/unictype/sy_java_ident.c: New file.
13166         * lib/unictype/sy_java_whitespace.c: New file.
13167
13168         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
13169         Unicode 5.0.0.
13170         * lib/unictype/blocks.h: Likewise.
13171         * lib/unictype/categ_C.h: Likewise.
13172         * lib/unictype/categ_Cc.h: Likewise.
13173         * lib/unictype/categ_Cf.h: Likewise.
13174         * lib/unictype/categ_Cn.h: Likewise.
13175         * lib/unictype/categ_Co.h: Likewise.
13176         * lib/unictype/categ_Cs.h: Likewise.
13177         * lib/unictype/categ_L.h: Likewise.
13178         * lib/unictype/categ_Ll.h: Likewise.
13179         * lib/unictype/categ_Lm.h: Likewise.
13180         * lib/unictype/categ_Lo.h: Likewise.
13181         * lib/unictype/categ_Lt.h: Likewise.
13182         * lib/unictype/categ_Lu.h: Likewise.
13183         * lib/unictype/categ_M.h: Likewise.
13184         * lib/unictype/categ_Mc.h: Likewise.
13185         * lib/unictype/categ_Me.h: Likewise.
13186         * lib/unictype/categ_Mn.h: Likewise.
13187         * lib/unictype/categ_N.h: Likewise.
13188         * lib/unictype/categ_Nd.h: Likewise.
13189         * lib/unictype/categ_Nl.h: Likewise.
13190         * lib/unictype/categ_No.h: Likewise.
13191         * lib/unictype/categ_P.h: Likewise.
13192         * lib/unictype/categ_Pc.h: Likewise.
13193         * lib/unictype/categ_Pd.h: Likewise.
13194         * lib/unictype/categ_Pe.h: Likewise.
13195         * lib/unictype/categ_Pf.h: Likewise.
13196         * lib/unictype/categ_Pi.h: Likewise.
13197         * lib/unictype/categ_Po.h: Likewise.
13198         * lib/unictype/categ_Ps.h: Likewise.
13199         * lib/unictype/categ_S.h: Likewise.
13200         * lib/unictype/categ_Sc.h: Likewise.
13201         * lib/unictype/categ_Sk.h: Likewise.
13202         * lib/unictype/categ_Sm.h: Likewise.
13203         * lib/unictype/categ_So.h: Likewise.
13204         * lib/unictype/categ_Z.h: Likewise.
13205         * lib/unictype/categ_Zl.h: Likewise.
13206         * lib/unictype/categ_Zp.h: Likewise.
13207         * lib/unictype/categ_Zs.h: Likewise.
13208         * lib/unictype/categ_of.h: Likewise.
13209         * lib/unictype/combining.h: Likewise.
13210         * lib/unictype/ctype_alnum.h: Likewise.
13211         * lib/unictype/ctype_alpha.h: Likewise.
13212         * lib/unictype/ctype_blank.h: Likewise.
13213         * lib/unictype/ctype_cntrl.h: Likewise.
13214         * lib/unictype/ctype_digit.h: Likewise.
13215         * lib/unictype/ctype_graph.h: Likewise.
13216         * lib/unictype/ctype_lower.h: Likewise.
13217         * lib/unictype/ctype_print.h: Likewise.
13218         * lib/unictype/ctype_punct.h: Likewise.
13219         * lib/unictype/ctype_space.h: Likewise.
13220         * lib/unictype/ctype_upper.h: Likewise.
13221         * lib/unictype/ctype_xdigit.h: Likewise.
13222         * lib/unictype/decdigit.h: Likewise.
13223         * lib/unictype/digit.h: Likewise.
13224         * lib/unictype/mirror.h: Likewise.
13225         * lib/unictype/numeric.h: Likewise.
13226         * lib/unictype/pr_alphabetic.h: Likewise.
13227         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
13228         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
13229         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
13230         * lib/unictype/pr_bidi_block_separator.h: Likewise.
13231         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
13232         * lib/unictype/pr_bidi_common_separator.h: Likewise.
13233         * lib/unictype/pr_bidi_control.h: Likewise.
13234         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
13235         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
13236         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
13237         * lib/unictype/pr_bidi_european_digit.h: Likewise.
13238         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
13239         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
13240         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
13241         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
13242         * lib/unictype/pr_bidi_pdf.h: Likewise.
13243         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
13244         * lib/unictype/pr_bidi_whitespace.h: Likewise.
13245         * lib/unictype/pr_combining.h: Likewise.
13246         * lib/unictype/pr_composite.h: Likewise.
13247         * lib/unictype/pr_currency_symbol.h: Likewise.
13248         * lib/unictype/pr_dash.h: Likewise.
13249         * lib/unictype/pr_decimal_digit.h: Likewise.
13250         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
13251         * lib/unictype/pr_deprecated.h: Likewise.
13252         * lib/unictype/pr_diacritic.h: Likewise.
13253         * lib/unictype/pr_extender.h: Likewise.
13254         * lib/unictype/pr_format_control.h: Likewise.
13255         * lib/unictype/pr_grapheme_base.h: Likewise.
13256         * lib/unictype/pr_grapheme_extend.h: Likewise.
13257         * lib/unictype/pr_grapheme_link.h: Likewise.
13258         * lib/unictype/pr_hex_digit.h: Likewise.
13259         * lib/unictype/pr_hyphen.h: Likewise.
13260         * lib/unictype/pr_id_continue.h: Likewise.
13261         * lib/unictype/pr_id_start.h: Likewise.
13262         * lib/unictype/pr_ideographic.h: Likewise.
13263         * lib/unictype/pr_ids_binary_operator.h: Likewise.
13264         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
13265         * lib/unictype/pr_ignorable_control.h: Likewise.
13266         * lib/unictype/pr_iso_control.h: Likewise.
13267         * lib/unictype/pr_join_control.h: Likewise.
13268         * lib/unictype/pr_left_of_pair.h: Likewise.
13269         * lib/unictype/pr_line_separator.h: Likewise.
13270         * lib/unictype/pr_logical_order_exception.h: Likewise.
13271         * lib/unictype/pr_lowercase.h: Likewise.
13272         * lib/unictype/pr_math.h: Likewise.
13273         * lib/unictype/pr_non_break.h: Likewise.
13274         * lib/unictype/pr_not_a_character.h: Likewise.
13275         * lib/unictype/pr_numeric.h: Likewise.
13276         * lib/unictype/pr_other_alphabetic.h: Likewise.
13277         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
13278         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
13279         * lib/unictype/pr_other_id_continue.h: Likewise.
13280         * lib/unictype/pr_other_id_start.h: Likewise.
13281         * lib/unictype/pr_other_lowercase.h: Likewise.
13282         * lib/unictype/pr_other_math.h: Likewise.
13283         * lib/unictype/pr_other_uppercase.h: Likewise.
13284         * lib/unictype/pr_paired_punctuation.h: Likewise.
13285         * lib/unictype/pr_paragraph_separator.h: Likewise.
13286         * lib/unictype/pr_pattern_syntax.h: Likewise.
13287         * lib/unictype/pr_pattern_white_space.h: Likewise.
13288         * lib/unictype/pr_private_use.h: Likewise.
13289         * lib/unictype/pr_punctuation.h: Likewise.
13290         * lib/unictype/pr_quotation_mark.h: Likewise.
13291         * lib/unictype/pr_radical.h: Likewise.
13292         * lib/unictype/pr_sentence_terminal.h: Likewise.
13293         * lib/unictype/pr_soft_dotted.h: Likewise.
13294         * lib/unictype/pr_space.h: Likewise.
13295         * lib/unictype/pr_terminal_punctuation.h: Likewise.
13296         * lib/unictype/pr_titlecase.h: Likewise.
13297         * lib/unictype/pr_unassigned_code_value.h: Likewise.
13298         * lib/unictype/pr_unified_ideograph.h: Likewise.
13299         * lib/unictype/pr_uppercase.h: Likewise.
13300         * lib/unictype/pr_variation_selector.h: Likewise.
13301         * lib/unictype/pr_white_space.h: Likewise.
13302         * lib/unictype/pr_xid_continue.h: Likewise.
13303         * lib/unictype/pr_xid_start.h: Likewise.
13304         * lib/unictype/pr_zero_width.h: Likewise.
13305         * lib/unictype/scripts.h: Likewise.
13306         * lib/unictype/scripts_byname.gperf: Likewise.
13307         * lib/unictype/sy_c_ident.h: Likewise.
13308         * lib/unictype/sy_c_whitespace.h: Likewise.
13309         * lib/unictype/sy_java_ident.h: Likewise.
13310         * lib/unictype/sy_java_whitespace.h: Likewise.
13311
13312         * lib/unictype/Makefile: New file.
13313         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
13314         glibc.
13315         * lib/unictype/3level.h: New file, copied from glibc.
13316         * lib/unictype/3levelbit.h: New file.
13317
13318 2007-11-11  Bruno Haible  <bruno@clisp.org>
13319
13320         * modules/gperf: New file.
13321         * modules/iconv_open (Depends-on): Add it.
13322         (Makefile.am): Remove the GPERF definition.
13323
13324 2007-11-11  Bruno Haible  <bruno@clisp.org>
13325
13326         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
13327         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
13328
13329 2007-11-11  Bruno Haible  <bruno@clisp.org>
13330
13331         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
13332         (usage): Remove function.
13333
13334 2007-11-11  Bruno Haible  <bruno@clisp.org>
13335
13336         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
13337         gl_FUNC_CEILF_LIBS.
13338         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
13339         gl_FUNC_CEIL_LIBS.
13340         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
13341         gl_FUNC_CEILL_LIBS.
13342         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
13343         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
13344         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
13345
13346 2007-11-11  Bruno Haible  <bruno@clisp.org>
13347
13348         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
13349         roundf were declared but do not exist on functions.
13350         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
13351         roundl were declared but do not exist on functions.
13352         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
13353         HAVE_FLOORL_AND_CEILL, respectively.
13354         Needed for Sun C on Solaris 10.
13355
13356 2007-11-11  Bruno Haible  <bruno@clisp.org>
13357
13358         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
13359         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
13360         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
13361         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
13362         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
13363         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
13364         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
13365         HAVE_DECL_ROUNDF.
13366         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
13367         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
13368         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
13369         of HAVE_DECL_ROUND*.
13370         * modules/math (Makefile.am): Update.
13371
13372 2007-11-10  Bruno Haible  <bruno@clisp.org>
13373
13374         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
13375         ptrdiff_t as m4/intl.m4.
13376
13377 2007-11-10  Jim Meyering  <meyering@redhat.com>
13378
13379         Avoid link failure for the argmatch test.
13380         * tests/test-argmatch.c (usage): Define function to avoid a link
13381         failure: argmatch_die requires a usage function.
13382
13383 2007-11-09  Bruno Haible  <bruno@clisp.org>
13384
13385         * doc/functions/snprintf.texi: Mention BeOS deficiency.
13386         * doc/functions/vsnprintf.texi: Likewise.
13387         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
13388         with a size argument < 2.
13389
13390 2007-11-09  Bruno Haible  <bruno@clisp.org>
13391
13392         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
13393         buffer. Fixes an inefficiency introduced on 2007-11-03.
13394
13395 2007-11-09  Bruno Haible  <bruno@clisp.org>
13396
13397         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
13398         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
13399
13400 2007-11-08  Jim Meyering  <meyering@redhat.com>
13401
13402         Change cache variable name prefix "jm_" to "gl_" everywhere.
13403         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
13404         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
13405         * m4/uptime.m4: s/gl_/jm_/
13406
13407 2007-11-07  Bruno Haible  <bruno@clisp.org>
13408
13409         Update to GNU gettext 0.17.
13410         * m4/intl.m4: Update to GNU gettext 0.17.
13411         * m4/po.m4: Likewise.
13412         * modules/gettext (Files): Remove m4/ulonglong.m4.
13413         (configure.ac): Require gettext infrastructure from version 0.17.
13414
13415 2007-11-06  Bruno Haible  <bruno@clisp.org>
13416
13417         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
13418         symbolic values are not defined in a public header.
13419         * lib/freadable.c (freadable) [QNX]: Likewise.
13420         * lib/freadahead.c (freadahead) [QNX]: Likewise.
13421         * lib/freading.c (freading) [QNX]: Likewise.
13422         * lib/fseterr.c (fseterr) [QNX]: Likewise.
13423         * lib/fwritable.c (fwritable) [QNX]: Likewise.
13424         * lib/fwriting.c (fwriting) [QNX]: Likewise.
13425         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
13426         Reported by Alain Magloire.
13427
13428         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
13429
13430 2007-11-05  Bruno Haible  <bruno@clisp.org>
13431
13432         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
13433         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
13434         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
13435         Reported by Eric Blake.
13436
13437 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13438             Bruno Haible  <bruno@clisp.org>
13439
13440         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
13441         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
13442         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
13443         (malloc): Undefine also before including <stdlib.h>.
13444         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
13445         Needed on OSF/1 4.0.
13446
13447 2007-11-05  Jim Meyering  <meyering@redhat.com>
13448
13449         git-version-gen: sync from coreutils.
13450         * build-aux/git-version-gen: Add comments.
13451         Change the first '-' to '.' in the snapshot version string,
13452         e.g., 6.9-377-08144 -> 6.9.377-08144
13453         Remove first parameter.
13454         Don't declare a version "-dirty" merely because a time
13455         stamp has changed.
13456
13457 2007-11-04  Bruno Haible  <bruno@clisp.org>
13458
13459         * lib/lock.h: Protect all macro definitions containing an 'if'
13460         statement through a "do { ... } while (0)".
13461         * lib/tls.h: Likewise.
13462
13463 2007-11-04  Bruno Haible  <bruno@clisp.org>
13464
13465         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
13466
13467 2007-11-04  Bruno Haible  <bruno@clisp.org>
13468
13469         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
13470         * modules/fprintf-posix (Depends-on): Add nocrash.
13471         * modules/snprintf-posix (Depends-on): Likewise.
13472         * modules/sprintf-posix (Depends-on): Likewise.
13473         * modules/vasnprintf-posix (Depends-on): Likewise.
13474         * modules/vasprintf-posix (Depends-on): Likewise.
13475         * modules/vfprintf-posix (Depends-on): Likewise.
13476         * modules/vsnprintf-posix (Depends-on): Likewise.
13477         * modules/vsprintf-posix (Depends-on): Likewise.
13478         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
13479         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
13480         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
13481         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
13482         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
13483         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
13484         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
13485
13486 2007-11-04  Bruno Haible  <bruno@clisp.org>
13487
13488         * modules/nocrash: New file.
13489         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
13490         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
13491
13492 2007-11-04  Bruno Haible  <bruno@clisp.org>
13493
13494         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
13495         precision handling.
13496         * tests/test-vasprintf-posix.c (test_function): Likewise.
13497         * tests/test-snprintf-posix.h (test_function): Likewise.
13498         * tests/test-sprintf-posix.h (test_function): Likewise.
13499
13500         Fix *printf behaviour for large precisions on mingw and BeOS.
13501         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
13502         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
13503         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
13504         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
13505         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13506         gl_PRINTF_PRECISION and test its result. Invoke
13507         gl_PREREQ_VASNPRINTF_PRECISION.
13508         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13509         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13510         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13511         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13512         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13513         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13514         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13515         * doc/functions/fprintf.texi: Update.
13516         * doc/functions/printf.texi: Update.
13517         * doc/functions/snprintf.texi: Update.
13518         * doc/functions/sprintf.texi: Update.
13519         * doc/functions/vfprintf.texi: Update.
13520         * doc/functions/vprintf.texi: Update.
13521         * doc/functions/vsnprintf.texi: Update.
13522         * doc/functions/vsprintf.texi: Update.
13523
13524 2007-11-04  Bruno Haible  <bruno@clisp.org>
13525
13526         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
13527
13528 2007-11-04  Bruno Haible  <bruno@clisp.org>
13529
13530         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
13531         Reported by Sylvain Beucler <beuc@gnu.org>.
13532
13533 2007-11-03  Bruno Haible  <bruno@clisp.org>
13534
13535         * tests/test-fprintf-posix2.sh: New file.
13536         * tests/test-fprintf-posix2.c: New file.
13537         * modules/fprintf-posix-tests (Files): Add them.
13538         (TESTS): Add test-fprintf-posix2.sh.
13539         (configure.ac): Check for getrlimit and setrlimit.
13540         (check_PROGRAMS): Add test-fprintf-posix2.
13541
13542         * tests/test-printf-posix2.sh: New file.
13543         * tests/test-printf-posix2.c: New file.
13544         * modules/printf-posix-tests (Files): Add them.
13545         (TESTS): Add test-printf-posix2.sh.
13546         (configure.ac): Check for getrlimit and setrlimit.
13547         (check_PROGRAMS): Add test-printf-posix2.
13548
13549         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
13550         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
13551         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
13552         (decode_double): New function, copied from decode_long_double.
13553         (scale10_round_decimal_decoded): New function, extracted from
13554         scale10_round_decimal_long_double.
13555         (scale10_round_decimal_long_double): Use it.
13556         (scale10_round_decimal_double): New function.
13557         (floorlog10): New function.
13558         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
13559         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
13560         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
13561         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
13562         gl_PRINTF_ENOMEM and test its result. Invoke
13563         gl_PREREQ_VASNPRINTF_ENOMEM.
13564         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13565         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13566         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13567         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13568         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13569         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
13570         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13571         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
13572         * modules/snprintf-posix (Depends-on): Likewise.
13573         * modules/sprintf-posix (Depends-on): Likewise.
13574         * modules/vasnprintf-posix (Depends-on): Likewise.
13575         * modules/vasprintf-posix (Depends-on): Likewise.
13576         * modules/vfprintf-posix (Depends-on): Likewise.
13577         * modules/vsnprintf-posix (Depends-on): Likewise.
13578         * modules/vsprintf-posix (Depends-on): Likewise.
13579         * doc/functions/fprintf.texi: Update.
13580         * doc/functions/printf.texi: Update.
13581         * doc/functions/snprintf.texi: Update.
13582         * doc/functions/sprintf.texi: Update.
13583         * doc/functions/vfprintf.texi: Update.
13584         * doc/functions/vprintf.texi: Update.
13585         * doc/functions/vsnprintf.texi: Update.
13586         * doc/functions/vsprintf.texi: Update.
13587
13588 2007-11-03  Bruno Haible  <bruno@clisp.org>
13589
13590         * modules/frexp-nolibm-tests: New file.
13591
13592         * modules/frexp-nolibm: New file.
13593         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
13594
13595 2007-11-03  Bruno Haible  <bruno@clisp.org>
13596
13597         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
13598         value is C99 compliant.
13599         Needed for OSF/1 5.1.
13600
13601 2007-11-03  Bruno Haible  <bruno@clisp.org>
13602
13603         Fix out-of-memory handling of vasnprintf.
13604         * lib/printf-parse.c: Include <errno.h>.
13605         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
13606         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
13607         is already set.
13608
13609 2007-11-02  Eric Blake  <ebb9@byu.net>
13610
13611         Fix tests on cygwin.
13612         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
13613
13614 2007-11-01  Bruno Haible  <bruno@clisp.org>
13615
13616         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
13617         warning.
13618         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
13619         needed for POSIX compatibility.
13620
13621 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
13622
13623         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
13624         for compatibility with GNU.
13625
13626 2007-11-01  Bruno Haible  <bruno@clisp.org>
13627
13628         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
13629         (putenv): Renamed from rpl_putenv. Change argument type from
13630         'const char *' to 'char *'.
13631         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
13632         of defining putenv in config.h, just set REPLACE_PUTENV.
13633         * modules/putenv (Depends-on): Add stdlib.
13634         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13635         (Include): Use <stdlib.h>.
13636         * lib/stdlib.in.h (putenv): New declaration.
13637         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
13638         REPLACE_PUTENV.
13639         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
13640         REPLACE_PUTENV.
13641         Needed for MacOS X 10.5.0.
13642         Reported by Peter O'Gorman <peter@pogma.com>.
13643
13644 2007-11-01  Jim Meyering  <meyering@redhat.com>
13645
13646         Treat an empty date string exactly like "0".
13647         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
13648         if the remaining date string (to be parsed) is empty, use "0".
13649         Reported by Mischa Molhoek and discussed in this thread:
13650         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
13651
13652 2007-10-31  Bruno Haible  <bruno@clisp.org>
13653
13654         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
13655         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
13656         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
13657         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
13658         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
13659         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
13660
13661 2007-10-31  Bruno Haible  <bruno@clisp.org>
13662
13663         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
13664         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
13665         (AC_TYPE_LONG_LONG_INT): Use it.
13666         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
13667         it as well.
13668         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
13669         to m4/longlong.m4.
13670         * modules/stdint (Files): Remove m4/ulonglong.m4.
13671         * modules/strtoull (Files): Use m4/longlong.m4 instead of
13672         m4/ulonglong.m4.
13673         * modules/strtoumax (Files): Likewise.
13674
13675 2007-10-30  Bruno Haible  <bruno@clisp.org>
13676
13677         * modules/xvasprintf-posix: New file.
13678         Suggested by Eric Blake.
13679
13680 2007-10-30  Bruno Haible  <bruno@clisp.org>
13681
13682         * modules/xprintf-posix-tests: New file.
13683         * tests/test-xprintf-posix.sh: New file.
13684         * tests/test-xprintf-posix.c: New file.
13685         * tests/test-xfprintf-posix.c: New file.
13686
13687         * modules/xprintf-posix: New file.
13688
13689 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13690
13691         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
13692         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
13693         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
13694
13695 2007-10-29  Bruno Haible  <bruno@clisp.org>
13696
13697         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
13698         contain the special marker '_cv_'.
13699         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
13700         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
13701         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
13702         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
13703         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
13704         Reported by Ralf Wildenhues.
13705
13706 2007-10-29  Bruno Haible  <bruno@clisp.org>
13707
13708         * gnulib-tool (func_import): When --lgpl is not specified, set
13709         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
13710         GPLv3.
13711         Reported by Simon Josefsson.
13712
13713 2007-10-28  Bruno Haible  <bruno@clisp.org>
13714
13715         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
13716         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
13717         HAVE_DECL_ISFINITE.
13718         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
13719         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
13720         HAVE_DECL_ISFINITE.
13721
13722 2007-10-28  Bruno Haible  <bruno@clisp.org>
13723
13724         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
13725         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
13726
13727 2007-10-28  Bruno Haible  <bruno@clisp.org>
13728
13729         Fix link errors with Sun C 5.0 on Solaris 10.
13730         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
13731         function is declared but not present in the compiler's libm.
13732         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
13733         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
13734         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
13735         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
13736         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
13737         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
13738         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
13739         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
13740         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
13741         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
13742         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
13743         HAVE_DECL_FLOORL.
13744
13745 2007-10-28  Bruno Haible  <bruno@clisp.org>
13746
13747         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
13748         gl_FUNC_FLOORL. Cache the result.
13749         (gl_FUNC_FLOORL): Use it.
13750         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
13751         gl_FUNC_CEILL. Cache the result.
13752         (gl_FUNC_CEILL): Use it.
13753
13754         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
13755         gl_FUNC_FLOOR. Cache the result.
13756         (gl_FUNC_FLOOR): Use it.
13757         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
13758         gl_FUNC_CEIL. Cache the result.
13759         (gl_FUNC_CEIL): Use it.
13760
13761         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
13762         gl_FUNC_FLOORF. Cache the result.
13763         (gl_FUNC_FLOORF): Use it.
13764         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
13765         gl_FUNC_CEILF. Cache the result.
13766         (gl_FUNC_CEILF): Use it.
13767
13768 2007-10-28  Bruno Haible  <bruno@clisp.org>
13769
13770         * gnulib-tool: Allow specifying the LGPL version number through
13771         --lgpl=2 or --lgpl=3.
13772         (func_usage): Document --lgpl with argument.
13773         Handle --lgpl=... arguments.
13774         (func_import): Recognize also gl_LGPL calls with an argument. When
13775         --lgpl=2 is used and the module's license is just LGPL, report an
13776         error. Set sed_transform_lib_file according to the lgpl variable. In
13777         the generated files, use --lgpl or gl_LGPL invocations with argument,
13778         if necessary.
13779         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
13780         an LGPv2+ license.
13781         * doc/gnulib-tool.texi (Modified imports): Update explanation of
13782         gl_LGPL macro.
13783
13784 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13785             Bruno Haible  <bruno@clisp.org>
13786
13787         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
13788         (u16_uctomb_aux): Likewise.
13789         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
13790         !HAVE_INLINE.
13791         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
13792
13793 2007-10-28  Bruno Haible  <bruno@clisp.org>
13794
13795         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
13796         Invoke AM_GETTEXT_OPTION if it exists.
13797         * modules/vasprintf: Likewise.
13798         * modules/verror: Likewise.
13799         * modules/xprintf: Likewise.
13800         * modules/xvasprintf: Likewise.
13801
13802 2007-10-27  Ben Pfaff  <blp@gnu.org>
13803
13804         * lib/math.in.h: Define isfinite macro and prototypes for
13805         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
13806         implementations.
13807         * m4/math_h.m4: New substitutions for isfinite module.
13808         * lib/isfinite.c: New file.
13809         * m4/isfinite.m4: New file.
13810         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
13811         * modules/isfinite: New file.
13812         * modules/isfinite-tests: New file.
13813         * tests/tests-isfinite.c: New file.
13814         * doc/functions/isfinite.texi: Mention isfinite module.
13815         * MODULES.html.sh: Mention new module.
13816
13817 2007-10-27  Ben Pfaff  <blp@gnu.org>
13818
13819         Ralf Wildenhues reported that Tru64 4.0D declares the round
13820         functions but does not have definitions.
13821         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
13822         cannot be found in any library, set the output variable to
13823         "missing" instead of "".
13824         * m4/round.m4: Also use our substitute if we cannot find round in
13825         any library, even if it is declared.
13826         * m4/roundf.m4: Likewise for roundf.
13827         * m4/roundl.m4: Likewise for roundl.
13828         * lib/math.in.h: Undefine roundf, round, roundl before defining
13829         their replacements, to allow for hypothetical systems where these
13830         may be defined as macros but not available in libraries.
13831
13832 2007-10-27  Bruno Haible  <bruno@clisp.org>
13833
13834         * doc/gnulib.texi: Invoke @firstparagraphindent.
13835         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
13836         changes in gnulib.
13837         (Source changes): New section.
13838
13839 2007-10-26  Bruno Haible  <bruno@clisp.org>
13840
13841         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
13842         borrowed from autoconf.
13843
13844 2007-10-26  Bruno Haible  <bruno@clisp.org>
13845
13846         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
13847         strerror returned the empty string. Needed on HP-UX 11.00.
13848
13849 2007-10-24  Micah Cowan  <micah@cowan.name>
13850
13851         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
13852         * build-aux/bootstrap: Remove support for now-unnecessary option,
13853         --cvs-user, and envvars CVS_USER, CVS_RSH.
13854
13855 2007-10-24  Jim Meyering  <meyering@redhat.com>
13856
13857         Avoid diagnostics from sha1sum when there is no cached checksum.
13858         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
13859         if the po.s1 file hasn't been created yet.
13860
13861         * build-aux/bootstrap: Sync from coreutils:
13862         2007-10-24  Jim Meyering  <meyering@redhat.com>
13863         Get gnulib from the git repository, not from an obsolete cvs one.
13864         * build-aux/bootstrap: Suggestion from Micah Cowan.
13865         2007-10-04  Jim Meyering  <jim@meyering.net>
13866         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
13867         (update_po_files): Work also when there are no .po files in po/.
13868
13869 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
13870
13871         * README: Append ".git" to git and cg examples.
13872         Problem reported by Benoit Sigoure.
13873
13874 2007-10-23  Micah Cowan  <micah@cowan.name>
13875
13876         * users.txt: Add wget.
13877
13878 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13879
13880         Fix linking of some unistdio tests on FreeBSD.
13881         * modules/unistdio/u16-vsnprintf-tests
13882         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
13883         * modules/unistdio/u16-vsprintf-tests
13884         (test_u16_vsnprintf1_LDADD): Likewise.
13885         * modules/unistdio/u32-vsnprintf-tests
13886         (test_u32_vsnprintf1_LDADD): Likewise.
13887         * modules/unistdio/u32-vsprintf-tests
13888         (test_u32_vsprintf1_LDADD): Likewise.
13889         * modules/unistdio/u8-vsnprintf-tests
13890         (test_u8_vsnprintf1_LDADD): Likewise.
13891         * modules/unistdio/u8-vsprintf-tests
13892         (test_u8_vsprintf1_LDADD): Likewise.
13893         * modules/unistdio/ulc-vsnprintf-tests
13894         (test_ulc_vsnprintf1_LDADD): Likewise.
13895         * modules/unistdio/ulc-vsprintf-tests
13896         (test_ulc_vsprintf1_LDADD): Likewise.
13897
13898         Fix linking of some uniconv tests on FreeBSD.
13899         * modules/uniconv/u16-conv-from-enc-tests
13900         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
13901         * modules/uniconv/u16-conv-to-enc-tests
13902         (test_u16_conv_to_enc_LDADD): Likewise.
13903         * modules/uniconv/u16-strconv-from-enc-tests
13904         (test_u16_strconv_from_enc_LDADD): Likewise.
13905         * modules/uniconv/u16-strconv-to-enc-tests
13906         (test_u16_strconv_to_enc_LDADD): Likewise.
13907         * modules/uniconv/u32-conv-from-enc-tests
13908         (test_u32_conv_from_enc_LDADD): Likewise.
13909         * modules/uniconv/u32-conv-to-enc-tests
13910         (test_u32_conv_to_enc_LDADD): Likewise.
13911         * modules/uniconv/u32-strconv-from-enc-tests
13912         (test_u32_strconv_from_enc_LDADD): Likewise.
13913         * modules/uniconv/u32-strconv-to-enc-tests
13914         (test_u32_strconv_to_enc_LDADD): Likewise.
13915         * modules/uniconv/u8-conv-from-enc-tests
13916         (test_u8_conv_from_enc_LDADD): Likewise.
13917         * modules/uniconv/u8-conv-to-enc-tests
13918         (test_u8_conv_to_enc_LDADD): Likewise.
13919         * modules/uniconv/u8-strconv-from-enc-tests
13920         (test_u8_strconv_from_enc_LDADD): Likewise.
13921         * modules/uniconv/u8-strconv-to-enc-tests
13922         (test_u8_strconv_to_enc_LDADD): Likewise.
13923
13924 2007-10-22  Bruno Haible  <bruno@clisp.org>
13925
13926         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
13927         size.
13928
13929 2007-10-22  Eric Blake  <ebb9@byu.net>
13930
13931         Tweak x*printf documentation.
13932         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
13933         variable name and comments.
13934         Suggested by Bruno Haible.
13935
13936 2007-10-22  Bruno Haible  <bruno@clisp.org>
13937
13938         * lib/acl.c (copy_acl): Fix file name in comment.
13939
13940 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
13941
13942         Fix Tru64 problem with stdbool.h.
13943         * lib/stdbool.in.h (false, true):
13944         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
13945         Don't declare as an enum in this situation; it runs afoul of Tru64.
13946         Problem reported by Steven M. Schweda in
13947         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
13948
13949 2007-10-22  Eric Blake  <ebb9@byu.net>
13950
13951         Also wrap vf?printf.
13952         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
13953         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
13954         (xvprintf, xvfprintf): New functions.
13955
13956 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13957
13958         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
13959         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
13960
13961         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
13962         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
13963
13964 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
13965
13966         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
13967         by Bruno Haible.
13968
13969 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13970
13971         * lib/getloadavg.c
13972         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
13973         Undef `sys' after including sys/table.h, for Tru64 4.0D.
13974
13975         * tests/test-i-ring.c: Work for C89.
13976
13977 2007-10-22  Bruno Haible  <bruno@clisp.org>
13978
13979         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
13980         -1u, in preprocessor expression, so that we don't test for the bug
13981         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
13982         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
13983
13984 2007-10-22  Eric Blake  <ebb9@byu.net>
13985
13986         * tests/test-yesno.sh: Silence stderr during test.
13987
13988 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13989
13990         * modules/crypto/gc-camellia: New file.
13991
13992         * m4/gc-camellia.m4: New file.
13993
13994         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
13995
13996         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
13997
13998 2007-10-22  Simon Josefsson  <simon@josefsson.org>
13999
14000         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
14001         --help to stdout.  Reported by sms@antinode.org (Steven
14002         M. Schweda).
14003
14004 2007-10-22  Simon Josefsson  <simon@josefsson.org>
14005
14006         * users.txt: Fix link to libksba.
14007
14008 2007-10-21  Ben Pfaff  <blp@gnu.org>
14009
14010         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
14011         round.c roundf implementation that depends on floorf and ceilf to
14012         be tested unconditionally.
14013
14014 2007-10-21  Ben Pfaff  <blp@gnu.org>
14015
14016         * m4/check-libm-func.m4: Removed.
14017         * m4/check-math-lib.m4: New file.
14018         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
14019         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
14020         definition and lack of AC_LIBOBJ([roundf]).
14021         * m4/roundl.m4: Ditto, and similarly for roundl.
14022         * modules/round: Reference new m4 file.
14023         * modules/roundf: Ditto.
14024         * modules/roundl: Ditto.
14025         * tests/test-round2.c (main): Use ROUND instead of round.
14026         Bug report from Bruno Haible.
14027
14028 2007-10-21  Bruno Haible  <bruno@clisp.org>
14029
14030         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
14031         context.
14032
14033 2007-10-21  Bruno Haible  <bruno@clisp.org>
14034
14035         * tests/test-wcwidth.c (main): Allow negative result for some control
14036         characters.
14037
14038         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
14039         Needed on OSF/1 5.1.
14040
14041 2007-10-21  Bruno Haible  <bruno@clisp.org>
14042
14043         * tests/test-floorf1.c: Include isnanf.h.
14044         (main): Use isnanf() instead of isnan().
14045         * tests/test-ceilf1.c: Include isnanf.h.
14046         (main): Use isnanf() instead of isnan().
14047         * tests/test-truncf1.c: Include isnanf.h.
14048         (main): Use isnanf() instead of isnan().
14049         * tests/test-roundf1.c: Include isnanf.h.
14050         (main): Use isnanf() instead of isnan().
14051
14052 2007-10-21  Eric Blake  <ebb9@byu.net>
14053
14054         * users.txt: Update URL for m4.
14055
14056 2007-10-21  Bruno Haible  <bruno@clisp.org>
14057
14058         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
14059
14060 2007-10-21  Bruno Haible  <bruno@clisp.org>
14061
14062         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
14063         Git's management files if the CVS files are not present.
14064
14065 2007-10-20  Bruno Haible  <bruno@clisp.org>
14066
14067         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
14068         gcc-3.4.x.
14069
14070 2007-10-20  Ben Pfaff  <blp@gnu.org>
14071
14072         * lib/math.in.h: Declare round, roundf, roundl if we are providing
14073         implementations.
14074         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
14075         * lib/round.c: New file.
14076         * lib/roundf.c: New file.
14077         * lib/roundl.c: New file.
14078         * m4/round.m4: New file.
14079         * m4/roundf.m4: New file.
14080         * m4/roundl.m4: New file.
14081         * m4/check-libm-func-m4: New file.
14082         * modules/math: Replace round, roundf, roundl related @VARS@ in
14083         math.in.h.
14084         * modules/round: New file.
14085         * modules/round-tests: New file.
14086         * modules/roundf: New file.
14087         * modules/roundf-tests: New file.
14088         * modules/roundl: New file.
14089         * modules/roundl-tests: New file.
14090         * tests/test-round1.c: New file.
14091         * tests/test-round2.c: New file.
14092         * tests/test-roundf1.c: New file.
14093         * tests/test-roundf2.c: New file.
14094         * tests/test-roundl.c: New file.
14095         * doc/functions/round.texi: Mention round module.
14096         * doc/functions/roundf.texi: Mention roundf module.
14097         * doc/functions/roundl.texi: Mention roundl module.
14098         * MODULES.html.sh: Mention new modules.
14099         Thanks to Bruno Haible for suggestions.
14100
14101 2007-10-20  Jim Meyering  <meyering@redhat.com>
14102
14103         * lib/xprintf.c: Include <config.h> unconditionally.
14104
14105         Change xprintf's license to GPL.
14106         * modules/xprintf (License): s/LGPL/GPL/, since this module
14107         depends on modules (exit and exitfail) which are GPL.
14108         Suggestion from Bruno Haible.
14109
14110         xprintf fixes.
14111         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
14112         Use a clearer diagnostic.
14113         Patch from Bruno Haible.
14114
14115 2007-10-20  Bruno Haible  <bruno@clisp.org>
14116
14117         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
14118         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
14119         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14120
14121 2007-10-20  Bruno Haible  <bruno@clisp.org>
14122
14123         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
14124         precision in the comparison result > x - 1 or similar.
14125         * tests/test-ceilf2.c (correct_result_p): Likewise.
14126         * tests/test-truncf2.c (correct_result_p): Likewise.
14127         * tests/test-trunc2.c (correct_result_p): Likewise.
14128         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14129
14130 2007-10-20  Bruno Haible  <bruno@clisp.org>
14131
14132         * modules/ceil: New file.
14133         * m4/ceil.m4: New file.
14134         * doc/functions/ceil.texi: Mention the 'ceil' module.
14135
14136 2007-10-20  Bruno Haible  <bruno@clisp.org>
14137
14138         * modules/floor: New file.
14139         * m4/floor.m4: New file.
14140         * doc/functions/floor.texi: Mention the 'floor' module.
14141
14142 2007-10-20  Bruno Haible  <bruno@clisp.org>
14143
14144         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
14145         of %a.
14146         * modules/floorf-tests (Depends-on): Likewise.
14147         * modules/truncf-tests (Depends-on): Likewise.
14148         * modules/trunc-tests (Depends-on): Likewise.
14149         Reported by Ben Pfaff.
14150
14151 2007-10-19  Jim Meyering  <meyering@redhat.com>
14152
14153         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
14154         Don't bother testing specific errno values.  Just test ferror.
14155
14156         New module: xprintf
14157         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
14158
14159 2007-10-19  Bruno Haible  <bruno@clisp.org>
14160
14161         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
14162         syntax.
14163         * modules/javaexec (Makefile.am): Likewise.
14164         * modules/relocatable-prog (Makefile.am): Likewise.
14165         Suggested by Jim Meyering.
14166
14167 2007-10-18  Bruno Haible  <bruno@clisp.org>
14168
14169         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
14170         Reported by Jim Meyering.
14171
14172 2007-10-18  Eric Blake  <ebb9@byu.net>
14173
14174         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
14175
14176 2007-10-18  Bruno Haible  <bruno@clisp.org>
14177
14178         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
14179         the format string into writable memory. Needed in Fortify conditions.
14180
14181 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
14182             Bruno Haible  <bruno@clisp.org>
14183
14184         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
14185         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
14186         * modules/trim (Depends-on): Add mbchar.
14187         (configure.ac): Add gl_FUNC_MBRTOWC.
14188         (Makefile.am): Augment lib_SOURCES.
14189
14190 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
14191
14192         Modify glob.c to use fstatat and dirfd, to simplify it.
14193         Suggested by Eric Blake.
14194         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
14195         Don't include <stdbool.h>; not used.
14196         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
14197         (link_exists_p): Simplify implementation, since we can now assume
14198         dirfd and fstatat.
14199         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
14200
14201 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14202
14203         * gnulib-tool (func_get_dependencies): Fix sed script to
14204         match only tests.
14205
14206 2007-10-17  Bruno Haible  <bruno@clisp.org>
14207
14208         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
14209         allow locale names without encoding suffix.
14210         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
14211         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
14212
14213 2007-10-16  Bruno Haible  <bruno@clisp.org>
14214
14215         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
14216         * lib/getgroups.c (getgroups): Likewise.
14217         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
14218
14219 2007-10-16  Bruno Haible  <bruno@clisp.org>
14220
14221         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
14222         * modules/malloc-posix (License): Likewise.
14223         * modules/realloc-posix (License): Likewise.
14224         * modules/calloc-posix (License): Likewise.
14225         * modules/intprops (License): Change from GPL to LGPL, with
14226         Paul Eggert's approval.
14227
14228 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14229
14230         Merge glibc changes into lib/glob.c.
14231
14232         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
14233         2007-10-15 04:59:03 UTC.  Here are the changes:
14234
14235         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
14236
14237         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
14238
14239         * lib/glob.c: Add some branch prediction throughout.
14240
14241         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
14242
14243         [BZ #5103]
14244         * lib/glob.c (glob): Recognize patterns starting \/.
14245
14246         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
14247
14248         [BZ #3996]
14249         * lib/glob.c (attribute_hidden): Define if not defined.
14250         (glob): Unescape dirname, filename or username when needed and not
14251         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
14252         is NULL.  Handle unescaped [ in pattern without closing ].
14253         Don't pass GLOB_CHECK down to recursive glob for directories.
14254         (__glob_pattern_type): New function.
14255         (__glob_pattern_p): Implement using __glob_pattern_type.
14256         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
14257         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
14258         Remove unreachable code.
14259
14260         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
14261
14262         * lib/glob.c (glob_in_dir): Add some comments and asserts to
14263         explain why there are no leaks.
14264
14265         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
14266
14267         [BZ #3253]
14268         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
14269         time, rather allocate increasingly bigger arrays of pointers, if
14270         possible with alloca, if too large with malloc.
14271
14272 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
14273
14274         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
14275         Problem reported by H.Merijn Brand in
14276         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
14277         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
14278         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
14279
14280 2007-10-15  Bruno Haible  <bruno@clisp.org>
14281
14282         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
14283         with explicit rpl_ prefix.
14284         * lib/fopen.c (fopen): Likewise.
14285         * lib/freopen.c (freopen): Likewise.
14286         * lib/iconv.c (iconv): Likewise.
14287         * lib/iconv_close.c (iconv_close): Likewise.
14288
14289 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14290
14291         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
14292
14293 2007-10-15  Bruno Haible  <bruno@clisp.org>
14294
14295         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
14296         <stddef.h> instead of <stdlib.h> since we only need NULL.
14297         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14298
14299 2007-10-15  Bruno Haible  <bruno@clisp.org>
14300
14301         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
14302         Replace paragraph talking about LIBOBJS.
14303         Reported by Colin Watson <cjwatson@debian.org>.
14304
14305 2007-10-15  Bruno Haible  <bruno@clisp.org>
14306
14307         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
14308         <stdlib.h> before using NULL.
14309
14310 2007-10-15  Simon Josefsson  <simon@josefsson.org>
14311
14312         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
14313         Reported by Albert Chin <china@thewrittenword.com>.
14314
14315 2007-10-14  Bruno Haible  <bruno@clisp.org>
14316
14317         * modules/iconv_open-utf-tests: New file.
14318         * tests/test-iconv-utf.c: New file.
14319
14320         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
14321         * modules/iconv_open-utf: New file.
14322         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
14323         (iconv, iconv_close): New declarations.
14324         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
14325         be defined.
14326         (iconv_open): Add special handling of conversion between UTF-8 and
14327         UTF-{16,32}{BE,LE}.
14328         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
14329         * lib/iconv_close.c: New file.
14330         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
14331         gl_FUNC_ICONV_OPEN.
14332         (gl_FUNC_ICONV_OPEN): Use it.
14333         (gl_FUNC_ICONV_OPEN_UTF): New macro.
14334         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
14335         and REPLACE_ICONV_UTF.
14336         * modules/iconv_open (Depends-on): Add c-strcase.
14337         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
14338         ICONV_CONST.
14339         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
14340
14341 2007-10-13  Albert Chin  <china@thewrittenword.com>
14342             Bruno Haible  <bruno@clisp.org>
14343
14344         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
14345         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
14346
14347 2007-10-13  Bruno Haible  <bruno@clisp.org>
14348
14349         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
14350         defined, use the ISO C99 inline semantics.
14351         * lib/argp.h (ARGP_EI): Likewise.
14352
14353 2007-10-13  Bruno Haible  <bruno@clisp.org>
14354
14355         Handle 'inline' change in gcc 4.3.0.
14356         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
14357         argp_fmtstream_write, argp_fmtstream_set_lmargin,
14358         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
14359         argp_fmtstream_point): Disable 'extern' declaration if the function
14360         definition is going to be provided inline.
14361         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
14362         semantics, not the ISO C99 inline semantics.
14363         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
14364         'extern' declaration if the function definition is going to be provided
14365         inline.
14366         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
14367         the GNU C inline semantics, not the ISO C99 inline semantics. With
14368         GCC 4.2, avoid a warning.
14369
14370 2007-10-13  Bruno Haible  <bruno@clisp.org>
14371
14372         * lib/freading.h (freading): Enable the use of __freading for
14373         glibc >= 2.7.
14374         * lib/freading.c (freading): Likewise.
14375
14376 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
14377
14378         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
14379         "warning: C99 inline functions are not supported; using GNU89".
14380
14381 2007-10-12  Bruno Haible  <bruno@clisp.org>
14382
14383         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
14384         of 2.
14385         * tests/test-ceilf2.c: New file.
14386         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
14387
14388         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
14389         * modules/ceilf-tests: Update.
14390
14391 2007-10-12  Bruno Haible  <bruno@clisp.org>
14392
14393         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
14394         of 2.
14395         * tests/test-floorf2.c: New file.
14396         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
14397
14398         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
14399         * modules/floorf-tests: Update.
14400
14401 2007-10-12  Bruno Haible  <bruno@clisp.org>
14402
14403         * tests/test-trunc2.c: New file.
14404         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
14405
14406         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
14407         * modules/trunc-tests: Update.
14408
14409 2007-10-12  Bruno Haible  <bruno@clisp.org>
14410
14411         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
14412         of 2.
14413         * tests/test-truncf2.c: New file.
14414         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
14415
14416         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
14417         * modules/truncf-tests: Update.
14418
14419 2007-10-11  Eric Blake  <ebb9@byu.net>
14420
14421         Don't claim strerror is broken on Interix.
14422         * doc/functions/strerror.texi (strerror): Known broken systems are
14423         now Solaris 8, and not Interix.
14424         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
14425         Interix on cross-compile.
14426         Reported by Martin Koeppe in
14427         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
14428
14429 2007-10-11  Bruno Haible  <bruno@clisp.org>
14430
14431         * modules/i-ring-tests: New file.
14432         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
14433         instead of assert.
14434
14435 2007-10-11  Bruno Haible  <bruno@clisp.org>
14436
14437         * modules/filenamecat-tests: New file.
14438         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
14439         * lib/filenamecat.c: Remove test code.
14440
14441 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
14442
14443         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
14444
14445         * lib/strerror.c: Include <string.h> always, to test interface,
14446         and to remove the need for the dummy.
14447         Include intprops.h to compute width instead of doing it ourselves
14448         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
14449         (strerror): Define it to return NULL if there's no system strerror.
14450         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
14451         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
14452         ancient pre-strerror Unix systems well any more.  Saying "unknown
14453         system error" is enough.
14454         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
14455         simpler strerror.c implementation.
14456         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
14457         Simplify the tests to reflect the simpler strerror implementation.
14458         * modules/strerror (Depends-on): Add intprops.
14459
14460 2007-10-09  Eric Blake  <ebb9@byu.net>
14461
14462         Silence test-fpending.
14463         * modules/fpending-tests (Files): Add wrapper script.
14464         * tests/test-fpending.sh: New file.
14465
14466 2007-10-09  Bruno Haible  <bruno@clisp.org>
14467
14468         * MODULES.html.sh (func_module): Don't create a hyperlink for
14469         function names like 'printf_frexp'.
14470         (Misc): Add crc, memxor.
14471         (Characteristics of floating types): New section.
14472         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
14473         isnanf-nolibm, signbit, trunc, truncf, truncl.
14474         (Enhancements for ISO C 99 functions): New subsection Input/output.
14475         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
14476         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
14477         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
14478         (Compatibility checks for POSIX:2001 functions): Add clock-time.
14479         (Enhancements for POSIX:2001 functions): Add chdir-long.
14480         (File system functions): Add areadlink, chdir-safer, read-file.
14481         Remove cycle-check.
14482         (File system as inode set): New section.
14483         (Date and time): Add gethrxtime.
14484         (Multithreading): Add openmp.
14485         (Internationalization functions): Add localename.
14486         (Unicode string functions): Add unistr/u*-mbsnlen.
14487         (Support for maintaining and releasing projects): Add git-version-gen.
14488         (Lone files): Remove directories.
14489
14490 2007-10-08  Ben Pfaff  <blp@gnu.org>
14491
14492         * lib/xmalloca.h: Fix typo in comment.
14493
14494 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
14495
14496         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
14497         when avoiding problems with integer overflow.  Use a portable test
14498         instead.
14499
14500 2007-10-08  Simon Josefsson  <simon@josefsson.org>
14501
14502         * modules/dummy (License): Change to LGPLv2+.
14503         * modules/float (License): Likewise
14504         * modules/realloc (License): Likewise
14505         * modules/stdlib (License): Likewise
14506
14507 2007-10-07  Bruno Haible  <bruno@clisp.org>
14508
14509         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
14510         * floor.c (TWO_MANT_DIG): Likewise.
14511         * ceil.c (TWO_MANT_DIG): Likewise.
14512         Reported by Ben Pfaff.
14513
14514 2007-10-07  Bruno Haible  <bruno@clisp.org>
14515
14516         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
14517         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
14518         * lib/frexp.c (FUNC): Likewise.
14519         * lib/printf-frexp.h (printf_frexp): Likewise.
14520         * lib/printf-frexpl.h (printf_frexpl): Likewise.
14521         * lib/printf-frexp.c (FUNC): Likewise.
14522         Suggested by Jim Meyering.
14523
14524 2007-10-07  Jim Meyering  <meyering@redhat.com>
14525
14526         Make xnanosleep's integer overflow test more robust.
14527         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
14528         so that gcc-4.3.0 doesn't optimize away this test for overflow.
14529
14530 2007-10-07  Bruno Haible  <bruno@clisp.org>
14531
14532         * NEWS: Mention the license change.
14533
14534         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
14535         abbreviations in the modules files.
14536
14537         Change copyright notice from GPLv2+ to GPLv3+.
14538         * README: Change copyright notice.
14539         * MODULES.html.sh: Likewise.
14540         * build-aux/bootstrap.conf: Likewise.
14541         * build-aux/config.libpath: Likewise.
14542         * build-aux/csharpcomp.sh.in: Likewise.
14543         * build-aux/csharpexec.sh.in: Likewise.
14544         * build-aux/install-reloc: Likewise.
14545         * build-aux/javacomp.sh.in: Likewise.
14546         * build-aux/javaexec.sh.in: Likewise.
14547         * build-aux/ldd.sh.in: Likewise.
14548         * build-aux/reloc-ldflags: Likewise.
14549         * build-aux/relocatable.sh.in: Likewise.
14550         * build-aux/x-to-1.in: Likewise.
14551         * check-module: Likewise.
14552         * config/srclistvars.sh: Likewise.
14553         * gnulib-tool: Likewise.
14554         * lib/acl-internal.h: Likewise.
14555         * lib/acl.c: Likewise.
14556         * lib/acl.h: Likewise.
14557         * lib/acl_entries.c: Likewise.
14558         * lib/areadlink-with-size.c: Likewise.
14559         * lib/areadlink.c: Likewise.
14560         * lib/areadlink.h: Likewise.
14561         * lib/argmatch.c: Likewise.
14562         * lib/argmatch.h: Likewise.
14563         * lib/argp-ba.c: Likewise.
14564         * lib/argp-eexst.c: Likewise.
14565         * lib/argp-fmtstream.c: Likewise.
14566         * lib/argp-fmtstream.h: Likewise.
14567         * lib/argp-fs-xinl.c: Likewise.
14568         * lib/argp-help.c: Likewise.
14569         * lib/argp-namefrob.h: Likewise.
14570         * lib/argp-parse.c: Likewise.
14571         * lib/argp-pin.c: Likewise.
14572         * lib/argp-pv.c: Likewise.
14573         * lib/argp-pvh.c: Likewise.
14574         * lib/argp-xinl.c: Likewise.
14575         * lib/argp.h: Likewise.
14576         * lib/at-func.c: Likewise.
14577         * lib/atanl.c: Likewise.
14578         * lib/backupfile.c: Likewise.
14579         * lib/backupfile.h: Likewise.
14580         * lib/basename.c: Likewise.
14581         * lib/binary-io.h: Likewise.
14582         * lib/byteswap.in.h: Likewise.
14583         * lib/c-stack.c: Likewise.
14584         * lib/c-stack.h: Likewise.
14585         * lib/c-strcasestr.c: Likewise.
14586         * lib/c-strcasestr.h: Likewise.
14587         * lib/c-strstr.c: Likewise.
14588         * lib/c-strstr.h: Likewise.
14589         * lib/c-strtod.c: Likewise.
14590         * lib/calloc.c: Likewise.
14591         * lib/canon-host.c: Likewise.
14592         * lib/canon-host.h: Likewise.
14593         * lib/canonicalize-lgpl.c: Likewise.
14594         * lib/canonicalize.c: Likewise.
14595         * lib/canonicalize.h: Likewise.
14596         * lib/ceil.c: Likewise.
14597         * lib/ceilf.c: Likewise.
14598         * lib/ceill.c: Likewise.
14599         * lib/chdir-long.c: Likewise.
14600         * lib/chdir-long.h: Likewise.
14601         * lib/chdir-safer.c: Likewise.
14602         * lib/chdir-safer.h: Likewise.
14603         * lib/chown.c: Likewise.
14604         * lib/classpath.c: Likewise.
14605         * lib/classpath.h: Likewise.
14606         * lib/clean-temp.c: Likewise.
14607         * lib/clean-temp.h: Likewise.
14608         * lib/cloexec.c: Likewise.
14609         * lib/close-stream.c: Likewise.
14610         * lib/closein.c: Likewise.
14611         * lib/closein.h: Likewise.
14612         * lib/closeout.c: Likewise.
14613         * lib/closeout.h: Likewise.
14614         * lib/concat-filename.c: Likewise.
14615         * lib/copy-file.c: Likewise.
14616         * lib/copy-file.h: Likewise.
14617         * lib/count-one-bits.h: Likewise.
14618         * lib/crc.c: Likewise.
14619         * lib/crc.h: Likewise.
14620         * lib/creat-safer.c: Likewise.
14621         * lib/csharpcomp.c: Likewise.
14622         * lib/csharpcomp.h: Likewise.
14623         * lib/csharpexec.c: Likewise.
14624         * lib/csharpexec.h: Likewise.
14625         * lib/cycle-check.c: Likewise.
14626         * lib/cycle-check.h: Likewise.
14627         * lib/diacrit.c: Likewise.
14628         * lib/diacrit.h: Likewise.
14629         * lib/diffseq.h: Likewise.
14630         * lib/dirchownmod.c: Likewise.
14631         * lib/dirent.in.h: Likewise.
14632         * lib/dirfd.c: Likewise.
14633         * lib/dirfd.h: Likewise.
14634         * lib/dirname.c: Likewise.
14635         * lib/dirname.h: Likewise.
14636         * lib/dummy.c: Likewise.
14637         * lib/dup-safer.c: Likewise.
14638         * lib/dup2.c: Likewise.
14639         * lib/eealloc.h: Likewise.
14640         * lib/error.c: Likewise.
14641         * lib/error.h: Likewise.
14642         * lib/euidaccess.c: Likewise.
14643         * lib/exclude.c: Likewise.
14644         * lib/exclude.h: Likewise.
14645         * lib/execute.c: Likewise.
14646         * lib/execute.h: Likewise.
14647         * lib/exitfail.c: Likewise.
14648         * lib/exitfail.h: Likewise.
14649         * lib/expl.c: Likewise.
14650         * lib/fatal-signal.c: Likewise.
14651         * lib/fatal-signal.h: Likewise.
14652         * lib/fbufmode.c: Likewise.
14653         * lib/fbufmode.h: Likewise.
14654         * lib/fchdir.c: Likewise.
14655         * lib/fchmodat.c: Likewise.
14656         * lib/fchownat.c: Likewise.
14657         * lib/fcntl--.h: Likewise.
14658         * lib/fcntl-safer.h: Likewise.
14659         * lib/fcntl.in.h: Likewise.
14660         * lib/fd-safer.c: Likewise.
14661         * lib/fflush.c: Likewise.
14662         * lib/file-has-acl.c: Likewise.
14663         * lib/file-set.c: Likewise.
14664         * lib/file-type.c: Likewise.
14665         * lib/file-type.h: Likewise.
14666         * lib/fileblocks.c: Likewise.
14667         * lib/filemode.c: Likewise.
14668         * lib/filemode.h: Likewise.
14669         * lib/filename.h: Likewise.
14670         * lib/filenamecat.c: Likewise.
14671         * lib/filenamecat.h: Likewise.
14672         * lib/findprog.c: Likewise.
14673         * lib/findprog.h: Likewise.
14674         * lib/float.in.h: Likewise.
14675         * lib/floor.c: Likewise.
14676         * lib/floorf.c: Likewise.
14677         * lib/floorl.c: Likewise.
14678         * lib/fopen-safer.c: Likewise.
14679         * lib/fopen.c: Likewise.
14680         * lib/fpending.c: Likewise.
14681         * lib/fpending.h: Likewise.
14682         * lib/fprintf.c: Likewise.
14683         * lib/fprintftime.h: Likewise.
14684         * lib/fpucw.h: Likewise.
14685         * lib/fpurge.c: Likewise.
14686         * lib/fpurge.h: Likewise.
14687         * lib/freadable.c: Likewise.
14688         * lib/freadable.h: Likewise.
14689         * lib/freadahead.c: Likewise.
14690         * lib/freadahead.h: Likewise.
14691         * lib/freading.c: Likewise.
14692         * lib/freading.h: Likewise.
14693         * lib/free.c: Likewise.
14694         * lib/freopen.c: Likewise.
14695         * lib/frexp.c: Likewise.
14696         * lib/frexpl.c: Likewise.
14697         * lib/fseek.c: Likewise.
14698         * lib/fseterr.c: Likewise.
14699         * lib/fseterr.h: Likewise.
14700         * lib/fstatat.c: Likewise.
14701         * lib/fstrcmp.c: Likewise.
14702         * lib/fstrcmp.h: Likewise.
14703         * lib/fsusage.c: Likewise.
14704         * lib/fsusage.h: Likewise.
14705         * lib/ftell.c: Likewise.
14706         * lib/ftello.c: Likewise.
14707         * lib/fts-cycle.c: Likewise.
14708         * lib/fts.c: Likewise.
14709         * lib/fts_.h: Likewise.
14710         * lib/full-read.c: Likewise.
14711         * lib/full-read.h: Likewise.
14712         * lib/full-write.c: Likewise.
14713         * lib/full-write.h: Likewise.
14714         * lib/fwritable.c: Likewise.
14715         * lib/fwritable.h: Likewise.
14716         * lib/fwriteerror.c: Likewise.
14717         * lib/fwriteerror.h: Likewise.
14718         * lib/fwriting.c: Likewise.
14719         * lib/fwriting.h: Likewise.
14720         * lib/gcd.c: Likewise.
14721         * lib/gcd.h: Likewise.
14722         * lib/getcwd.c: Likewise.
14723         * lib/getdate.h: Likewise.
14724         * lib/getdate.y: Likewise.
14725         * lib/getdomainname.c: Likewise.
14726         * lib/getdomainname.h: Likewise.
14727         * lib/getgroups.c: Likewise.
14728         * lib/gethostname.c: Likewise.
14729         * lib/gethrxtime.c: Likewise.
14730         * lib/gethrxtime.h: Likewise.
14731         * lib/getloadavg.c: Likewise.
14732         * lib/getndelim2.c: Likewise.
14733         * lib/getndelim2.h: Likewise.
14734         * lib/getnline.c: Likewise.
14735         * lib/getnline.h: Likewise.
14736         * lib/getopt.c: Likewise.
14737         * lib/getopt.in.h: Likewise.
14738         * lib/getopt1.c: Likewise.
14739         * lib/getopt_int.h: Likewise.
14740         * lib/getpagesize.h: Likewise.
14741         * lib/getsubopt.c: Likewise.
14742         * lib/gettime.c: Likewise.
14743         * lib/getugroups.c: Likewise.
14744         * lib/getugroups.h: Likewise.
14745         * lib/getusershell.c: Likewise.
14746         * lib/gl_anyavltree_list1.h: Likewise.
14747         * lib/gl_anyavltree_list2.h: Likewise.
14748         * lib/gl_anyhash_list1.h: Likewise.
14749         * lib/gl_anyhash_list2.h: Likewise.
14750         * lib/gl_anylinked_list1.h: Likewise.
14751         * lib/gl_anylinked_list2.h: Likewise.
14752         * lib/gl_anyrbtree_list1.h: Likewise.
14753         * lib/gl_anyrbtree_list2.h: Likewise.
14754         * lib/gl_anytree_list1.h: Likewise.
14755         * lib/gl_anytree_list2.h: Likewise.
14756         * lib/gl_anytree_oset.h: Likewise.
14757         * lib/gl_anytreehash_list1.h: Likewise.
14758         * lib/gl_anytreehash_list2.h: Likewise.
14759         * lib/gl_array_list.c: Likewise.
14760         * lib/gl_array_list.h: Likewise.
14761         * lib/gl_array_oset.c: Likewise.
14762         * lib/gl_array_oset.h: Likewise.
14763         * lib/gl_avltree_list.c: Likewise.
14764         * lib/gl_avltree_list.h: Likewise.
14765         * lib/gl_avltree_oset.c: Likewise.
14766         * lib/gl_avltree_oset.h: Likewise.
14767         * lib/gl_avltreehash_list.c: Likewise.
14768         * lib/gl_avltreehash_list.h: Likewise.
14769         * lib/gl_carray_list.c: Likewise.
14770         * lib/gl_carray_list.h: Likewise.
14771         * lib/gl_linked_list.c: Likewise.
14772         * lib/gl_linked_list.h: Likewise.
14773         * lib/gl_linkedhash_list.c: Likewise.
14774         * lib/gl_linkedhash_list.h: Likewise.
14775         * lib/gl_list.c: Likewise.
14776         * lib/gl_list.h: Likewise.
14777         * lib/gl_oset.c: Likewise.
14778         * lib/gl_oset.h: Likewise.
14779         * lib/gl_rbtree_list.c: Likewise.
14780         * lib/gl_rbtree_list.h: Likewise.
14781         * lib/gl_rbtree_oset.c: Likewise.
14782         * lib/gl_rbtree_oset.h: Likewise.
14783         * lib/gl_rbtreehash_list.c: Likewise.
14784         * lib/gl_rbtreehash_list.h: Likewise.
14785         * lib/gl_sublist.c: Likewise.
14786         * lib/gl_sublist.h: Likewise.
14787         * lib/group-member.c: Likewise.
14788         * lib/group-member.h: Likewise.
14789         * lib/hard-locale.c: Likewise.
14790         * lib/hard-locale.h: Likewise.
14791         * lib/hash-pjw.c: Likewise.
14792         * lib/hash-pjw.h: Likewise.
14793         * lib/hash-triple.c: Likewise.
14794         * lib/hash.c: Likewise.
14795         * lib/hash.h: Likewise.
14796         * lib/human.c: Likewise.
14797         * lib/human.h: Likewise.
14798         * lib/i-ring.c: Likewise.
14799         * lib/i-ring.h: Likewise.
14800         * lib/idcache.c: Likewise.
14801         * lib/imaxabs.c: Likewise.
14802         * lib/imaxdiv.c: Likewise.
14803         * lib/inet_pton.c: Likewise.
14804         * lib/inet_pton.h: Likewise.
14805         * lib/intprops.h: Likewise.
14806         * lib/inttostr.c: Likewise.
14807         * lib/inttostr.h: Likewise.
14808         * lib/inttypes.in.h: Likewise.
14809         * lib/isapipe.c: Likewise.
14810         * lib/isdir.c: Likewise.
14811         * lib/isnan.c: Likewise.
14812         * lib/isnan.h: Likewise.
14813         * lib/isnanf.c: Likewise.
14814         * lib/isnanf.h: Likewise.
14815         * lib/isnanl-nolibm.h: Likewise.
14816         * lib/isnanl.c: Likewise.
14817         * lib/isnanl.h: Likewise.
14818         * lib/javacomp.c: Likewise.
14819         * lib/javacomp.h: Likewise.
14820         * lib/javaexec.c: Likewise.
14821         * lib/javaexec.h: Likewise.
14822         * lib/javaversion.c: Likewise.
14823         * lib/javaversion.h: Likewise.
14824         * lib/javaversion.java: Likewise.
14825         * lib/lbrkprop.h: Likewise.
14826         * lib/lchmod.h: Likewise.
14827         * lib/lchown.c: Likewise.
14828         * lib/ldexpl.c: Likewise.
14829         * lib/linebreak.c: Likewise.
14830         * lib/linebreak.h: Likewise.
14831         * lib/linebuffer.c: Likewise.
14832         * lib/linebuffer.h: Likewise.
14833         * lib/locale.in.h: Likewise.
14834         * lib/logl.c: Likewise.
14835         * lib/long-options.c: Likewise.
14836         * lib/long-options.h: Likewise.
14837         * lib/lstat.c: Likewise.
14838         * lib/lstat.h: Likewise.
14839         * lib/math.in.h: Likewise.
14840         * lib/mbchar.c: Likewise.
14841         * lib/mbchar.h: Likewise.
14842         * lib/mbfile.h: Likewise.
14843         * lib/mbiter.h: Likewise.
14844         * lib/mbscasecmp.c: Likewise.
14845         * lib/mbscasestr.c: Likewise.
14846         * lib/mbschr.c: Likewise.
14847         * lib/mbscspn.c: Likewise.
14848         * lib/mbslen.c: Likewise.
14849         * lib/mbsncasecmp.c: Likewise.
14850         * lib/mbsnlen.c: Likewise.
14851         * lib/mbspbrk.c: Likewise.
14852         * lib/mbspcasecmp.c: Likewise.
14853         * lib/mbsrchr.c: Likewise.
14854         * lib/mbssep.c: Likewise.
14855         * lib/mbsspn.c: Likewise.
14856         * lib/mbsstr.c: Likewise.
14857         * lib/mbstok_r.c: Likewise.
14858         * lib/mbswidth.c: Likewise.
14859         * lib/mbswidth.h: Likewise.
14860         * lib/mbuiter.h: Likewise.
14861         * lib/memcasecmp.c: Likewise.
14862         * lib/memcasecmp.h: Likewise.
14863         * lib/memchr.c: Likewise.
14864         * lib/memcmp.c: Likewise.
14865         * lib/memcoll.c: Likewise.
14866         * lib/memcoll.h: Likewise.
14867         * lib/memcpy.c: Likewise.
14868         * lib/memrchr.c: Likewise.
14869         * lib/mkancesdirs.c: Likewise.
14870         * lib/mkdir-p.c: Likewise.
14871         * lib/mkdir-p.h: Likewise.
14872         * lib/mkdir.c: Likewise.
14873         * lib/mkdirat.c: Likewise.
14874         * lib/mkdtemp.c: Likewise.
14875         * lib/mkstemp-safer.c: Likewise.
14876         * lib/mkstemp.c: Likewise.
14877         * lib/modechange.c: Likewise.
14878         * lib/modechange.h: Likewise.
14879         * lib/mountlist.c: Likewise.
14880         * lib/mountlist.h: Likewise.
14881         * lib/mpsort.c: Likewise.
14882         * lib/nanosleep.c: Likewise.
14883         * lib/obstack.c: Likewise.
14884         * lib/obstack.h: Likewise.
14885         * lib/open-safer.c: Likewise.
14886         * lib/open.c: Likewise.
14887         * lib/openat-die.c: Likewise.
14888         * lib/openat-priv.h: Likewise.
14889         * lib/openat-proc.c: Likewise.
14890         * lib/openat.c: Likewise.
14891         * lib/openat.h: Likewise.
14892         * lib/pagealign_alloc.c: Likewise.
14893         * lib/pagealign_alloc.h: Likewise.
14894         * lib/physmem.c: Likewise.
14895         * lib/physmem.h: Likewise.
14896         * lib/pipe-safer.c: Likewise.
14897         * lib/pipe.c: Likewise.
14898         * lib/pipe.h: Likewise.
14899         * lib/posixtm.c: Likewise.
14900         * lib/posixtm.h: Likewise.
14901         * lib/posixver.c: Likewise.
14902         * lib/printf-frexp.c: Likewise.
14903         * lib/printf-frexp.h: Likewise.
14904         * lib/printf-frexpl.c: Likewise.
14905         * lib/printf-frexpl.h: Likewise.
14906         * lib/printf.c: Likewise.
14907         * lib/progname.c: Likewise.
14908         * lib/progname.h: Likewise.
14909         * lib/progreloc.c: Likewise.
14910         * lib/putenv.c: Likewise.
14911         * lib/quote.c: Likewise.
14912         * lib/quote.h: Likewise.
14913         * lib/quotearg.c: Likewise.
14914         * lib/quotearg.h: Likewise.
14915         * lib/raise.c: Likewise.
14916         * lib/readline.c: Likewise.
14917         * lib/readline.h: Likewise.
14918         * lib/readlink.c: Likewise.
14919         * lib/readtokens.c: Likewise.
14920         * lib/readtokens.h: Likewise.
14921         * lib/readtokens0.c: Likewise.
14922         * lib/readtokens0.h: Likewise.
14923         * lib/readutmp.c: Likewise.
14924         * lib/readutmp.h: Likewise.
14925         * lib/realloc.c: Likewise.
14926         * lib/relocwrapper.c: Likewise.
14927         * lib/rename-dest-slash.c: Likewise.
14928         * lib/rename.c: Likewise.
14929         * lib/rmdir.c: Likewise.
14930         * lib/rpmatch.c: Likewise.
14931         * lib/safe-read.c: Likewise.
14932         * lib/safe-read.h: Likewise.
14933         * lib/safe-write.c: Likewise.
14934         * lib/safe-write.h: Likewise.
14935         * lib/same-inode.h: Likewise.
14936         * lib/same.c: Likewise.
14937         * lib/same.h: Likewise.
14938         * lib/save-cwd.c: Likewise.
14939         * lib/save-cwd.h: Likewise.
14940         * lib/savedir.c: Likewise.
14941         * lib/savedir.h: Likewise.
14942         * lib/savewd.c: Likewise.
14943         * lib/savewd.h: Likewise.
14944         * lib/search.in.h: Likewise.
14945         * lib/setenv.c: Likewise.
14946         * lib/setenv.h: Likewise.
14947         * lib/settime.c: Likewise.
14948         * lib/sh-quote.c: Likewise.
14949         * lib/sh-quote.h: Likewise.
14950         * lib/sig2str.c: Likewise.
14951         * lib/sig2str.h: Likewise.
14952         * lib/signal.in.h: Likewise.
14953         * lib/signbitd.c: Likewise.
14954         * lib/signbitf.c: Likewise.
14955         * lib/signbitl.c: Likewise.
14956         * lib/sigprocmask.c: Likewise.
14957         * lib/sincosl.c: Likewise.
14958         * lib/sleep.c: Likewise.
14959         * lib/sprintf.c: Likewise.
14960         * lib/sqrtl.c: Likewise.
14961         * lib/stat-time.h: Likewise.
14962         * lib/stdio--.h: Likewise.
14963         * lib/stdio-safer.h: Likewise.
14964         * lib/stdlib--.h: Likewise.
14965         * lib/stdlib-safer.h: Likewise.
14966         * lib/stdlib.in.h: Likewise.
14967         * lib/stpcpy.c: Likewise.
14968         * lib/stpncpy.c: Likewise.
14969         * lib/strchrnul.c: Likewise.
14970         * lib/strcspn.c: Likewise.
14971         * lib/strerror.c: Likewise.
14972         * lib/strftime.c: Likewise.
14973         * lib/strftime.h: Likewise.
14974         * lib/striconveh.c: Likewise.
14975         * lib/striconveh.h: Likewise.
14976         * lib/striconveha.c: Likewise.
14977         * lib/striconveha.h: Likewise.
14978         * lib/stripslash.c: Likewise.
14979         * lib/strnlen1.c: Likewise.
14980         * lib/strnlen1.h: Likewise.
14981         * lib/strtod.c: Likewise.
14982         * lib/strtoimax.c: Likewise.
14983         * lib/strtok_r.c: Likewise.
14984         * lib/strtol.c: Likewise.
14985         * lib/strtoll.c: Likewise.
14986         * lib/strtoul.c: Likewise.
14987         * lib/strtoull.c: Likewise.
14988         * lib/sysexits.in.h: Likewise.
14989         * lib/tempname.c: Likewise.
14990         * lib/tempname.h: Likewise.
14991         * lib/timespec.h: Likewise.
14992         * lib/tls.c: Likewise.
14993         * lib/tls.h: Likewise.
14994         * lib/tmpdir.c: Likewise.
14995         * lib/tmpdir.h: Likewise.
14996         * lib/tmpfile-safer.c: Likewise.
14997         * lib/tmpfile.c: Likewise.
14998         * lib/trigl.c: Likewise.
14999         * lib/trigl.h: Likewise.
15000         * lib/trim.c: Likewise.
15001         * lib/trim.h: Likewise.
15002         * lib/trunc.c: Likewise.
15003         * lib/truncf.c: Likewise.
15004         * lib/truncl.c: Likewise.
15005         * lib/tsearch.c: Likewise.
15006         * lib/unicodeio.c: Likewise.
15007         * lib/unicodeio.h: Likewise.
15008         * lib/unistd--.h: Likewise.
15009         * lib/unistd-safer.h: Likewise.
15010         * lib/unistdio/ulc-fprintf.c: Likewise.
15011         * lib/unistdio/ulc-vfprintf.c: Likewise.
15012         * lib/unlinkdir.c: Likewise.
15013         * lib/unlinkdir.h: Likewise.
15014         * lib/unlocked-io.h: Likewise.
15015         * lib/unsetenv.c: Likewise.
15016         * lib/userspec.c: Likewise.
15017         * lib/utime.c: Likewise.
15018         * lib/utimecmp.c: Likewise.
15019         * lib/utimecmp.h: Likewise.
15020         * lib/utimens.c: Likewise.
15021         * lib/verify.h: Likewise.
15022         * lib/verror.c: Likewise.
15023         * lib/verror.h: Likewise.
15024         * lib/version-etc-fsf.c: Likewise.
15025         * lib/version-etc.c: Likewise.
15026         * lib/version-etc.h: Likewise.
15027         * lib/vfprintf.c: Likewise.
15028         * lib/vprintf.c: Likewise.
15029         * lib/vsprintf.c: Likewise.
15030         * lib/w32spawn.h: Likewise.
15031         * lib/wait-process.c: Likewise.
15032         * lib/wait-process.h: Likewise.
15033         * lib/wcwidth.c: Likewise.
15034         * lib/write-any-file.c: Likewise.
15035         * lib/xalloc-die.c: Likewise.
15036         * lib/xalloc.h: Likewise.
15037         * lib/xasprintf.c: Likewise.
15038         * lib/xgetcwd.c: Likewise.
15039         * lib/xgetcwd.h: Likewise.
15040         * lib/xgetdomainname.c: Likewise.
15041         * lib/xgetdomainname.h: Likewise.
15042         * lib/xgethostname.c: Likewise.
15043         * lib/xmalloc.c: Likewise.
15044         * lib/xmalloca.c: Likewise.
15045         * lib/xmalloca.h: Likewise.
15046         * lib/xmemcoll.c: Likewise.
15047         * lib/xnanosleep.c: Likewise.
15048         * lib/xreadlink.c: Likewise.
15049         * lib/xreadlink.h: Likewise.
15050         * lib/xsetenv.c: Likewise.
15051         * lib/xsetenv.h: Likewise.
15052         * lib/xstriconv.c: Likewise.
15053         * lib/xstriconv.h: Likewise.
15054         * lib/xstrndup.c: Likewise.
15055         * lib/xstrndup.h: Likewise.
15056         * lib/xstrtod.c: Likewise.
15057         * lib/xstrtod.h: Likewise.
15058         * lib/xstrtol-error.c: Likewise.
15059         * lib/xstrtol.c: Likewise.
15060         * lib/xstrtol.h: Likewise.
15061         * lib/xtime.h: Likewise.
15062         * lib/xvasprintf.c: Likewise.
15063         * lib/xvasprintf.h: Likewise.
15064         * lib/yesno.c: Likewise.
15065         * lib/yesno.h: Likewise.
15066         * posix-modules: Likewise.
15067         * tests/test-alloca-opt.c: Likewise.
15068         * tests/test-arcfour.c: Likewise.
15069         * tests/test-arctwo.c: Likewise.
15070         * tests/test-argmatch.c: Likewise.
15071         * tests/test-argp-2.sh: Likewise.
15072         * tests/test-argp.c: Likewise.
15073         * tests/test-arpa_inet.c: Likewise.
15074         * tests/test-array_list.c: Likewise.
15075         * tests/test-array_oset.c: Likewise.
15076         * tests/test-atexit.c: Likewise.
15077         * tests/test-avltree_list.c: Likewise.
15078         * tests/test-avltree_oset.c: Likewise.
15079         * tests/test-avltreehash_list.c: Likewise.
15080         * tests/test-base64.c: Likewise.
15081         * tests/test-binary-io.c: Likewise.
15082         * tests/test-byteswap.c: Likewise.
15083         * tests/test-c-ctype.c: Likewise.
15084         * tests/test-c-strcasecmp.c: Likewise.
15085         * tests/test-c-strcasestr.c: Likewise.
15086         * tests/test-c-strncasecmp.c: Likewise.
15087         * tests/test-c-strstr.c: Likewise.
15088         * tests/test-canonicalize-lgpl.c: Likewise.
15089         * tests/test-canonicalize.c: Likewise.
15090         * tests/test-carray_list.c: Likewise.
15091         * tests/test-ceilf.c: Likewise.
15092         * tests/test-ceill.c: Likewise.
15093         * tests/test-count-one-bits.c: Likewise.
15094         * tests/test-crc.c: Likewise.
15095         * tests/test-dirname.c: Likewise.
15096         * tests/test-fbufmode.c: Likewise.
15097         * tests/test-fcntl.c: Likewise.
15098         * tests/test-fflush.c: Likewise.
15099         * tests/test-floorf.c: Likewise.
15100         * tests/test-floorl.c: Likewise.
15101         * tests/test-fopen.c: Likewise.
15102         * tests/test-fprintf-posix.c: Likewise.
15103         * tests/test-fprintf-posix.h: Likewise.
15104         * tests/test-fpurge.c: Likewise.
15105         * tests/test-freadable.c: Likewise.
15106         * tests/test-freadahead.c: Likewise.
15107         * tests/test-freading.c: Likewise.
15108         * tests/test-freopen.c: Likewise.
15109         * tests/test-frexp.c: Likewise.
15110         * tests/test-frexpl.c: Likewise.
15111         * tests/test-fseek.c: Likewise.
15112         * tests/test-fseeko.c: Likewise.
15113         * tests/test-fseterr.c: Likewise.
15114         * tests/test-fstrcmp.c: Likewise.
15115         * tests/test-ftell.c: Likewise.
15116         * tests/test-ftello.c: Likewise.
15117         * tests/test-fwritable.c: Likewise.
15118         * tests/test-fwriting.c: Likewise.
15119         * tests/test-getaddrinfo.c: Likewise.
15120         * tests/test-getpass.c: Likewise.
15121         * tests/test-gettimeofday.c: Likewise.
15122         * tests/test-hmac-md5.c: Likewise.
15123         * tests/test-hmac-sha1.c: Likewise.
15124         * tests/test-iconv.c: Likewise.
15125         * tests/test-iconvme.c: Likewise.
15126         * tests/test-inttypes.c: Likewise.
15127         * tests/test-isnan.c: Likewise.
15128         * tests/test-isnanf.c: Likewise.
15129         * tests/test-isnanl-nolibm.c: Likewise.
15130         * tests/test-isnanl.c: Likewise.
15131         * tests/test-isnanl.h: Likewise.
15132         * tests/test-ldexpl.c: Likewise.
15133         * tests/test-linked_list.c: Likewise.
15134         * tests/test-linkedhash_list.c: Likewise.
15135         * tests/test-locale.c: Likewise.
15136         * tests/test-localename.c: Likewise.
15137         * tests/test-lock.c: Likewise.
15138         * tests/test-lseek.c: Likewise.
15139         * tests/test-malloca.c: Likewise.
15140         * tests/test-math.c: Likewise.
15141         * tests/test-mbscasecmp.c: Likewise.
15142         * tests/test-mbscasestr1.c: Likewise.
15143         * tests/test-mbscasestr2.c: Likewise.
15144         * tests/test-mbscasestr3.c: Likewise.
15145         * tests/test-mbscasestr4.c: Likewise.
15146         * tests/test-mbschr.c: Likewise.
15147         * tests/test-mbscspn.c: Likewise.
15148         * tests/test-mbsncasecmp.c: Likewise.
15149         * tests/test-mbspbrk.c: Likewise.
15150         * tests/test-mbspcasecmp.c: Likewise.
15151         * tests/test-mbsrchr.c: Likewise.
15152         * tests/test-mbsspn.c: Likewise.
15153         * tests/test-mbsstr1.c: Likewise.
15154         * tests/test-mbsstr2.c: Likewise.
15155         * tests/test-mbsstr3.c: Likewise.
15156         * tests/test-md5.c: Likewise.
15157         * tests/test-memmem.c: Likewise.
15158         * tests/test-netinet_in.c: Likewise.
15159         * tests/test-open.c: Likewise.
15160         * tests/test-printf-frexp.c: Likewise.
15161         * tests/test-printf-frexpl.c: Likewise.
15162         * tests/test-printf-posix.c: Likewise.
15163         * tests/test-printf-posix.h: Likewise.
15164         * tests/test-rbtree_list.c: Likewise.
15165         * tests/test-rbtree_oset.c: Likewise.
15166         * tests/test-rbtreehash_list.c: Likewise.
15167         * tests/test-read-file.c: Likewise.
15168         * tests/test-rijndael.c: Likewise.
15169         * tests/test-search.c: Likewise.
15170         * tests/test-signbit.c: Likewise.
15171         * tests/test-sleep.c: Likewise.
15172         * tests/test-snprintf-posix.c: Likewise.
15173         * tests/test-snprintf-posix.h: Likewise.
15174         * tests/test-snprintf.c: Likewise.
15175         * tests/test-sprintf-posix.c: Likewise.
15176         * tests/test-sprintf-posix.h: Likewise.
15177         * tests/test-stat-time.c: Likewise.
15178         * tests/test-stdbool.c: Likewise.
15179         * tests/test-stdint.c: Likewise.
15180         * tests/test-stdio.c: Likewise.
15181         * tests/test-stdlib.c: Likewise.
15182         * tests/test-stpncpy.c: Likewise.
15183         * tests/test-strcasestr.c: Likewise.
15184         * tests/test-striconv.c: Likewise.
15185         * tests/test-striconveh.c: Likewise.
15186         * tests/test-striconveha.c: Likewise.
15187         * tests/test-string.c: Likewise.
15188         * tests/test-sys_select.c: Likewise.
15189         * tests/test-sys_socket.c: Likewise.
15190         * tests/test-sys_stat.c: Likewise.
15191         * tests/test-sys_time.c: Likewise.
15192         * tests/test-sysexits.c: Likewise.
15193         * tests/test-time.c: Likewise.
15194         * tests/test-tls.c: Likewise.
15195         * tests/test-trunc.c: Likewise.
15196         * tests/test-truncf.c: Likewise.
15197         * tests/test-truncl.c: Likewise.
15198         * tests/test-unistd.c: Likewise.
15199         * tests/test-vasnprintf-posix.c: Likewise.
15200         * tests/test-vasnprintf-posix2.c: Likewise.
15201         * tests/test-vasnprintf.c: Likewise.
15202         * tests/test-vasprintf-posix.c: Likewise.
15203         * tests/test-vasprintf.c: Likewise.
15204         * tests/test-verify.c: Likewise.
15205         * tests/test-vfprintf-posix.c: Likewise.
15206         * tests/test-vprintf-posix.c: Likewise.
15207         * tests/test-vsnprintf-posix.c: Likewise.
15208         * tests/test-vsnprintf.c: Likewise.
15209         * tests/test-vsprintf-posix.c: Likewise.
15210         * tests/test-wchar.c: Likewise.
15211         * tests/test-wctype.c: Likewise.
15212         * tests/test-wcwidth.c: Likewise.
15213         * tests/test-xstrtol.c: Likewise.
15214         * tests/test-xvasprintf.c: Likewise.
15215         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
15216         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
15217         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
15218         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
15219         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
15220         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
15221         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
15222         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
15223         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
15224         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
15225         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
15226         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
15227         * tests/uniname/test-uninames.c: Likewise.
15228         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
15229         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
15230         * tests/unistdio/test-u16-printf1.h: Likewise.
15231         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
15232         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
15233         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
15234         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
15235         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
15236         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
15237         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
15238         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
15239         * tests/unistdio/test-u32-printf1.h: Likewise.
15240         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
15241         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
15242         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
15243         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
15244         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
15245         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
15246         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
15247         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
15248         * tests/unistdio/test-u8-printf1.h: Likewise.
15249         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
15250         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
15251         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
15252         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
15253         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
15254         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
15255         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
15256         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
15257         * tests/unistdio/test-ulc-printf1.h: Likewise.
15258         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
15259         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
15260         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
15261         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
15262         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
15263         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
15264         * tests/uniwidth/test-u16-strwidth.c: Likewise.
15265         * tests/uniwidth/test-u16-width.c: Likewise.
15266         * tests/uniwidth/test-u32-strwidth.c: Likewise.
15267         * tests/uniwidth/test-u32-width.c: Likewise.
15268         * tests/uniwidth/test-u8-strwidth.c: Likewise.
15269         * tests/uniwidth/test-u8-width.c: Likewise.
15270         * tests/uniwidth/test-uc_width.c: Likewise.
15271         * config/srclist-update: Likewise.
15272         (fixlicense): Update to GPLv3+.
15273
15274         Change copyright notice from LGPLv2.1+ to LGPLv3+.
15275         * tests/test-tsearch.c: Change copyright notice.
15276
15277         Change copyright notice from LGPLv2.0+ to LGPLv3+.
15278         * lib/c-strcaseeq.h: Change copyright notice.
15279         * lib/streq.h: Likewise.
15280         * lib/uniconv.h: Likewise.
15281         * lib/uniconv/u-conv-from-enc.h: Likewise.
15282         * lib/uniconv/u-conv-to-enc.h: Likewise.
15283         * lib/uniconv/u-strconv-from-enc.h: Likewise.
15284         * lib/uniconv/u-strconv-to-enc.h: Likewise.
15285         * lib/uniconv/u16-conv-from-enc.c: Likewise.
15286         * lib/uniconv/u16-conv-to-enc.c: Likewise.
15287         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
15288         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
15289         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
15290         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
15291         * lib/uniconv/u32-conv-from-enc.c: Likewise.
15292         * lib/uniconv/u32-conv-to-enc.c: Likewise.
15293         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
15294         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
15295         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
15296         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
15297         * lib/uniconv/u8-conv-from-enc.c: Likewise.
15298         * lib/uniconv/u8-conv-to-enc.c: Likewise.
15299         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
15300         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
15301         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
15302         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
15303         * lib/uniname.h: Likewise.
15304         * lib/uniname/uniname.c: Likewise.
15305         * lib/unistdio.h: Likewise.
15306         * lib/unistdio/u-asnprintf.h: Likewise.
15307         * lib/unistdio/u-asprintf.h: Likewise.
15308         * lib/unistdio/u-printf-args.c: Likewise.
15309         * lib/unistdio/u-printf-args.h: Likewise.
15310         * lib/unistdio/u-printf-parse.h: Likewise.
15311         * lib/unistdio/u-snprintf.h: Likewise.
15312         * lib/unistdio/u-sprintf.h: Likewise.
15313         * lib/unistdio/u-vasprintf.h: Likewise.
15314         * lib/unistdio/u-vsnprintf.h: Likewise.
15315         * lib/unistdio/u-vsprintf.h: Likewise.
15316         * lib/unistdio/u16-asnprintf.c: Likewise.
15317         * lib/unistdio/u16-asprintf.c: Likewise.
15318         * lib/unistdio/u16-printf-parse.c: Likewise.
15319         * lib/unistdio/u16-snprintf.c: Likewise.
15320         * lib/unistdio/u16-sprintf.c: Likewise.
15321         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
15322         * lib/unistdio/u16-u16-asprintf.c: Likewise.
15323         * lib/unistdio/u16-u16-snprintf.c: Likewise.
15324         * lib/unistdio/u16-u16-sprintf.c: Likewise.
15325         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
15326         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
15327         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
15328         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
15329         * lib/unistdio/u16-vasnprintf.c: Likewise.
15330         * lib/unistdio/u16-vasprintf.c: Likewise.
15331         * lib/unistdio/u16-vsnprintf.c: Likewise.
15332         * lib/unistdio/u16-vsprintf.c: Likewise.
15333         * lib/unistdio/u32-asnprintf.c: Likewise.
15334         * lib/unistdio/u32-asprintf.c: Likewise.
15335         * lib/unistdio/u32-printf-parse.c: Likewise.
15336         * lib/unistdio/u32-snprintf.c: Likewise.
15337         * lib/unistdio/u32-sprintf.c: Likewise.
15338         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
15339         * lib/unistdio/u32-u32-asprintf.c: Likewise.
15340         * lib/unistdio/u32-u32-snprintf.c: Likewise.
15341         * lib/unistdio/u32-u32-sprintf.c: Likewise.
15342         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
15343         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
15344         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
15345         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
15346         * lib/unistdio/u32-vasnprintf.c: Likewise.
15347         * lib/unistdio/u32-vasprintf.c: Likewise.
15348         * lib/unistdio/u32-vsnprintf.c: Likewise.
15349         * lib/unistdio/u32-vsprintf.c: Likewise.
15350         * lib/unistdio/u8-asnprintf.c: Likewise.
15351         * lib/unistdio/u8-asprintf.c: Likewise.
15352         * lib/unistdio/u8-printf-parse.c: Likewise.
15353         * lib/unistdio/u8-snprintf.c: Likewise.
15354         * lib/unistdio/u8-sprintf.c: Likewise.
15355         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
15356         * lib/unistdio/u8-u8-asprintf.c: Likewise.
15357         * lib/unistdio/u8-u8-snprintf.c: Likewise.
15358         * lib/unistdio/u8-u8-sprintf.c: Likewise.
15359         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
15360         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
15361         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
15362         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
15363         * lib/unistdio/u8-vasnprintf.c: Likewise.
15364         * lib/unistdio/u8-vasprintf.c: Likewise.
15365         * lib/unistdio/u8-vsnprintf.c: Likewise.
15366         * lib/unistdio/u8-vsprintf.c: Likewise.
15367         * lib/unistdio/ulc-asnprintf.c: Likewise.
15368         * lib/unistdio/ulc-asprintf.c: Likewise.
15369         * lib/unistdio/ulc-printf-parse.c: Likewise.
15370         * lib/unistdio/ulc-snprintf.c: Likewise.
15371         * lib/unistdio/ulc-sprintf.c: Likewise.
15372         * lib/unistdio/ulc-vasnprintf.c: Likewise.
15373         * lib/unistdio/ulc-vasprintf.c: Likewise.
15374         * lib/unistdio/ulc-vsnprintf.c: Likewise.
15375         * lib/unistdio/ulc-vsprintf.c: Likewise.
15376         * lib/unistr.h: Likewise.
15377         * lib/unistr/u-cpy-alloc.h: Likewise.
15378         * lib/unistr/u-cpy.h: Likewise.
15379         * lib/unistr/u-endswith.h: Likewise.
15380         * lib/unistr/u-move.h: Likewise.
15381         * lib/unistr/u-set.h: Likewise.
15382         * lib/unistr/u-startswith.h: Likewise.
15383         * lib/unistr/u-stpcpy.h: Likewise.
15384         * lib/unistr/u-stpncpy.h: Likewise.
15385         * lib/unistr/u-strcat.h: Likewise.
15386         * lib/unistr/u-strcpy.h: Likewise.
15387         * lib/unistr/u-strcspn.h: Likewise.
15388         * lib/unistr/u-strdup.h: Likewise.
15389         * lib/unistr/u-strlen.h: Likewise.
15390         * lib/unistr/u-strncat.h: Likewise.
15391         * lib/unistr/u-strncpy.h: Likewise.
15392         * lib/unistr/u-strnlen.h: Likewise.
15393         * lib/unistr/u-strpbrk.h: Likewise.
15394         * lib/unistr/u-strspn.h: Likewise.
15395         * lib/unistr/u-strstr.h: Likewise.
15396         * lib/unistr/u-strtok.h: Likewise.
15397         * lib/unistr/u16-check.c: Likewise.
15398         * lib/unistr/u16-chr.c: Likewise.
15399         * lib/unistr/u16-cmp.c: Likewise.
15400         * lib/unistr/u16-cpy-alloc.c: Likewise.
15401         * lib/unistr/u16-cpy.c: Likewise.
15402         * lib/unistr/u16-endswith.c: Likewise.
15403         * lib/unistr/u16-mblen.c: Likewise.
15404         * lib/unistr/u16-mbsnlen.c: Likewise.
15405         * lib/unistr/u16-mbtouc-aux.c: Likewise.
15406         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
15407         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
15408         * lib/unistr/u16-mbtouc.c: Likewise.
15409         * lib/unistr/u16-mbtoucr.c: Likewise.
15410         * lib/unistr/u16-move.c: Likewise.
15411         * lib/unistr/u16-next.c: Likewise.
15412         * lib/unistr/u16-prev.c: Likewise.
15413         * lib/unistr/u16-set.c: Likewise.
15414         * lib/unistr/u16-startswith.c: Likewise.
15415         * lib/unistr/u16-stpcpy.c: Likewise.
15416         * lib/unistr/u16-stpncpy.c: Likewise.
15417         * lib/unistr/u16-strcat.c: Likewise.
15418         * lib/unistr/u16-strchr.c: Likewise.
15419         * lib/unistr/u16-strcmp.c: Likewise.
15420         * lib/unistr/u16-strcpy.c: Likewise.
15421         * lib/unistr/u16-strcspn.c: Likewise.
15422         * lib/unistr/u16-strdup.c: Likewise.
15423         * lib/unistr/u16-strlen.c: Likewise.
15424         * lib/unistr/u16-strmblen.c: Likewise.
15425         * lib/unistr/u16-strmbtouc.c: Likewise.
15426         * lib/unistr/u16-strncat.c: Likewise.
15427         * lib/unistr/u16-strncmp.c: Likewise.
15428         * lib/unistr/u16-strncpy.c: Likewise.
15429         * lib/unistr/u16-strnlen.c: Likewise.
15430         * lib/unistr/u16-strpbrk.c: Likewise.
15431         * lib/unistr/u16-strrchr.c: Likewise.
15432         * lib/unistr/u16-strspn.c: Likewise.
15433         * lib/unistr/u16-strstr.c: Likewise.
15434         * lib/unistr/u16-strtok.c: Likewise.
15435         * lib/unistr/u16-to-u32.c: Likewise.
15436         * lib/unistr/u16-to-u8.c: Likewise.
15437         * lib/unistr/u16-uctomb-aux.c: Likewise.
15438         * lib/unistr/u16-uctomb.c: Likewise.
15439         * lib/unistr/u32-check.c: Likewise.
15440         * lib/unistr/u32-chr.c: Likewise.
15441         * lib/unistr/u32-cmp.c: Likewise.
15442         * lib/unistr/u32-cpy-alloc.c: Likewise.
15443         * lib/unistr/u32-cpy.c: Likewise.
15444         * lib/unistr/u32-endswith.c: Likewise.
15445         * lib/unistr/u32-mblen.c: Likewise.
15446         * lib/unistr/u32-mbsnlen.c: Likewise.
15447         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
15448         * lib/unistr/u32-mbtouc.c: Likewise.
15449         * lib/unistr/u32-mbtoucr.c: Likewise.
15450         * lib/unistr/u32-move.c: Likewise.
15451         * lib/unistr/u32-next.c: Likewise.
15452         * lib/unistr/u32-prev.c: Likewise.
15453         * lib/unistr/u32-set.c: Likewise.
15454         * lib/unistr/u32-startswith.c: Likewise.
15455         * lib/unistr/u32-stpcpy.c: Likewise.
15456         * lib/unistr/u32-stpncpy.c: Likewise.
15457         * lib/unistr/u32-strcat.c: Likewise.
15458         * lib/unistr/u32-strchr.c: Likewise.
15459         * lib/unistr/u32-strcmp.c: Likewise.
15460         * lib/unistr/u32-strcpy.c: Likewise.
15461         * lib/unistr/u32-strcspn.c: Likewise.
15462         * lib/unistr/u32-strdup.c: Likewise.
15463         * lib/unistr/u32-strlen.c: Likewise.
15464         * lib/unistr/u32-strmblen.c: Likewise.
15465         * lib/unistr/u32-strmbtouc.c: Likewise.
15466         * lib/unistr/u32-strncat.c: Likewise.
15467         * lib/unistr/u32-strncmp.c: Likewise.
15468         * lib/unistr/u32-strncpy.c: Likewise.
15469         * lib/unistr/u32-strnlen.c: Likewise.
15470         * lib/unistr/u32-strpbrk.c: Likewise.
15471         * lib/unistr/u32-strrchr.c: Likewise.
15472         * lib/unistr/u32-strspn.c: Likewise.
15473         * lib/unistr/u32-strstr.c: Likewise.
15474         * lib/unistr/u32-strtok.c: Likewise.
15475         * lib/unistr/u32-to-u16.c: Likewise.
15476         * lib/unistr/u32-to-u8.c: Likewise.
15477         * lib/unistr/u32-uctomb.c: Likewise.
15478         * lib/unistr/u8-check.c: Likewise.
15479         * lib/unistr/u8-chr.c: Likewise.
15480         * lib/unistr/u8-cmp.c: Likewise.
15481         * lib/unistr/u8-cpy-alloc.c: Likewise.
15482         * lib/unistr/u8-cpy.c: Likewise.
15483         * lib/unistr/u8-endswith.c: Likewise.
15484         * lib/unistr/u8-mblen.c: Likewise.
15485         * lib/unistr/u8-mbsnlen.c: Likewise.
15486         * lib/unistr/u8-mbtouc-aux.c: Likewise.
15487         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
15488         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
15489         * lib/unistr/u8-mbtouc.c: Likewise.
15490         * lib/unistr/u8-mbtoucr.c: Likewise.
15491         * lib/unistr/u8-move.c: Likewise.
15492         * lib/unistr/u8-next.c: Likewise.
15493         * lib/unistr/u8-prev.c: Likewise.
15494         * lib/unistr/u8-set.c: Likewise.
15495         * lib/unistr/u8-startswith.c: Likewise.
15496         * lib/unistr/u8-stpcpy.c: Likewise.
15497         * lib/unistr/u8-stpncpy.c: Likewise.
15498         * lib/unistr/u8-strcat.c: Likewise.
15499         * lib/unistr/u8-strchr.c: Likewise.
15500         * lib/unistr/u8-strcmp.c: Likewise.
15501         * lib/unistr/u8-strcpy.c: Likewise.
15502         * lib/unistr/u8-strcspn.c: Likewise.
15503         * lib/unistr/u8-strdup.c: Likewise.
15504         * lib/unistr/u8-strlen.c: Likewise.
15505         * lib/unistr/u8-strmblen.c: Likewise.
15506         * lib/unistr/u8-strmbtouc.c: Likewise.
15507         * lib/unistr/u8-strncat.c: Likewise.
15508         * lib/unistr/u8-strncmp.c: Likewise.
15509         * lib/unistr/u8-strncpy.c: Likewise.
15510         * lib/unistr/u8-strnlen.c: Likewise.
15511         * lib/unistr/u8-strpbrk.c: Likewise.
15512         * lib/unistr/u8-strrchr.c: Likewise.
15513         * lib/unistr/u8-strspn.c: Likewise.
15514         * lib/unistr/u8-strstr.c: Likewise.
15515         * lib/unistr/u8-strtok.c: Likewise.
15516         * lib/unistr/u8-to-u16.c: Likewise.
15517         * lib/unistr/u8-to-u32.c: Likewise.
15518         * lib/unistr/u8-uctomb-aux.c: Likewise.
15519         * lib/unistr/u8-uctomb.c: Likewise.
15520         * lib/unitypes.h: Likewise.
15521         * lib/uniwidth.h: Likewise.
15522         * lib/uniwidth/cjk.h: Likewise.
15523         * lib/uniwidth/u16-strwidth.c: Likewise.
15524         * lib/uniwidth/u16-width.c: Likewise.
15525         * lib/uniwidth/u32-strwidth.c: Likewise.
15526         * lib/uniwidth/u32-width.c: Likewise.
15527         * lib/uniwidth/u8-strwidth.c: Likewise.
15528         * lib/uniwidth/u8-width.c: Likewise.
15529         * lib/uniwidth/width.c: Likewise.
15530
15531 2007-10-07  Bruno Haible  <bruno@clisp.org>
15532
15533         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
15534         The file is still under LGPL (see modules/inttypes).
15535
15536 2007-10-06  Bruno Haible  <bruno@clisp.org>
15537
15538         * modules/trunc (Dependencies): Add 'extensions'.
15539         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
15540         Reported by Ben Pfaff <blp@gnu.org>.
15541
15542 2007-10-06  Bruno Haible  <bruno@clisp.org>
15543
15544         * modules/freopen-tests: New file.
15545         * tests/test-freopen.c: New file.
15546
15547         * modules/fopen-tests: New file.
15548         * tests/test-fopen.c: New file.
15549
15550         * modules/fopen: New file.
15551         * lib/fopen.c: New file.
15552         * m4/fopen.m4: New file.
15553         * modules/freopen: New file.
15554         * lib/freopen.c: New file.
15555         * m4/freopen.m4: New file.
15556         * lib/stdio.in.h (fopen, freopen): New declarations.
15557         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
15558         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
15559         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
15560         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
15561         * doc/functions/fopen.texi: Mention the 'fopen' module.
15562         * doc/functions/freopen.texi: Mention the 'freopen' module.
15563
15564 2007-10-06  Bruno Haible  <bruno@clisp.org>
15565
15566         * modules/open-tests: New file.
15567         * tests/test-open.c: New file.
15568
15569         * modules/open: New file.
15570         * lib/open.c: New file.
15571         * m4/open.m4: New file.
15572         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
15573         lib/open.c does.
15574         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
15575         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
15576         macros.
15577         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
15578         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
15579         REPLACE_OPEN.
15580         * doc/functions/open.texi: Mention the 'open' module.
15581
15582 2007-10-04  Bruno Haible  <bruno@clisp.org>
15583
15584         * modules/ceill-tests: New file.
15585         * tests/test-ceill.c: New file.
15586
15587         * modules/ceill: New file.
15588         * lib/ceill.c: Replace entire file.
15589         * m4/ceill.m4: New file.
15590         * lib/math.in.h (ceill): Replace declaration.
15591         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
15592         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
15593         * doc/functions/ceill.texi: Mention the 'ceill' module.
15594         * modules/mathl (Files): Remove lib/ceill.c.
15595         (Depends-on): Add ceill.
15596
15597 2007-10-04  Bruno Haible  <bruno@clisp.org>
15598
15599         * modules/ceilf-tests: New file.
15600         * tests/test-ceilf.c: New file.
15601
15602         * modules/ceilf: New file.
15603         * lib/ceil.c: New file.
15604         * lib/ceilf.c: New file.
15605         * m4/ceilf.m4: New file.
15606         * lib/math.in.h (ceilf): New declaration.
15607         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
15608         HAVE_DECL_CEILF.
15609         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
15610         HAVE_DECL_CEILF.
15611         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
15612
15613 2007-10-04  Bruno Haible  <bruno@clisp.org>
15614
15615         * modules/floorl-tests: New file.
15616         * tests/test-floorl.c: New file.
15617
15618         * modules/floorl: New file.
15619         * lib/floorl.c: Replace entire file.
15620         * m4/floorl.m4: New file.
15621         * lib/math.in.h (floorl): Replace declaration.
15622         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
15623         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
15624         * doc/functions/floorl.texi: Mention the 'floorl' module.
15625         * modules/mathl (Files): Remove lib/floorl.c.
15626         (Depends-on): Add floorl.
15627
15628 2007-10-04  Bruno Haible  <bruno@clisp.org>
15629
15630         * modules/floorf-tests: New file.
15631         * tests/test-floorf.c: New file.
15632
15633         * modules/floorf: New file.
15634         * lib/floor.c: New file.
15635         * lib/floorf.c: New file.
15636         * m4/floorf.m4: New file.
15637         * lib/math.in.h (floorf): New declaration.
15638         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
15639         HAVE_DECL_FLOORF.
15640         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
15641         HAVE_DECL_FLOORF.
15642         * doc/functions/floorf.texi: Mention the 'floorf' module.
15643
15644 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
15645             Bruno Haible  <bruno@clisp.org>
15646
15647         Advertise for the Git server instead of the CVS server.
15648         * doc/gnulib-intro.texi (Steady Development): Mention the Git
15649         repository instead of the CVS one.
15650         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
15651         about all VCS systems generically.
15652         * doc/gnulib.texi (Introduction): Capitalize `Git'.
15653
15654 2007-10-04  Bruno Haible  <bruno@clisp.org>
15655
15656         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
15657         means.
15658         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
15659
15660 2007-10-04  Bruno Haible  <bruno@clisp.org>
15661
15662         * modules/truncl-tests: New file.
15663         * tests/test-truncl.c: New file.
15664
15665         * modules/truncl: New file.
15666         * lib/truncl.c: New file.
15667         * m4/truncl.m4: New file.
15668         * lib/math.in.h (truncl): New declaration.
15669         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
15670         HAVE_DECL_TRUNCL.
15671         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
15672         HAVE_DECL_TRUNCL.
15673         * doc/functions/truncl.texi: Mention the 'truncl' module.
15674
15675 2007-10-04  Bruno Haible  <bruno@clisp.org>
15676
15677         * modules/truncf-tests: New file.
15678         * tests/test-truncf.c: New file.
15679
15680         * modules/truncf: New file.
15681         * lib/trunc.c: Make paramerizable through USE_* macros.
15682         * lib/truncf.c: New file.
15683         * m4/truncf.m4: New file.
15684         * lib/math.in.h (truncf): New declaration.
15685         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
15686         HAVE_DECL_TRUNCF.
15687         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
15688         HAVE_DECL_TRUNCF.
15689         * doc/functions/truncf.texi: Mention the 'truncf' module.
15690
15691 2007-10-03  Bruno Haible  <bruno@clisp.org>
15692
15693         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
15694         augmentation also for tests modules.
15695         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
15696         * modules/atexit-tests (Makefile.am): Likewise.
15697         * modules/binary-io-tests (Makefile.am): Likewise.
15698         * modules/c-strcase-tests (Makefile.am): Likewise.
15699         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
15700         * modules/canonicalize-tests (Makefile.am): Likewise.
15701         * modules/closein-tests (Makefile.am): Likewise.
15702         * modules/fprintf-posix-tests (Makefile.am): Likewise.
15703         * modules/freadahead-tests (Makefile.am): Likewise.
15704         * modules/fseek-tests (Makefile.am): Likewise.
15705         * modules/fseeko-tests (Makefile.am): Likewise.
15706         * modules/ftell-tests (Makefile.am): Likewise.
15707         * modules/ftello-tests (Makefile.am): Likewise.
15708         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
15709         * modules/isnanl-tests (Makefile.am): Likewise.
15710         * modules/lseek-tests (Makefile.am): Likewise.
15711         * modules/mbscasecmp-tests (Makefile.am): Likewise.
15712         * modules/mbscasestr-tests (Makefile.am): Likewise.
15713         * modules/mbschr-tests (Makefile.am): Likewise.
15714         * modules/mbscspn-tests (Makefile.am): Likewise.
15715         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
15716         * modules/mbspbrk-tests (Makefile.am): Likewise.
15717         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
15718         * modules/mbsrchr-tests (Makefile.am): Likewise.
15719         * modules/mbsspn-tests (Makefile.am): Likewise.
15720         * modules/mbsstr-tests (Makefile.am): Likewise.
15721         * modules/printf-posix-tests (Makefile.am): Likewise.
15722         * modules/snprintf-posix-tests (Makefile.am): Likewise.
15723         * modules/sprintf-posix-tests (Makefile.am): Likewise.
15724         * modules/tsearch-tests (Makefile.am): Likewise.
15725         * modules/uniname/uniname-tests (Makefile.am): Likewise.
15726         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
15727         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
15728         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
15729         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
15730         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
15731         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
15732         * modules/vprintf-posix-tests (Makefile.am): Likewise.
15733         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
15734         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
15735         * modules/xstrtoimax-tests (Makefile.am): Likewise.
15736         * modules/xstrtol-tests (Makefile.am): Likewise.
15737         * modules/xstrtoumax-tests (Makefile.am): Likewise.
15738         * modules/yesno-tests (Makefile.am): Likewise.
15739
15740 2007-10-03  Bruno Haible  <bruno@clisp.org>
15741
15742         * modules/trunc-tests: New file.
15743         * tests/test-trunc.c: New file.
15744
15745         * modules/trunc: New file.
15746         * lib/trunc.c: New file.
15747         * m4/trunc.m4: New file.
15748         * lib/math.in.h (trunc): New declaration.
15749         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
15750         HAVE_DECL_TRUNC.
15751         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
15752         HAVE_DECL_TRUNC.
15753         * doc/functions/trunc.texi: Mention the 'trunc' module.
15754
15755 2007-10-03  Bruno Haible  <bruno@clisp.org>
15756
15757         * tests/test-fpending.c: New file, mostly copied
15758         from coreutils/lib/t-fpending.c.
15759         * modules/fpending-tests: New file.
15760
15761 2007-10-03  Bruno Haible  <bruno@clisp.org>
15762
15763         Port the stdio extensions to QNX (untested).
15764         * lib/fseterr.c (fseterr): Add support for QNX.
15765         * lib/fbufmode.c (fbufmode): Likewise.
15766         * lib/freadable.c (freadable): Likewise.
15767         * lib/fwritable.c (fwritable): Likewise.
15768         * lib/freading.c (freading): Likewise.
15769         * lib/fwriting.c (fwriting): Likewise.
15770         * lib/freadahead.c (freadahed): Likewise.
15771         * lib/fpurge.c (fpurge): Likewise.
15772         * lib/fseeko.c (rpl_fseeko): Likewise.
15773
15774 2007-10-03  Bruno Haible  <bruno@clisp.org>
15775             Jim Meyering  <jim@meyering.net>
15776             Eric Blake  <ebb9@byu.net>
15777
15778         * doc/relocatable.texi: Use @command instead of @program.
15779
15780 2007-10-02  Jim Meyering  <jim@meyering.net>
15781
15782         Perform one more "_.h" -> ".in.h" substitution.
15783         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
15784         instead of unistd_.h here, too.
15785
15786 2007-10-01  Bruno Haible  <bruno@clisp.org>
15787
15788         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
15789         Needed for the alloca-opt module.
15790
15791 2007-09-30  Bruno Haible  <bruno@clisp.org>
15792
15793         * lib/alloca.in.h: Renamed from lib/alloca_.h.
15794         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
15795         alloca_.h.
15796         * lib/argz.in.h: Renamed from lib/argz_.h.
15797         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
15798         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
15799         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
15800         byteswap_.h.
15801         * lib/dirent.in.h: Renamed from lib/dirent_.h.
15802         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
15803         dirent_.h.
15804         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
15805         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
15806         fcntl_.h.
15807         * lib/float.in.h: Renamed from lib/float_.h.
15808         * modules/float (Files, Makefile.am): Use float.in.h instead of
15809         float_.h.
15810         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
15811         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
15812         fnmatch_.h.
15813         * lib/getopt.in.h: Renamed from lib/getopt_.h.
15814         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
15815         getopt_.h.
15816         * lib/glob.in.h: Renamed from lib/glob_.h.
15817         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
15818         * lib/iconv.in.h: Renamed from lib/iconv_.h.
15819         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
15820         iconv_.h.
15821         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
15822         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
15823         inttypes_.h.
15824         * lib/locale.in.h: Renamed from lib/locale_.h.
15825         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
15826         locale_.h.
15827         * lib/math.in.h: Renamed from lib/math_.h.
15828         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
15829         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
15830         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
15831         of netinet_in_.h. Add dependency.
15832         * lib/poll.in.h: Renamed from lib/poll_.h.
15833         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
15834         * lib/search.in.h: Renamed from lib/search_.h.
15835         * modules/search (Files, Makefile.am): Use search.in.h instead of
15836         search_.h.
15837         * lib/signal.in.h: Renamed from lib/signal_.h.
15838         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
15839         _signal.h.
15840         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
15841         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
15842         stdbool_.h.
15843         * lib/stdint.in.h: Renamed from lib/stdint_.h.
15844         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
15845         stdint_.h.
15846         * lib/stdio.in.h: Renamed from lib/stdio_.h.
15847         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
15848         stdio_.h.
15849         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
15850         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
15851         stdlib_.h.
15852         * lib/string.in.h: Renamed from lib/string_.h.
15853         * modules/string (Files, Makefile.am): Use string.in.h instead of
15854         string_.h.
15855         * doc/gnulib-tool.texi (Initial import): Update.
15856         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
15857         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
15858         of sys_select_.h. Add dependency.
15859         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
15860         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
15861         of sys_socket_.h.
15862         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
15863         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
15864         sys_stat_.h.
15865         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
15866         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
15867         sys_time_.h.
15868         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
15869         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
15870         sysexits_.h.
15871         * lib/time.in.h: Renamed from lib/time_.h.
15872         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
15873         * lib/unistd.in.h: Renamed from lib/unistd_.h.
15874         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
15875         unistd_.h.
15876         * lib/wchar.in.h: Renamed from lib/wchar_.h.
15877         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
15878         wchar_.h.
15879         * lib/wctype.in.h: Renamed from lib/wctype_.h.
15880         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
15881         wctype_.h.
15882         * build-aux/bootstrap (slurp): Update.
15883         * lib/.cppi-disable: Update.
15884
15885 2007-09-30  Bruno Haible  <bruno@clisp.org>
15886
15887         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
15888         Needed on BeOS.
15889
15890 2007-09-30  Bruno Haible  <bruno@clisp.org>
15891
15892         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
15893
15894 2007-09-29  Bruno Haible  <bruno@clisp.org>
15895
15896         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
15897
15898 2007-09-29  Bruno Haible  <bruno@clisp.org>
15899
15900         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
15901         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
15902         * build-aux/install-reloc: Compile also areadlink.c.
15903         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
15904
15905 2007-09-29  Bruno Haible  <bruno@clisp.org>
15906
15907         * gnulib-tool (func_emit_initmacro_done): Indentation.
15908
15909 2007-09-29  Bruno Haible  <bruno@clisp.org>
15910
15911         * README: Add CVS checkout update instructions.
15912         Info from Bob Proulx <bob@proulx.com>.
15913
15914 2007-09-28  Eric Blake  <ebb9@byu.net>
15915
15916         Provide move-if-change.
15917         * build-aux/move-if-change: New file, based on best practice
15918         rather than any canonical upstream location.
15919
15920 2007-09-28  Jim Meyering  <jim@meyering.net>
15921
15922         Fix canonicalize loop-detection corner case.
15923         Do not attempt to stat the symlink values stored via seen_triple.
15924         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
15925         on linux-2.6.18, (but not 2.6.22).
15926         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
15927         triple_compare.  The former compares dev,ino,filename, while the latter
15928         would actually stat dirname(filename) when dev and ino were equal.
15929         * lib/hash-triple.c: Install <string.h>.
15930         (STREQ): Define.
15931         (triple_compare_ino_str): New function.
15932         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
15933
15934 2007-09-28  Eric Blake  <ebb9@byu.net>
15935
15936         Enforce that AC_REPLACE_FUNCS files exist.
15937         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
15938         override check for typos.
15939
15940         Fix test-closein on Solaris 10.
15941         * tests/test-closein.c (main): Don't assume stdin can be inherited
15942         closed on all systems.
15943         * tests/test-closein.sh: Likewise.
15944         Reported by Piotr Tarnowski.
15945
15946 2007-09-28  Jim Meyering  <jim@meyering.net>
15947
15948         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
15949
15950 2007-09-27  Jim Meyering  <jim@meyering.net>
15951
15952         canonicalize: Avoid a false-positive cycle failure.
15953         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
15954         Sort.  Remove cycle-check.
15955         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
15956         not cycle-check.h.
15957         (seen_triple): New function.
15958         (canonicalize_filename_mode): Use it instead of cycle-check.
15959         * tests/test-canonicalize.c: Add a test for this bug.
15960         * tests/test-canonicalize.sh: Set up and run the test.
15961
15962         New module, file-set, from coreutils.
15963         * modules/file-set: Define it.
15964         * lib/file-set.c, lib/file-set.h: Implement.
15965
15966         New module, hash-triple, from coreutils.
15967         * modules/hash-triple: Define it.
15968         * lib/hash-triple.c, lib/hash-triple.h: Implement.
15969
15970 2007-09-25  Eric Blake  <ebb9@byu.net>
15971
15972         Fix strerror on Interix.
15973         * lib/string_.h (strerror): Declare replacement.
15974         * doc/functions/strerror.texi (strerror): Document the Interix
15975         shortcoming.
15976         * modules/string (Makefile.am): Support new hooks.
15977         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
15978         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
15979         gl_FUNC_STRERROR_SEPARATE.
15980         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
15981         * lib/strerror.c (rpl_strerror): Provide replacement.
15982         * modules/strerror (Depends-on): Add string.
15983         (configure.ac): Detect use of module.
15984         * tests/test-strerror.c: New file.
15985         * modules/strerror-tests: New test module.
15986         * modules/argp (Depends-on): Add strerror.
15987         * modules/error (Depends-on): Likewise.
15988         Reported by Martin Koeppe.
15989
15990 2007-09-24  Bruno Haible  <bruno@clisp.org>
15991
15992         * README: Update git instructions.
15993
15994 2007-09-24  Eric Blake  <ebb9@byu.net>
15995
15996         Revert fpending breakage from 2007-09-08.
15997         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
15998         __fpending.c.
15999
16000 2007-09-24  Jim Meyering  <jim@meyering.net>
16001
16002         filenamecat.c: Add a test.
16003         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
16004         showing how the function works when DIR is the empty string.
16005
16006 2007-09-21  Simon Josefsson  <simon@josefsson.org>
16007
16008         * tests/test-canonicalize.sh: Turn on executable bit.
16009
16010 2007-09-19  Eric Blake  <ebb9@byu.net>
16011
16012         * README: Update CVS instructions.
16013
16014 2007-09-18  Bruno Haible  <bruno@clisp.org>
16015
16016         * modules/areadlink: New file.
16017         * lib/areadlink.h (areadlink): New declaration.
16018         * lib/areadlink.c: New file, based on lib/xreadlink.c.
16019
16020 2007-09-17  Jim Meyering  <jim@meyering.net>
16021
16022         * lib/savewd.c (ESTALE) [!defined]: Define.
16023         Reported to be required on Interix by Martin Koeppe.
16024
16025 2007-09-17  Bruno Haible  <bruno@clisp.org>
16026
16027         * gnulib-tool (func_version): Use $version.
16028
16029 2007-09-16  Bruno Haible  <bruno@clisp.org>
16030
16031         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
16032         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
16033         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
16034         Reported by Greg Schafer <gschafer@zip.com.au>.
16035
16036 2007-09-15  Bruno Haible  <bruno@clisp.org>
16037
16038         * gnulib-tool (sed): Try a little harder to make bash understand the
16039         alias.
16040         Reported by Bruce Korb <bruce.korb@gmail.com>.
16041
16042 2007-09-13  Eric Blake  <ebb9@byu.net>
16043
16044         * ChangeLog: Remove conflict markers.
16045
16046 2007-09-13  Simon Josefsson  <simon@josefsson.org>
16047
16048         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
16049         Reported by Bruno Haible <bruno@clisp.org>.
16050
16051 2007-09-12  Bruno Haible  <bruno@clisp.org>
16052
16053         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
16054         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
16055         is not defined.
16056
16057 2007-09-12  Eric Blake  <ebb9@byu.net>
16058
16059         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
16060         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
16061         Autoconf definition.
16062         * modules/euidaccess (Depends-on): Add extensions, for
16063         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
16064         * modules/fnmatch (Depends-on): Likewise.
16065         * modules/getaddrinfo (Depends-on): Likewise.
16066         * modules/getdelim (Depends-on): Likewise.
16067         * modules/getline (Depends-on): Likewise.
16068         * modules/getsubopt (Depends-on): Likewise.
16069         * modules/gettext (Depends-on): Likewise.
16070         * modules/group-member (Depends-on): Likewise.
16071         * modules/mbchar (Depends-on): Likewise.
16072         * modules/memmem (Depends-on): Likewise.
16073         * modules/mempcpy (Depends-on): Likewise.
16074         * modules/memrchr (Depends-on): Likewise.
16075         * modules/pagealign_alloc (Depends-on): Likewise.
16076         * modules/readutmp (Depends-on): Likewise.
16077         * modules/stpcpy (Depends-on): Likewise.
16078         * modules/stpncpy (Depends-on): Likewise.
16079         * modules/strchrnul (Depends-on): Likewise.
16080         * modules/strndup (Depends-on): Likewise.
16081         * modules/strsep (Depends-on): Likewise.
16082         * modules/strverscmp (Depends-on): Likewise.
16083         * modules/vasprintf (Depends-on): Likewise.
16084         * modules/wcwidth (Depends-on): Likewise.
16085         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
16086         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
16087         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
16088         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
16089         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
16090         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16091         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
16092         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
16093         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
16094         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
16095         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
16096         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
16097         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
16098         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
16099         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
16100         * m4/readutmp.m4 (gl_READUTMP): Likewise.
16101         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16102         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
16103         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16104         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
16105         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
16106         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
16107         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
16108         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
16109         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
16110         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
16111         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
16112         so that lock.m4 can be used in gettext without extensions module.
16113
16114 2007-09-11  Bruno Haible  <bruno@clisp.org>
16115
16116         * m4/isc-posix.m4: Remove file.
16117         Suggested by Eric Blake.
16118
16119 2007-09-11  Eric Blake  <ebb9@byu.net>
16120
16121         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
16122
16123 2007-09-10  Bruno Haible  <bruno@clisp.org>
16124
16125         * posix-modules: Fix typo in error message.
16126         Reported by Matt <mkraai@beckman.com>.
16127
16128 2007-09-09  Bruno Haible  <bruno@clisp.org>
16129
16130         * doc/functions/getdelim.texi: Update list of platforms lacking the
16131         function.
16132         * doc/functions/getline.texi: Likewise.
16133
16134 2007-09-09  Jim Meyering  <jim@meyering.net>
16135
16136         * lib/hash.c (hash_initialize): Detect calloc failure.
16137         Reported by Bruno Haible.
16138
16139 2007-09-09  Bruno Haible  <bruno@clisp.org>
16140
16141         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
16142         malloc or realloc fails.
16143
16144 2007-09-09  Bruno Haible  <bruno@clisp.org>
16145
16146         * modules/getcwd (Depends-on): Add malloc-posix.
16147         * modules/glob (Depends-on): Likewise.
16148         * modules/putenv (Depends-on): Likewise.
16149         * modules/strdup (Depends-on): Likewise.
16150         * modules/getdelim (Depends-on): Add realloc-posix.
16151         * modules/read-file (Depends-on): Likewise.
16152
16153 2007-09-09  Bruno Haible  <bruno@clisp.org>
16154
16155         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
16156         (gl_FUNC_MALLOC_POSIX): Require it.
16157         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
16158         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
16159         * modules/realloc (Files): Add m4/malloc.m4.
16160         * modules/calloc (Files): Likewise.
16161
16162 2007-09-09  Bruno Haible  <bruno@clisp.org>
16163
16164         * modules/malloc-posix: New file.
16165         * modules/malloc (Depends-on): Add malloc-posix.
16166         * lib/malloc.c: Include errno.h.
16167         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
16168         and a POSIX-compatible malloc into a single function. Set ENOMEM
16169         when returning NULL.
16170         * m4/malloc.m4: New file.
16171         * doc/functions/malloc.texi: Mention the malloc-posix module.
16172         * lib/stdlib_.h (malloc): New declaration.
16173         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16174         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
16175         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
16176         and HAVE_MALLOC_POSIX.
16177
16178 2007-09-09  Bruno Haible  <bruno@clisp.org>
16179
16180         * modules/realloc-posix: New file.
16181         * modules/realloc (Depends-on): Add realloc-posix.
16182         * lib/realloc.c: Include errno.h.
16183         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
16184         and a POSIX-compatible realloc into a single function. Set ENOMEM
16185         when returning NULL.
16186         * m4/realloc.m4: New file.
16187         * doc/functions/realloc.texi: Mention the realloc-posix module.
16188         * lib/stdlib_.h (realloc): New declaration.
16189         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16190         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
16191         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
16192         and HAVE_REALLOC_POSIX.
16193
16194 2007-09-09  Bruno Haible  <bruno@clisp.org>
16195
16196         * modules/calloc-posix: New file.
16197         * modules/calloc (Depends-on): Add calloc-posix.
16198         * lib/calloc.c: Include errno.h.
16199         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
16200         and a POSIX-compatible calloc into a single function. Set ENOMEM
16201         when returning NULL.
16202         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
16203         * doc/functions/calloc.texi: Mention the calloc-posix module.
16204         * lib/stdlib_.h (calloc): New declaration.
16205         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
16206         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
16207         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
16208         and HAVE_CALLOC_POSIX.
16209
16210 2007-09-09  Bruno Haible  <bruno@clisp.org>
16211
16212         Allow for modules to show an arbitrary notice.
16213         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
16214         * gnulib-tool: New option --extract-notice.
16215         (func_usage): Document it.
16216         (sed_extract_prog): Update.
16217         (func_get_notice): New function.
16218         (func_modules_notice): New function.
16219         (func_import, func_create_testdir): Invoke it.
16220         Suggested by Jim Meyering.
16221
16222 2007-09-09  Bruno Haible  <bruno@clisp.org>
16223
16224         * gnulib-tool: New options --verbose, --quiet.
16225         (func_usage): Document them.
16226         (verbose): New variable.
16227         (func_execute_command): New function.
16228         (func_import): Don't show the module list and the file list if
16229         $verbose < 0.
16230         (func_create_testdir): Likewise. Use func_execute_command.
16231         (func_create_megatestdir): Use func_execute_command.
16232
16233 2007-09-08  Bruno Haible  <bruno@clisp.org>
16234
16235         * gnulib-tool (func_import): Prefer rsync over wget when available,
16236         for fetching the PO files.
16237
16238 2007-09-08  Bruno Haible  <bruno@clisp.org>
16239
16240         * posix-modules: New file. Portions copied from gnulib-tool.
16241         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
16242
16243 2007-09-08  Jim Meyering  <jim@meyering.net>
16244
16245         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
16246         * lib/fpending.h: Rename from __fpending.h.
16247         * lib/fpending.c: Rename from __fpending.c.
16248         Include "fpending.h", not "__fpending.h".
16249         * lib/__fpending.h, lib/__fpending.c: Remove files.
16250         * modules/fpending (Files): Reflect new file names.
16251         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
16252
16253 2007-09-08  Bruno Haible  <bruno@clisp.org>
16254
16255         * m4/inttypes-h.m4: Remove stub file.
16256
16257 2007-09-07  Simon Josefsson  <simon@josefsson.org>
16258
16259         * doc/headers/stdint.texi: Discuss #include_next issue.
16260
16261 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
16262
16263         * build-aux/bootstrap: Remove obsolete comment about wget --help.
16264
16265 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16266
16267         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
16268         in variable name.
16269
16270 2007-09-03  Jim Meyering  <jim@meyering.net>
16271
16272         New module: git-version-gen.
16273         * modules/git-version-gen: New file.
16274
16275         Import changes from coreutils for bootstrap script.
16276
16277         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
16278
16279         bootstrap: uses rsync to download the .po files
16280         * build-aux/bootstrap (po_download_command_format): New global.
16281         (download_po_files): Use rsync.
16282         (update_po_files): Don't remove .po files after download,
16283         so future rsync runs can take advantage of the copies.
16284
16285         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
16286
16287         Solve the unnecessary-.po-file-regeneration problem once and for all.
16288         * build-aux/bootstrap (download_po_files): New function, renamed from
16289         get_translations.  Now, downloads, but doesn't update LINGUAS.
16290         (update_po_files): New function.
16291
16292         bootstrap: Ignore more.
16293         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
16294         uniwidth to e.g., lib/.gitignore.
16295         (slurp): Handle the sys_stat_.h -> sys mapping, too.
16296
16297         * build-aux/bootstrap: New setting: vc_ignore.
16298         (insert_sorted_if_absent): Create $file if absent.
16299         Adapt to new, possibly empty, list: $vc_ignore.
16300
16301         bootstrap: generate more ignorable names
16302         * build-aux/bootstrap (slurp): When generating ignorable names,
16303         also map .sin to .sed, .gperf to .c, and .y to .c.
16304
16305 2007-09-03  Jim Meyering  <jim@meyering.net>
16306
16307         * build-aux/git-version-gen: New file, from coreutils.  For details, see
16308         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
16309
16310 2007-09-02  Bruno Haible  <bruno@clisp.org>
16311
16312         Fix mis-recognition of 'mcs' on QNX 6.
16313         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
16314         output contains the string "Mono".
16315         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
16316         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
16317
16318 2007-09-01  Bruno Haible  <bruno@clisp.org>
16319
16320         Fix collision between uniwidth/* and linebreak modules.
16321         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
16322         u32_width): Remove declarations.
16323         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
16324         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
16325         streq3, streq2, streq1, streq0): Remove functions.
16326         (STREQ): Remove macro.
16327         (is_cjk_encoding): Remove function.
16328         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
16329         (uc_width, u8_width, u16_width, u32_width): Remove functions.
16330         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
16331         * NEWS: Document the change.
16332
16333 2007-09-01  Bruno Haible  <bruno@clisp.org>
16334
16335         * lib/streq.h: Add double-inclusion guard.
16336
16337 2007-09-01  Karl Berry  <karl@gnu.org>
16338
16339         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
16340
16341 2007-08-28  Jim Meyering  <jim@meyering.net>
16342
16343         Rename mreadlink_with_size to areadlink_with_size.
16344         * NEWS: Document the change.
16345         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
16346         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
16347         * lib/mreadlink.h: Rename this to...
16348         * lib/areadlink.h: ...this.
16349         * modules/mreadlink-with-size: Rename this to...
16350         * modules/areadlink-with-size: ...this.
16351         * lib/canonicalize.c: Reflect the renaming.
16352         * modules/canonicalize: Likewise.
16353
16354 2007-08-26  Bruno Haible  <bruno@clisp.org>
16355
16356         * gnulib-tool (func_import): When deciding which files to remove,
16357         consider also dangling symbolic links.
16358         Reported by Eric Blake.
16359
16360 2007-08-26  Bruno Haible  <bruno@clisp.org>
16361
16362         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
16363
16364 2007-08-23  Simon Josefsson  <simon@josefsson.org>
16365
16366         * lib/readline.c: Don't include getline.h, the prototype is now
16367         found in stdio.h.
16368
16369 2007-08-23  Jim Meyering  <jim@meyering.net>
16370
16371         Getdelim touchup.
16372         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
16373         around the funlockfile call, since funlockfile never sets errno.
16374         Don't set errno upon failed realloc.
16375
16376 2007-08-22  Eric Blake  <ebb9@byu.net>
16377
16378         Getline touchups.
16379         * lib/getdelim.c (getdelim): Revert regression that required *n to
16380         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
16381         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
16382         getdelim, rather than whether implementation is missing.
16383         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
16384         * lib/stdio_.h (getline): Also declare if replacement is
16385         required.
16386         * doc/functions/getdelim.texi: New file.
16387         * doc/functions/getline.texi: Likewise.
16388         * doc/gnulib.texi (Function Substitutes): Add new files.
16389         Reported by Bruno Haible.
16390
16391 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
16392
16393         * users.txt: Add Guile.
16394
16395 2007-08-22  Eric Blake  <ebb9@byu.net>
16396
16397         * tests/test-getdelim.c (main): Use remove, not unlink.
16398         * tests/test-getline.c (main): Likewise.
16399
16400         Move getline and getdelim into stdio.h, per POSIX 200x.
16401         * modules/getline (Files): Remove getline.h.
16402         (Depends-on): Add stdio.
16403         (configure.ac): Add module indicator.
16404         * modules/getdelim (Files): Remove getdelim.h.
16405         (Depends-on): Add stdio.
16406         (configure.ac): Add module indicator.
16407         * modules/stdio (Makefile.am): Work with new indicators.
16408         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
16409         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
16410         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
16411         * lib/getdelim.h: Delete.
16412         * lib/getline.h: Delete.
16413         * lib/stdio_.h (getdelim, getline): Declare.
16414         * modules/getdelim-tests: New module.
16415         * modules/getline-tests: Likewise.
16416         * tests/test-getdelim.c: New file.
16417         * tests/test-getline.c: Likewise.
16418         * NEWS: Document the change.
16419         * lib/getline.c: Update choice of header.
16420         * lib/csharpcomp.c: Likewise.
16421         * lib/getpass.c: Likewise.
16422         * lib/javacomp.c: Likewise.
16423         * lib/javaversion.c: Likewise.
16424         * lib/yesno.c: Likewise.
16425         * lib/getdelim.c: Likewise.
16426         (getdelim): Set errno on failure, and avoid memory leak.
16427
16428 2007-08-19  Bruno Haible  <bruno@clisp.org>
16429
16430         * modules/closein (Depends-on): Add freadahead.
16431         * lib/closein.c: Include freadahead.h.
16432         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
16433         is zero.
16434
16435 2007-08-19  Bruno Haible  <bruno@clisp.org>
16436
16437         * modules/freadahead-tests: New file.
16438         * tests/test-freadahead.sh: New file.
16439         * tests/test-freadahead.c: New file.
16440
16441         * modules/freadahead: New file.
16442         * lib/freadahead.h: New file.
16443         * lib/freadahead.c: New file.
16444         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
16445         fbufmode, fpurge, freadable, fwritable.
16446
16447 2007-08-19  Eric Blake  <ebb9@byu.net>
16448
16449         Test yesno in combination with closein.
16450         * lib/yesno.c (yesno): Document use of stdin.
16451         * modules/yesno-tests (Files): New module.
16452         * tests/test-yesno.c (main): New file.
16453         * tests/test-yesno.sh: Likewise.
16454
16455 2007-08-19  Bruno Haible  <bruno@clisp.org>
16456
16457         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
16458         * lib/fseeko.c (rpl_fseeko): Likewise.
16459         * lib/fseterr.c (fseterr): Likewise.
16460
16461 2007-08-19  Bruno Haible  <bruno@clisp.org>
16462
16463         * tests/test-lseek.c (main): Disable a test for BeOS.
16464         * doc/functions/lseek.texi: Document the BeOS bug.
16465
16466 2007-08-19  Bruno Haible  <bruno@clisp.org>
16467             Eric Blake  <ebb9@byu.net>
16468
16469         * lib/lseek.c: Include <sys/stat.h>.
16470         (rpl_lseek): Add workaround code also for Unix platforms.
16471         Needed for BeOS.
16472         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
16473         * doc/functions/lseek.texi: Document BeOS definiency.
16474
16475 2007-08-18  Bruno Haible  <bruno@clisp.org>
16476
16477         * modules/fstrcmp-tests: New file.
16478         * tests/test-fstrcmp.c: New file.
16479
16480 2007-08-18  Bruno Haible  <bruno@clisp.org>
16481
16482         * modules/fstrcmp: New file, from GNU gettext with modifications.
16483         * lib/fstrcmp.h: New file, from GNU gettext.
16484         * lib/fstrcmp.c: New file, from GNU gettext.
16485         * MODULES.html.sh (String handling): Add fstrcmp.
16486
16487 2007-08-18  Bruno Haible  <bruno@clisp.org>
16488
16489         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
16490         'bool'.
16491         (diag, compareseq): Remove const from the ctxt argument.
16492         (USE_HEURISTIC): Undefine at the end.
16493
16494 2007-08-18  Jim Meyering  <jim@meyering.net>
16495
16496         New file: lib/idcache.h
16497         * NEWS: Mention the addition.
16498         * modules/idcache (Files): Add lib/idcache.h
16499         * lib/idcache.c: Include "idcache.h".
16500         Don't include <sys/types.h>.
16501         Add a FIXME comment.
16502         Move file-scoped "static" declarations to the top.
16503         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
16504
16505 2007-08-17  Bruno Haible  <bruno@clisp.org>
16506         and Paul Eggert  <eggert@cs.ucla.edu>
16507
16508         * MODULES.html.sh: Add diffseq.
16509         * modules/diffseq: New file.
16510         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
16511         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
16512
16513 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
16514
16515         Import changes from coreutils for bootstrap script.
16516
16517         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
16518
16519         * build-aux/bootstrap (slurp): Work even in environments where
16520         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
16521         current code does not slurp files whose names start with ".", and
16522         this looks like it might be a troublesome area.
16523
16524         2007-07-11  Jim Meyering  <jim@meyering.net>
16525
16526         If there's a GPL vN copyright comment, require that N == 3.
16527
16528         2007-07-08  Jim Meyering  <jim@meyering.net>
16529
16530         Run the coreutils-specific code only if tests/Makefile.am.in exists.
16531         * build-aux/bootstrap (mam_template): Move definition out of loop.
16532
16533         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
16534
16535         * build-aux/bootstrap (symlink_to_dir): Rename function from
16536         symlink_to_gnulib.  Add a directory parameter.  Update all
16537         callers.
16538         (cp_mark_as_generated): Also check for -- and link to -- files in
16539         gl/.
16540
16541         2007-07-08  Jim Meyering  <jim@meyering.net>
16542
16543         Adapt to deeper hierarchy in gnulib.
16544         * build-aux/bootstrap (symlink_to_dir): If the destination
16545         directory doesn't exist, create it. This is required at least for
16546         "lib/uniwidth/cjk.h".
16547
16548         2007-05-15  Jim Meyering  <jim@meyering.net>
16549
16550         * build-aux/bootstrap: Now that generated Makefile.am files
16551         are no longer under version control, they must be created at
16552         bootstrap time.
16553
16554 2007-08-14  Ben Pfaff  <blp@gnu.org>
16555
16556         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
16557
16558 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
16559
16560         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
16561         given the changes below.
16562         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
16563         even on hosts that have padding bits beyond the supported 64.
16564
16565 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
16566
16567         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
16568         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
16569         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
16570         depends on it.
16571         (xstrtol_error): Remove.
16572         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
16573         but with a different signature.
16574         (ATTRIBUTE_NORETURN, __attribute__): New macros.
16575         * lib/xstrtol-error.c: Include exitfail.h.
16576         (xstrtol_fatal): New function, with a different signature from the
16577         old xstrtol_error, so that the caller need not worry about passing
16578         in an exit status, or about storage management of the option argument.
16579         (xstrtol_error): Now a static function.  Redo signature to
16580         implement xstrtol_fatal.  Output the correct number of hyphens in
16581         front of the option so that the caller need not worry about
16582         storage management.
16583         (N_): New macro.
16584         (_): Remove; not used now.
16585         * modules/xstrtol: Depend on getopt.
16586         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
16587         of old STRTOL_FATAL_ERROR macro.
16588         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
16589         of test program.
16590         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
16591         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
16592
16593 2007-08-08  Eric Blake  <ebb9@byu.net>
16594
16595         * lib/xstrtol-error.c: Add missing include.
16596
16597         Move xstrtol messages into gnulib domain, when --pobase is used.
16598         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
16599         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
16600         * modules/xstrtol (Files): Distribute new file.
16601         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
16602         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
16603         * tests/test-xstrtol.c: ...into new file.
16604         * tests/test-xstrtoul.c: Also test xstrtoul.
16605         * tests/test-xstrtoimax.c: Also test xstrtoimax.
16606         * tests/test-xstrtoumax.c: Also test xstrtoumax.
16607         * tests/test-xstrtol.sh: Drive the tests.
16608         * tests/test-xstrtoimax.sh: Likewise.
16609         * tests/test-xstrtoumax.sh: Likewise.
16610         * modules/xstrtol-tests: New module.
16611         * modules/xstrtoimax-tests: Likewise.
16612         * modules/xstrtoumax-tests: Likewise.
16613
16614 2007-08-08  Jim Meyering  <jim@meyering.net>
16615
16616         New function: mfile_name_concat.
16617         * lib/filenamecat.c (mfile_name_concat): New function, just like
16618         file_name_concat, but return NULL upon failure rather than exiting
16619         with a diagnostic.
16620         * lib/filenamecat.h: Declare it.
16621
16622 2007-08-07  Bruno Haible  <bruno@clisp.org>
16623
16624         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
16625         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
16626         warning from gcc.
16627         Reported by Eric Blake.
16628
16629 2007-08-07  Simon Josefsson  <simon@josefsson.org>
16630
16631         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
16632         * modules/crypto/arcfour (License): Likewise.
16633         * modules/crypto/des-tests (License): Likewise.
16634         * modules/crypto/gc-arctwo-tests (License): Likewise.
16635         * modules/crypto/gc-des-tests (License): Likewise.
16636         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
16637         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
16638         * modules/crypto/gc-md2-tests (License): Likewise.
16639         * modules/crypto/gc-md4-tests (License): Likewise.
16640         * modules/crypto/gc-md5-tests (License): Likewise.
16641         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
16642         * modules/crypto/gc-rijndael-tests (License): Likewise.
16643         * modules/crypto/gc-sha1-tests (License): Likewise.
16644         * modules/crypto/gc-tests (License): Likewise.
16645         * modules/crypto/hmac-md5 (License): Likewise.
16646         * modules/crypto/hmac-sha1 (License): Likewise.
16647         * modules/crypto/md2-tests (License): Likewise.
16648         * modules/crypto/md4-tests (License): Likewise.
16649         * modules/crypto/md5 (License): Likewise.
16650         * modules/crypto/rijndael (License): Likewise.
16651         * modules/crypto/sha1 (License): Likewise.
16652         * modules/memxor (License): Likewise.
16653
16654 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
16655         and Bruno Haible  <bruno@clisp.org>
16656
16657         * NEWS: Describe interface changes to human, xstrtol.
16658         * lib/human.h: Include <xstrtol.h>.
16659         (human_options): Return enum strtol_error, not int.  Remove
16660         bool arg; take int * instead.
16661         * lib/human.c: Don't include "gettext.h".
16662         (_): Remove; no longer used.
16663         Don't include <xstrtol.h>, since human.h does it.
16664         (human_options): Adjust to abovementioned interface changes.
16665         Do not report error to stderr; that's now the caller's
16666         responsibility.
16667         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
16668         interface change.
16669         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
16670         Str, Argument_type_string.  All uses changed.  Put " argument"
16671         in diagnostics to make them clearer.  Change wording of suffix
16672         message for clarity.
16673         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
16674         Argument_type_string.
16675         (STRTOL_FATAL_WARN): Remove; no longer used.
16676         * modules/human (Depends-on): Remove gettext-h.
16677
16678 2007-08-06  Simon Josefsson  <simon@josefsson.org>
16679
16680         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
16681
16682 2007-07-31  Bruno Haible  <bruno@clisp.org>
16683
16684         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
16685         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
16686         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
16687
16688 2007-07-31  Bruno Haible  <bruno@clisp.org>
16689
16690         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
16691         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
16692
16693 2007-07-30  Bruno Haible  <bruno@clisp.org>
16694
16695         * modules/base64 (License): Use the synonymous term "LGPLv2+".
16696         * modules/c-ctype (License): Likewise.
16697         * modules/c-strcase (License): Likewise.
16698         * modules/check-version (License): Likewise.
16699         * modules/iconv (License): Likewise.
16700         * modules/iconv_open (License): Likewise.
16701         * modules/read-file (License): Likewise.
16702         * modules/striconv (License): Likewise.
16703         * modules/strverscmp (License): Likewise.
16704         * modules/vasprintf (License): Likewise.
16705         * modules/crypto/des (License): Likewise.
16706         * modules/crypto/gc (License): Likewise.
16707         * modules/crypto/gc-arcfour (License): Likewise.
16708         * modules/crypto/gc-arctwo (License): Likewise.
16709         * modules/crypto/gc-des (License): Likewise.
16710         * modules/crypto/gc-hmac-md5 (License): Likewise.
16711         * modules/crypto/gc-hmac-sha1 (License): Likewise.
16712         * modules/crypto/gc-md2 (License): Likewise.
16713         * modules/crypto/gc-md4 (License): Likewise.
16714         * modules/crypto/gc-md5 (License): Likewise.
16715         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
16716         * modules/crypto/gc-random (License): Likewise.
16717         * modules/crypto/gc-rijndael (License): Likewise.
16718         * modules/crypto/gc-sha1 (License): Likewise.
16719         * modules/crypto/md2 (License): Likewise.
16720         * modules/crypto/md4 (License): Likewise.
16721
16722 2007-07-30  Jim Meyering  <jim@meyering.net>
16723
16724         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
16725         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
16726         it has valid stat data.  This bug would cause du not to count the
16727         sizes of inaccessible directories.
16728         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
16729         in <http://bugzilla.redhat.com/250077>.
16730
16731 2007-07-25  Peter O'Gorman  <peter@pogma.com>
16732             Bruno Haible  <bruno@clisp.org>
16733
16734         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
16735         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
16736         #include_next, gives a diagnostic about it, but reports no error in
16737         the exit code.
16738         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
16739
16740 2007-07-24  Ben Pfaff  <blp@gnu.org>
16741
16742         Improve name: "count-one-bits" is better than "popcount".
16743         * MODULES.html.sh: Update name.
16744         * lib/popcount.h: Renamed lib/count-one-bits.h.
16745         (popcount): Renamed count_one_bits.
16746         (popcountl): Renamed count_one_bits_l.
16747         (popcountll): Renamed count_one_bits_ll.
16748         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
16749         * modules/popcount: Renamed module/count-one-bits.
16750         * modules/popcount-tests: Renamed module/count-one-bits-tests.
16751         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
16752
16753 2007-07-23  Ben Pfaff  <blp@gnu.org>
16754
16755         * lib/popcount.h (popcount32): Reduce size of constants, to allow
16756         better code generation, and add U to large constants to avoid
16757         warnings, in non-GCC case.
16758         Suggested by Bruno Haible.
16759
16760 2007-07-23  Ben Pfaff  <blp@gnu.org>
16761
16762         * lib/popcount.h: Use verify_true instead of if...abort.
16763         * modules/popcount: Depend on verify module.
16764         Suggested by Jim Meyering.
16765
16766 2007-07-23  Bruno Haible  <bruno@clisp.org>
16767
16768         * gnulib-tool (func_import): Create a .cvsignore file also when the
16769         directory is not yet in CVS but the toplevel directory is. When
16770         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
16771         Reported by Karl Berry.
16772
16773 2007-07-22  Ben Pfaff  <blp@gnu.org>
16774
16775         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
16776         case.
16777         Suggested by Eric Blake.
16778
16779 2007-07-22  Ben Pfaff  <blp@gnu.org>
16780
16781         New module: popcount.
16782         * MODULES.html.sh: Add popcount.
16783         * modules/popcount: New file.
16784         * modules/popcount-tests: New file.
16785         * tests/test-popcount.c: New file.
16786         * lib/popcount.h: New file.
16787         * m4/popcount.m4: New file.
16788
16789 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
16790
16791         * build-aux/announce-gen: Update to GPLv3.
16792
16793         * build-aux/config.guess: Update from config.
16794
16795 2007-07-21  Bruno Haible  <bruno@clisp.org>
16796
16797         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
16798         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
16799
16800 2007-07-20  Jim Meyering  <jim@meyering.net>
16801
16802         * check-module: Diagnose a self-dependency.
16803
16804 2007-07-19  Bruno Haible  <bruno@clisp.org>
16805
16806         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
16807         empty.
16808         Reported by Eric Blake.
16809
16810 2007-07-18  Bruno Haible  <bruno@clisp.org>
16811
16812         * gnulib-tool: New options --po-base, --po-domain.
16813         (func_usage): Document them.
16814         (pobase, po_domain): New variables.
16815         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
16816         DEFAULT_TEXT_DOMAIN.
16817         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
16818         (func_import): Consider pobase and po_domain. Create a po/ directory.
16819         (func_create_testdir): Set pobase and po_domain to empty.
16820         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
16821         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
16822
16823 2007-07-18  Bruno Haible  <bruno@clisp.org>
16824
16825         * gnulib-tool (func_get_automake_snippet): Synthesize also an
16826         EXTRA_DIST augmentation for files in build-aux/.
16827
16828 2007-07-16  Bruno Haible  <bruno@clisp.org>
16829
16830         * modules/lseek (License): Use the synonymous term "LGPLv2+".
16831         * modules/getdelim (License): Likewise.
16832
16833 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16834
16835         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
16836         * modules/d-type (License): Likewise.
16837         * modules/extensions (License): Likewise.
16838         * modules/fnmatch (License): Likewise.
16839         * modules/fseeko (License): Likewise.
16840         * modules/getaddrinfo (License): Likewise.
16841         * modules/getline (License): Likewise.
16842         * modules/getlogin_r (License): Likewise.
16843         * modules/getpass (License): Likewise.
16844         * modules/gettimeofday (License): Likewise.
16845         * modules/glob (License): Likewise.
16846         * modules/inet_ntop (License): Likewise.
16847         * modules/malloc (License): Likewise.
16848         * modules/malloca (License): Likewise.
16849         * modules/memmem (License): Likewise.
16850         * modules/mempcpy (License): Likewise.
16851         * modules/memset (License): Likewise.
16852         * modules/minmax (License): Likewise.
16853         * modules/mktime (License): Likewise.
16854         * modules/netinet_in (License): Likewise.
16855         * modules/pathmax (License): Likewise.
16856         * modules/poll (License): Likewise.
16857         * modules/regex (License): Likewise.
16858         * modules/snprintf (License): Likewise.
16859         * modules/stdbool (License): Likewise.
16860         * modules/stdint (License): Likewise.
16861         * modules/stdio (License): Likewise.
16862         * modules/strcase (License): Likewise.
16863         * modules/strcasestr (License): Likewise.
16864         * modules/strdup (License): Likewise.
16865         * modules/string (License): Likewise.
16866         * modules/strndup (License): Likewise.
16867         * modules/strnlen (License): Likewise.
16868         * modules/strpbrk (License): Likewise.
16869         * modules/strptime (License): Likewise.
16870         * modules/strsep (License): Likewise.
16871         * modules/sys_select (License): Likewise.
16872         * modules/sys_socket (License): Likewise.
16873         * modules/sys_stat (License): Likewise.
16874         * modules/sys_time (License): Likewise.
16875         * modules/time (License): Likewise.
16876         * modules/time_r (License): Likewise.
16877         * modules/timegm (License): Likewise.
16878         * modules/unistd (License): Likewise.
16879         * modules/vsnprintf (License): Likewise.
16880         * modules/wctype (License): Likewise.
16881
16882 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16883
16884         * modules/argz (License): LGPLv2+.
16885
16886 2007-07-15  Karl Berry  <karl@gnu.org>
16887
16888         * doc/gnulib.texi: revise node structure per new fdl.texi.
16889
16890 2007-07-14  Bruno Haible  <bruno@clisp.org>
16891
16892         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
16893         the output file.
16894         * lib/uniname/uninames.h: Regenerated.
16895
16896 2007-07-14  Karl Berry  <karl@gnu.org>
16897
16898         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
16899         omitting sectioning and index commands.
16900
16901 2007-07-13  Bruno Haible  <bruno@clisp.org>
16902
16903         New gnulib-tool option --more-symlinks.
16904         * gnulib-tool (func_usage): Document --more-symlinks.
16905         (do_copyrights): New variable.
16906         Recognize option --more-symlinks.
16907         (func_import): Don't add a copyright notice transform to
16908         sed_transform_lib_file if do_copyrights is empty.
16909
16910 2007-07-13  Bruno Haible  <bruno@clisp.org>
16911
16912         * lib/vasnprintf.c (decimal_point_char): Define also if
16913         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
16914         && !NEED_PRINTF_DIRECTIVE_A.
16915         Reported by Clemens Koller <clemens.koller@anagramm.de> via
16916         Gary V. Vaughan <gary@gnu.org>.
16917
16918 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
16919
16920         * lib/inttypes_.h: Undo previous change, since it was fixed
16921         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
16922
16923 2007-07-13  Bruno Haible  <bruno@clisp.org>
16924
16925         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
16926         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
16927
16928 2007-07-13  Jim Meyering  <jim@meyering.net>
16929
16930         df: Don't fail for Tru64's "file-on-file mount".
16931         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
16932         so we fall through and use statfs instead.  Details here:
16933         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
16934         Reported by Albert Chin.
16935
16936 2007-07-13  Bruno Haible  <bruno@clisp.org>
16937
16938         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
16939         * modules/configmake (License): Likewise.
16940         * modules/gettext (License): Likewise.
16941         * modules/gettext-h (License): Likewise.
16942         * modules/include_next (License): Likewise.
16943         * modules/link-warning (License): Likewise.
16944         * modules/localcharset (License): Likewise.
16945         * modules/localename (License): Likewise.
16946         * modules/lock (License): Likewise.
16947         * modules/relocatable-lib-lgpl (License): Likewise.
16948         * modules/size_max (License): Likewise.
16949         * modules/vasnprintf (License): Likewise.
16950         * modules/wchar (License): Likewise.
16951         * modules/xsize (License): Likewise.
16952
16953 2007-07-13  Bruno Haible  <bruno@clisp.org>
16954
16955         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
16956         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
16957
16958 2007-07-12  Bruno Haible  <bruno@clisp.org>
16959
16960         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
16961         in the modules files.
16962
16963 2007-07-11  Karl Berry  <karl@gnu.org>
16964
16965         * MODULES.html.sh (func_module): use
16966          sed -e '\|^'"${includefile}"'$|d'
16967          instead of /.../d, to avoid errors on $includefile's containing /.
16968
16969 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
16970
16971         * gnulib-tool (func_import): Avoid duplication of --avoid
16972         statements
16973         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
16974         names to `_' in variable names.
16975
16976 2007-07-10  Eric Blake  <ebb9@byu.net>
16977
16978         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
16979         * NEWS: Document this change.
16980
16981 2007-07-08  Bruno Haible  <bruno@clisp.org>
16982
16983         Update to Unicode 5.0.
16984         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
16985         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
16986         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
16987         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
16988         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
16989         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
16990         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
16991         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
16992         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
16993         U+10A3F, U+1D242..U+1D244.
16994         (nonspacing_table_ind): Update.
16995         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
16996         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
16997
16998 2007-07-08  Bruno Haible  <bruno@clisp.org>
16999
17000         Update to Unicode 5.0.
17001         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
17002         code transform. Extend the name index field of unicode_name_to_code and
17003         unicode_code_to_name from 16 to 24 bits.
17004         * lib/uniname/uniname.c (unicode_character_name,
17005         unicode_name_character): Add the range 0x12xxx to the code transform.
17006         * lib/uniname/uninames.h: Regenerated.
17007         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
17008
17009 2007-07-07  Bruno Haible  <bruno@clisp.org>
17010
17011         * modules/wcwidth-tests: New file.
17012         * tests/test-wcwidth.c: New file.
17013
17014         Work around MacOS X wcwidth() bug.
17015         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
17016         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
17017         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
17018         original wcwidth in non-UTF-8 locales.
17019         * modules/wcwidth (Depends-on): Add localcharset, streq,
17020         uniwidth/width.
17021         * doc/functions/wcwidth.texi: Update.
17022
17023 2007-07-07  Bruno Haible  <bruno@clisp.org>
17024
17025         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
17026         (wcwidth): New declaration.
17027         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
17028         macros.
17029         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
17030         here. Prepare for creating <wchar.h> unconditionally.
17031         * modules/wchar (Depends-on): Add link-warning.
17032         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
17033         REPLACE_WCWIDTH, and GL_LINK_WARNING.
17034         * lib/wcwidth.h: Remove file.
17035         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
17036         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
17037         * modules/wcwidth (Files): Remove lib/wcwidth.h.
17038         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
17039         (Include): Replace wcwidth.h with <wchar.h>.
17040         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
17041         * lib/mbchar.h: Don't include wcwidth.h.
17042         * lib/mbswidth.c: Likewise.
17043         * NEWS: Mention the change.
17044
17045 2007-07-07  Bruno Haible  <bruno@clisp.org>
17046
17047         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
17048         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
17049         definition with an external declaration.
17050         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
17051         defined as a function. Remove AC_C_INLINE requirement.
17052         * modules/wcwidth (Files): Add lib/wcwidth.c.
17053         (Makefile.am): Remove redundant statement.
17054
17055 2007-07-07  Bruno Haible  <bruno@clisp.org>
17056
17057         * MODULES.html.sh (Unicode string functions): Add the new modules.
17058
17059         * tests/uniwidth/test-u32-strwidth.c: New file.
17060         * modules/uniwidth/u32-strwidth-tests: New file.
17061
17062         * lib/uniwidth/u32-strwidth.c: New file.
17063         * modules/uniwidth/u32-strwidth: New file.
17064
17065         * tests/uniwidth/test-u16-strwidth.c: New file.
17066         * modules/uniwidth/u16-strwidth-tests: New file.
17067
17068         * lib/uniwidth/u16-strwidth.c: New file.
17069         * modules/uniwidth/u16-strwidth: New file.
17070
17071         * tests/uniwidth/test-u8-strwidth.c: New file.
17072         * modules/uniwidth/u8-strwidth-tests: New file.
17073
17074         * lib/uniwidth/u8-strwidth.c: New file.
17075         * modules/uniwidth/u8-strwidth: New file.
17076
17077         * tests/uniwidth/test-u32-width.c: New file.
17078         * modules/uniwidth/u32-width-tests: New file.
17079
17080         * lib/uniwidth/u32-width.c: New file.
17081         * modules/uniwidth/u32-width: New file.
17082
17083         * tests/uniwidth/test-u16-width.c: New file.
17084         * modules/uniwidth/u16-width-tests: New file.
17085
17086         * lib/uniwidth/u16-width.c: New file.
17087         * modules/uniwidth/u16-width: New file.
17088
17089         * tests/uniwidth/test-u8-width.c: New file.
17090         * modules/uniwidth/u8-width-tests: New file.
17091
17092         * lib/uniwidth/u8-width.c: New file.
17093         * modules/uniwidth/u8-width: New file.
17094
17095         * tests/uniwidth/test-uc_width.c: New file.
17096         * modules/uniwidth/width-tests: New file.
17097
17098         * lib/uniwidth/width.c: New file, from GNU libiconv.
17099         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
17100         * modules/uniwidth/width: New file.
17101
17102         * lib/uniwidth.h: New file, from GNU libiconv.
17103         * modules/uniwidth/base: New file.
17104
17105 2007-07-07  Bruno Haible  <bruno@clisp.org>
17106
17107         * lib/uniname.h: New file, from GNU gettext.
17108         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
17109         * lib/uniname/uninames.h: New file, from GNU gettext.
17110         * lib/uniname/uniname.c: New file, from GNU gettext.
17111         * tests/uniname/test-uninames.sh: New file.
17112         * tests/uniname/test-uninames.c: New file, from GNU gettext.
17113         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
17114         * modules/uniname/base: New file.
17115         * modules/uniname/uniname: New file.
17116         * modules/uniname/uniname-tests: New file.
17117         * MODULES.html.sh (Unicode string functions): Add the new modules.
17118
17119 2007-07-06  Bruno Haible  <bruno@clisp.org>
17120
17121         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
17122
17123 2007-07-06  Bruno Haible  <bruno@clisp.org>
17124
17125         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
17126         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
17127         includes <cygwin/sys_time.h> which includes <sys/select.h> which
17128         include <sys/time.h>.
17129         Reported by Eric Blake.
17130
17131 2007-07-06  Eric Blake  <ebb9@byu.net>
17132
17133         Fix testing canonicalize on cygwin.
17134         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
17135         Revert patch from 2007-06-19.
17136         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
17137         canonicalize module is also in use.
17138         * tests/test-canonicalize.c: New file.
17139         * tests/test-canonicalize.sh: Likewise.
17140         * modules/canonicalize-tests: Likewise.
17141
17142 2007-07-06  Jim Meyering  <jim@meyering.net>
17143
17144         * lib/getugroups.c (getugroups): Detect getgrent failure.
17145         Adjust comment to reflect reality: this function may return -1.
17146
17147 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
17148
17149         * build-aux/bootstrap (TP_URL,get_translations): Update to use
17150         the new TP address.
17151         (usage): Fix typo
17152         (gnulib_mk): New variable.
17153
17154 2007-07-05  Jim Meyering  <jim@meyering.net>
17155
17156         Don't let endgrent clobber errno, no matter how improbable.
17157         * lib/getugroups.c (getugroups): Save and restore errno around
17158         endgrent call.
17159
17160         Close the group DB even when failing with 2^31 or more members.
17161         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
17162
17163 2007-07-04  Jim Meyering  <jim@meyering.net>
17164
17165         * lib/getugroups.h: New file.
17166         * lib/getugroups.c: Include "getugroups.h".
17167         Remove uses of "register" keyword.
17168         Move local variable, "cp", down into scope where used.
17169         Give "username" parameter the "const" attribute.
17170         * modules/getugroups (Files): Add lib/getugroups.h
17171
17172 2007-07-04  Karl Berry  <karl@gnu.org>
17173
17174         * MODULES.html.sh (func_all_modules): Complete rename of
17175         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
17176
17177 2007-07-02  Bruno Haible  <bruno@clisp.org>
17178
17179         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
17180         mode, when inttypes.h comes from gnulib.
17181         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
17182
17183 2007-07-02  Simon Josefsson  <simon@josefsson.org>
17184
17185         * NEWS: Mention lgpl module name change.
17186
17187         * modules/lgpl-2.1: Renamed from lgpl.
17188
17189         * NEWS: Mention gpl module name change.
17190
17191         * modules/gpl-3.0: New file, based on gpl-2.0.
17192
17193         * modules/gpl-2.0: Renamed from gpl.
17194
17195         * modules/gpl: Fix filename, doc/gpl.texi is now found at
17196         doc/gpl-2.0.texi.
17197
17198 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
17199
17200         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
17201         #define __STDC_LIMIT_MACROS temporarily while including
17202         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
17203         Problem reported by Joel E. Denny in
17204         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
17205
17206 2007-07-01  Bruno Haible  <bruno@clisp.org>
17207
17208         * lib/unistdio.h: New file.
17209         * lib/unistdio/u-asnprintf.h: New file.
17210         * lib/unistdio/u-asprintf.h: New file.
17211         * lib/unistdio/u-printf-args.c: New file.
17212         * lib/unistdio/u-printf-args.h: New file.
17213         * lib/unistdio/u-printf-parse.h: New file.
17214         * lib/unistdio/u-snprintf.h: New file.
17215         * lib/unistdio/u-sprintf.h: New file.
17216         * lib/unistdio/u-vasprintf.h: New file.
17217         * lib/unistdio/u-vsnprintf.h: New file.
17218         * lib/unistdio/u-vsprintf.h: New file.
17219         * lib/unistdio/ulc-asnprintf.c: New file.
17220         * lib/unistdio/ulc-asprintf.c: New file.
17221         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
17222         * lib/unistdio/ulc-printf-parse.c: New file.
17223         * lib/unistdio/ulc-snprintf.c: New file.
17224         * lib/unistdio/ulc-sprintf.c: New file.
17225         * lib/unistdio/ulc-vasnprintf.c: New file.
17226         * lib/unistdio/ulc-vasprintf.c: New file.
17227         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
17228         * lib/unistdio/ulc-vsnprintf.c: New file.
17229         * lib/unistdio/ulc-vsprintf.c: New file.
17230         * lib/unistdio/u8-asnprintf.c: New file.
17231         * lib/unistdio/u8-asprintf.c: New file.
17232         * lib/unistdio/u8-printf-parse.c: New file.
17233         * lib/unistdio/u8-snprintf.c: New file.
17234         * lib/unistdio/u8-sprintf.c: New file.
17235         * lib/unistdio/u8-vasnprintf.c: New file.
17236         * lib/unistdio/u8-vasprintf.c: New file.
17237         * lib/unistdio/u8-vsnprintf.c: New file.
17238         * lib/unistdio/u8-vsprintf.c: New file.
17239         * lib/unistdio/u8-u8-asnprintf.c: New file.
17240         * lib/unistdio/u8-u8-asprintf.c: New file.
17241         * lib/unistdio/u8-u8-snprintf.c: New file.
17242         * lib/unistdio/u8-u8-sprintf.c: New file.
17243         * lib/unistdio/u8-u8-vasnprintf.c: New file.
17244         * lib/unistdio/u8-u8-vasprintf.c: New file.
17245         * lib/unistdio/u8-u8-vsnprintf.c: New file.
17246         * lib/unistdio/u8-u8-vsprintf.c: New file.
17247         * lib/unistdio/u16-asnprintf.c: New file.
17248         * lib/unistdio/u16-asprintf.c: New file.
17249         * lib/unistdio/u16-printf-parse.c: New file.
17250         * lib/unistdio/u16-snprintf.c: New file.
17251         * lib/unistdio/u16-sprintf.c: New file.
17252         * lib/unistdio/u16-vasnprintf.c: New file.
17253         * lib/unistdio/u16-vasprintf.c: New file.
17254         * lib/unistdio/u16-vsnprintf.c: New file.
17255         * lib/unistdio/u16-vsprintf.c: New file.
17256         * lib/unistdio/u16-u16-asnprintf.c: New file.
17257         * lib/unistdio/u16-u16-asprintf.c: New file.
17258         * lib/unistdio/u16-u16-snprintf.c: New file.
17259         * lib/unistdio/u16-u16-sprintf.c: New file.
17260         * lib/unistdio/u16-u16-vasnprintf.c: New file.
17261         * lib/unistdio/u16-u16-vasprintf.c: New file.
17262         * lib/unistdio/u16-u16-vsnprintf.c: New file.
17263         * lib/unistdio/u16-u16-vsprintf.c: New file.
17264         * lib/unistdio/u32-asnprintf.c: New file.
17265         * lib/unistdio/u32-asprintf.c: New file.
17266         * lib/unistdio/u32-printf-parse.c: New file.
17267         * lib/unistdio/u32-snprintf.c: New file.
17268         * lib/unistdio/u32-sprintf.c: New file.
17269         * lib/unistdio/u32-vasnprintf.c: New file.
17270         * lib/unistdio/u32-vasprintf.c: New file.
17271         * lib/unistdio/u32-vsnprintf.c: New file.
17272         * lib/unistdio/u32-vsprintf.c: New file.
17273         * lib/unistdio/u32-u32-asnprintf.c: New file.
17274         * lib/unistdio/u32-u32-asprintf.c: New file.
17275         * lib/unistdio/u32-u32-snprintf.c: New file.
17276         * lib/unistdio/u32-u32-sprintf.c: New file.
17277         * lib/unistdio/u32-u32-vasnprintf.c: New file.
17278         * lib/unistdio/u32-u32-vasprintf.c: New file.
17279         * lib/unistdio/u32-u32-vsnprintf.c: New file.
17280         * lib/unistdio/u32-u32-vsprintf.c: New file.
17281         * tests/unistdio/test-ulc-asnprintf1.c: New file.
17282         * tests/unistdio/test-ulc-asnprintf1.h: New file.
17283         * tests/unistdio/test-ulc-printf1.h: New file.
17284         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
17285         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
17286         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
17287         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
17288         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
17289         * tests/unistdio/test-ulc-vasprintf1.c: New file.
17290         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
17291         * tests/unistdio/test-ulc-vsprintf1.c: New file.
17292         * tests/unistdio/test-u8-asnprintf1.c: New file.
17293         * tests/unistdio/test-u8-asnprintf1.h: New file.
17294         * tests/unistdio/test-u8-printf1.h: New file.
17295         * tests/unistdio/test-u8-vasnprintf1.c: New file.
17296         * tests/unistdio/test-u8-vasnprintf2.c: New file.
17297         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
17298         * tests/unistdio/test-u8-vasnprintf3.c: New file.
17299         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
17300         * tests/unistdio/test-u8-vasprintf1.c: New file.
17301         * tests/unistdio/test-u8-vsnprintf1.c: New file.
17302         * tests/unistdio/test-u8-vsprintf1.c: New file.
17303         * tests/unistdio/test-u16-asnprintf1.c: New file.
17304         * tests/unistdio/test-u16-asnprintf1.h: New file.
17305         * tests/unistdio/test-u16-printf1.h: New file.
17306         * tests/unistdio/test-u16-vasnprintf1.c: New file.
17307         * tests/unistdio/test-u16-vasnprintf2.c: New file.
17308         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
17309         * tests/unistdio/test-u16-vasnprintf3.c: New file.
17310         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
17311         * tests/unistdio/test-u16-vasprintf1.c: New file.
17312         * tests/unistdio/test-u16-vsnprintf1.c: New file.
17313         * tests/unistdio/test-u16-vsprintf1.c: New file.
17314         * tests/unistdio/test-u32-asnprintf1.c: New file.
17315         * tests/unistdio/test-u32-asnprintf1.h: New file.
17316         * tests/unistdio/test-u32-printf1.h: New file.
17317         * tests/unistdio/test-u32-vasnprintf1.c: New file.
17318         * tests/unistdio/test-u32-vasnprintf2.c: New file.
17319         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
17320         * tests/unistdio/test-u32-vasnprintf3.c: New file.
17321         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
17322         * tests/unistdio/test-u32-vasprintf1.c: New file.
17323         * tests/unistdio/test-u32-vsnprintf1.c: New file.
17324         * tests/unistdio/test-u32-vsprintf1.c: New file.
17325         * modules/unistdio/base: New file.
17326         * modules/unistdio/u-printf-args: New file.
17327         * modules/unistdio/ulc-asnprintf: New file.
17328         * modules/unistdio/ulc-asprintf: New file.
17329         * modules/unistdio/ulc-fprintf: New file.
17330         * modules/unistdio/ulc-printf-parse: New file.
17331         * modules/unistdio/ulc-snprintf: New file.
17332         * modules/unistdio/ulc-sprintf: New file.
17333         * modules/unistdio/ulc-vasnprintf: New file.
17334         * modules/unistdio/ulc-vasprintf: New file.
17335         * modules/unistdio/ulc-vfprintf: New file.
17336         * modules/unistdio/ulc-vsnprintf: New file.
17337         * modules/unistdio/ulc-vsprintf: New file.
17338         * modules/unistdio/u8-asnprintf: New file.
17339         * modules/unistdio/u8-asprintf: New file.
17340         * modules/unistdio/u8-printf-parse: New file.
17341         * modules/unistdio/u8-snprintf: New file.
17342         * modules/unistdio/u8-sprintf: New file.
17343         * modules/unistdio/u8-vasnprintf: New file.
17344         * modules/unistdio/u8-vasprintf: New file.
17345         * modules/unistdio/u8-vsnprintf: New file.
17346         * modules/unistdio/u8-vsprintf: New file.
17347         * modules/unistdio/u8-u8-asnprintf: New file.
17348         * modules/unistdio/u8-u8-asprintf: New file.
17349         * modules/unistdio/u8-u8-snprintf: New file.
17350         * modules/unistdio/u8-u8-sprintf: New file.
17351         * modules/unistdio/u8-u8-vasnprintf: New file.
17352         * modules/unistdio/u8-u8-vasprintf: New file.
17353         * modules/unistdio/u8-u8-vsnprintf: New file.
17354         * modules/unistdio/u8-u8-vsprintf: New file.
17355         * modules/unistdio/u16-asnprintf: New file.
17356         * modules/unistdio/u16-asprintf: New file.
17357         * modules/unistdio/u16-printf-parse: New file.
17358         * modules/unistdio/u16-snprintf: New file.
17359         * modules/unistdio/u16-sprintf: New file.
17360         * modules/unistdio/u16-vasnprintf: New file.
17361         * modules/unistdio/u16-vasprintf: New file.
17362         * modules/unistdio/u16-vsnprintf: New file.
17363         * modules/unistdio/u16-vsprintf: New file.
17364         * modules/unistdio/u16-u16-asnprintf: New file.
17365         * modules/unistdio/u16-u16-asprintf: New file.
17366         * modules/unistdio/u16-u16-snprintf: New file.
17367         * modules/unistdio/u16-u16-sprintf: New file.
17368         * modules/unistdio/u16-u16-vasnprintf: New file.
17369         * modules/unistdio/u16-u16-vasprintf: New file.
17370         * modules/unistdio/u16-u16-vsnprintf: New file.
17371         * modules/unistdio/u16-u16-vsprintf: New file.
17372         * modules/unistdio/u32-asnprintf: New file.
17373         * modules/unistdio/u32-asprintf: New file.
17374         * modules/unistdio/u32-printf-parse: New file.
17375         * modules/unistdio/u32-snprintf: New file.
17376         * modules/unistdio/u32-sprintf: New file.
17377         * modules/unistdio/u32-vasnprintf: New file.
17378         * modules/unistdio/u32-vasprintf: New file.
17379         * modules/unistdio/u32-vsnprintf: New file.
17380         * modules/unistdio/u32-vsprintf: New file.
17381         * modules/unistdio/u32-u32-asnprintf: New file.
17382         * modules/unistdio/u32-u32-asprintf: New file.
17383         * modules/unistdio/u32-u32-snprintf: New file.
17384         * modules/unistdio/u32-u32-sprintf: New file.
17385         * modules/unistdio/u32-u32-vasnprintf: New file.
17386         * modules/unistdio/u32-u32-vasprintf: New file.
17387         * modules/unistdio/u32-u32-vsnprintf: New file.
17388         * modules/unistdio/u32-u32-vsprintf: New file.
17389         * modules/unistdio/ulc-asnprintf-tests: New file.
17390         * modules/unistdio/ulc-vasnprintf-tests: New file.
17391         * modules/unistdio/ulc-vasprintf-tests: New file.
17392         * modules/unistdio/ulc-vsnprintf-tests: New file.
17393         * modules/unistdio/ulc-vsprintf-tests: New file.
17394         * modules/unistdio/u8-asnprintf-tests: New file.
17395         * modules/unistdio/u8-vasnprintf-tests: New file.
17396         * modules/unistdio/u8-vasprintf-tests: New file.
17397         * modules/unistdio/u8-vsnprintf-tests: New file.
17398         * modules/unistdio/u8-vsprintf-tests: New file.
17399         * modules/unistdio/u16-asnprintf-tests: New file.
17400         * modules/unistdio/u16-vasnprintf-tests: New file.
17401         * modules/unistdio/u16-vasprintf-tests: New file.
17402         * modules/unistdio/u16-vsnprintf-tests: New file.
17403         * modules/unistdio/u16-vsprintf-tests: New file.
17404         * modules/unistdio/u32-asnprintf-tests: New file.
17405         * modules/unistdio/u32-vasnprintf-tests: New file.
17406         * modules/unistdio/u32-vasprintf-tests: New file.
17407         * modules/unistdio/u32-vsnprintf-tests: New file.
17408         * modules/unistdio/u32-vsprintf-tests: New file.
17409         * MODULES.html.sh (Unicode string functions): Add the new modules.
17410
17411 2007-07-01  Bruno Haible  <bruno@clisp.org>
17412
17413         * lib/sprintf.c (sprintf): Limit the available length estimation,
17414         to avoid address wraparound.
17415         * lib/vsprintf.c (vsprintf): Likewise.
17416         * modules/sprintf-posix (Dependencies): Add stdint.
17417         * modules/vsprintf-posix (Dependencies): Likewise.
17418
17419 2007-07-01  Bruno Haible  <bruno@clisp.org>
17420
17421         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
17422         Windows PATH as well. Conservative double-quoting. Comments.
17423
17424 2007-07-01  Bruno Haible  <bruno@clisp.org>
17425             Eric Blake  <ebb9@byu.net>
17426             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17427
17428         * gnulib-tool (self_abspathname): Fix algorithm to cope with
17429         empty components in $PATH, denoting '.'.
17430
17431 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17432
17433         * gnulib-tool: Fix indentation.
17434         (func_create_megatestdir): Likewise.
17435         Report by Bruno Haible.
17436
17437 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17438
17439         Sync from Automake.
17440         * build-aux/gnupload: Fix shell portability issues with for loops.
17441         Report by Karl Berry.
17442
17443 2007-06-29  Simon Josefsson  <simon@josefsson.org>
17444
17445         * build-aux/maint.mk (POURL): Use translationproject.org.
17446
17447 2007-06-27  Simon Josefsson  <simon@josefsson.org>
17448             Bruno Haible  <bruno@clisp.org>
17449
17450         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
17451         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
17452         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
17453         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
17454         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
17455
17456 2007-06-27  Bruno Haible  <bruno@clisp.org>
17457
17458         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
17459         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
17460
17461 2007-06-26  Karl Berry  <karl@gnu.org>
17462
17463         * MODULES.html.sh: remove xreadlink-with-size.
17464
17465 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17466
17467         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
17468         method that I hope also handles the double-include problem noted
17469         by Bruno Haible in
17470         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
17471
17472 2007-06-23  Bruno Haible  <bruno@clisp.org>
17473
17474         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
17475         Don't let the 'mostlyclean' target fail if the last subdirectory could
17476         not be removed.
17477         Reported by Karl Berry.
17478
17479 2007-06-23  Bruno Haible  <bruno@clisp.org>
17480
17481         * gnulib-tool (echo): Add a speedier workaround for ksh.
17482         * tests/test-echo.sh: Likewise.
17483
17484 2007-06-23  Bruno Haible  <bruno@clisp.org>
17485
17486         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
17487         * tests/test-echo.sh: Likewise.
17488
17489 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17490
17491         * gnulib-tool (IFS): Initialize early, so we don't set it to
17492         empty later.
17493         (self_abspathname): Rewrite algorithm to set it, reindent.
17494         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
17495         (func_create_megatestdir): Merge some sed scripts.
17496
17497 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
17498
17499         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
17500         exposed by Sun Studio 11 cc on Solaris 8.
17501
17502 2007-06-22  Bruno Haible  <bruno@clisp.org>
17503
17504         * gnulib-tool (echo): Ensure the echo primitive does not interpret
17505         backslashes.
17506         * tests/test-echo.sh: New file.
17507
17508 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17509
17510         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
17511         simplify `sed_replace_build_aux' scripts, they are portable but
17512         echoing them with `echo' is not.
17513         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
17514
17515 2007-06-21  Karl Berry  <karl@gnu.org>
17516
17517         * config/srclist.txt: guess we can't handle the licenses via
17518         srclist at the moment.
17519
17520 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
17521
17522         * MODULES.html.sh: Add include_next.
17523         * modules/include_next: New file.
17524
17525 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
17526
17527         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
17528         INCLUDE_NEXT.
17529         (gl_CHECK_NEXT_HEADERS): New macro.
17530         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
17531         the obsolescent gl_ABSOLUTE_HEADER.
17532         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
17533         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
17534         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
17535         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
17536         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
17537         * m4/math_h.m4 (gl_MATH_H): Likewise.
17538         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
17539         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
17540         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
17541         * m4/stdint.m4 (gl_STDINT_H): Likewise.
17542         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
17543         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
17544         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
17545         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
17546         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
17547         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
17548         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
17549         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
17550         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
17551         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
17552         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
17553         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
17554         * m4/inttypes.m4 (gl_INTTYPES_H): Define
17555         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
17556         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
17557         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
17558         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
17559         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
17560         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
17561         * lib/float_.h: Likewise.
17562         * lib/inttypes_.h: Likewise.
17563         * lib/math_.h: Likewise.
17564         * lib/search_.h: Likewise.
17565         * lib/signal_.h: Likewise.
17566         * lib/stdint_.h: Likewise.
17567         * lib/stdio_.h: Likewise.
17568         * lib/stdlib_.h: Likewise.
17569         * lib/string_.h: Likewise.
17570         * lib/sys_stat_.h: Likewise.
17571         * lib/sys_time_.h: Likewise.
17572         * lib/time_.h: Likewise.
17573         * lib/unistd_.h: Likewise.
17574         * lib/wchar_.h: Likewise.
17575         * lib/wctype_.h: Likewise.
17576         * lib/dirent_.h: Likewise.
17577         * lib/iconv_.h: Likewise.
17578         * lib/locale_.h: Likewise.
17579         * lib/netinet_in_.h: Likewise.
17580         * lib/sys_select_.h: Likewise.
17581         * lib/sys_socket_.h: Likewise.
17582         * lib/sysexits_.h: Likewise.
17583         * modules/fcntl (Depends-on): Depend on include_next, not
17584         absolute_header.
17585         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
17586         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
17587         * modules/fchdir: Likewise.
17588         * modules/float: Likewise.
17589         * modules/iconv_open: Likewise.
17590         * modules/inttypes: Likewise.
17591         * modules/locale: Likewise.
17592         * modules/math: Likewise.
17593         * modules/netinet_in: Likewise.
17594         * modules/search: Likewise.
17595         * modules/signal: Likewise.
17596         * modules/stdint: Likewise.
17597         * modules/stdio: Likewise.
17598         * modules/stdlib: Likewise.
17599         * modules/string: Likewise.
17600         * modules/sys_select: Likewise.
17601         * modules/sys_socket: Likewise.
17602         * modules/sys_stat: Likewise.
17603         * modules/sys_time: Likewise.
17604         * modules/sysexits: Likewise.
17605         * modules/time: Likewise.
17606         * modules/unistd: Likewise.
17607         * modules/wchar: Likewise.
17608         * modules/wctype: Likewise.
17609         * modules/sys_stat: Change maintainer to "all".
17610         * modules/unistd: Likewise.
17611
17612 2007-06-20  Karl Berry  <karl@gnu.org>
17613
17614         * config/srclist.txt: track www changes in license files.
17615
17616 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
17617
17618         * build-aux/bootstrap: Remove stray dot.
17619         Make sure build_aux settings are honored when linking
17620         gnulib_extra_files.
17621
17622 2007-06-19  Eric Blake  <ebb9@byu.net>
17623
17624         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
17625         Allow compilation on cygwin.
17626
17627 2007-06-19  Jim Meyering  <jim@meyering.net>
17628
17629         xreadlink-with-size: Remove module.  No longer used.
17630         Ex-callers now use xreadlink or mreadlink-with-size.
17631         * modules/xreadlink-with-size: Remove module.
17632         * lib/xreadlink-with-size.c: Remove file.
17633         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
17634         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
17635         just before the function definition *is* accurate.
17636
17637         Eliminate one way canonicalize_filename_mode could exit.
17638         * lib/canonicalize.c (canonicalize_filename_mode):
17639         Use mreadlink_with_size, not xreadlink_with_size.
17640
17641 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
17642
17643         Detect porting problems to FreeBSD/arm, which has time_t wider than
17644         long int.  Original problem reported for GNU diff by Xin Li in
17645         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
17646         * modules/getdate (Depends-on): Add intprops, verify.
17647         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
17648         is an integer type no wider than long int.
17649
17650 2007-06-18  Jim Meyering  <jim@meyering.net>
17651
17652         New module: mreadlink-with-size.
17653         * MODULES.html.sh: Add mreadlink-with-size.
17654         * modules/mreadlink-with-size: New module
17655         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
17656         not xreadlink-with-size.
17657         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
17658
17659 2007-06-16  Bruno Haible  <bruno@clisp.org>
17660
17661         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
17662         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
17663         Reported by Gary V. Vaughan <gary@gnu.org>.
17664
17665 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
17666
17667         Revamp lchown so that it lives in unistd.h where it belongs.
17668         * lib/lchown.h: Remove.
17669         * lib/dirchownmod.c: Don't include lib/lchown.h.
17670         * lib/fchownat.c: Likewise.
17671         * lib/openat.c: Likewise.
17672         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
17673         does not follow symlinks.
17674         (EOPNOTSUPP): Define if not defined.
17675         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
17676         is defined to 0.
17677         (lchown): New decl.
17678         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
17679         Do not check for lchown decl.
17680         Set REPLACE_LCHOWN.
17681         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
17682         REPLACE_LCHOWN.
17683         * modules/chown: Make it clear it follows symlinks.
17684         * modules/lchown: Make it clear it doesn't follow symlinks.
17685         (Files): Remove lib/lchown.h
17686         (Depends-on): Add unistd.
17687         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
17688         (Include): Include <unistd.h>, not "lchown.h".
17689         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
17690         REPLACE_LCHOWN.
17691
17692 2007-06-15  Jim Meyering  <jim@meyering.net>
17693
17694         Change license (GPL to LGPL) of fsusage and dependents.
17695         * modules/fsusage (License): Change to LGPL.
17696         * modules/full-read (License): Likewise.
17697         * modules/full-write (License): Likewise.
17698         * modules/safe-read (License): Likewise.
17699         * modules/safe-write (License): Likewise.
17700
17701 2007-06-14  Ben Pfaff  <blp@gnu.org>
17702
17703         Missing part of allocsa -> malloca transition.
17704         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
17705         gl_MALLOCA.
17706
17707 2007-06-12  Bruno Haible  <bruno@clisp.org>
17708
17709         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
17710         to ia64, x86_64, i386.
17711         Reported by Eric Blake.
17712
17713 2007-06-12  Bruno Haible  <bruno@clisp.org>
17714
17715         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
17716         cross-compiling to x86_64.
17717
17718 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
17719
17720         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
17721         glitch reported by Ralf Wildenhues in
17722         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
17723
17724         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
17725         Vin Shelton.
17726
17727 2007-06-11  Bruno Haible  <bruno@clisp.org>
17728
17729         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
17730         replacement string.
17731         Reported by Eric Blake.
17732
17733 2007-06-10  Bruno Haible  <bruno@clisp.org>
17734
17735         Prepare vasnprintf code for use with Unicode strings.
17736         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
17737         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
17738         TYPE_U32_STRING.
17739         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
17740         a_u32_string variants.
17741         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
17742         * lib/printf-args.c: Don't include config.h and the specification
17743         header if PRINTF_FETCHARGS is already defined.
17744         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
17745         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
17746         TYPE_U16_STRING, TYPE_U32_STRING.
17747         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
17748         u16_directive, u16_directives, u32_directive, u32_directives): New
17749         types.
17750         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
17751         New declarations.
17752         * lib/printf-parse.c: Don't include config.h and the specification
17753         header if PRINTF_PARSE is already defined. Eliminate the set of
17754         parameters for WIDE_CHAR_VERSION; the user of this file must provide
17755         them now. Include c-ctype.h.
17756         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
17757         directive and CHAR_T_ONLY_ASCII.
17758         * lib/vasnprintf.c: Don't include config.h and the specification header
17759         if VASNPRINTF is already defined.
17760         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
17761         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
17762         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
17763         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
17764         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
17765         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
17766         code accordingly.
17767         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
17768         pad_ourselves also in this case, with the 'c' and 's' directives, and
17769         with a different notion of "width".
17770         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
17771
17772 2007-06-10  Bruno Haible  <bruno@clisp.org>
17773
17774         * modules/unistr/u32-mbsnlen: New file.
17775         * lib/unistr/u32-mbsnlen.c: New file.
17776
17777         * modules/unistr/u16-mbsnlen: New file.
17778         * lib/unistr/u16-mbsnlen.c: New file.
17779
17780         * modules/unistr/u8-mbsnlen: New file.
17781         * lib/unistr/u8-mbsnlen.c: New file.
17782
17783         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
17784         declarations.
17785
17786 2007-06-10  Bruno Haible  <bruno@clisp.org>
17787
17788         * lib/string_.h (mbsnlen): New declaration.
17789         * lib/mbsnlen.c: New file.
17790         * m4/mbsnlen.m4: New file.
17791         * modules/mbsnlen: New file.
17792         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
17793         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
17794         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
17795
17796 2007-06-10  Bruno Haible  <bruno@clisp.org>
17797
17798         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
17799
17800 2007-06-10  Bruno Haible  <bruno@clisp.org>
17801
17802         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
17803         * lib/mbuiter.h: Likewise.
17804
17805 2007-06-10  Bruno Haible  <bruno@clisp.org>
17806
17807         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
17808         declaration.
17809
17810 2007-06-10  Karl Berry  <karl@gnu.org>
17811
17812         * config/srclist.txt: remove gettext entries, Bruno prefers
17813         to update individually.
17814
17815 2007-06-10  Bruno Haible  <bruno@clisp.org>
17816
17817         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
17818         'maxlen'. Ensure only length + width bytes are allocated, not
17819         length + 1 + width.
17820
17821 2007-06-09  Bruno Haible  <bruno@clisp.org>
17822
17823         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
17824         (CHAR_T): Remove macro.
17825         (VASNPRINTF): Update.
17826
17827 2007-06-09  Bruno Haible  <bruno@clisp.org>
17828
17829         * MODULES.html.sh (Unicode string functions): Add the new modules.
17830
17831         * modules/uniconv/u32-conv-to-enc: New file.
17832         * lib/uniconv/u32-conv-to-enc.c: New file.
17833         * modules/uniconv/u32-conv-to-enc-tests: New file.
17834         * tests/uniconv/test-u32-conv-to-enc.c: New file.
17835
17836         * modules/uniconv/u16-conv-to-enc: New file.
17837         * lib/uniconv/u16-conv-to-enc.c: New file.
17838         * lib/uniconv/u-conv-to-enc.h: New file.
17839         * modules/uniconv/u16-conv-to-enc-tests: New file.
17840         * tests/uniconv/test-u16-conv-to-enc.c: New file.
17841
17842         * modules/uniconv/u8-conv-to-enc: New file.
17843         * lib/uniconv/u8-conv-to-enc.c: New file.
17844         * modules/uniconv/u8-conv-to-enc-tests: New file.
17845         * tests/uniconv/test-u8-conv-to-enc.c: New file.
17846
17847         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
17848         u32_conv_to_encoding): New declarations.
17849
17850 2007-06-09  Bruno Haible  <bruno@clisp.org>
17851
17852         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
17853
17854 2007-06-09  Bruno Haible  <bruno@clisp.org>
17855
17856         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
17857         * modules/malloca: Renamed from modules/allocsa, updated.
17858         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
17859         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
17860         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
17861         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
17862         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
17863         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
17864         * modules/xmalloca: Renamed from modules/xallocsa, updated.
17865         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
17866         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
17867         * modules/c-strcasestr (Depends-on): Update.
17868         * lib/c-strcasestr.c: Update.
17869         * modules/c-strstr (Depends-on): Update.
17870         * lib/c-strstr.c: Update.
17871         * modules/canonicalize-lgpl (Depends-on): Update.
17872         * lib/canonicalize-lgpl.c: Update.
17873         * modules/clean-temp (Depends-on): Update.
17874         * lib/clean-temp.c: Update.
17875         * modules/csharpcomp (Depends-on): Update.
17876         * lib/csharpcomp.c: Update.
17877         * modules/csharpexec (Depends-on): Update.
17878         * lib/csharpexec.c: Update.
17879         * modules/javacomp (Depends-on): Update.
17880         * lib/javacomp.c: Update.
17881         * modules/javaexec (Depends-on): Update.
17882         * lib/javaexec.c: Update.
17883         * modules/mbscasestr (Depends-on): Update.
17884         * lib/mbscasestr.c: Update.
17885         * modules/mbsstr (Depends-on): Update.
17886         * lib/mbsstr.c: Update.
17887         * modules/setenv (Depends-on): Update.
17888         * lib/setenv.c: Update.
17889         * modules/strcasestr (Depends-on): Update.
17890         * lib/strcasestr.c: Update.
17891         * modules/striconveha (Depends-on): Update.
17892         * lib/striconveha.c: Update.
17893         * modules/relocatable-prog-wrapper (Files): Update.
17894         * lib/relocwrapper.c: Update.
17895         * build-aux/install-reloc: Update.
17896         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
17897
17898 2007-06-08  Bruno Haible  <bruno@clisp.org>
17899
17900         Port to uClibc.
17901         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
17902         * lib/fpurge.c (fpurge): Likewise.
17903         * lib/freading.c (freading): Likewise.
17904         * lib/fseeko.c (rpl_fseeko): Likewise.
17905         * lib/fseterr.c (fseterr): Likewise.
17906         * lib/fwriting.c (fwriting): Likewise.
17907         * tests/test-fflush.c (main): Avoid a failure on uClibc.
17908
17909 2007-06-08  Bruno Haible  <bruno@clisp.org>
17910
17911         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
17912         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
17913         * modules/gettext (Files): Add m4/intlmacosx.m4.
17914
17915 2007-06-07  Bruno Haible  <bruno@clisp.org>
17916
17917         * modules/localename-tests: New file.
17918         * tests/test-localename.c: New file.
17919
17920         New module 'localename'.
17921         * lib/localename.h: New file.
17922         * lib/localename.c: New file, from GNU gettext.
17923         * m4/localename.m4: New file.
17924         * modules/localename: New file.
17925
17926 2007-06-07  Bruno Haible  <bruno@clisp.org>
17927
17928         Work around the lack of <wchar.h> on some builds of uClibc.
17929         * doc/headers/wchar.texi: Update.
17930         * lib/wchar_.h: Include <wchar.h> only if it exists.
17931         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
17932         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
17933         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
17934         doesn't exist.
17935         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
17936         * modules/mbfile (Depends-on): Add wchar.
17937         * modules/mbiter (Depends-on): Likewise.
17938         * modules/mbuiter (Depends-on): Likewise.
17939         Reported by Simon Josefsson.
17940
17941 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
17942
17943         Work around problem reported by Steven M. Schweda in
17944         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
17945         Tru64 5.1B with the Compaq compiler environment installed declares
17946         an 'isblank' function but does not define it in the C library.
17947         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
17948         * lib/regex_internal.h (isblank): Likewise.
17949         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
17950         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
17951
17952 2007-06-05  Bruno Haible  <bruno@clisp.org>
17953
17954         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
17955         ia64.
17956         * modules/printf-safe: New file.
17957         * modules/fprintf-posix (Depends-on): Add printf-safe.
17958         * modules/printf-posix (Depends-on): Likewise.
17959         * modules/snprintf-posix (Depends-on): Likewise.
17960         * modules/sprintf-posix (Depends-on): Likewise.
17961         * modules/vasnprintf-posix (Depends-on): Likewise.
17962         * modules/vasprintf-posix (Depends-on): Likewise.
17963         * modules/vfprintf-posix (Depends-on): Likewise.
17964         * modules/vprintf-posix (Depends-on): Likewise.
17965         * modules/vsnprintf-posix (Depends-on): Likewise.
17966         * modules/vsprintf-posix (Depends-on): Likewise.
17967         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
17968         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
17969         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
17970         "no" on i386, x86_64, ia64.
17971         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
17972         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17973         on i386, x86_64, ia64.
17974         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
17975         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17976         on i386, x86_64, ia64.
17977         * tests/test-vasnprintf-posix.c: Include float.h.
17978         (LDBL80_WORDS): New macro.
17979         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17980         on i386, x86_64, ia64.
17981         * tests/test-vasprintf-posix.c: Include float.h.
17982         (LDBL80_WORDS): New macro.
17983         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
17984         on i386, x86_64, ia64.
17985         * tests/test-snprintf-posix.c: Include float.h.
17986         * tests/test-sprintf-posix.c: Likewise.
17987         * tests/test-vsnprintf-posix.c: Likewise.
17988         * tests/test-vsprintf-posix.c: Likewise.
17989
17990 2007-06-05  Bruno Haible  <bruno@clisp.org>
17991
17992         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
17993         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
17994         non-IEEE numbers on i386, x86_64, ia64.
17995         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
17996         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
17997         * tests/test-isnanl.h: Include float.h.
17998         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
17999
18000 2007-06-05  Bruno Haible  <bruno@clisp.org>
18001
18002         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
18003         also the %a / %A. Handle the %a / %A code before this extra handling.
18004
18005 2007-06-05  Bruno Haible  <bruno@clisp.org>
18006
18007         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
18008         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
18009
18010 2007-06-05  Bruno Haible  <bruno@clisp.org>
18011
18012         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
18013         typo in variable name.
18014
18015 2007-06-05  Eric Blake  <ebb9@byu.net>
18016
18017         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
18018         Reported by Simon Josefsson.
18019
18020 2007-06-04  Bruno Haible  <bruno@clisp.org>
18021
18022         Avoid test failures on some PowerPC platforms.
18023         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
18024         Define differently for PowerPC.
18025         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
18026         Reported by Gary V. Vaughan <gary@gnu.org>.
18027
18028 2007-06-02  Bruno Haible  <bruno@clisp.org>
18029
18030         Fix test-stdint failure on FreeBSD/ia64.
18031         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
18032         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
18033         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
18034         * doc/headers/stdint.texi: Update.
18035
18036 2007-06-01  Bruno Haible  <bruno@clisp.org>
18037
18038         * tests/test-binary-io.c (main): Pass a third argument to open().
18039         Reported by Gary V. Vaughan <gary@gnu.org>.
18040
18041 2007-06-01  Bruno Haible  <bruno@clisp.org>
18042
18043         * doc/functions/frexpl.texi: Update for mingw.
18044
18045 2007-06-01  Bruno Haible  <bruno@clisp.org>
18046
18047         * tests/test-lseek.c (main): Disable test of errno for invalid third
18048         argument.
18049         * doc/functions/lseek.texi: Update.
18050         Reported by Gary V. Vaughan <gary@gnu.org>.
18051
18052 2007-05-28  Bruno Haible  <bruno@clisp.org>
18053
18054         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
18055
18056 2007-05-31  Eric Blake  <ebb9@byu.net>
18057
18058         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
18059         cross compiling.
18060
18061 2007-05-30  Eric Blake  <ebb9@byu.net>
18062         and Bruno Haible  <bruno@clisp.org>
18063
18064         Work around mingw test failures exposed by m4-1.4.9b.
18065         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
18066         * tests/test-unistd.c: Disable uid_t and git_t tests for the
18067         moment.
18068
18069 2007-05-30  Bruno Haible  <bruno@clisp.org>
18070
18071         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
18072         assuming that they are closed. Needed on HP-UX 11.
18073
18074 2007-05-29  Bruno Haible  <bruno@clisp.org>
18075
18076         Fix a problem with #include_next.
18077         * lib/dirent_.h: Split the double-inclusion guard.
18078         * lib/fcntl_.h: Likewise.
18079         * lib/float_.h: Likewise.
18080         * lib/iconv_.h: Likewise.
18081         * lib/inttypes_.h: Likewise.
18082         * lib/locale_.h: Likewise.
18083         * lib/math_.h: Likewise.
18084         * lib/netinet_in_.h: Likewise.
18085         * lib/search_.h: Likewise.
18086         * lib/signal_.h: Likewise.
18087         * lib/stdint_.h: Likewise.
18088         * lib/stdio_.h: Likewise.
18089         * lib/stdlib_.h: Likewise.
18090         * lib/string_.h: Likewise.
18091         * lib/sys_select_.h: Likewise.
18092         * lib/sys_socket_.h: Likewise.
18093         * lib/sys_stat_.h: Likewise.
18094         * lib/sys_time_.h: Likewise.
18095         * lib/sysexits_.h: Likewise.
18096         * lib/time_.h: Likewise.
18097         * lib/unistd_.h: Likewise.
18098         * lib/wchar_.h: Likewise.
18099         * lib/wctype_.h: Likewise.
18100
18101 2007-05-29  Bruno Haible  <bruno@clisp.org>
18102
18103         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
18104         for the moment.
18105
18106 2007-05-29  Bruno Haible  <bruno@clisp.org>
18107
18108         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
18109         invocation.
18110         Reported by Eric Blake.
18111
18112 2007-05-29  Bruno Haible  <bruno@clisp.org>
18113
18114         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
18115         compiling case.
18116
18117 2007-05-29  Eric Blake  <ebb9@byu.net>
18118             Bruno Haible  <bruno@clisp.org>
18119
18120         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
18121         cross compiles.
18122
18123 2007-05-28  Eric Blake  <ebb9@byu.net>
18124
18125         * modules/closein-tests (test_closein_LDADD): Support test on
18126         cygwin with libtool.
18127
18128 2007-05-28  Bruno Haible  <bruno@clisp.org>
18129
18130         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
18131         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
18132         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
18133         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
18134         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
18135         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
18136         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
18137         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
18138         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
18139
18140 2007-05-28  Eric Blake  <ebb9@byu.net>
18141
18142         Unconditionally include <config.h> in unit tests.
18143         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
18144         * tests/test-allocsa.c, tests/test-arcfour.c,
18145         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
18146         tests/test-array_list.c, tests/test-array_oset.c,
18147         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
18148         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
18149         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
18150         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
18151         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
18152         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
18153         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
18154         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
18155         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
18156         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
18157         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
18158         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
18159         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
18160         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
18161         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
18162         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
18163         test-md5.c, test-memmem.c, test-printf-posix.c,
18164         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
18165         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
18166         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
18167         test-strcasestr.c, test-striconv.c, test-striconveh.c,
18168         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
18169         test-vasnprintf-posix2.c, test-vasnprintf.c,
18170         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
18171         test-vfprintf-posix.c, test-vprintf-posix.c,
18172         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
18173         test-xvasprintf.c: Likewise.
18174
18175 2007-05-28  Bruno Haible  <bruno@clisp.org>
18176
18177         * gnulib-tool (func_import): Remember the --with-tests command-line
18178         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
18179         Reported by Eric Blake.
18180
18181 2007-05-28  Bruno Haible  <bruno@clisp.org>
18182
18183         * modules/ftell-tests: New file.
18184         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
18185         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
18186
18187         * lib/ftell.c: New file.
18188         * modules/ftell: New file.
18189         * m4/ftell.m4: New file.
18190         * doc/functions/ftell.texi: Update.
18191         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
18192         REPLACE_FTELL.
18193         * lib/stdio_.h (rpl_ftell): New declaration.
18194         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
18195         REPLACE_FTELL.
18196
18197 2007-05-28  Eric Blake  <ebb9@byu.net>
18198
18199         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
18200
18201 2007-05-28  Bruno Haible  <bruno@clisp.org>
18202
18203         * modules/fseek-tests: New file.
18204         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
18205         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
18206
18207         * lib/fseek.c: New file.
18208         * modules/fseek: New file.
18209         * m4/fseek.m4: New file.
18210         * doc/functions/fseek.texi: Update.
18211         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
18212         REPLACE_FSEEK.
18213         * lib/stdio_.h (rpl_fseek): New declaration.
18214         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
18215         REPLACE_FSEEK.
18216
18217 2007-05-28  Bruno Haible  <bruno@clisp.org>
18218
18219         * lib/stdio_.h (fflush): More comments.
18220
18221 2007-05-28  Bruno Haible  <bruno@clisp.org>
18222
18223         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
18224         runtime test.
18225
18226 2007-05-28  Eric Blake  <ebb9@byu.net>
18227
18228         Improve lseek module.
18229         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
18230         * lib/unistd_.h (lseek): Scale back link warning message.
18231         * tests/test-lseek.c: Beef up test.
18232         * tests/test-lseek.sh: Exercise more facets of lseek.
18233         Reported by Bruno Haible.
18234
18235 2007-05-28  Bruno Haible  <bruno@clisp.org>
18236
18237         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
18238         to define.
18239
18240 2007-05-27  Bruno Haible  <bruno@clisp.org>
18241
18242         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
18243
18244 2007-05-27  Bruno Haible  <bruno@clisp.org>
18245
18246         * modules/openmp: New file.
18247         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
18248         Noah Misch.
18249
18250 2007-05-26  Bruno Haible  <bruno@clisp.org>
18251
18252         * modules/chdir-long (Depends-on): Add fchdir.
18253         * modules/chdir-safer (Depends-on): Likewise.
18254         * modules/fts (Depends-on): Likewise.
18255         * modules/fts-lgpl (Depends-on): Likewise.
18256         * modules/openat (Depends-on): Likewise.
18257         * modules/savewd (Depends-on): Likewise.
18258
18259 2007-05-24  Eric Blake  <ebb9@byu.net>
18260
18261         Fix lseek on mingw.
18262         * modules/lseek: New module.
18263         * m4/lseek.m4: New file.
18264         * lib/lseek.c: New file.
18265         * modules/lseek-tests: New file.
18266         * tests/test-lseek.c: New file.
18267         * tests/test-lseek.sh: New file.
18268         * MODULES.html.sh: Document lseek module.
18269         * modules/fflush (Depends-on): Add lseek, fseeko.
18270         * modules/fseeko (Depends-on): Likewise.
18271         * modules/ftello (Depends-on): Likewise.
18272         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
18273         broken.
18274         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
18275         broken.
18276         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
18277         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
18278         * lib/ftello.c (rpl_ftello): Likewise.
18279         * tests/test-fseeko.c (main): Test this.
18280         * tests/test-fseeko.sh: Likewise.
18281         * tests/test-ftello.c (main): Likewise.
18282         * tests/test-ftello.sh: Likewise.
18283         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
18284         implies replacing fseek.
18285         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
18286         HAVE_FTELLO.
18287         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
18288         * modules/unistd (Makefile.am): Likewise.
18289         * lib/unistd_.h (lseek): Declare a replacement.
18290         * doc/functions/lseek.texi (lseek): Document this fix.
18291         * doc/functions/fseek.texi (fseek): Likewise.
18292         * doc/functions/ftell.texi (ftell): Likewise.
18293
18294 2007-05-24  Bruno Haible  <bruno@clisp.org>
18295
18296         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
18297         in the printed representation of a NaN.
18298         * tests/test-vasprintf-posix.c (test_function): Likewise.
18299         * tests/test-snprintf-posix.h (test_function): Likewise.
18300         * tests/test-sprintf-posix.h (test_function): Likewise.
18301         Reported by Eric Blake.
18302
18303 2007-05-23  Eric Blake  <ebb9@byu.net>
18304
18305         Fix fseeko/ftello on cygwin 1.5.24.
18306         * doc/functions/fseeko.texi (fseeko): Document the fix.
18307         * doc/functions/ftello.texi (ftello): Document the fix.
18308         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
18309         * doc/functions/stdout.text (stdout): New file.
18310         * doc/functions/stderr.text (stderr): New file.
18311         * doc/gnulib.texi (Function Substitutes): Use new files.
18312         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
18313         prior to 1.7.0.
18314         * tests/test-ftello.c (main): Likewise for ftello.
18315         * tests/test-fseeko.sh: New file.
18316         * tests/test-ftello.sh: New file.
18317         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
18318         with seekable stdin.
18319         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
18320         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
18321         (gl_REPLACE_FSEEKO): New macro.
18322         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
18323         * modules/fseeko (Files): Distribute fseeko.c.
18324         * modules/ftello (Files): Distribute ftello.c.
18325         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
18326         mode.
18327         * lib/ftello.c (rpl_ftello): New file.
18328         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
18329         fseeko, ftello.
18330         (gl_STDIN_LARGE_OFFSET): New macro.
18331         * modules/stdio (Makefile.am): Perform the replacement.
18332         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
18333
18334 2007-05-23  Bruno Haible  <bruno@clisp.org>
18335
18336         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
18337         GNULIB_POSIXCHECK is defined.
18338
18339 2007-05-21  Bruno Haible  <bruno@clisp.org>
18340
18341         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
18342         Check also the output for NaN arguments. When cross-compiling, guess
18343         no on IRIX.
18344         * lib/vasnprintf.c: Update comments.
18345         * tests/test-vasnprintf-posix.c (strisnan): New function.
18346         (test_function): Use it.
18347         * tests/test-vasprintf-posix.c (strisnan): New function.
18348         (test_function): Use it.
18349         * tests/test-snprintf-posix.h (strisnan): New function.
18350         (test_function): Use it.
18351         * tests/test-sprintf-posix.h (strisnan): New function.
18352         (test_function): Use it.
18353         Reported by Eric Blake.
18354
18355 2007-05-20  Bruno Haible  <bruno@clisp.org>
18356
18357         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
18358         numbers that fails on BeOS.
18359         * doc/functions/frexpl.texi: Update.
18360
18361 2007-05-20  Jim Meyering  <jim@meyering.net>
18362
18363         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
18364         forced upon us by glibc-2.6.
18365
18366 2007-05-20  Bruno Haible  <bruno@clisp.org>
18367
18368         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
18369         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
18370         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
18371         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
18372         NEED_PRINTF_INFINITE.
18373         (is_infinitel): New function.
18374         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
18375         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
18376         gl_PREREQ_VASNPRINTF_INFINITE.
18377         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
18378         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18379         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
18380         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
18381         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
18382         gl_PREREQ_VASNPRINTF_INFINITE.
18383         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18384         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18385         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18386         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18387         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18388         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18389         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18390         * doc/functions/fprintf.texi: Update.
18391         * doc/functions/printf.texi: Update.
18392         * doc/functions/snprintf.texi: Update.
18393         * doc/functions/sprintf.texi: Update.
18394         * doc/functions/vfprintf.texi: Update.
18395         * doc/functions/vprintf.texi: Update.
18396         * doc/functions/vsnprintf.texi: Update.
18397         * doc/functions/vsprintf.texi: Update.
18398
18399 2007-05-20  Bruno Haible  <bruno@clisp.org>
18400
18401         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
18402         was not found in libc.
18403         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
18404
18405 2007-05-20  Bruno Haible  <bruno@clisp.org>
18406
18407         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18408         printed as "-nan" instead of "nan".
18409         * tests/test-vasprintf-posix.c (test_function): Likewise.
18410         * tests/test-snprintf-posix.h (test_function): Likewise.
18411         * tests/test-sprintf-posix.h (test_function): Likewise.
18412         Needed for HP-UX 11.
18413
18414 2007-05-20  Jim Meyering  <jim@meyering.net>
18415
18416         Fix buggy test for the fchownat-deref bug.
18417         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
18418         symlink required for the run-test.  Without it, this test would
18419         always declare that fchownat doesn't work, and client code would
18420         unnecessarily use the replacement function with fixed libc.
18421         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
18422         Reported by Greg Schafer.
18423
18424 2007-05-19  Bruno Haible  <bruno@clisp.org>
18425
18426         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
18427         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
18428         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
18429         Needed for IRIX 6.5 and Solaris 2.5.1.
18430
18431 2007-05-19  Bruno Haible  <bruno@clisp.org>
18432
18433         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
18434         (test_function): Skip tests involving -0.0 on platforms where
18435         -0.0 = 0.0.
18436         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
18437         (test_function): Skip tests involving -0.0 on platforms where
18438         -0.0 = 0.0.
18439         * tests/test-snprintf-posix.h (have_minus_zero): New function.
18440         (test_function): Skip tests involving -0.0 on platforms where
18441         -0.0 = 0.0.
18442         * tests/test-sprintf-posix.h (have_minus_zero): New function.
18443         (test_function): Skip tests involving -0.0 on platforms where
18444         -0.0 = 0.0.
18445         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
18446         tests.
18447         * tests/test-printf-posix.h (test_function): Likewise.
18448         * tests/test-printf-posix.output: Remove all -0.0 related results.
18449         Needed for IRIX 6.5.
18450
18451 2007-05-19  Bruno Haible  <bruno@clisp.org>
18452
18453         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
18454         printed as "nan0x7fffffff" instead of "nan".
18455         * tests/test-vasprintf-posix.c (test_function): Likewise.
18456         * tests/test-snprintf-posix.h (test_function): Likewise.
18457         * tests/test-sprintf-posix.h (test_function): Likewise.
18458         * tests/test-fprintf-posix.h (NaN): Remove macro.
18459         (test_function): Remove all NaN related tests.
18460         * tests/test-printf-posix.h (NaN): Remove macro.
18461         (test_function): Remove all NaN related tests.
18462         * tests/test-printf-posix.output: Remove all NaN related results.
18463         Needed for IRIX 6.5.
18464
18465 2007-05-19  Bruno Haible  <bruno@clisp.org>
18466
18467         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
18468         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
18469
18470 2007-05-19  Bruno Haible  <bruno@clisp.org>
18471
18472         * lib/float_.h: New file.
18473         * m4/float_h.m4: New file.
18474         * modules/float: New file.
18475         * modules/isnanl (Dependencies): Add float.
18476         * modules/isnanl-nolibm (Dependencies): Likewise.
18477         * modules/mathl (Dependencies): Likewise.
18478         * modules/printf-frexpl (Dependencies): Likewise.
18479         * modules/signbit (Dependencies): Likewise.
18480         * modules/vasnprintf (Dependencies): Likewise.
18481         * doc/headers/float.texi: Update.
18482
18483 2007-05-19  Jim Meyering  <jim@meyering.net>
18484
18485         * lib/utimens.c (gl_futimens): Rename from futimens,
18486         now that glibc-2.6 declares futimens.
18487         * lib/utimens.h: Likewise.
18488
18489 2007-05-19  Bruno Haible  <bruno@clisp.org>
18490
18491         Avoid test failures on mingw.
18492         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
18493         * tests/test-printf-posix.sh: Likewise.
18494         * tests/test-vfprintf-posix.sh: Likewise.
18495         * tests/test-vprintf-posix.sh: Likewise.
18496
18497 2007-05-19  Bruno Haible  <bruno@clisp.org>
18498
18499         Fix *printf result for NaN, Inf, -0.0 on mingw.
18500         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
18501         * lib/vasnprintf.c: Include math.h and isnan.h.
18502         (is_infinite_or_zero): New function.
18503         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
18504         values in the %f, %F, %e, %E, %g, %G directives.
18505         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
18506         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18507         gl_PRINTF_INFINITE and test its result. Invoke
18508         gl_PREREQ_VASNPRINTF_INFINITE.
18509         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18510         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18511         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18512         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18513         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18514         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18515         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18516         * doc/functions/fprintf.texi: Update.
18517         * doc/functions/printf.texi: Update.
18518         * doc/functions/snprintf.texi: Update.
18519         * doc/functions/sprintf.texi: Update.
18520         * doc/functions/vfprintf.texi: Update.
18521         * doc/functions/vprintf.texi: Update.
18522         * doc/functions/vsnprintf.texi: Update.
18523         * doc/functions/vsprintf.texi: Update.
18524
18525 2007-05-19  Bruno Haible  <bruno@clisp.org>
18526
18527         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
18528         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
18529         Instead of multiplying with 10^k, set extra_zeroes to k.
18530         (scale10_round_long_double): Remove function.
18531
18532 2007-05-18  Bruno Haible  <bruno@clisp.org>
18533
18534         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
18535         introduced on 2007-05-06.
18536
18537 2007-05-18  Bruno Haible  <bruno@clisp.org>
18538
18539         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
18540         %g directives.
18541         * tests/test-vasprintf-posix.c (test_function): Likewise.
18542         * tests/test-snprintf-posix.h (test_function): Likewise.
18543         * tests/test-sprintf-posix.h (test_function): Likewise.
18544
18545 2007-05-18  Bruno Haible  <bruno@clisp.org>
18546
18547         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
18548         (strmatch): New function.
18549         (test_function): Test the %f directive on numbers of various exponents.
18550         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
18551         (strmatch): New function.
18552         (test_function): Test the %f directive on numbers of various exponents.
18553         * tests/test-snprintf-posix.h (strmatch): New function.
18554         (test_function): Test the %f directive on numbers of various exponents.
18555         * tests/test-sprintf-posix.h (strmatch): New function.
18556         (test_function): Test the %f directive on numbers of various exponents.
18557         * tests/test-snprintf-posix.c (SIZEOF): New macro.
18558         * tests/test-sprintf-posix.c (SIZEOF): New macro.
18559         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
18560         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
18561
18562 2007-05-18  Bruno Haible  <bruno@clisp.org>
18563
18564         Add support for 'long double' number output.
18565         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
18566         * lib/vasnprintf.c: Include math.h and float+.h.
18567         (mp_limb_t): New type.
18568         (GMP_LIMB_BITS): New macro.
18569         (mp_twolimb_t): New type.
18570         (GMP_TWOLIMB_BITS): New macro.
18571         (mpn_t): New type.
18572         (multiply, divide, convert_to_decimal, decode_long_double,
18573         scale10_round_long_double, scale10_round_decimal_long_double,
18574         floorlog10l): New functions.
18575         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
18576         for the %f, %F, %e, %E, %g, %G directives.
18577         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
18578         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18579         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
18580         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
18581         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18582         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18583         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18584         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18585         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18586         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18587         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18588         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
18589         * modules/snprintf-posix (Depends-on): Likewise.
18590         * modules/sprintf-posix (Depends-on): Likewise.
18591         * modules/vasnprintf-posix (Depends-on): Likewise.
18592         * modules/vasprintf-posix (Depends-on): Likewise.
18593         * modules/vfprintf-posix (Depends-on): Likewise.
18594         * modules/vsnprintf-posix (Depends-on): Likewise.
18595         * modules/vsprintf-posix (Depends-on): Likewise.
18596         * modules/vasnprintf (Files): Add lib/float+.h.
18597         * doc/functions/fprintf.texi: Update.
18598         * doc/functions/printf.texi: Update.
18599         * doc/functions/snprintf.texi: Update.
18600         * doc/functions/sprintf.texi: Update.
18601         * doc/functions/vfprintf.texi: Update.
18602         * doc/functions/vprintf.texi: Update.
18603         * doc/functions/vsnprintf.texi: Update.
18604         * doc/functions/vsprintf.texi: Update.
18605
18606 2007-05-18  Bruno Haible  <bruno@clisp.org>
18607
18608         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
18609
18610 2007-05-18  Bruno Haible  <bruno@clisp.org>
18611
18612         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
18613         for printing 64-bit integers. Needed for mingw.
18614
18615 2007-05-18  Bruno Haible  <bruno@clisp.org>
18616
18617         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
18618         gl_FUNC_FREXPL_WORKS.
18619         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
18620
18621 2007-05-18  Bruno Haible  <bruno@clisp.org>
18622
18623         * modules/frexpl-nolibm-tests: New file.
18624
18625         * modules/frexpl-nolibm: New file.
18626         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
18627
18628 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
18629
18630         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
18631         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
18632         GCC 4.2, which otherwise issues a lot of warnings.
18633         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
18634         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
18635         Likewise.
18636         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
18637         * modules/iconv_open (iconv.h): Likewise.
18638         * modules/locale (locale.h): Likewise.
18639         * modules/netinet_in (netinet/in.h): Likewise.
18640         * modules/sys_select (sys_select.h): Likewise.
18641         * modules/sys_socket (sys/socket.h): Likewise.
18642         * modules/sys_stat (sys/stat.h): Likewise.
18643         * modules/sysexits (sysexits.h): Likewise.
18644         * modules/unistd (unistd.h): Likewise.
18645
18646 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18647
18648         * modules/closein-tests (Makefile.am): Distribute
18649         `test-closein.sh'.
18650
18651 2007-05-17  Bruno Haible  <bruno@clisp.org>
18652
18653         * tests/test-printf-posix.output: Renamed from
18654         tests/test-fprintf-posix.out.
18655         * modules/fprintf-posix-tests: Update.
18656         * modules/printf-posix-tests: Update.
18657         * modules/vfprintf-posix-tests: Update.
18658         * modules/vprintf-posix-tests: Update.
18659         * tests/test-fprintf-posix.sh: Update.
18660         * tests/test-printf-posix.sh: Update.
18661         * tests/test-vfprintf-posix.sh: Update.
18662         * tests/test-vprintf-posix.sh: Update.
18663         Reported by Ralf Wildenhues.
18664
18665 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
18666
18667         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
18668         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
18669         GCC 4.2, which otherwise issues a lot of warnings.
18670         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
18671         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
18672         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
18673         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
18674         it should no longer be needed.
18675         * lib/string_.h: Likewise.
18676         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
18677         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
18678         * modules/inttypes (inttypes.h): Likewise.
18679         * modules/math (math.h): Likewise.
18680         * modules/search (search.h): Likewise.
18681         * modules/signal (signal.h): Likewise.
18682         * modules/stdint (stdint.h): Likewise.
18683         * modules/stdio (stdio.h): Likewise.
18684         * modules/stdlib (stdlib.h): Likewise.
18685         * modules/string (string.h): Likewise.
18686         * modules/sys_time (sys/time.h): Likewise.
18687         * modules/time (time.h): Likewise.
18688         * modules/wchar (wchar.h): Likewise.
18689         * modules/wctype (wtype.h): Likewise.
18690
18691 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
18692
18693         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
18694
18695 2007-05-13  Bruno Haible  <bruno@clisp.org>
18696
18697         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
18698         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
18699         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
18700         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
18701         (gl_PREREQ_STRTOK_R): Don't require it here.
18702
18703 2007-05-13  Bruno Haible  <bruno@clisp.org>
18704
18705         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
18706         when used in C++ mode.
18707
18708 2007-05-12  Bruno Haible  <bruno@clisp.org>
18709
18710         * lib/linebuffer.h: Tweak doc.
18711         * lib/linebuffer.c: Likewise.
18712
18713 2007-05-12  James Youngman  <jay@gnu.org>
18714
18715         * lib/linebuffer.c (readlinebuffer_delim): New function,
18716         like readlinebuffer, but use a caller-specified delimiter.
18717         (readlinebuffer): Just call readlinebuffer_delim with '\n'
18718         as the delimiter.
18719         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
18720
18721 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
18722
18723         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
18724         * modules/openat (Files): Remove openat-die.c.
18725         (Depends-on): Add openat-die.
18726         * modules/openat-die: New module.
18727
18728 2007-05-06  Bruno Haible  <bruno@clisp.org>
18729
18730         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
18731         Update with info about Cygwin.
18732         * doc/functions/fprintf.texi: Update.
18733         * doc/functions/printf.texi: Update.
18734         * doc/functions/snprintf.texi: Update.
18735         * doc/functions/sprintf.texi: Update.
18736         * doc/functions/vfprintf.texi: Update.
18737         * doc/functions/vprintf.texi: Update.
18738         * doc/functions/vsnprintf.texi: Update.
18739         * doc/functions/vsprintf.texi: Update.
18740         Reported by Eric Blake.
18741
18742 2007-05-06  Bruno Haible  <bruno@clisp.org>
18743
18744         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
18745         padding ourselves for the floating-point directives.
18746         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
18747         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
18748         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18749         gl_PRINTF_FLAG_ZERO and test its result. Invoke
18750         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
18751         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18752         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
18753         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18754         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18755         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18756         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18757         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18758         * tests/test-snprintf-posix.h (test_function): Also check the width
18759         and some flags in the %f directive.
18760         * tests/test-sprintf-posix.h (test_function): Likewise.
18761         * tests/test-vasnprintf-posix.c (test_function): Likewise.
18762         * tests/test-vasprintf-posix.c (test_function): Likewise.
18763         * doc/functions/fprintf.texi: Update.
18764         * doc/functions/printf.texi: Update.
18765         * doc/functions/snprintf.texi: Update.
18766         * doc/functions/sprintf.texi: Update.
18767         * doc/functions/vfprintf.texi: Update.
18768         * doc/functions/vprintf.texi: Update.
18769         * doc/functions/vsnprintf.texi: Update.
18770         * doc/functions/vsprintf.texi: Update.
18771
18772 2007-05-06  Bruno Haible  <bruno@clisp.org>
18773
18774         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
18775         pass the ' flag character to sprintf or snprintf.
18776         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
18777         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
18778         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18779         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
18780         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
18781         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18782         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
18783         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18784         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18785         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18786         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18787         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18788         * tests/test-snprintf-posix.h (test_function): Also check the grouping
18789         flag.
18790         * tests/test-sprintf-posix.h (test_function): Likewise.
18791         * tests/test-vasnprintf-posix.c (test_function): Likewise.
18792         * tests/test-vasprintf-posix.c (test_function): Likewise.
18793         * doc/functions/fprintf.texi: Update.
18794         * doc/functions/printf.texi: Update.
18795         * doc/functions/snprintf.texi: Update.
18796         * doc/functions/sprintf.texi: Update.
18797         * doc/functions/vfprintf.texi: Update.
18798         * doc/functions/vprintf.texi: Update.
18799         * doc/functions/vsnprintf.texi: Update.
18800         * doc/functions/vsprintf.texi: Update.
18801
18802 2007-05-01  Bruno Haible  <bruno@clisp.org>
18803
18804         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
18805
18806 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
18807
18808         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
18809         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
18810
18811 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
18812
18813         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
18814         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
18815         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
18816
18817 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
18818
18819         * lib/argp-help.c (struct hol_entry): New member `ord'.
18820         (HOL_ENTRY_PTRCMP): Use ord for comparison
18821         (hol_sort): Initialize ord.
18822
18823 2007-05-01  Bruno Haible  <bruno@clisp.org>
18824
18825         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
18826         Reported by Eric Blake.
18827         * doc/gnulib.texi (Function Substitutes): Update.
18828
18829 2007-05-01  Bruno Haible  <bruno@clisp.org>
18830
18831         * doc/functions.texi: Remove file, now redundant through
18832         doc/functions/*.texi.
18833
18834 2007-05-01  Bruno Haible  <bruno@clisp.org>
18835
18836         * modules/argp (Depends-on): Add sleep.
18837
18838 2007-05-01  Bruno Haible  <bruno@clisp.org>
18839
18840         * modules/sleep-tests: New file.
18841         * tests/test-sleep.c: New file.
18842
18843         * modules/sleep: New file.
18844         * lib/sleep.c: New file.
18845         * m4/sleep.m4: New file.
18846         * lib/unistd_.h (sleep): New declaration.
18847         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
18848         HAVE_SLEEP.
18849         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
18850         * doc/functions/sleep.texi: Document the sleep module.
18851
18852 2007-05-01  Bruno Haible  <bruno@clisp.org>
18853
18854         * lib/sigprocmask.h: Remove file.
18855         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
18856         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
18857         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
18858         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
18859         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
18860         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
18861         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
18862         HAVE_SIGSET_T as a shell variable.
18863         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
18864         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
18865         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
18866         (Depends-on): Add signal. Remove verify.
18867         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
18868         (Include): Mention <signal.h> instead of sigprocmask.h.
18869         * NEWS: Mention the change.
18870         * lib/fatal-signal.c: Don't include sigprocmask.h.
18871
18872 2007-05-01  Bruno Haible  <bruno@clisp.org>
18873
18874         * modules/signal: New file.
18875         * lib/signal_.h: New file.
18876         * m4/signal_h.m4: New file.
18877
18878 2007-05-01  Bruno Haible  <bruno@clisp.org>
18879
18880         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
18881         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
18882         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
18883         HAVE_WCTYPE_CTMP_BUG into wctype.h.
18884
18885 2007-05-01  Bruno Haible  <bruno@clisp.org>
18886
18887         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
18888         configure time.
18889         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
18890         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
18891         * modules/sys_stat (Makefile.am): Substitute their values into
18892         sys/stat.h.
18893
18894 2007-05-01  Bruno Haible  <bruno@clisp.org>
18895
18896         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
18897         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
18898         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
18899
18900 2007-05-01  Bruno Haible  <bruno@clisp.org>
18901
18902         * doc/header/assert.texi: Undo last change: don't mention the gnulib
18903         'assert' module here.
18904
18905 2007-05-01  Bruno Haible  <bruno@clisp.org>
18906
18907         * doc/functions/*.texi: New files.
18908         * doc/functions/google-ranking.txt: New file.
18909         * doc/gnulib.texi (Function Substitutes): New chapter.
18910         (ctime, inet_ntoa): Remove sections.
18911         * doc/ctime.texi: Remove file.
18912         * doc/inet_ntoa.texi: Remove file.
18913         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
18914         dependencies.
18915         (%.info): New rule, specifying a --reference-limit.
18916
18917 2007-05-01  Bruno Haible  <bruno@clisp.org>
18918
18919         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
18920
18921 2007-05-01  Bruno Haible  <bruno@clisp.org>
18922
18923         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
18924         the portability of 'mkdir' to mingw systems.
18925
18926 2007-05-01  Bruno Haible  <bruno@clisp.org>
18927
18928         * doc/headers/google-ranking.txt: New file.
18929
18930 2007-04-30  Eric Blake  <ebb9@byu.net>
18931
18932         Prefer fseeko to fseek.
18933         * modules/getpass (Depends-on): Add fseeko.
18934         * lib/getpass.c (getpass): Use fseeko, not fseek.
18935
18936 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
18937
18938         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
18939         assumes the sorting is stable, while most qsort implementations
18940         are not.  Use argument addresses to ensure they never compare as
18941         equal.
18942
18943         * tests/test-argp-2.sh (usage-indent test): Fix output
18944         (func_compare): Restore diff options
18945         * tests/test-argp.c: Restore #include "progname.h"
18946
18947 2007-04-29  Bruno Haible  <bruno@clisp.org>
18948
18949         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
18950         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
18951         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
18952         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18953         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
18954         (configure.ac): Define CHECK_SNPRINTF_POSIX.
18955         (TESTS, check_PROGRAMS): Add test-snprintf.
18956         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
18957         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
18958         (TESTS, check_PROGRAMS): Add test-vsnprintf.
18959         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
18960         assertions that fail on HP-UX, OSF/1, or IRIX.
18961         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
18962
18963 2007-04-29  Bruno Haible  <bruno@clisp.org>
18964
18965         * MODULES.html.sh (posix_functions): Remove 'contents'.
18966
18967 2007-04-29  Karl Berry  <karl@gnu.org>
18968
18969         * config/srclist.txt (gendocs_template_min): new entry.
18970
18971 2007-04-29  Bruno Haible  <bruno@clisp.org>
18972
18973         Work around fpurge bug on BSD systems.
18974         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
18975         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
18976         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
18977         fpurge to rpl_fpurge if the system already has this function.
18978         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
18979         the case where the system already has this function. Correct invariants
18980         on BSD systems.
18981         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
18982         BSD systems.
18983
18984 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
18985
18986         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
18987         proposed by Sven Verdoolaege.
18988
18989         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
18990         options.
18991         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
18992         (usage and help tests): Update
18993
18994 2007-04-29  Bruno Haible  <bruno@clisp.org>
18995
18996         * tests/test-fflush.c (main): Use a file of size 17, not 10.
18997         Print more information in case of failure. Disable a test on BeOS.
18998
18999 2007-04-29  Bruno Haible  <bruno@clisp.org>
19000
19001         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
19002         This helps debugging on systems on which no gdb is available.
19003
19004 2007-04-29  Bruno Haible  <bruno@clisp.org>
19005
19006         * lib/freading.h: Improve comments.
19007         * lib/fwriting.h: Likewise.
19008         * tests/test-freading.c (main): Don't check freading immediately after
19009         repositioning. Needed for glibc.
19010
19011 2007-04-29  Bruno Haible  <bruno@clisp.org>
19012
19013         * lib/freading.c (freading): Trivial simplification.
19014
19015 2007-04-28  Bruno Haible  <bruno@clisp.org>
19016
19017         * tests/test-fwriting.c (main): Also test the interaction between
19018         fflush and fwriting.
19019         * modules/fwriting-tests (Depends-on): Add fflush.
19020
19021         * tests/test-freading.c (main): Also test the interaction between
19022         fflush and freading.
19023         * modules/freading-tests (Depends-on): Add fflush.
19024
19025 2007-04-28  Bruno Haible  <bruno@clisp.org>
19026
19027         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
19028         fseeko and ftello.
19029         Suggested by Eric Blake.
19030
19031 2007-04-28  Jim Meyering  <jim@meyering.net>
19032
19033         Avoid false-negative in gl_STDINT_H's C99 conformance test.
19034         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
19035         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
19036
19037 2007-04-27  Eric Blake  <ebb9@byu.net>
19038
19039         * doc/headers/assert.texi (assert.h): Document assert module use.
19040
19041 2007-04-27  Bruno Haible  <bruno@clisp.org>
19042
19043         * doc/headers/*.texi: New files.
19044         * doc/gnulib.texi (Header File Substitutes): New chapter.
19045         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
19046         dependencies.
19047         (standards.info ,standards.html, standards.dvi): Update dependencies.
19048         (mostlyclean, clean): New targets.
19049
19050 2007-04-27  Bruno Haible  <bruno@clisp.org>
19051
19052         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
19053         * modules/sysexits (Files, Makefile.am): Update.
19054
19055         * lib/sys_socket_.h: Renamed from lib/socket_.h.
19056         * modules/sys_socket (Files, Makefile.am): Update.
19057
19058         * lib/sys_stat_.h: Renamed from lib/stat_.h.
19059         * modules/sys_stat (Files, Makefile.am): Update.
19060
19061 2007-04-27  Eric Blake  <ebb9@byu.net>
19062
19063         * lib/freading.h: Improve comments.
19064         * lib/fwriting.h: Likewise.
19065         * lib/fflush.c: Likewise.
19066
19067         Fix closein for mingw.
19068         * modules/closein-tests: Add tests for closein.
19069         * tests/test-closein.c: New file.
19070         * tests/test-closein.sh: Likewise.
19071         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
19072         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
19073
19074 2007-04-27  Bruno Haible  <bruno@clisp.org>
19075
19076         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
19077         version is < 6.
19078         * lib/math_.h [__DECC]: Likewise.
19079         * lib/stdio_.h [__DECC]: Likewise.
19080         * lib/stdlib_.h [__DECC]: Likewise.
19081         * lib/string_.h [__DECC]: Likewise.
19082         * lib/time_.h [__DECC]: Likewise.
19083         * lib/wchar_.h [__DECC]: Likewise.
19084         * lib/wctype_.h [__DECC]: Likewise.
19085
19086 2007-04-27  Bruno Haible  <bruno@clisp.org>
19087
19088         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
19089
19090 2007-04-27  Bruno Haible  <bruno@clisp.org>
19091
19092         * lib/fflush.c: Add comments.
19093         * modules/fpurge-tests (Depends-on): Add fflush.
19094         * modules/freadable-tests (Depends-on): Likewise.
19095         * modules/fwritable-tests (Depends-on): Likewise.
19096
19097 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
19098
19099         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
19100         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
19101         Report by Bruno Haible <bruno@clisp.org>.
19102
19103 2007-04-26  Eric Blake  <ebb9@byu.net>
19104
19105         Fix fflush on mingw.
19106         * modules/fflush (Depends-on): Add freading.
19107         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
19108         but unread data.
19109
19110 2007-04-26  Eric Blake  <ebb9@byu.net>
19111         and Bruno Haible  <bruno@clisp.org>
19112
19113         Implement freading and fwriting.
19114         * lib/freading.c: New file.
19115         * lib/freading.h: Likewise.
19116         * m4/freading.m4: Likewise.
19117         * modules/freading: Likewise.
19118         * modules/freading-tests: Likewise.
19119         * tests/test-freading.c: Likewise.
19120         * lib/fwriting.c: New file.
19121         * lib/fwriting.h: Likewise.
19122         * m4/fwriting.m4: Likewise.
19123         * modules/fwriting: Likewise.
19124         * modules/fwriting-tests: Likewise.
19125         * tests/test-fwriting.c: Likewise.
19126         * MODULES.html.sh (File stream based Input/Output): Mention them.
19127
19128 2007-04-26  Bruno Haible  <bruno@clisp.org>
19129
19130         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
19131         'long' when we assume it.
19132         Suggested by Eric Blake.
19133
19134 2007-04-26  Bruno Haible  <bruno@clisp.org>
19135
19136         Ensure fseeko, ftello are declared on glibc systems.
19137         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
19138         * modules/fseeko (configure.ac-early): Likewise.
19139         * modules/ftello (configure.ac-early): Likewise.
19140         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
19141         AC_FUNC_FSEEKO for this.
19142         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
19143         (gl_CHECK_FSEEKO): Remove macro.
19144
19145 2007-04-26  Bruno Haible  <bruno@clisp.org>
19146
19147         * tests/test-fflush.c (main): Also check the ftell result after
19148         fflush and fseek/fseeko.
19149         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
19150         file descriptor position cache in the stream.
19151         * lib/fseeko.c (rpl_fseeko): Likewise.
19152
19153 2007-04-26  Bruno Haible  <bruno@clisp.org>
19154
19155         * modules/fflush-tests (Depends-on): Add fseeko.
19156
19157 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
19158             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19159
19160         * lib/argz_.h: ensure error_t definition is obtained in same
19161         mechanism system argz.h would have.
19162         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
19163         argz facilities are known bad.  Err on the side of caution if
19164         cross-compiling.
19165
19166 2007-04-25  Eric Blake  <ebb9@byu.net>
19167
19168         * lib/fpurge.c (includes): Use stdlib.h for free.
19169         * tests/test-fflush.c (main): Also test fflush-fseeko.
19170
19171 2007-04-25  Bruno Haible  <bruno@clisp.org>
19172
19173         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
19174         * lib/fseeko.c: New file.
19175         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
19176         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
19177         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
19178         gl_FUNC_FSEEKO.
19179         (gl_FUNC_FSEEKO): Invoke it.
19180         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
19181         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
19182         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
19183
19184 2007-04-25  Bruno Haible  <bruno@clisp.org>
19185
19186         * modules/fflush (Depends-on): Add ftello.
19187
19188 2007-04-25  Bruno Haible  <bruno@clisp.org>
19189
19190         * modules/ftello-tests: New file.
19191         * tests/test-ftello.c: New file.
19192
19193         * modules/ftello: New file.
19194         * m4/ftello.m4: New file.
19195         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
19196         HAVE_FTELLO.
19197         * lib/stdio_.h (ftello): New declaration.
19198         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
19199         HAVE_FTELLO.
19200
19201 2007-04-25  Bruno Haible  <bruno@clisp.org>
19202
19203         * modules/fseeko-tests: New file.
19204         * tests/test-fseeko.c: New file.
19205
19206         * modules/fseeko: New file.
19207         * m4/fseeko.m4: New file.
19208         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
19209         HAVE_FSEEKO.
19210         * lib/stdio_.h (fseeko): New declaration.
19211         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
19212         HAVE_FSEEKO.
19213
19214 2007-04-25  Bruno Haible  <bruno@clisp.org>
19215
19216         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
19217
19218 2007-04-25  Bruno Haible  <bruno@clisp.org>
19219
19220         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
19221         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
19222         * tests/test-unistd.c: Likewise.
19223         * tests/test-fcntl.c: Likewise.
19224
19225 2007-04-23  Eric Blake  <ebb9@byu.net>
19226
19227         * lib/fflush.c: Fix missing include.
19228         Reported by Bruno Haible.
19229
19230 2007-04-23  Bruno Haible  <bruno@clisp.org>
19231
19232         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
19233         Reported by Eric Blake.
19234
19235 2007-04-23  Bruno Haible  <bruno@clisp.org>
19236
19237         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
19238
19239 2007-04-23  Bruno Haible  <bruno@clisp.org>
19240
19241         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
19242
19243 2007-04-23  Bruno Haible  <bruno@clisp.org>
19244
19245         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
19246         Needed on HP-UX 11.
19247
19248 2007-04-16  Eric Blake  <ebb9@byu.net>
19249
19250         Make fflush rely on fpurge.
19251         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
19252         open coding all variants.
19253         * modules/fflush (Depends-on): Add fpurge and unistd.
19254         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
19255         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
19256
19257         Fix --with-tests compilation on cygwin.
19258         * modules/argmatch-tests (Makefile.am): List gnulib library first
19259         in LDADD.
19260         * modules/argp-tests (Makefile.am): Likewise.
19261         * modules/array-list-tests (Makefile.am): Likewise.
19262         * modules/array-oset-tests (Makefile.am): Likewise.
19263         * modules/avltree-list-tests (Makefile.am): Likewise.
19264         * modules/avltree-oset-tests (Makefile.am): Likewise.
19265         * modules/avltreehash-list-tests (Makefile.am): Likewise.
19266         * modules/carray-list-tests (Makefile.am): Likewise.
19267         * modules/dirname-tests (Makefile.am): Likewise.
19268         * modules/frexp-tests (Makefile.am): Likewise.
19269         * modules/isnanl-tests (Makefile.am): Likewise.
19270         * modules/linked-list-tests (Makefile.am): Likewise.
19271         * modules/linkedhash-list-tests (Makefile.am): Likewise.
19272         * modules/lock-tests (Makefile.am): Likewise.
19273         * modules/rbtree-list-tests (Makefile.am): Likewise.
19274         * modules/rbtree-oset-tests (Makefile.am): Likewise.
19275         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
19276         * modules/tls-tests (Makefile.am): Likewise.
19277         * modules/tsearch-tests (Makefile.am): Likewise.
19278         * modules/xvasprintf-tests (Makefile.am): Likewise.
19279
19280         Fix fpurge for cygwin.
19281         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
19282         value.
19283         * modules/fpurge-tests (Depends-on): Clean up trash.
19284
19285 2007-04-16  Simon Josefsson  <simon@josefsson.org>
19286
19287         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
19288
19289         * m4/autobuild.m4: Re-indent.
19290
19291 2007-04-13  Bruno Haible  <bruno@clisp.org>
19292
19293         * modules/fpurge-tests: New file.
19294         * tests/test-fpurge.c: New file.
19295
19296         * modules/fpurge: New file.
19297         * lib/fpurge.h: New file.
19298         * lib/fpurge.c: New file.
19299         * m4/fpurge.m4: New file.
19300
19301 2007-04-13  Bruno Haible  <bruno@clisp.org>
19302
19303         * modules/fbufmode-tests: New file.
19304         * tests/test-fbufmode.c: New file.
19305
19306         * modules/fbufmode: New file.
19307         * lib/fbufmode.h: New file.
19308         * lib/fbufmode.c: New file.
19309         * m4/fbufmode.m4: New file.
19310
19311 2007-04-13  Bruno Haible  <bruno@clisp.org>
19312
19313         * modules/fwritable-tests: New file.
19314         * tests/test-fwritable.c: New file.
19315
19316         * modules/fwritable: New file.
19317         * lib/fwritable.h: New file.
19318         * lib/fwritable.c: New file.
19319         * m4/fwritable.m4: New file.
19320
19321 2007-04-13  Bruno Haible  <bruno@clisp.org>
19322
19323         * modules/freadable-tests: New file.
19324         * tests/test-freadable.c: New file.
19325
19326         * modules/freadable: New file.
19327         * lib/freadable.h: New file.
19328         * lib/freadable.c: New file.
19329         * m4/freadable.m4: New file.
19330
19331 2007-04-13  Bruno Haible  <bruno@clisp.org>
19332
19333         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
19334         MOSTLYCLEANFILES.
19335
19336 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19337
19338         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
19339         gzip bootstrap.conf to avoid dragging in i18n machinery.
19340         (gnulib_tool_option): Use it.
19341
19342 2007-04-13  Bruno Haible  <bruno@clisp.org>
19343
19344         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
19345         %F directives.
19346         * tests/test-vasprintf-posix.c (test_function): Likewise.
19347         * tests/test-snprintf-posix.h (test_function): Likewise.
19348         * tests/test-sprintf-posix.h (test_function): Likewise.
19349         * tests/test-fprintf-posix.h (test_function): Likewise.
19350         * tests/test-printf-posix.h (test_function): Likewise.
19351         * tests/test-fprintf-posix.out: Likewise.
19352
19353 2007-04-13  Bruno Haible  <bruno@clisp.org>
19354
19355         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
19356         * modules/tls-tests (configure.ac): Likewise.
19357         Reported by Arto C. Nirkko <anirkko@insel.ch>.
19358
19359 2007-04-13  Bruno Haible  <bruno@clisp.org>
19360
19361         * lib/tls.c (glthread_tls_get): Fix return type.
19362         Patch by Arto C. Nirkko <anirkko@insel.ch>.
19363
19364 2007-04-12  Eric Blake  <ebb9@byu.net>
19365
19366         * modules/gettime (Depends-on): Remove gettime.
19367         Reported by Dmitry V. Levin.
19368
19369 2007-04-12  Bruno Haible  <bruno@clisp.org>
19370
19371         * modules/fflush (Include): Mention <stdio.h>.
19372         * modules/strtoimax (Include): Mention <inttypes.h>.
19373         * modules/strtoumax (Include): Likewise.
19374
19375 2007-04-12  Eric Blake  <ebb9@byu.net>
19376
19377         * .cvsignore: New file.
19378         * .gitignore: Likewise.
19379
19380 2007-04-12  Bruno Haible  <bruno@clisp.org>
19381
19382         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
19383         not before, since $(LDADD) often contains libgnu.a.
19384         * modules/striconv-tests (test_striconv_LDADD): Likewise.
19385         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
19386         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
19387         Needed on Cygwin.
19388
19389 2007-04-12  Eric Blake  <ebb9@byu.net>
19390
19391         Work around glibc's failure to flush stdin on fclose.
19392         * lib/closein.c (close_stdin): Flush stdin before closing.
19393
19394         Work around glibc's failure to reset seekable stdin on exit.
19395         * modules/closein: New module.
19396         * lib/closein.c: New file.
19397         * lib/closein.h: Likewise.
19398         * m4/closein.m4: Likewise.
19399         * MODULES.html.sh (File stream based Input/Output): Document it.
19400
19401 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19402
19403         * gnulib-tool: Rename generated 'autobuild' script to
19404         'do-autobuild' in --create-megatestdir output.
19405
19406         * doc/gnulib.texi (Build robot for gnulib): Fix.
19407
19408 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19409
19410         * modules/sysexits (Depends-on): Add absolute-header.
19411
19412 2007-04-12  Eric Blake  <ebb9@byu.net>
19413
19414         No need to preserve errno on success.
19415         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
19416         Reported by Bruno Haible.
19417
19418 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19419
19420         * MODULES.html.sh (Support for maintaining and releasing
19421         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
19422
19423 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19424
19425         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
19426
19427 2007-04-12  Simon Josefsson  <simon@josefsson.org>
19428
19429         * modules/autobuild: New module.
19430
19431         * m4/autobuild.m4: New file.
19432
19433 2007-04-11  Bruno Haible  <bruno@clisp.org>
19434
19435         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
19436         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
19437         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
19438         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
19439         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
19440         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19441         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19442         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
19443         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19444         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19445         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
19446         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19447         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19448         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
19449         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19450         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19451         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
19452         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19453         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19454         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
19455         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19456         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19457         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
19458         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19459         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19460         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
19461         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
19462         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
19463         Reported by Eric Blake.
19464
19465 2007-04-11  Bruno Haible  <bruno@clisp.org>
19466
19467         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
19468
19469 2007-04-10  Bruno Haible  <bruno@clisp.org>
19470
19471         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
19472         for NaN and Infinity. Needed on FreeBSD 6.1.
19473         * tests/test-vasnprintf-posix.c (test_function): Undo last change
19474         regarding results for "%010a" of Infinity and NaN.
19475         * tests/test-vasprintf-posix.c (test_function): Likewise.
19476         * tests/test-snprintf-posix.h (test_function): Likewise.
19477         * tests/test-sprintf-posix.h (test_function): Likewise.
19478         * tests/test-fprintf-posix.h (test_function): Likewise.
19479         * tests/test-printf-posix.h (test_function): Likewise.
19480         * tests/test-fprintf-posix.out: Likewise.
19481
19482 2007-04-10  Bruno Haible  <bruno@clisp.org>
19483
19484         * modules/locale-tests: New file.
19485         * tests/test-locale.c: New file.
19486
19487         * modules/locale: New file.
19488         * lib/locale_.h: New file.
19489         * m4/locale_h.m4: New file.
19490
19491 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19492             Bruno Haible  <bruno@clisp.org>
19493
19494         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
19495         be determined, test for availability of the copysignf, copysign,
19496         copysignl functions.
19497         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
19498         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
19499         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
19500
19501 2007-04-09  Eric Blake  <ebb9@byu.net>
19502
19503         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
19504         * modules/stdio (Makefile.am): Support fflush.
19505         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
19506         * modules/fflush: New file.
19507         * lib/fflush.c: Likewise.
19508         * m4/fflush.m4: Likewise.
19509         * modules/fflush-tests: New test.
19510         * tests/test-fflush.c: Likewise.
19511         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
19512
19513 2007-04-06  Bruno Haible  <bruno@clisp.org>
19514
19515         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
19516         (VASNPRINTF): Use signbit for faster determination whether to print a
19517         minus sign.
19518         * modules/vasnprintf (Files): Remove lib/float+.h.
19519         * modules/fprintf-posix (Depends-on): Add signbit.
19520         * modules/snprintf-posix (Depends-on): Likewise.
19521         * modules/sprintf-posix (Depends-on): Likewise.
19522         * modules/vasnprintf-posix (Depends-on): Likewise.
19523         * modules/vasprintf-posix (Depends-on): Likewise.
19524         * modules/vfprintf-posix (Depends-on): Likewise.
19525         * modules/vsnprintf-posix (Depends-on): Likewise.
19526         * modules/vsprintf-posix (Depends-on): Likewise.
19527
19528 2007-04-06  Bruno Haible  <bruno@clisp.org>
19529
19530         * tests/test-frexp.c (main): Test also the sign bit of zero results.
19531         * tests/test-frexpl.c (main): Likewise.
19532         * tests/test-ldexpl.c (main): Likewise.
19533         * modules/frexp-tests (Depends-on): Add signbit.
19534         * modules/frexpl-tests (Depdends-on): Likewise.
19535         * modules/ldexpl-tests (Depdends-on): Likewise.
19536
19537 2007-04-06  Bruno Haible  <bruno@clisp.org>
19538
19539         * modules/signbit-tests: New file.
19540         * tests/test-signbit.c: New file.
19541
19542         * modules/signbit: New file.
19543         * lib/signbitf.c: New file.
19544         * lib/signbitd.c: New file.
19545         * lib/signbitl.c: New file.
19546         * m4/signbit.m4: New file.
19547         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
19548         (signbit): New macro.
19549         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
19550         REPLACE_SIGNBIT.
19551         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
19552         REPLACE_FREXPL into math.h.
19553
19554 2007-04-06  Bruno Haible  <bruno@clisp.org>
19555
19556         * modules/isnanf-nolibm-tests: New file.
19557         * tests/test-isnanf.c: New file.
19558
19559         * modules/isnanf-nolibm: New file.
19560         * lib/isnanf.h: New file.
19561         * lib/isnanf.c: New file.
19562         * lib/isnan.c: Consider the USE_FLOAT macro.
19563         * m4/isnanf.m4: New file.
19564
19565 2007-04-06  Bruno Haible  <bruno@clisp.org>
19566
19567         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
19568         (Link): New section.
19569
19570         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
19571
19572 2007-04-06  Bruno Haible  <bruno@clisp.org>
19573
19574         Assume the 'long double' type.
19575         * m4/longdouble.m4: Remove file.
19576         * config/srclist.txt: Don't mention longdouble.m4.
19577         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
19578         * lib/float+.h: Likewise.
19579         * lib/frexp.c: Likewise.
19580         * lib/printf-args.h: Likewise.
19581         * lib/printf-args.c: Likewise.
19582         * lib/printf-frexp.c: Likewise.
19583         * lib/printf-parse.c: Likewise.
19584         * lib/vasnprintf.c: Likewise.
19585         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
19586         * m4/intl.m4: Likewise.
19587         * m4/isnanl.m4: Likewise.
19588         * m4/printf.m4: Likewise.
19589         * m4/printf-frexpl.m4: Likewise.
19590         * m4/vasnprintf.m4: Likewise.
19591         * modules/allocsa (Files): Remove m4/longdouble.m4.
19592         * modules/gettext (Files): Likewise.
19593         * modules/relocatable-prog-wrapper (Files): Likewise.
19594         * modules/vasnprintf (Files): Likewise.
19595         * modules/isnanl (Files): Likewise.
19596         (Include): Simplify.
19597         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
19598         (Include): Simplify.
19599         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
19600         (Include): Simplify.
19601         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
19602         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19603         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
19604         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19605         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
19606         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19607         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
19608         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19609         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
19610         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19611         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
19612         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
19613         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
19614         * tests/test-isnanl.c: Likewise.
19615         * tests/test-snprintf-posix.h: Likewise.
19616         * tests/test-sprintf-posix.h: Likewise.
19617         * tests/test-vasnprintf-posix.c: Likewise.
19618         * tests/test-vasnprintf-posix2.c: Likewise.
19619         * tests/test-vasprintf-posix.c: Likewise.
19620
19621 2007-04-06  Bruno Haible  <bruno@clisp.org>
19622
19623         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
19624         * lib/math_.h [__DECC]: Include the overridden include file through
19625         #include_next, outside the double-inclusion guard.
19626         * lib/stdio_.h [__DECC]: Likewise.
19627         * lib/stdlib_.h [__DECC]: Likewise.
19628         * lib/string_.h [__DECC]: Likewise.
19629         * lib/time_.h [__DECC]: Likewise.
19630         * lib/wchar_.h [__DECC]: Likewise.
19631         * lib/wctype_.h [__DECC]: Likewise.
19632         * lib/inttypes_.h [__DECC]: Likewise.
19633         Reported by Albert Chin <china@thewrittenword.com> in
19634         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
19635
19636 2007-04-04  Eric Blake  <ebb9@byu.net>
19637
19638         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
19639         1.5.x.
19640
19641 2007-04-04  Bruno Haible  <bruno@clisp.org>
19642
19643         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
19644         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
19645
19646 2007-04-04  Bruno Haible  <bruno@clisp.org>
19647
19648         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
19649         results for "%010a" of Infinity and NaN.
19650         * tests/test-vasprintf-posix.c (test_function): Likewise.
19651         * tests/test-snprintf-posix.h (test_function): Likewise.
19652         * tests/test-sprintf-posix.h (test_function): Likewise.
19653         * tests/test-fprintf-posix.h (test_function): Remove these tests.
19654         * tests/test-printf-posix.h (test_function): Likewise.
19655         * tests/test-fprintf-posix.out: Update.
19656         Needed for FreeBSD 6.1.
19657
19658 2007-04-04  Bruno Haible  <bruno@clisp.org>
19659
19660         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
19661         directly used by the gnulib modules nor by gnulib-tool.
19662
19663 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
19664
19665         * DEPENDENCIES: Give overall description of version dependency
19666         desirability.  Use more-typical names for apps.
19667         Add shell, coreutils, diffutils, grep, tar, gzip.
19668
19669 2007-04-04  Simon Josefsson  <simon@josefsson.org>
19670
19671         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
19672
19673 2007-04-04  Karl Berry  <karl@gnu.org>
19674
19675         * MODULES.html.sh (func_module): missing '.
19676
19677 2007-04-03  Bruno Haible  <bruno@clisp.org>
19678
19679         * modules/argmatch-tests (Makefile.am): New variable
19680         test_argmatch_LDADD.
19681         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
19682         * modules/array-list-tests (Makefile.am): New variable
19683         test_array_list_LDADD.
19684         * modules/array-oset-tests (Makefile.am): New variable
19685         test_array_oset_LDADD.
19686         * modules/avltree-list-tests (Makefile.am): New variable
19687         test_avltree_list_LDADD.
19688         * modules/avltree-oset-tests (Makefile.am): New variable
19689         test_avltree_oset_LDADD.
19690         * modules/avltreehash-list-tests (Makefile.am): New variable
19691         test_avltreehash_list_LDADD.
19692         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
19693         test_canonicalize_lgpl_LDADD.
19694         * modules/carray-list-tests (Makefile.am): New variable
19695         test_carray_list_LDADD.
19696         * modules/dirname-tests (Makefile.am): New variable
19697         test_dirname_LDADD.
19698         * modules/linked-list-tests (Makefile.am): New variable
19699         test_linked_list_LDADD.
19700         * modules/linkedhash-list-tests (Makefile.am): New variable
19701         test_linkedhash_list_LDADD.
19702         * modules/rbtree-list-tests (Makefile.am): New variable
19703         test_rbtree_list_LDADD.
19704         * modules/rbtree-oset-tests (Makefile.am): New variable
19705         test_rbtree_oset_LDADD.
19706         * modules/rbtreehash-list-tests (Makefile.am): New variable
19707         test_rbtreehash_list_LDADD.
19708         * modules/xvasprintf-tests (Makefile.am): New variable
19709         test_xvasprintf_LDADD.
19710         Reported by Eric Blake.
19711
19712 2007-04-03  Eric Blake  <ebb9@byu.net>
19713
19714         * DEPENDENCIES: Weaken m4 requirements.
19715
19716 2007-04-03  Bruno Haible  <bruno@clisp.org>
19717
19718         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
19719         * modules/isnanl-tests (configure.ac): Likewise.
19720
19721 2007-04-03  Ben Pfaff  <blp@gnu.org>
19722
19723         * modules/iconv_open: Add $(srcdir)/ to source directory
19724         references in Makefile fragments that call gperf, to fix VPATH
19725         builds.
19726
19727 2007-04-03  Bruno Haible  <bruno@clisp.org>
19728
19729         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
19730         * lib/ldexpl.c: Undo last change.
19731
19732 2007-04-03  Bruno Haible  <bruno@clisp.org>
19733
19734         * modules/printf-frexpl (Depends-on): Undo last change.
19735         (Files): Add m4/ldexpl.m4.
19736
19737 2007-04-03  Bruno Haible  <bruno@clisp.org>
19738
19739         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
19740         * modules/isnanl (Link): New section.
19741
19742         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
19743         * modules/frexp (Link): New section.
19744
19745         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
19746         * modules/frexpl (Link): New section.
19747
19748         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
19749         * modules/ldexpl (Link): New section.
19750
19751 2007-04-03  Bruno Haible  <bruno@clisp.org>
19752
19753         * modules/TEMPLATE-EXTENDED: New file.
19754         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
19755
19756 2007-04-03  Bruno Haible  <bruno@clisp.org>
19757
19758         * DEPENDENCIES: New file.
19759         Suggested by Simon Josefsson.
19760
19761 2007-04-03  Bruno Haible  <bruno@clisp.org>
19762
19763         * doc/gnulib.texi: Escape @.
19764
19765 2007-04-03  James Youngman  <jay@gnu.org>
19766         and Paul Eggert  <eggert@cs.ucla.edu>
19767
19768         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
19769         birthtime on all systems that have birthtime, not just those which
19770         use st_birthtimensec rather than st_birthtim.  Putting zero in
19771         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
19772         that the birth time is not available for files on an NFS mount.
19773
19774 2007-04-03  Simon Josefsson  <simon@josefsson.org>
19775
19776         * modules/memxor: Move back from crypto/, suggested by Bruno.
19777         * modules/crypto/hmac-sha1: Fix memxor dependency.
19778
19779         * modules/crypto/gc: Moved from ../.
19780
19781 2007-04-02  Eric Blake  <ebb9@byu.net>
19782
19783         * lib/ldexpl.c (includes): Avoid libm.
19784
19785         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
19786
19787 2007-04-02  Bruno Haible  <bruno@clisp.org>
19788
19789         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
19790         on IRIX.
19791
19792 2007-04-02  Bruno Haible  <bruno@clisp.org>
19793
19794         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
19795         x86 or x86_64 platforms running MacOS X.
19796         Reported by Ryan Schmidt <@ryandesign.com>.
19797
19798 2007-04-02  Bruno Haible  <bruno@clisp.org>
19799
19800         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
19801         i386.
19802
19803 2007-04-01  Simon Josefsson  <simon@josefsson.org>
19804
19805         * modules/crypto/arcfour: Moved from ../.
19806         * modules/crypto/arcfour-tests: Moved from ../.
19807         * modules/crypto/arctwo: Moved from ../.
19808         * modules/crypto/arctwo-tests: Moved from ../.
19809         * modules/crypto/des: Moved from ../.
19810         * modules/crypto/des-tests: Moved from ../.
19811         * modules/crypto/gc-arcfour: Moved from ../.
19812         * modules/crypto/gc-arcfour-tests: Moved from ../.
19813         * modules/crypto/gc-arctwo: Moved from ../.
19814         * modules/crypto/gc-arctwo-tests: Moved from ../.
19815         * modules/crypto/gc-des: Moved from ../.
19816         * modules/crypto/gc-des-tests: Moved from ../.
19817         * modules/crypto/gc-hmac-md5: Moved from ../.
19818         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
19819         * modules/crypto/gc-hmac-sha1: Moved from ../.
19820         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
19821         * modules/crypto/gc-md2: Moved from ../.
19822         * modules/crypto/gc-md2-tests: Moved from ../.
19823         * modules/crypto/gc-md4: Moved from ../.
19824         * modules/crypto/gc-md4-tests: Moved from ../.
19825         * modules/crypto/gc-md5: Moved from ../.
19826         * modules/crypto/gc-md5-tests: Moved from ../.
19827         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
19828         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
19829         * modules/crypto/gc-random: Moved from ../.
19830         * modules/crypto/gc-rijndael: Moved from ../.
19831         * modules/crypto/gc-rijndael-tests: Moved from ../.
19832         * modules/crypto/gc-sha1: Moved from ../.
19833         * modules/crypto/gc-sha1-tests: Moved from ../.
19834         * modules/crypto/gc-tests: Moved from ../.
19835         * modules/crypto/hmac-md5: Moved from ../.
19836         * modules/crypto/hmac-md5-tests: Moved from ../.
19837         * modules/crypto/hmac-sha1: Moved from ../.
19838         * modules/crypto/hmac-sha1-tests: Moved from ../.
19839         * modules/crypto/md2: Moved from ../.
19840         * modules/crypto/md2-tests: Moved from ../.
19841         * modules/crypto/md4: Moved from ../.
19842         * modules/crypto/md4-tests: Moved from ../.
19843         * modules/crypto/md5: Moved from ../.
19844         * modules/crypto/md5-tests: Moved from ../.
19845         * modules/crypto/memxor: Moved from ../.
19846         * modules/crypto/rijndael: Moved from ../.
19847         * modules/crypto/rijndael-tests: Moved from ../.
19848         * modules/crypto/sha1: Moved from ../.
19849
19850 2007-03-30  James Youngman  <jay@gnu.org>
19851
19852         * tests/test-stat-time.c (prepare_test): use chmod() rather than
19853         rename() to change the ctime of a file (because ctime is unaffected
19854         by rename on jfs2 on AIX 5.1).
19855         (main): Start by doing cleanup, in case a previous run failed leaving
19856         test files behind.
19857
19858 2007-03-31  Bruno Haible  <bruno@clisp.org>
19859
19860         Support old proprietary implementations of iconv.
19861         * modules/iconv_open: New file.
19862         * lib/iconv_.h: New file.
19863         * m4/iconv_h.m4: New file.
19864         * lib/iconv_open.c: New file.
19865         * lib/iconv_open-aix.gperf: New file.
19866         * lib/iconv_open-hpux.gperf: New file.
19867         * lib/iconv_open-irix.gperf: New file.
19868         * lib/iconv_open-osf.gperf: New file.
19869         * m4/iconv_open.m4: New file.
19870         * modules/linebreak (Depends-on): Add iconv_open.
19871         * modules/striconv (Depends-on): Likewise.
19872         * modules/striconveh (Depends-on): Likewise.
19873         * modules/unicodeio (Depends-on): Likewise.
19874         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
19875         (iconv_t)(-1).
19876         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
19877         conversion if cd is (iconv_t)(-1).
19878         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
19879         is not possible.
19880
19881 2007-03-31  Bruno Haible  <bruno@clisp.org>
19882
19883         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
19884         work on Solaris either. Protect also second use of "autodetect_jp".
19885
19886 2007-03-31  Bruno Haible  <bruno@clisp.org>
19887
19888         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
19889         the function is not present.
19890
19891 2007-03-31  Bruno Haible  <bruno@clisp.org>
19892
19893         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
19894         the function is not present.
19895
19896 2007-03-31  Bruno Haible  <bruno@clisp.org>
19897
19898         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
19899         a bug in HP-UX iconv_open().
19900
19901 2007-03-31  Bruno Haible  <bruno@clisp.org>
19902
19903         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
19904         (Mathematics <math.h>): New section, add fpieee.
19905         (Input/output <stdio.h>): Add fseterr.
19906         (Mathematics <math.h>): New section, add printf-frexp.
19907         (Container data structures): Add sublist.
19908         (Core language properties): Add fpucw, inline.
19909         (Functions for greatest-width integer types <inttypes.h>): Add
19910         imaxabs, imaxdiv, inttypes.
19911         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
19912         isnanl-nolibm, ldexp.
19913         (Mathematics <math.h>): New section, add printf-frexpl.
19914         (Support for systems lacking POSIX:2001): Add fprintf-posix,
19915         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
19916         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
19917         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
19918         (Unicode string functions): Add unistr/u*-mbtoucr.
19919         (Java): Add javacomp-script, javaexec-script.
19920         (C#): Add csharpcomp-script, csharpexec-script.
19921         (Support for building libraries and executables): Add havelib,
19922         relocatable-*.
19923         (Support for maintaining and releasing projects): Renamed from
19924         'Support for maintaining and release projects'. Add announce-gen.
19925
19926 2007-03-31  Bruno Haible  <bruno@clisp.org>
19927
19928         * README: Talk primarily about git.
19929         (git and CVS): Renamed from CVS.
19930         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
19931         gnulib is available through git.
19932         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
19933
19934 2007-03-30  Bruno Haible  <bruno@clisp.org>
19935
19936         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
19937         * lib/poll_.h: Likewise.
19938         * lib/stat_.h: Likewise.
19939         * lib/sys_time_.h: Likewise.
19940         * lib/sysexit_.h: Likewise.
19941         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
19942         * lib/stdbool_.h: Likewise.
19943         * lib/byteswap_.h: Add double-inclusion guard.
19944
19945 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
19946
19947         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
19948
19949 2007-03-30  Karl Berry  <karl@gnu.org>
19950
19951         * config/srclist-update: double space after USA in the license
19952         substitution, since that's how it's usually (?) written.
19953
19954 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
19955
19956         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
19957         reported by Bruno Haible.
19958
19959 2007-03-29  Bruno Haible  <bruno@clisp.org>
19960
19961         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
19962         a bug in AIX iconv().
19963
19964 2007-03-29  Bruno Haible  <bruno@clisp.org>
19965
19966         * modules/ldexpl-tests: New file.
19967         * tests/test-ldexpl.c: New file.
19968
19969 2007-03-29  Bruno Haible  <bruno@clisp.org>
19970
19971         * lib/ldexpl.c: Include fpucw.h.
19972         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
19973         multiplication.
19974         * modules/ldexpl (Depends-on): Add fpucw.
19975
19976 2007-03-29  Bruno Haible  <bruno@clisp.org>
19977
19978         * modules/ldexpl: New file.
19979         * m4/ldexpl.m4: New file.
19980         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
19981         set.
19982         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
19983         REPLACE_LDEXPL.
19984         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
19985         REPLACE_LDEXPL.
19986         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
19987         gl_FUNC_LDEXPL_WORKS.
19988         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
19989         * modules/mathl (Files): Remove lib/ldexpl.c.
19990         (Depends-on): Add ldexpl.
19991
19992 2007-03-29  Bruno Haible  <bruno@clisp.org>
19993
19994         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
19995
19996 2007-03-29  Bruno Haible  <bruno@clisp.org>
19997
19998         * tests/test-striconveh.c (main): Don't assume that a direct conversion
19999         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
20000         and possibly also HP-UX.
20001         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
20002         work on AIX, IRIX, HP-UX, OSF/1.
20003         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
20004         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
20005         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
20006         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
20007         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
20008         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
20009
20010 2007-03-29  Bruno Haible  <bruno@clisp.org>
20011
20012         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
20013
20014 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20015
20016         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
20017         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
20018
20019 2007-03-29  Eric Blake  <ebb9@byu.net>
20020
20021         * lib/acl-internal.h: Remove redundant include.
20022         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
20023         Cygwin when a file is locked.
20024
20025 2007-03-29  Bruno Haible  <bruno@clisp.org>
20026
20027         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
20028         file.
20029         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
20030
20031 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
20032
20033         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
20034         try to remove a parent directory if the child couldn't be removed
20035         (except for the first rmdir, which could fail because the child
20036         doesn't exist).  Problem reported by Jeff Blaine in
20037         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
20038
20039 2007-03-28  Bruno Haible  <bruno@clisp.org>
20040
20041         * lib/striconveh.c (utf8conv_carefully): New function.
20042         (mem_cd_iconveh_internal): Invoke it.
20043
20044 2007-03-28  Bruno Haible  <bruno@clisp.org>
20045
20046         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
20047         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
20048         input.
20049         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
20050         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
20051         unistr/u8-uctomb.
20052
20053 2007-03-28  Bruno Haible  <bruno@clisp.org>
20054
20055         * modules/unistr/u8-mbtoucr: New file.
20056         * lib/unistr/u8-mbtoucr.c: New file.
20057         * modules/unistr/u16-mbtoucr: New file.
20058         * lib/unistr/u16-mbtoucr.c: New file.
20059         * modules/unistr/u16-mbtoucr: New file.
20060         * lib/unistr/u16-mbtoucr.c: New file.
20061         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
20062
20063 2007-03-27  Simon Josefsson  <simon@josefsson.org>
20064             Bruno Haible  <bruno@clisp.org>
20065
20066         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
20067         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
20068         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
20069
20070         * m4/stdio_h.m4: Add stubs for vasprintf too.
20071
20072         * modules/stdio: Support vasprintf in sed command.
20073
20074         * modules/vasprintf: Depend on stdio for prototypes.  Remove
20075         vasprintf.h.  Add stdio module indicator.
20076
20077         * lib/stdio_.h: Declare asprintf and vasprintf, based on
20078         vasprintf.h.
20079
20080         * lib/vasprintf.h: File removed.
20081
20082         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
20083         * lib/vasprintf.c: Ditto.
20084         * lib/xvasprintf.c: Ditto.
20085         * tests/test-vasprintf-posix.c: Ditto.
20086         * tests/test-vasprintf.c: Ditto.
20087
20088 2007-03-27  Bruno Haible  <bruno@clisp.org>
20089
20090         Make vasnprintf multithread-safe.
20091         * lib/vasnprintf.c (decimal_point_char): New function.
20092         (VASNPRINTF): Use it.
20093         Suggested by Simon Josefsson.
20094
20095 2007-03-27  Eric Blake  <ebb9@byu.net>
20096
20097         Support sub-second birthtime on cygwin.
20098         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
20099         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
20100         (get_stat_birthtime): Also work with st_birthtim.
20101
20102 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
20103
20104         * lib/stat-time.h (USE_BIRTHTIME): Remove.
20105         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
20106         (get_stat_birthtime_ns): Do not try to use "spare" fields.
20107         (get_stat_birthtime_ns): Simplify compile-time tests.
20108         (get_stat_birthtime): Change the API to look like
20109         get_stat_mtime etc., except return a negative tv_nsec on error.
20110         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
20111         Don't check for "spare" fields.
20112         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
20113         or for struct stat.st_birthtime, as these tests aren't used.
20114         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
20115
20116 2007-03-27  Bruno Haible  <bruno@clisp.org>
20117
20118         * lib/stat-time.h: Include <sys/stat.h>.
20119
20120 2007-03-27  James Youngman  <jay@gnu.org>
20121
20122         * lib/stat-time.h (get_stat_birthtime): New function for
20123           retrieving st_birthtime as provided by UFS2 (hence *BSD).
20124         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
20125           and its variants.
20126         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
20127         * modules/stat-time-test: New file.
20128         * tests/test-stat-time.c: New test, devised by Bruno Haible.
20129
20130 2007-03-26  Bruno Haible  <bruno@clisp.org>
20131
20132         Better support of signalling NaNs.
20133         * lib/atanl.c: Include isnanl.h.
20134         (atanl): Perform test for NaN at the beginning of the function and
20135         through a call to isnanl.
20136         * lib/cosl.c: Include isnanl.h.
20137         (cosl): Perform test for NaN at the beginning of the function and
20138         through a call to isnanl.
20139         * lib/ldexpl.c: Include isnanl.h.
20140         (ldexpl): Perform test for NaN through a call to isnanl.
20141         * lib/logl.c: Include isnanl.h.
20142         (logl): Perform test for NaN at the beginning of the function and
20143         through a call to isnanl.
20144         * lib/sinl.c: Include isnanl.h.
20145         (sinl): Perform test for NaN at the beginning of the function and
20146         through a call to isnanl.
20147         * lib/sqrtl.c: Include isnanl.h.
20148         (sqrtl): Perform test for NaN at the beginning of the function and
20149         through a call to isnanl.
20150         * lib/tanl.c: Include isnanl.h.
20151         (tanl): Perform test for NaN at the beginning of the function and
20152         through a call to isnanl.
20153         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
20154         * modules/mathl (Depends-on): Add isnanl.
20155
20156 2007-03-26  Eric Blake  <ebb9@byu.net>
20157
20158         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
20159         regression in logic sense of previous patch.
20160
20161 2007-03-26  Bruno Haible  <bruno@clisp.org>
20162
20163         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
20164         unportable shell command "if ! ...".
20165         Reported by Ralf Wildenhues.
20166
20167 2007-03-25  Bruno Haible  <bruno@clisp.org>
20168
20169         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
20170         <sysexits.h> file, and only add EX_CONFIG.
20171         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
20172         absolute file name and whether it is sufficient. Substitute also
20173         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
20174         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
20175         ABSOLUTE_SYSEXITS_H into sysexits.h.
20176
20177 2007-03-25  Bruno Haible  <bruno@clisp.org>
20178
20179         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
20180         hints is NULL.
20181
20182 2007-03-25  Bruno Haible  <bruno@clisp.org>
20183
20184         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
20185         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
20186
20187 2007-03-25  Bruno Haible  <bruno@clisp.org>
20188
20189         * lib/vasnprintf.c: Include langinfo.h.
20190         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
20191         multithread-safe.
20192         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
20193         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
20194         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
20195         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
20196         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
20197         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
20198         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
20199         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
20200         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
20201         Reported by Simon Josefsson.
20202
20203 2007-03-25  Bruno Haible  <bruno@clisp.org>
20204
20205         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
20206         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
20207         * modules/vasnprintf (Depends-on): Add stdint.
20208
20209 2007-03-25  Bruno Haible  <bruno@clisp.org>
20210
20211         * modules/fpieee: New file.
20212         * m4/fpieee.m4: New file.
20213         * modules/isnan-nolibm (Depends-on): Add fpieee.
20214         * modules/isnanl-nolibm (Depends-on): Add fpieee.
20215         * modules/isnanl (Depends-on): Add fpieee.
20216
20217 2007-03-25  Bruno Haible  <bruno@clisp.org>
20218
20219         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
20220
20221 2007-03-25  Bruno Haible  <bruno@clisp.org>
20222
20223         Avoid test failures on IRIX 6.5.
20224         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
20225         (main): Use it.
20226         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
20227         macros.
20228         (main): Use them.
20229
20230 2007-03-25  Bruno Haible  <bruno@clisp.org>
20231
20232         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
20233         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
20234         exists but doesn't work.
20235         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
20236         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
20237         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
20238         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
20239
20240 2007-03-25  Bruno Haible  <bruno@clisp.org>
20241
20242         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
20243         returns inf. Needed on IRIX 6.5.
20244
20245 2007-03-25  Bruno Haible  <bruno@clisp.org>
20246
20247         * tests/test-frexpl.c: Include isnanl-nolibm.h.
20248         (main): Use isnanl instead of x != x idiom.
20249         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
20250
20251         * tests/test-frexp.c: Include isnan.h.
20252         (main): Use isnan instead of x != x idiom.
20253         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
20254
20255 2007-03-25  Bruno Haible  <bruno@clisp.org>
20256
20257         * tests/test-frexp.c (NaN): New function/macro.
20258         (main): Use it instead of 0.0 / 0.0.
20259         * tests/test-isnan.c (NaN): New function/macro.
20260         (main): Use it instead of 0.0 / 0.0.
20261         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
20262         (test_function): Use it instead of 0.0 / 0.0.
20263         * tests/test-vasprintf-posix.c (NaN): New function/macro.
20264         (test_function): Use it instead of 0.0 / 0.0.
20265         * tests/test-snprintf-posix.h (NaN): New function/macro.
20266         (test_function): Use it instead of 0.0 / 0.0.
20267         * tests/test-sprintf-posix.h (NaN): New function/macro.
20268         (test_function): Use it instead of 0.0 / 0.0.
20269         * tests/test-fprintf-posix.h (NaN): New function/macro.
20270         (test_function): Use it instead of 0.0 / 0.0.
20271         * tests/test-printf-posix.h (NaN): New function/macro.
20272         (test_function): Use it instead of 0.0 / 0.0.
20273
20274         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
20275
20276 2007-03-25  Bruno Haible  <bruno@clisp.org>
20277
20278         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
20279
20280 2007-03-25  Bruno Haible  <bruno@clisp.org>
20281
20282         * lib/regexec.c (merge_state_with_log): Make static.
20283
20284 2007-03-25  Bruno Haible  <bruno@clisp.org>
20285
20286         * lib/trigl.c (kernel_rem_pio2): Make static.
20287
20288 2007-03-25  Bruno Haible  <bruno@clisp.org>
20289
20290         * lib/sincosl.c (sincosl_table): Make static.
20291
20292 2007-03-25  Bruno Haible  <bruno@clisp.org>
20293
20294         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
20295         if the compiler does not support C99.
20296
20297 2007-03-25  Bruno Haible  <bruno@clisp.org>
20298
20299         * modules/time (Makefile.am): Ensure all rule action lines start with a
20300         tab.
20301
20302 2007-03-24  Bruno Haible  <bruno@clisp.org>
20303
20304         * modules/tsearch-tests: New file.
20305         * tests/test-tsearch.sh: New file.
20306         * tests/test-tsearch.c: New file, mostly copied from glibc.
20307
20308         * modules/search-tests: New file.
20309         * tests/test-search.c: New file.
20310
20311         * modules/search: New file.
20312         * lib/search_.h: New file, incorporating lib/tsearch.h.
20313         * m4/search_h.m4: New file.
20314         * lib/tsearch.h: Remove file.
20315         * lib/tsearch.c: Include search.h instead of tsearch.h.
20316         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
20317         HAVE_TSEARCH.
20318         * modules/tsearch (Files): Remove lib/tsearch.h.
20319         (Depends-on): Add search.
20320         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
20321         (Include): Change tsearch.h into search.h.
20322
20323 2007-03-24  Bruno Haible  <bruno@clisp.org>
20324
20325         * modules/fpucw: New file.
20326         * lib/fpucw.h: New file.
20327         * lib/frexp.c: Include fpucw.h.
20328         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20329         (FUNC): Use them.
20330         * lib/printf-frexp.c: Include fpucw.h.
20331         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
20332         (FUNC): Use them.
20333         * lib/vasnprintf.c: Include fpucw.h.
20334         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
20335         'long double' calculations.
20336         * tests/test-frexpl.c: Include fpucw.h.
20337         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20338         * tests/test-printf-frexpl.c: Include fpucw.h.
20339         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
20340         * modules/frexpl (Depends-on): Add fpucw.
20341         * modules/printf-frexpl (Depends-on): Likewise.
20342         * modules/fprintf-posix (Depends-on): Likewise.
20343         * modules/snprintf-posix (Depends-on): Likewise.
20344         * modules/sprintf-posix (Depends-on): Likewise.
20345         * modules/vasnprintf-posix (Depends-on): Likewise.
20346         * modules/vasprintf-posix (Depends-on): Likewise.
20347         * modules/vfprintf-posix (Depends-on): Likewise.
20348         * modules/vsnprintf-posix (Depends-on): Likewise.
20349         * modules/vsprintf-posix (Depends-on): Likewise.
20350         * modules/frexpl-tests (Depends-on): Likewise.
20351         * modules/printf-frexpl-tests (Depends-on): Likewise.
20352
20353 2007-03-24  Bruno Haible  <bruno@clisp.org>
20354
20355         * lib/float+.h: New file.
20356         * lib/isnan.c: Include float+.h.
20357         (SIZE): New macro.
20358         (FUNC): Compare only SIZE bytes of the value.
20359         * lib/vasnprintf.c: Include float+.h.
20360         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
20361         SIZEOF_LDBL or SIZEOF_DBL bytes.
20362         * modules/isnan-nolibm (Files): Add lib/float+.h.
20363         * modules/isnanl-nolibm (Files): Add lib/float+.h.
20364         * modules/isnanl (Files): Add lib/float+.h.
20365         * modules/vasnprintf (Files): Add lib/float+.h.
20366
20367 2007-03-24  Bruno Haible  <bruno@clisp.org>
20368
20369         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
20370         include isnanl-nolibm.h.
20371
20372 2007-03-24  Bruno Haible  <bruno@clisp.org>
20373
20374         * tests/test-read-file.c (main): Don't produce spurious output for
20375         expected situations. Make the test fail if it encountered unexpected
20376         results.
20377
20378 2007-03-24  Bruno Haible  <bruno@clisp.org>
20379
20380         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
20381         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
20382
20383 2007-03-24  Bruno Haible  <bruno@clisp.org>
20384
20385         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
20386
20387 2007-03-24  Bruno Haible  <bruno@clisp.org>
20388
20389         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
20390         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
20391
20392         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
20393         * modules/utf8-ucs4: Turn into a symbolic link to module
20394         unistr/u8-mbtouc.
20395
20396         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
20397         utf8-ucs4-unsafe.
20398         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
20399         unistr/u8-mbtouc-unsafe.
20400
20401         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
20402         * modules/utf16-ucs4: Turn into a symbolic link to module
20403         unistr/u16-mbtouc.
20404
20405         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
20406         utf16-ucs4-unsafe.
20407         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
20408         unistr/u16-mbtouc-unsafe.
20409
20410         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
20411         * modules/ucs4-utf8: Turn into a symbolic link to module
20412         unistr/u8-ubtomb.
20413
20414         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
20415         * modules/ucs4-utf16: Turn into a symbolic link to module
20416         unistr/u16-ubtomb.
20417
20418 2007-03-24  Bruno Haible  <bruno@clisp.org>
20419
20420         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
20421         Enable the function only if HAVE_INLINE.
20422         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
20423         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20424         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
20425         Enable the function only if HAVE_INLINE.
20426         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
20427         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
20428         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
20429         Enable the function only if HAVE_INLINE.
20430         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
20431         Enable the function only if HAVE_INLINE.
20432         * modules/utf8-ucs4: Update.
20433         * modules/utf8-ucs4-unsafe: Update.
20434         * modules/utf16-ucs4: Update.
20435         * modules/utf16-ucs4-unsafe: Update.
20436         * modules/ucs4-utf8: Update.
20437         * modules/ucs4-utf16: Update.
20438
20439 2007-03-24  Bruno Haible  <bruno@clisp.org>
20440
20441         * lib/utf8-ucs4.h: Remove file.
20442         * lib/utf8-ucs4-unsafe.h: Remove file.
20443         * lib/utf16-ucs4.h: Remove file.
20444         * lib/utf16-ucs4-unsafe.h: Remove file.
20445         * lib/ucs4-utf8.h: Remove file.
20446         * lib/ucs4-utf16.h: Remove file.
20447         * lib/unistr.h: Include their previous contents.
20448         * m4/utf-ucs4.m4: Remove file.
20449         * m4/ucs4-utf.m4: Remove file.
20450         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
20451         (Depends-on): Add unistr/base.
20452         (configure.ac): Remove gl_UTF_UCS4.
20453         (Makefile.am): Update.
20454         (Include): Change to unistr.h.
20455         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
20456         (Depends-on): Add unistr/base.
20457         (configure.ac): Remove gl_UTF_UCS4.
20458         (Makefile.am): Update.
20459         (Include): Change to unistr.h.
20460         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
20461         (Depends-on): Add unistr/base.
20462         (configure.ac): Remove gl_UTF_UCS4.
20463         (Makefile.am): Update.
20464         (Include): Change to unistr.h.
20465         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
20466         (Depends-on): Add unistr/base.
20467         (configure.ac): Remove gl_UTF_UCS4.
20468         (Makefile.am): Update.
20469         (Include): Change to unistr.h.
20470         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
20471         (Depends-on): Add unistr/base.
20472         (configure.ac): Remove gl_UCS4_UTF.
20473         (Makefile.am): Update.
20474         (Include): Change to unistr.h.
20475         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
20476         (Depends-on): Add unistr/base.
20477         (configure.ac): Remove gl_UCS4_UTF.
20478         (Makefile.am): Update.
20479         (Include): Change to unistr.h.
20480         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
20481         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
20482         utf8-ucs4-unsafe.h.
20483         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
20484         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
20485         utf16-ucs4-unsafe.h.
20486         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
20487         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
20488         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
20489         * lib/unistr/u8-strchr.c: Likewise.
20490         * lib/unistr/u8-strrchr.c: Likewise.
20491         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
20492         * lib/unistr/u16-strchr.c: Likewise.
20493         * lib/unistr/u16-strrchr.c: Likewise.
20494         * lib/striconveh.c: Update.
20495         * lib/linebreak.c: Update.
20496
20497 2007-03-24  Bruno Haible  <bruno@clisp.org>
20498
20499         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
20500         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
20501
20502 2007-03-22  Bruno Haible  <bruno@clisp.org>
20503
20504         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
20505
20506 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
20507
20508         * MODULES.html.sh (File system functions): New module write-any-file.
20509         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
20510         * m4/write-any-file.m4: New files.
20511
20512 2007-03-23  Eric Blake  <ebb9@byu.net>
20513
20514         * gnulib-tool: Rearrange space-tab sequences, since some editors
20515         like to eat them.
20516
20517 2007-03-23  Eric Blake  <ebb9@byu.net>
20518
20519         * lib/version-etc.c (version_etc_va): Update license wording to
20520         be more concise.  Recommended by Richard Stallman.
20521
20522 2007-03-22  Bruno Haible  <bruno@clisp.org>
20523
20524         * lib/poll.c (MSG_PEEK): New fallback definition.
20525
20526 2007-03-22  Bruno Haible  <bruno@clisp.org>
20527
20528         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
20529         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
20530         (main): Update.
20531         Fixes a compilation error on BeOS.
20532
20533 2007-03-22  Bruno Haible  <bruno@clisp.org>
20534
20535         * modules/frexpl-tests: New file.
20536         * tests/test-frexpl.c: New file.
20537
20538         * modules/frexpl: New file.
20539         * m4/frexpl.m4: New file.
20540         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
20541         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
20542         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
20543         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
20544         (Depends-on): Add frexpl. Remove isnanl-nolibm.
20545         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
20546
20547 2007-03-22  Bruno Haible  <bruno@clisp.org>
20548
20549         * lib/frexpl.c: Share code with lib/frexp.c.
20550         * modules/mathl (Files): Add lib/frexp.c.
20551         (Depends-on): Add isnanl-nolibm.
20552
20553 2007-03-22  Bruno Haible  <bruno@clisp.org>
20554
20555         * modules/printf-frexp (Files): Add m4/frexp.m4.
20556         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
20557         only if the found frexp function actually works.
20558
20559 2007-03-22  Bruno Haible  <bruno@clisp.org>
20560
20561         * lib/frexp.c: Remove older implementation that uses divisions.
20562
20563 2007-03-21  Bruno Haible  <bruno@clisp.org>
20564
20565         * modules/frexp-tests: New file.
20566         * tests/test-frexp.c: New file.
20567
20568         * modules/frexp: New file.
20569         * lib/frexp.c: New file.
20570         * m4/frexp.m4: New file.
20571         * lib/math_.h (frexp): New declaration.
20572         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
20573         REPLACE_FREXP.
20574         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
20575
20576 2007-03-21  Bruno Haible  <bruno@clisp.org>
20577
20578         * modules/isnanl-tests: New file.
20579         * tests/test-isnanl.c: New file.
20580
20581         * modules/isnanl: New file.
20582         * lib/isnanl.h: New file.
20583         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
20584         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
20585         gl_FUNC_ISNANL_WORKS.
20586         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
20587         New macros.
20588
20589 2007-03-21  Bruno Haible  <bruno@clisp.org>
20590
20591         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
20592         lib/isnanl.h.
20593         (Include): Update.
20594         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
20595         * lib/vasnprintf.c: Update.
20596         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
20597         tests/test-isnanl.h, remove tests/test-isnanl.c.
20598         (Makefile.am): Update.
20599         * tests/test-isnanl-nolibm.c: New file.
20600         * tests/test-isnanl.h: New file.
20601         * tests/test-isnanl.c: Remove file.
20602
20603 2007-03-21  Jim Meyering  <jim@meyering.net>
20604
20605         When trying to open ".", treat ESTALE like EACCES.
20606         * lib/savewd.c (savewd_save): Resort to forking not just upon
20607         failure with EACCES, but also when errno is ESTALE.
20608
20609 2007-03-20  Bruno Haible  <bruno@clisp.org>
20610
20611         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
20612         Needed on AIX 5.1. Reported by Matthew Woehlke.
20613
20614 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20615
20616         Suggestions by Bruno Haible:
20617         * lib/acl-internal.h: Include "gettext.h" rather than rolling
20618         our own.
20619         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
20620         * modules/acl (Depends-on): Add gettext.
20621
20622 2007-03-19  Bruno Haible  <bruno@clisp.org>
20623
20624         * modules/iconvme: Remove file.
20625         * lib/iconvme.h: Remove file.
20626         * lib/iconvme.c: Remove file.
20627         * m4/iconvme.m4: Remove file.
20628
20629 2007-03-19  Bruno Haible  <bruno@clisp.org>
20630
20631         * doc/relocatable-maint.texi: Break long shell script line.
20632         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
20633
20634 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20635
20636         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
20637         handle file_has_acl.
20638         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
20639         * lib/acl.c: Move header inclusions and related macro defns into
20640         lib/acl-internal.h.
20641         (S_ISLNK): Remove defn, since that's now done for us.
20642         (file_has_acl): Move to lib/file-has-acl.c.
20643         Call acl_trivial if available.  This is the crucial part of the fix.
20644         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
20645         shared within the library.  Rewrite a bit, partly to make it compatible
20646         with the GNU coding style.
20647         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
20648         Remove unnecessary double-quotes.
20649         Don't test for acl_to_text; the build will catch that.
20650         Replace acl_entries if it doesn't exist and it is needed.
20651         Check for -lsec and acl_trivial (as used on Solaris 10).
20652         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
20653         lib/file-has-acl.c.
20654         (Depends-on): Add sys_stat, for S_ISLNK.
20655
20656 2007-03-19  Ben Pfaff  <blp@gnu.org>
20657
20658         * doc/gnulib.texi: Fix typos.
20659         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
20660
20661 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
20662
20663         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
20664         If size is zero here, buf must be zero.
20665
20666 2007-03-19  Simon Josefsson  <simon@josefsson.org>
20667
20668         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
20669         <bruno@clisp.org>.
20670
20671 2007-03-18  Bruno Haible  <bruno@clisp.org>
20672
20673         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
20674         Suggested by Eric Blake.
20675
20676 2007-03-18  Ben Pfaff  <blp@gnu.org>
20677
20678         * doc/relocatable.texi: Recommend using as prefix a directory
20679         that does not exist and will never be created.  Based on
20680         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
20681         and others.
20682
20683 2007-03-17  Bruno Haible  <bruno@clisp.org>
20684
20685         * lib/fchownat.c: Include lchown.h.
20686
20687 2007-03-17  Bruno Haible  <bruno@clisp.org>
20688
20689         Fix endless loop when the given allocated size was > INT_MAX.
20690         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
20691         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
20692         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
20693         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
20694         * lib/sprintf.c (sprintf): Likewise.
20695
20696 2007-03-17  Bruno Haible  <bruno@clisp.org>
20697
20698         * tests/test-argp-2.sh (func_compare): Output a context diff.
20699
20700 2007-03-17  Bruno Haible  <bruno@clisp.org>
20701
20702         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
20703         locale's decimal-point character.
20704
20705 2007-03-17  Bruno Haible  <bruno@clisp.org>
20706
20707         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
20708         before comparing it. Needed because on some platforms (e.g. x86) a
20709         'long double' occupies less bytes than sizeof (long double).
20710
20711 2007-03-17  Bruno Haible  <bruno@clisp.org>
20712
20713         * tests/test-crc.c (main): Make printf statements 64-bit clean.
20714         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
20715         * tests/test-getaddrinfo.c (simple): Likewise.
20716         * tests/test-read-file.c (main): Likewise.
20717
20718 2007-03-17  Bruno Haible  <bruno@clisp.org>
20719
20720         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
20721
20722 2007-03-17  Bruno Haible  <bruno@clisp.org>
20723
20724         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
20725         unused variable.
20726
20727 2007-03-17  Bruno Haible  <bruno@clisp.org>
20728
20729         * tests/test-c-strcasecmp.c: Include c-strcase.h.
20730         * tests/test-c-strncasecmp.c: Likewise.
20731
20732 2007-03-17  Bruno Haible  <bruno@clisp.org>
20733
20734         * modules/stdlib (Depends-on): Add unistd.
20735         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
20736         Needed for MacOS X 10.3.
20737
20738 2007-03-17  Bruno Haible  <bruno@clisp.org>
20739
20740         * lib/unistr/u-strdup.h: Include <stdlib.h>.
20741
20742 2007-03-17  Bruno Haible  <bruno@clisp.org>
20743
20744         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
20745
20746 2007-03-17  Bruno Haible  <bruno@clisp.org>
20747
20748         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
20749         to reflect files copied from gnulib (with or without modifications).
20750         Suggested by Jim Meyering.
20751
20752 2007-03-17  Eric Blake  <ebb9@byu.net>
20753
20754         * NEWS: Document stdlib change from 2007-02-18.
20755
20756 2007-03-17  Jim Meyering  <jim@meyering.net>
20757
20758         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
20759         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
20760         someone uses a name containing shell meta-characters.
20761         Reported by Alfred M. Szmidt.
20762
20763         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
20764
20765 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
20766
20767         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
20768         and copy gettext configuration files only if configure.ac contains
20769         a use of AM_GNU_GETTEXT_VERSION.
20770
20771 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
20772
20773         * build-aux/bootstrap (gnulib_name): New variable.
20774         (gnulib_tool_options): Use it.
20775
20776 2007-03-13  Simon Josefsson  <simon@josefsson.org>
20777
20778         * tests/test-des.c: Use new namespace.
20779
20780 2007-03-15  Bruno Haible  <bruno@clisp.org>
20781
20782         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
20783         Reported by James Youngman <jay@gnu.org>.
20784
20785 2007-03-15  Bruno Haible  <bruno@clisp.org>
20786
20787         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
20788         declared prototype. Needed with cc on OSF/1 5.1.
20789
20790 2007-03-15  Bruno Haible  <bruno@clisp.org>
20791
20792         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
20793         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
20794         (struct gl_list_implementation): Add dispose_fn argument to the
20795         'create_empty', 'create' methods.
20796         (struct gl_list_impl_base): Add field 'dispose_fn'.
20797         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
20798         argument.
20799         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
20800         dispose_fn argument.
20801         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
20802         dispose_fn on the dropped values.
20803         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
20804         dispose_fn argument.
20805         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
20806         dropped values.
20807         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
20808         (gl_tree_remove_node): Call dispose_fn on the dropped value.
20809         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
20810         (gl_tree_remove_node): Call dispose_fn on the dropped value.
20811         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
20812         argument.
20813         (gl_tree_list_free): Call dispose_fn on the dropped values.
20814         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
20815         the dropped values.
20816         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
20817         Add dispose_fn argument.
20818         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
20819         Call dispose_fn on the dropped values.
20820         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
20821         Add dispose_fn argument.
20822         (gl_sublist_create): Initialize the 'dispose_fn' field.
20823         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
20824         * tests/test-array_list.c (main): Update.
20825         * tests/test-carray_list.c (main): Update.
20826         * tests/test-avltree_list.c (main): Update.
20827         * tests/test-rbtree_list.c (main): Update.
20828         * tests/test-avltreehash_list.c (main): Update.
20829         * tests/test-rbtreehash_list.c (main): Update.
20830         * tests/test-linked_list.c (main): Update.
20831         * tests/test-linkedhash_list.c (main): Update.
20832         * tests/test-array_oset.c (main): Update.
20833
20834 2007-03-15  Bruno Haible  <bruno@clisp.org>
20835
20836         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
20837         (gl_oset_create_empty): Add dispose_fn argument.
20838         (struct gl_oset_implementation): Add dispose_fn argument to
20839         'create_empty' method.
20840         (struct gl_oset_impl_base): Add dispose_fn field.
20841         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
20842         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
20843         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
20844         values.
20845         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
20846         (gl_tree_oset_free): Call dispose_fn on the dropped values.
20847         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
20848         dropped value.
20849         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
20850         dropped value.
20851         * tests/test-array_oset.c (main): Update.
20852         * tests/test-avltree_oset.c (main): Update.
20853         * tests/test-rbtree_oset.c (main): Update.
20854         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
20855
20856 2007-03-13  Bruno Haible  <bruno@clisp.org>
20857
20858         * tests/test-stdbool.c (i): Update after last patch.
20859
20860 2007-03-12  Bruno Haible  <bruno@clisp.org>
20861
20862         * lib/quotearg.c: Include <wctype.h> early, before the definition of
20863         the iswprint macro. Needed on Solaris 2.5.1.
20864
20865 2007-03-12  Bruno Haible  <bruno@clisp.org>
20866
20867         * tests/test-printf-frexp.c (main): Declare x as volatile.
20868
20869 2007-03-12  Simon Josefsson  <simon@josefsson.org>
20870
20871         * doc/gnulib.texi (Build robot for gnulib): New section.
20872
20873 2007-03-12  Jim Meyering  <jim@meyering.net>
20874
20875         * build-aux/bootstrap: New file.
20876         * build-aux/bootstrap.conf: New file, from coreutils.
20877
20878 2007-03-11  Bruno Haible  <bruno@clisp.org>
20879
20880         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
20881
20882 2007-03-12  Simon Josefsson  <simon@josefsson.org>
20883
20884         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
20885         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
20886         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
20887
20888 2007-03-11  Bruno Haible  <bruno@clisp.org>
20889
20890         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
20891         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
20892
20893 2007-03-11  Bruno Haible  <bruno@clisp.org>
20894
20895         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
20896         formula. Needed for SunPRO C 5.0.
20897
20898 2007-03-11  Bruno Haible  <bruno@clisp.org>
20899
20900         * modules/long-options (Depends-on): Add getopt.
20901
20902 2007-03-11  Bruno Haible  <bruno@clisp.org>
20903
20904         * modules/modechange (Depends-on): Add stdbool.
20905
20906 2007-03-11  Bruno Haible  <bruno@clisp.org>
20907
20908         * modules/i-ring (Depends-on): Add stdbool.
20909
20910 2007-03-11  Bruno Haible  <bruno@clisp.org>
20911
20912         * modules/gc-des (Depends-on): Add stdbool.
20913
20914 2007-03-11  Bruno Haible  <bruno@clisp.org>
20915
20916         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
20917
20918 2007-03-11  Bruno Haible  <bruno@clisp.org>
20919
20920         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
20921
20922 2007-03-11  Bruno Haible  <bruno@clisp.org>
20923
20924         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
20925
20926 2007-03-11  Bruno Haible  <bruno@clisp.org>
20927
20928         * lib/vasnprintf.c (sprintf): Undefine.
20929
20930 2007-03-11  Bruno Haible  <bruno@clisp.org>
20931
20932         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
20933         initializers in SunPRO C and Compaq C compilers.
20934
20935 2007-03-11  Bruno Haible  <bruno@clisp.org>
20936
20937         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
20938         decrementing code ANSI C compliant.
20939
20940 2007-03-11  Bruno Haible  <bruno@clisp.org>
20941
20942         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
20943         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
20944
20945 2007-03-11  Bruno Haible  <bruno@clisp.org>
20946
20947         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
20948         <stdbool.h> substitute doesn't pass.
20949
20950 2007-03-11  Bruno Haible  <bruno@clisp.org>
20951
20952         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
20953
20954 2007-03-11  Bruno Haible  <bruno@clisp.org>
20955
20956         * gnulib-tool (func_create_megatestdir): Create also an autobuild
20957         script, for submission to autobuild.josefsson.org.
20958
20959 2007-03-10  Bruno Haible  <bruno@clisp.org>
20960
20961         * modules/canonicalize-lgpl-tests: New file.
20962         * tests/test-canonicalize-lgpl.sh: New file.
20963         * tests/test-canonicalize-lgpl.c: New file.
20964
20965         * modules/c-strcase-tests: New file.
20966         * tests/test-c-strcase.sh: New file.
20967         * tests/test-c-strcasecmp.c: New file.
20968         * tests/test-c-strncasecmp.c: New file.
20969
20970         * modules/atexit-tests: New file.
20971         * tests/test-atexit.sh: New file.
20972         * tests/test-atexit.c: New file.
20973
20974 2007-03-10  Bruno Haible  <bruno@clisp.org>
20975
20976         * tests/test-binary-io.sh: Use temporary filenames that are not so
20977         likely to clash with those of other tests (in a parallel make).
20978         * tests/test-binary-io.c: Likewise.
20979
20980 2007-03-10  Bruno Haible  <bruno@clisp.org>
20981
20982         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
20983         fallback; use #error instead.
20984         Suggested by Simon Josefsson.
20985
20986 2007-03-10  Bruno Haible  <bruno@clisp.org>
20987
20988         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
20989         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
20990         first and the last.
20991
20992 2007-03-10  Bruno Haible  <bruno@clisp.org>
20993
20994         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
20995
20996 2007-03-10  Bruno Haible  <bruno@clisp.org>
20997
20998         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
20999         "make distcheck".
21000         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
21001         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
21002         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
21003
21004 2007-03-10  Bruno Haible  <bruno@clisp.org>
21005
21006         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
21007         variable.
21008         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
21009         variable.
21010
21011 2007-03-09  Eric Blake  <ebb9@byu.net>
21012         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
21013
21014         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
21015         types are not being provided by gnulib.
21016         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
21017         types are supported.
21018
21019 2007-03-10  Bruno Haible  <bruno@clisp.org>
21020
21021         * lib/stdio_.h (__attribute__): New macro.
21022         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
21023         vsprintf): Specify __attribute__ __format__ for GCC.
21024         Suggested by Eric Blake.
21025
21026 2007-03-09  Bruno Haible  <bruno@clisp.org>
21027
21028         * modules/printf-posix-tests: New file.
21029         * tests/test-printf-posix.sh: New file.
21030         * tests/test-printf-posix.c: New file.
21031
21032         * modules/printf-posix: New file.
21033         * lib/printf.c: New file.
21034         * m4/printf-posix-rpl.m4: New file.
21035         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
21036         REPLACE_PRINTF.
21037         * lib/stdio_.h (printf): New declaration.
21038         (format, __format__, ____printf____, ____scanf____, ____strftime____,
21039         ____strfmon____): New macros.
21040         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
21041         REPLACE_PRINTF.
21042
21043 2007-03-09  Bruno Haible  <bruno@clisp.org>
21044
21045         * tests/test-vasnprintf-posix2.sh: New file.
21046         * tests/test-vasnprintf-posix2.c: New file.
21047         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
21048         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
21049         (Makefile.am): Activate test-vasnprintf-posix2.sh.
21050
21051         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
21052         a locale dependent decimal point, rather than always '.'.
21053
21054 2007-03-09  Eric Blake  <ebb9@byu.net>
21055
21056         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
21057         spite of platforms like Tandem/NSK that define it to -1.
21058
21059 2007-03-08  Bruno Haible  <bruno@clisp.org>
21060
21061         * modules/vprintf-posix-tests: New file.
21062         * tests/test-vprintf-posix.sh: New file.
21063         * tests/test-vprintf-posix.c: New file.
21064         * tests/test-printf-posix.h: New file.
21065
21066         * modules/vprintf-posix: New file.
21067         * lib/vprintf.c: New file.
21068         * m4/vprintf-posix.m4: New file.
21069         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
21070         REPLACE_VPRINTF.
21071         * lib/stdio_.h (vprintf): New declaration.
21072         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
21073         REPLACE_VPRINTF.
21074
21075 2007-03-08  Bruno Haible  <bruno@clisp.org>
21076
21077         * modules/fprintf-posix-tests: New file.
21078         * tests/test-fprintf-posix.sh: New file.
21079         * tests/test-fprintf-posix.c: New file.
21080
21081         * modules/fprintf-posix: New file.
21082         * lib/fprintf.c: New file.
21083         * m4/fprintf-posix.m4: New file.
21084         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
21085         REPLACE_FPRINTF.
21086         * lib/stdio_.h (fprintf): New declaration.
21087         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
21088         REPLACE_FPRINTF.
21089
21090 2007-03-08  Bruno Haible  <bruno@clisp.org>
21091
21092         * modules/vfprintf-posix-tests: New file.
21093         * tests/test-vfprintf-posix.sh: New file.
21094         * tests/test-vfprintf-posix.c: New file.
21095         * tests/test-fprintf-posix.h: New file.
21096         * tests/test-fprintf-posix.out: New file.
21097
21098         * modules/vfprintf-posix: New file.
21099         * lib/vfprintf.c: New file.
21100         * m4/vfprintf-posix.m4: New file.
21101         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
21102         REPLACE_VFPRINTF.
21103         * lib/stdio_.h (vfprintf): New declaration.
21104         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
21105         REPLACE_VFPRINTF.
21106
21107 2007-03-08  Bruno Haible  <bruno@clisp.org>
21108
21109         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
21110
21111 2007-03-08  Bruno Haible  <bruno@clisp.org>
21112
21113         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
21114         instead of 'expr' invocations.
21115         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
21116         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
21117         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
21118         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
21119         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
21120         Suggested by Paul Eggert.
21121
21122 2007-03-08  Bruno Haible  <bruno@clisp.org>
21123
21124         * modules/fseterr-tests: New file.
21125         * tests/test-fseterr.c: New file.
21126
21127         * modules/fseterr: New file.
21128         * lib/fseterr.h: New file.
21129         * lib/fseterr.c: New file.
21130
21131 2007-03-08  Bruno Haible  <bruno@clisp.org>
21132
21133         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
21134         * lib/getopt_.h: Likewise.
21135         * lib/mbswidth.h: Likewise.
21136         * lib/setenv.h: Likewise.
21137         * lib/vasnprintf.h: Likewise.
21138         * lib/vasprintf.h: Likewise.
21139         * lib/verror.h: Likewise.
21140         * lib/xsetenv.h: Likewise.
21141         * lib/xvasprintf.h: Likewise.
21142
21143 2007-03-08  Jim Meyering  <jim@meyering.net>
21144
21145         * users.txt: Add parted.
21146
21147         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
21148
21149 2007-03-07  Bruno Haible  <bruno@clisp.org>
21150
21151         * m4/printf.m4: Make the shell script snippets copy&pastable.
21152
21153 2007-03-02  Bruno Haible  <bruno@clisp.org>
21154
21155         * lib/netinet_in_.h: New file.
21156         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
21157         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
21158         * modules/netinet_in (Files): Add lib/netinet_in_.h.
21159         (Depends-on): Add absolute-header.
21160         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
21161         into netinet/in.h.
21162
21163 2007-03-03  Bruno Haible  <bruno@clisp.org>
21164
21165         * lib/sys_select_.h: New file.
21166         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
21167         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
21168         * modules/sys_select (Files): Add lib/sys_select_.h.
21169         (Depends-on): Add absolute-header.
21170         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
21171         into sys/select.h.
21172
21173 2007-03-02  Bruno Haible  <bruno@clisp.org>
21174
21175         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
21176         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
21177         values.
21178         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
21179         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
21180         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
21181         * modules/sys_socket (Depends-on): Add absolute-header.
21182         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
21183         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
21184         (Include): Remove requirement of inclusion of <sys/types.h>.
21185
21186 2007-03-02  Bruno Haible  <bruno@clisp.org>
21187
21188         * lib/byteswap_.h (bswap_32): Fix formula.
21189
21190 2007-03-06  Bruno Haible  <bruno@clisp.org>
21191
21192         * modules/sprintf-posix-tests: New file.
21193         * tests/test-sprintf-posix.c: New file.
21194
21195         * modules/sprintf-posix: New file.
21196         * lib/sprintf.c: New file.
21197         * m4/sprintf-posix.m4: New file.
21198         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
21199         REPLACE_SPRINTF.
21200         * lib/stdio_.h (sprintf): New declaration.
21201         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
21202         REPLACE_SPRINTF.
21203
21204 2007-03-06  Bruno Haible  <bruno@clisp.org>
21205
21206         * modules/vsprintf-posix-tests: New file.
21207         * tests/test-vsprintf-posix.c: New file.
21208         * tests/test-sprintf-posix.h: New file.
21209
21210         * modules/vsprintf-posix: New file.
21211         * lib/vsprintf.c: New file.
21212         * m4/vsprintf-posix.m4: New file.
21213         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
21214         REPLACE_VSPRINTF.
21215         * lib/stdio_.h (vsprintf): New declaration.
21216         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
21217         REPLACE_VSPRINTF.
21218
21219 2007-03-06  Bruno Haible  <bruno@clisp.org>
21220
21221         * modules/vsnprintf (Depend-on): Remove minmax.
21222
21223 2007-03-06  Bruno Haible  <bruno@clisp.org>
21224
21225         * modules/snprintf-posix-tests: New file.
21226         * tests/test-snprintf-posix.c: New file.
21227
21228         * modules/snprintf-posix: New file.
21229         * m4/snprintf-posix.m4: New file.
21230         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
21231         gl_FUNC_SNPRINTF.
21232         (gl_FUNC_SNPRINTF): Invoke it.
21233         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
21234         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
21235         is set.
21236         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
21237
21238 2007-03-06  Bruno Haible  <bruno@clisp.org>
21239
21240         * modules/vsnprintf-posix-tests: New file.
21241         * tests/test-vsnprintf-posix.c: New file.
21242         * tests/test-snprintf-posix.h: New file.
21243
21244         * modules/vsnprintf-posix: New file.
21245         * m4/vsnprintf-posix.m4: New file.
21246         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
21247         gl_FUNC_VSNPRINTF.
21248         (gl_FUNC_VSNPRINTF): Invoke it.
21249         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
21250         * lib/stdio_.h (vsnprintf): Define as a replacement if
21251         REPLACE_VSNPRINTF is set.
21252         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
21253
21254 2007-03-06  Bruno Haible  <bruno@clisp.org>
21255
21256         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
21257         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
21258
21259 2007-03-06  Bruno Haible  <bruno@clisp.org>
21260
21261         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
21262         (asinl): Declare also if HAVE_DECL_ASINL is set.
21263         (atanl): Declare also if HAVE_DECL_ATANL is set.
21264         (ceill): Declare also if HAVE_DECL_CEILL is set.
21265         (cosl): Declare also if HAVE_DECL_COSL is set.
21266         (expl): Declare also if HAVE_DECL_EXPL is set.
21267         (floorl): Declare also if HAVE_DECL_FLOORL is set.
21268         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
21269         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
21270         (logl): Declare also if HAVE_DECL_LOGL is set.
21271         (sinl): Declare also if HAVE_DECL_SINL is set.
21272         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
21273         (tanl): Declare also if HAVE_DECL_TANL is set.
21274         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
21275         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
21276         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
21277         declaration of frexpl, ldexpl.
21278         * modules/printf-frexpl (Depends-on): Add math.
21279         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
21280
21281 2007-03-05  Bruno Haible  <bruno@clisp.org>
21282
21283         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
21284         frexpl and ldexpl are declared.
21285         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
21286
21287 2007-03-05  Bruno Haible  <bruno@clisp.org>
21288
21289         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
21290         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
21291
21292 2007-03-05  Bruno Haible  <bruno@clisp.org>
21293
21294         * lib/stdio_.h: Include <stddef.h>.
21295
21296 2007-03-05  Bruno Haible  <bruno@clisp.org>
21297
21298         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
21299
21300 2007-03-05  Bruno Haible  <bruno@clisp.org>
21301
21302         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
21303         NetBSD 4, from Ralf Wildenhues.
21304
21305 2007-03-04  Bruno Haible  <bruno@clisp.org>
21306
21307         * lib/vasprintf.h: Update #if logic for the case when the functions
21308         exist but are overridden.
21309
21310 2007-03-04  Bruno Haible  <bruno@clisp.org>
21311
21312         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
21313         implementations: glibc-2.4 and MacOS X 10.3.
21314         * tests/test-vasnprintf-posix.c (test_function): Test also the case
21315         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
21316         * tests/test-vasprintf-posix.c (test_function): Likewise.
21317
21318 2007-03-04  Bruno Haible  <bruno@clisp.org>
21319
21320         * modules/vasprintf-posix-tests: New file.
21321         * tests/test-vasprintf-posix.c: New file.
21322
21323         * modules/vasprintf-posix: New file.
21324         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
21325         defined.
21326         * m4/vasprintf-posix.m4: New file.
21327         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
21328         gl_FUNC_VASPRINTF.
21329         (gl_FUNC_VASPRINTF): Invoke it.
21330         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
21331         here.
21332         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
21333
21334 2007-03-04  Bruno Haible  <bruno@clisp.org>
21335
21336         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
21337         REPLACE_GETTIMEOFDAY.
21338         * modules/sys_time (Makefile.am): Likewise.
21339         * m4/sys_time_h.m4: Likewise.
21340         * m4/gettimeofday.m4: Likewise.
21341
21342 2007-03-04  Bruno Haible  <bruno@clisp.org>
21343
21344         * modules/vasnprintf-posix-tests: New file.
21345         * tests/test-vasnprintf-posix.c: New file.
21346
21347         * modules/vasnprintf-posix: New file.
21348         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
21349         printf-frexpl.h.
21350         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
21351         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
21352         REPLACE_VASNPRINTF is defined.
21353         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
21354         gl_FUNC_VASNPRINTF.
21355         (gl_FUNC_VASNPRINTF): Invoke it.
21356         * m4/vasnprintf-posix.m4: New file.
21357         * m4/printf.m4: New file.
21358
21359 2007-03-04  Bruno Haible  <bruno@clisp.org>
21360
21361         Compile progreloc.c only if --enable-relocatable is specified.
21362         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
21363         if --enable-relocatable was specified.
21364         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
21365         lib_SOURCES.
21366
21367 2007-03-04  Jim Meyering  <jim@meyering.net>
21368
21369         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
21370         Use it consistently, rather than enumerating errno constants.
21371
21372 2007-03-04  Bruno Haible  <bruno@clisp.org>
21373
21374         * modules/xvasprintf-tests: New file.
21375         * tests/test-xvasprintf.c: New file.
21376
21377         * modules/vasprintf-tests: New file.
21378         * tests/test-vasprintf.c: New file.
21379
21380         * modules/vasnprintf-tests: New file.
21381         * tests/test-vasnprintf.c: New file.
21382
21383         * modules/vsnprintf-tests: New file.
21384         * tests/test-vsnprintf.c: New file.
21385
21386         * modules/snprintf-tests: New file.
21387         * tests/test-snprintf.c: New file.
21388
21389 2007-03-04  Bruno Haible  <bruno@clisp.org>
21390
21391         Compile relocatable.c only if --enable-relocatable is specified.
21392         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
21393         gl_RELOCATABLE_LIBRARY.
21394         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
21395         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
21396         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
21397         gl_RELOCATABLE_LIBRARY.
21398         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
21399         (Makefile.am): Remove lib_SOURCES.
21400         * modules/relocatable-lib-lgpl (configure.ac): Invoke
21401         gl_RELOCATABLE_LIBRARY.
21402         (Makefile.am): Remove lib_SOURCES.
21403         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
21404         always.
21405         * modules/relocatable-prog-wrapper (configure.ac): Invoke
21406         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
21407
21408 2007-03-04  Bruno Haible  <bruno@clisp.org>
21409
21410         * modules/argmatch-tests: New file.
21411         * tests/test-argmatch.c: New file.
21412
21413         * tests/test-allocsa.c (main): Halve the number of loop runs.
21414
21415         * modules/alloca-opt-tests: New file.
21416         * tests/test-alloca-opt.c: New file.
21417
21418 2007-03-04  Jim Meyering  <jim@meyering.net>
21419
21420         Work around difference between Linux ACLs and Solaris 10 ZFS.
21421         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
21422         for EINVAL.
21423
21424 2007-03-03  Bruno Haible  <bruno@clisp.org>
21425
21426         * modules/relocatable-prog (Depends-on): Add back progreloc's
21427         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
21428
21429 2007-03-03  Bruno Haible  <bruno@clisp.org>
21430
21431         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
21432         * modules/relocatable-lib: New file.
21433
21434 2007-03-03  Bruno Haible  <bruno@clisp.org>
21435
21436         * modules/relocatable-prog: Renamed from modules/relocatable.
21437         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
21438
21439 2007-03-03  Bruno Haible  <bruno@clisp.org>
21440
21441         * modules/relocatable-script (Files): Add doc/relocatable.texi,
21442         m4/relocatable-lib.m4.
21443         (Depends-on): Remove 'relocatable'.
21444         (configure.ac): Add gl_RELOCATABLE_NOP.
21445
21446 2007-03-03  Bruno Haible  <bruno@clisp.org>
21447
21448         * modules/relocatable-prog-wrapper: New file.
21449         * modules/relocatable (Depends-on): Add it. Remove all other
21450         dependencies except progname.
21451         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
21452
21453         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
21454         (gl_FUNC_STRERROR): Nop.
21455         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
21456
21457         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
21458         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
21459
21460         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
21461         (gl_FUNC_READLINK): Update.
21462
21463         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
21464
21465 2007-03-03  Bruno Haible  <bruno@clisp.org>
21466
21467         * lib/xreadlink.c: Include <unistd.h> unconditionally.
21468         * modules/xreadlink (Depends-on): Add unistd.
21469         * modules/xreadlink-with-size (Depends-on): Likewise.
21470
21471 2007-03-03  Bruno Haible  <bruno@clisp.org>
21472
21473         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
21474         extracted from gt_FUNC_SETENV.
21475         (gt_FUNC_SETENV): Remove macro.
21476         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
21477         remove gt_FUNC_SETENV.
21478
21479 2007-03-03  Bruno Haible  <bruno@clisp.org>
21480
21481         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
21482         ENABLE_RELOCATABLE here.
21483         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
21484
21485 2007-03-03  Bruno Haible  <bruno@clisp.org>
21486
21487         * modules/rbtreehash-list-tests (Depends-on): Add progname.
21488         * tests/test-rbtreehash_list.c: Include progname.h.
21489         (main): Call set_program_name.
21490
21491         * modules/rbtree-oset-tests (Depends-on): Add progname.
21492         * tests/test-rbtree_oset.c: Include progname.h.
21493         (main): Call set_program_name.
21494
21495         * modules/rbtree-list-tests (Depends-on): Add progname.
21496         * tests/test-rbtree_list.c: Include progname.h.
21497         (main): Call set_program_name.
21498
21499         * modules/linked-list-tests (Depends-on): Add progname.
21500         * tests/test-linked_list.c: Include progname.h.
21501         (main): Call set_program_name.
21502
21503 2007-03-03  Bruno Haible  <bruno@clisp.org>
21504
21505         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
21506         All uses of __restrict changed to _Restrict_.
21507         * lib/glob_.h (__restrict): Remove macro.
21508
21509 2007-03-02  Bruno Haible  <bruno@clisp.org>
21510
21511         * modules/gettext (configure.ac): Require gettext infrastructure
21512         from version 0.16.1.
21513
21514 2007-03-02  Bruno Haible  <bruno@clisp.org>
21515
21516         * modules/linkedhash-list-tests (Depends-on): Add progname.
21517         * tests/test-linkedhash_list.c: Include progname.h.
21518         (main): Call set_program_name.
21519
21520         * modules/carray-list-tests (Depends-on): Add progname.
21521         * tests/test-carray_list.c: Include progname.h.
21522         (main): Call set_program_name.
21523
21524         * modules/avltreehash-list-tests (Depends-on): Add progname.
21525         * tests/test-avltreehash_list.c: Include progname.h.
21526         (main): Call set_program_name.
21527
21528         * modules/avltree-oset-tests (Depends-on): Add progname.
21529         * tests/test-avltree_oset.c: Include progname.h.
21530         (main): Call set_program_name.
21531
21532         * modules/avltree-list-tests (Depends-on): Add progname.
21533         * tests/test-avltree_list.c: Include progname.h.
21534         (main): Call set_program_name.
21535
21536         * modules/array-oset-tests (Depends-on): Add progname.
21537         * tests/test-array_oset.c: Include progname.h.
21538         (main): Call set_program_name.
21539
21540         * modules/array-list-tests (Depends-on): Add progname.
21541         * tests/test-array_list.c: Include progname.h.
21542         (main): Call set_program_name.
21543
21544         * modules/argp-tests (Depends-on): Add progname.
21545         * tests/test-argp.c: Include argp.h first. Include progname.h.
21546         (main): Call set_program_name.
21547
21548 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
21549
21550         * doc/gnulib-tool.texi (Initial import): Reword description of
21551         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
21552         limited effect even if defined after the first system include.
21553
21554 2007-03-01  Bruno Haible  <bruno@clisp.org>
21555
21556         * build-aux/config.libpath: Update to libtool-1.5.22.
21557         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
21558
21559 2007-03-01  Bruno Haible  <bruno@clisp.org>
21560
21561         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
21562         foo_CFLAGS.
21563         Reported by Ralf Wildenhues.
21564
21565 2007-03-01  Bruno Haible  <bruno@clisp.org>
21566
21567         * build-aux/install-reloc: Remove object files left over by some
21568         compilers.
21569         Reported by Ralf Wildenhues.
21570
21571 2007-03-01  Bruno Haible  <bruno@clisp.org>
21572
21573         * build-aux/install-reloc: Break long lines.
21574
21575 2007-03-01  Bruno Haible  <bruno@clisp.org>
21576
21577         * doc/relocatable.texi: Document that it may not work on OpenBSD.
21578         Reported by Ralf Wildenhues.
21579
21580 2007-03-01  Bruno Haible  <bruno@clisp.org>
21581
21582         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
21583         include ordering constraints.
21584
21585 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
21586
21587         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
21588         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
21589         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
21590         as another example.
21591         * lib/time_.h: Fix misspelling.
21592         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
21593         Require gl_HEADER_TIME_H_DEFAULTS.
21594         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
21595         * m4/time_r.m4 (gl_TIME_R): Likewise.
21596         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
21597
21598 2007-03-01  Bruno Haible  <bruno@clisp.org>
21599
21600         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
21601         * m4/utimens.m4 (gl_UTIMENS): Likewise.
21602
21603 2007-03-01  Jim Meyering  <jim@meyering.net>
21604
21605         * modules/xreadlink (Maintainer): Add my name.
21606         * modules/xreadlink-with-size (Depends-on): Alphabetize.
21607
21608 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
21609             Bruno Haible  <bruno@clisp.org>
21610
21611         * build-aux/install-reloc: Compile also c-ctype.c.
21612         * build-aux/relocatable.sh.in: New file.
21613         * doc/relocatable.texi: New file.
21614         * doc/relocatable-maint.texi: New file.
21615         * doc/gnulib.texi: Include relocatable-maint.texi.
21616         * lib/progreloc.c: Include unistd.h unconditionally.
21617         * lib/relocwrapper.c: Include unistd.h unconditionally.
21618         Include c-ctype.h.
21619         (add_dotbin): Use c_tolower.
21620         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
21621         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
21622         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
21623         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
21624         to m4/relocatable-lib.m4.
21625         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
21626         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
21627         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
21628         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
21629         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
21630         * modules/relocatable: New file.
21631         * modules/relocatable-lib: New file.
21632         * modules/relocatable-script: New file.
21633
21634 2007-02-28  Bruno Haible  <bruno@clisp.org>
21635
21636         Import --enable-relocatable infrastructure.
21637         * build-aux/config.libpath: New file, from GNU gettext.
21638         * build-aux/install-reloc: New file, from GNU gettext.
21639         * build-aux/reloc-ldflags: New file, from GNU gettext.
21640         * lib/relocatable.h: New file, from GNU gettext.
21641         * lib/relocatable.c: New file, from GNU gettext.
21642         * lib/relocwrapper.c: New file, from GNU gettext.
21643         * m4/relocatable.m4: New file, from GNU gettext.
21644
21645 2007-02-28  Bruno Haible  <bruno@clisp.org>
21646
21647         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
21648
21649         * modules/xreadlink: New file, from GNU gettext with modifications.
21650         * lib/xreadlink.c: New file, from GNU gettext.
21651         * lib/xreadlink.h: Add comments.
21652         (xreadlink): New declaration.
21653
21654         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
21655         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
21656         lib/xreadlink-with-size.c.
21657         (configure.ac): Remove gl_XREADLINK invocation.
21658         (Makefile.am): Augment lib_SOURCES.
21659         * m4/xreadlink.m4: Remove file.
21660         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
21661         (xreadlink_with_size): Renamed from xreadink.
21662         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
21663         * modules/canonicalize (Depends-on): Replace xreadlink with
21664         xreadlink-with-size.
21665         * lib/canonicalize.c (canonicalize_filename_mode): Update.
21666
21667 2007-02-25  Jim Meyering  <jim@meyering.net>
21668
21669         * build-aux/announce-gen: When complaining about excess arguments,
21670         list them.
21671
21672 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
21673
21674         * README: Document signed integer overflow situation more
21675         accurately.
21676
21677 2007-02-25  Bruno Haible  <bruno@clisp.org>
21678
21679         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
21680         'a' or 'A' conversion.
21681
21682 2007-02-25  Bruno Haible  <bruno@clisp.org>
21683
21684         * modules/filename: Renamed from modules/pathname.
21685         (Files): Replace lib/pathname.h with lib/filename.h. Replace
21686         lib/concatpath.c with lib/concat-filename.c.
21687         (Makefile.am): Update.
21688         (Include): Replace pathname.h with filename.h.
21689         * lib/filename.h: Renamed from lib/pathname.h.
21690         (concatenated_filename): Renamed from concatenated_pathname.
21691         * lib/concat-filename.c: Renamed from lib/concatpath.c.
21692         (concatenated_filename): Renamed from concatenated_pathname.
21693         * lib/findprog.c: Include filename.h instead of pathname.h.
21694         (find_in_path): Update.
21695         * lib/javacomp.c: Include filename.h instead of pathname.h.
21696         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
21697         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
21698         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
21699         is_oldgcj_14_13_usable, is_javac_usable): Update.
21700         * lib/javaexec.c: Include filename.h instead of pathname.h.
21701         (execute_java_class): Update.
21702         * modules/findprog: Update.
21703         * modules/javacomp: Update.
21704         * modules/javaexec: Update.
21705         * MODULES.html.sh (File system functions): Add 'filename', remove
21706         'pathname'.
21707
21708 2007-02-25  Bruno Haible  <bruno@clisp.org>
21709
21710         * modules/printf-frexpl-tests: New file.
21711         * tests/test-printf-frexpl.c: New file.
21712
21713         * modules/printf-frexpl: New file.
21714         * lib/printf-frexpl.h: New file.
21715         * lib/printf-frexpl.c: New file.
21716         * m4/printf-frexpl.m4: New file.
21717
21718 2007-02-25  Bruno Haible  <bruno@clisp.org>
21719
21720         * modules/printf-frexp-tests: New file.
21721         * tests/test-printf-frexp.c: New file.
21722
21723         * modules/printf-frexp: New file.
21724         * lib/printf-frexp.h: New file.
21725         * lib/printf-frexp.c: New file.
21726         * m4/printf-frexp.m4: New file.
21727
21728 2007-02-25  Bruno Haible  <bruno@clisp.org>
21729
21730         Assume automake >= 1.10 for the tests.
21731         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
21732         * modules/arctwo-tests: Likewise.
21733         * modules/argp-tests: Likewise.
21734         * modules/avltree-list-tests: Likewise.
21735         * modules/avltree-oset-tests: Likewise.
21736         * modules/avltreehash-list-tests: Likewise.
21737         * modules/carray-list-tests: Likewise.
21738         * modules/crc-tests: Likewise.
21739         * modules/des-tests: Likewise.
21740         * modules/gc-arcfour-tests: Likewise.
21741         * modules/gc-arctwo-tests: Likewise.
21742         * modules/gc-des-tests: Likewise.
21743         * modules/gc-hmac-md5-tests: Likewise.
21744         * modules/gc-hmac-sha1-tests: Likewise.
21745         * modules/gc-md2-tests: Likewise.
21746         * modules/gc-md4-tests: Likewise.
21747         * modules/gc-md5-tests: Likewise.
21748         * modules/gc-pbkdf2-sha1-tests: Likewise.
21749         * modules/gc-rijndael-tests: Likewise.
21750         * modules/gc-sha1-tests: Likewise.
21751         * modules/gc-tests: Likewise.
21752         * modules/getaddrinfo-tests: Likewise.
21753         * modules/hmac-md5-tests: Likewise.
21754         * modules/hmac-sha1-tests: Likewise.
21755         * modules/linked-list-tests: Likewise.
21756         * modules/linkedhash-list-tests: Likewise.
21757         * modules/lock-tests: Likewise.
21758         * modules/md2-tests: Likewise.
21759         * modules/md4-tests: Likewise.
21760         * modules/md5-tests: Likewise.
21761         * modules/rbtree-list-tests: Likewise.
21762         * modules/rbtree-oset-tests: Likewise.
21763         * modules/rbtreehash-list-tests: Likewise.
21764         * modules/read-file-tests: Likewise.
21765         * modules/rijndael-tests: Likewise.
21766         * modules/stdint-tests: Likewise.
21767         * modules/tls-tests: Likewise.
21768
21769 2007-02-24  Bruno Haible  <bruno@clisp.org>
21770
21771         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
21772         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
21773         function; instead check whether isnan with a double argument links.
21774         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
21775         function; instead check whether isnan with a 'long double' argument
21776         links.
21777         Reported by Eric Blake <ebb9@byu.net>.
21778
21779 2007-02-24  Bruno Haible  <bruno@clisp.org>
21780
21781         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
21782         defined.
21783         * lib/isnanl.c: Remove all code. Just include isnan.c.
21784         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
21785
21786 2007-02-25  Jim Meyering  <jim@meyering.net>
21787
21788         Avoid conflicting types for 'unsetenv' on FreeBSD.
21789         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
21790         conflicting with FreeBSD's (5.0 and 6.1) function declaration
21791         in stdlib.h.
21792
21793 2007-02-24  Bruno Haible  <bruno@clisp.org>
21794
21795         * modules/isnanl-nolibm-tests: New file.
21796         * tests/test-isnanl.c: New file.
21797
21798         * modules/isnanl-nolibm: New file.
21799         * lib/isnanl.h: New file.
21800         * lib/isnanl.c: New file.
21801         * m4/isnanl.m4: New file.
21802
21803 2007-02-24  Bruno Haible  <bruno@clisp.org>
21804
21805         * modules/isnan-nolibm-tests: New file.
21806         * tests/test-isnan.c: New file.
21807
21808         * modules/isnan-nolibm: New file.
21809         * lib/isnan.h: New file.
21810         * lib/isnan.c: New file.
21811         * m4/isnan.m4: New file.
21812
21813 2007-02-24  Bruno Haible  <bruno@clisp.org>
21814
21815         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
21816         assume that an exponent fits in 20 bits.
21817
21818 2007-02-24  Jim Meyering  <jim@meyering.net>
21819
21820         * m4/regex.m4: Update the description of the configure-time option,
21821         --without-included-regex, to state accurately what the defaults are,
21822         and perhaps to give people an idea why using this option is risky.
21823
21824 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
21825
21826         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
21827         loops on small arguments.  This attempts to avoid the problem
21828         Bruno Haible reported for AIX 4.3.2 in
21829         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
21830
21831 2007-02-23  Bruno Haible  <bruno@clisp.org>
21832
21833         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
21834         Needed for help2man.
21835
21836 2007-02-23  Karl Berry  <karl@gnu.org>
21837
21838         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
21839         exists, foo.h should be cvs-ignored, not committed.
21840
21841 2007-02-23  Eric Blake  <ebb9@byu.net>
21842
21843         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
21844         * lib/stat-time.h (includes): Likewise.
21845         * lib/utimecmp.c (includes): Likewise.
21846         * lib/utimens.h (includes): Likewise.
21847         * lib/getdate.y (includes): Also include "timespec.h" for use
21848         internal to the module.
21849         * modules/utimens (Depends-on): Revert yesterday's patch.
21850         * modules/nanosleep (Depends-on): Add missing dependency.
21851
21852 2007-02-22  Bruno Haible  <bruno@clisp.org>
21853
21854         * lib/glob.c: Don't include getlogin_r.h.
21855
21856 2007-02-22  Jim Meyering  <jim@meyering.net>
21857
21858         * modules/utimens (Depends-on): Add timespec, required for
21859         utimens.h's inclusion of timespec.h.
21860
21861 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
21862
21863         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
21864         long unreadable paths in GNU/Linux.  Problem reported by Andreas
21865         Schwab in
21866         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
21867         I'll try to think of a better way to fix the Solaris problem.
21868
21869         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
21870         like glibc; on Solaris 10, it fails with errno == EINVAL.
21871         POSIX says the behavior is unspecified if the first argument is NULL,
21872         so play it safe and never pass NULL to the system getcwd.
21873
21874 2007-02-21  Jim Meyering  <jim@meyering.net>
21875
21876         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
21877         of gettimeofday.  It would conflict with the one now always
21878         provided via sys_time_.h.  Reported by Matthew Woehlke, as
21879         an IRIX 6.5 build failure.
21880
21881 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
21882
21883         Minor fixups to port to Solaris 10 with Sun C 5.8.
21884         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
21885         * modules/getcwd (Depends-on): Add dirfd.
21886         * lib/putenv.c (putenv): #undef it.
21887         (rpl_putenv): New decl.
21888         (malloc, free): Include <stdlib.h> rather than prototyping separately.
21889
21890 2007-02-20  Bruno Haible  <bruno@clisp.org>
21891
21892         * modules/stdio-tests: New file.
21893         * tests/test-stdio.c: New file.
21894
21895         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
21896         (Depends-on): Add stdio.
21897         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
21898         (Include): Use <stdio.h> instead of vsnprintf.h.
21899         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
21900         HAVE_DECL_VSNPRINTF.
21901         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
21902
21903         * modules/snprintf (Files): Remove lib/snprintf.h.
21904         (Depends-on): Add stdio.
21905         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
21906         (Include): Use <stdio.h> instead of snprintf.h.
21907         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
21908         HAVE_DECL_SNPRINTF.
21909         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
21910         * lib/getaddrinfo.c: Likewise.
21911
21912         * modules/stdio: New file.
21913         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
21914         * lib/snprintf.h: Remove file.
21915         * lib/vsnprintf.h: Remove file.
21916         * lib/.cppi-disable: Remove snprintf.h.
21917         * m4/stdio_h.m4: New file.
21918         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
21919
21920 2007-02-20  Jim Meyering  <jim@meyering.net>
21921
21922         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
21923         used by e.g., mingw.  From Bruno Haible.
21924
21925 2007-02-19  Bruno Haible  <bruno@clisp.org>
21926
21927         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
21928         warnings.
21929         Reported by Ben Pfaff <blp@cs.stanford.edu>.
21930
21931 2007-02-19  Bruno Haible  <bruno@clisp.org>
21932
21933         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
21934         from mingw users.
21935
21936 2007-02-19  Bruno Haible  <bruno@clisp.org>
21937
21938         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
21939         warnings.
21940         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
21941
21942 2007-02-19  Jim Meyering  <jim@meyering.net>
21943
21944         Don't use FD after a successful "fdopendir (fd)".
21945         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
21946         Reset it by calling dirfd on the just-obtained DIR*.
21947
21948         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
21949         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
21950
21951 2007-02-18  Bruno Haible  <bruno@clisp.org>
21952
21953         * lib/readlink.c: Include <unistd.h>.
21954         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
21955         HAVE_READLINK.
21956         * modules/readlink (Depends-on): Add unistd.
21957         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21958         (Include): Add <unistd.h>.
21959
21960         * lib/getlogin_r.h: Remove file.
21961         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
21962         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
21963         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
21964         HAVE_DECL_GETLOGIN_R.
21965         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
21966         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21967         (Include): Use <unistd.h> instead of getlogin_r.h.
21968
21969         * lib/getcwd.h: Remove file.
21970         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
21971         * lib/xgetcwd.c: Likewise.
21972         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
21973         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
21974         * modules/getcwd (Files): Remove lib/getcwd.h.
21975         (Depends-on): Add unistd.
21976         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21977         (Include): Use <unistd.h> instad of getcwd.h.
21978
21979         * lib/ftruncate.c: Include <unistd.h> first.
21980         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
21981         Set HAVE_FTRUNCATE.
21982         * modules/ftruncate (Depends-on): Add unistd.
21983         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21984
21985         * lib/fchdir.c: Include <unistd.h> first.
21986         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
21987         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
21988         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
21989         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21990         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
21991
21992         * lib/dup2.c: Include <unistd.h> first.
21993         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
21994         HAVE_DUP2.
21995         * modules/dup2 (Depends-on): Add unistd.
21996         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21997
21998         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
21999         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
22000         REPLACE_CHOWN. Don't define chown as a macro here.
22001         * modules/chown (Depends-on): Add unistd.
22002         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
22003
22004         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
22005         Add definition for GL_LINK_WARNING.
22006         (chown, dup2): New declarations.
22007         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
22008         link warning.
22009         (ftruncate): New declaration.
22010         (getcwd): New declaration, taken from old getcwd.h.
22011         (getlogin_r): New declaration, taken from old getlogin_r.h.
22012         (readlink): New declaration.
22013         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
22014         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
22015         (gl_PREREQ_UNISTD): Remove macro.
22016         (gl_UNISTD_MODULE_INDICATOR): New macro.
22017         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
22018         many new variables. Don't set UNISTD_H.
22019         * modules/unistd (Description): Change.
22020         (Depends-on): Add link-warning.
22021         (configure.ac): Update.
22022         (Makefile.am): Create unistd.h always. Substitute many new variables
22023         into it.
22024
22025 2007-02-18  Bruno Haible  <bruno@clisp.org>
22026
22027         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
22028         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
22029         HAVE_GETSUBOPT.
22030         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
22031         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
22032         * lib/getsubopt.h: Remove file.
22033         * modules/getsubopt (Files): Remove lib/getsubopt.h.
22034         (Depends-on): Add stdlib.
22035         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22036         (Includes): Use <stdlib.h> instead of getsubopt.h.
22037         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
22038         Set HAVE_GETSUBOPT.
22039         * lib/getsubopt.c: Don't include getsubopt.h.
22040
22041 2007-02-18  Bruno Haible  <bruno@clisp.org>
22042
22043         * modules/fchdir (Depends-on): Add dup2.
22044
22045 2007-02-18  Bruno Haible  <bruno@clisp.org>
22046
22047         * lib/stdlib_.h: Handle glibc's special invocation convention
22048         specially.
22049
22050 2007-02-18  Bruno Haible  <bruno@clisp.org>
22051
22052         * modules/stdlib-tests: New file.
22053         * tests/test-stdlib.c: New file.
22054
22055         * modules/mkstemp (Files): Remove lib/mkstemp.h.
22056         (Depends-on): Add stdlib.
22057         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22058         (Includes): Use <stdlib.h> instead of mkstemp.h.
22059         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22060         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
22061         * lib/mkstemp.c: Don't include mkstemp.h.
22062         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
22063         * lib/stdlib--.h: Don't include mkstemp.h.
22064
22065         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
22066         (Depends-on): Add stdlib.
22067         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
22068         (Includes): Use <stdlib.h> instead of mkdtemp.h.
22069         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
22070         HAVE_MKDTEMP.
22071         * lib/mkdtemp.c: Don't include mkdtemp.h.
22072         * lib/clean-temp.c: Don't include mkdtemp.h.
22073
22074         * modules/exit (Files): Remove lib/exit.h.
22075         (Depends-on): Add stdlib.
22076         (Makefile.am): Remove lib_SOURCES.
22077         (Include): Use <stdlib.h> instead of exit.h.
22078         * lib/argmatch.c: Don't include exit.h.
22079         * lib/execute.c: Likewise.
22080         * lib/pagealign_alloc.c: Likewise.
22081         * lib/pipe.c: Likewise.
22082         * lib/wait-process.c: Likewise.
22083         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
22084         * lib/exitfail.c: Likewise.
22085         * lib/savewd.c: Likewise.
22086         * lib/xsetenv.c: Likewise.
22087
22088         * modules/stdlib: New file.
22089         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
22090         and extra comments about mkstemp().
22091         * lib/exit.h: Remove file.
22092         * lib/mkdtemp.h: Remove file.
22093         * lib/mkstemp.h: Remove file.
22094         * m4/stdlib_h.m4: New file.
22095         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
22096
22097 2007-02-18  Bruno Haible  <bruno@clisp.org>
22098
22099         * modules/math-tests: New file.
22100         * tests/test-math.c: New file.
22101
22102         * modules/math: New file.
22103         * modules/mathl (Files): Remove lib/mathl.h.
22104         (Depends-on): Add math.
22105         (Makefile.am): Don't mention mathl.h.
22106         (Include): Use <math.h> instead of mathl.h.
22107         * lib/math_.h: New file.
22108         * lib/mathl.h: Remove file.
22109         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
22110         mathl.h.
22111         * lib/asinl.c: Likewise.
22112         * lib/atanl.c: Likewise.
22113         * lib/ceill.c: Likewise.
22114         * lib/cosl.c: Likewise.
22115         * lib/expl.c: Likewise.
22116         * lib/floorl.c: Likewise.
22117         * lib/frexpl.c: Likewise.
22118         * lib/ldexpl.c: Likewise.
22119         * lib/logl.c: Likewise.
22120         * lib/sincosl.c: Likewise.
22121         * lib/sinl.c: Likewise.
22122         * lib/sqrtl.c: Likewise.
22123         * lib/tanl.c: Likewise.
22124         * lib/trigl.c: Likewise.
22125         * m4/math_h.m4: New file.
22126         * MODULES.html.sh (Mathematics): Add math.
22127
22128 2007-02-17  Bruno Haible  <bruno@clisp.org>
22129
22130         * modules/wctype-tests: New file.
22131         * tests/test-wctype.c: New file.
22132
22133         * modules/wchar-tests: New file.
22134         * tests/test-wchar.c: New file.
22135
22136         * modules/unistd-tests: New file.
22137         * tests/test-unistd.c: New file.
22138
22139         * modules/time-tests: New file.
22140         * tests/test-time.c: New file.
22141
22142         * modules/sysexits-tests: New file.
22143         * tests/test-sysexits.c: New file.
22144
22145         * modules/sys_time-tests: New file.
22146         * tests/test-sys_time.c: New file.
22147
22148         * modules/sys_stat-tests: New file.
22149         * tests/test-sys_stat.c: New file.
22150
22151         * modules/sys_socket-tests: New file.
22152         * tests/test-sys_socket.c: New file.
22153
22154         * modules/sys_select-tests: New file.
22155         * tests/test-sys_select.c: New file.
22156
22157         * modules/string-tests: New file.
22158         * tests/test-string.c: New file.
22159
22160         * modules/stdbool-tests: New file.
22161         * tests/test-stdbool.c: New file.
22162
22163         * modules/netinet_in-tests: New file.
22164         * tests/test-netinet_in.c: New file.
22165
22166         * modules/inttypes-tests: New file.
22167         * tests/test-inttypes.c: New file.
22168
22169         * modules/fcntl-tests: New file.
22170         * tests/test-fcntl.c: New file.
22171
22172         * modules/byteswap-tests: New file.
22173         * tests/test-byteswap.c: New file.
22174
22175         * modules/arpa_inet-tests: New file.
22176         * tests/test-arpa_inet.c: New file.
22177
22178 2007-02-17  Bruno Haible  <bruno@clisp.org>
22179
22180         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
22181         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
22182         if the corresponding module is not enabled. Emit link warnings if
22183         the function is used nevertheless.
22184         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
22185         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
22186         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
22187         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
22188         * modules/inttypes (Depends-on): Add link-warning.
22189         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22190         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
22191         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
22192         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
22193         * modules/imaxdiv (configure.ac): Likewise.
22194         * modules/strtoimax (configure.ac): Likewise.
22195         * modules/strtoumax (configure.ac): Likewise.
22196
22197 2007-02-17  Bruno Haible  <bruno@clisp.org>
22198
22199         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
22200         gl_STRING_MODULE_INDICATOR_DEFAULTS.
22201         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
22202         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
22203
22204 2007-02-17  Bruno Haible  <bruno@clisp.org>
22205
22206         * modules/link-warning: New file.
22207         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
22208         * lib/string_.h (GL_LINK_WARNING): Remove definition.
22209         * modules/string (Depends-on): Add link-warning.
22210         (Makefile.am): Copy the contents of build-aux/link-warning.h into
22211         string.h.
22212         * MODULES.html.sh (Support for building libraries and executables): Add
22213         link-warning.
22214
22215 2007-02-17  Bruno Haible  <bruno@clisp.org>
22216
22217         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
22218         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
22219         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
22220         long lines.
22221
22222 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
22223             Bruno Haible  <bruno@clisp.org>
22224
22225         * modules/tmpfile: New file.
22226         * lib/tmpfile.c: New file.
22227         * m4/tmpfile.m4: New file.
22228         * MODULES.html.sh (func_all_modules): New section "Input/output".
22229
22230 2007-02-15  Bruno Haible  <bruno@clisp.org>
22231
22232         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
22233         (supports_delete_on_close): New function.
22234         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
22235
22236 2007-02-14  Bruno Haible  <bruno@clisp.org>
22237
22238         * modules/mbspcasecmp-tests: New file.
22239         * tests/test-mbspcasecmp.sh: New file.
22240         * tests/test-mbspcasecmp.c: New file.
22241
22242         New module mbspcasecmp.
22243         * modules/mbspcasecmp: New file.
22244         * lib/mbspcasecmp.c: New file.
22245         * lib/string_.h (strncasecmp): Change warning message.
22246         (mbspcasecmp): New declaration.
22247         * m4/mbspcasecmp.m4: New file.
22248         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22249         GNULIB_MBSPCASECMP.
22250         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
22251         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
22252
22253 2007-02-14  Bruno Haible  <bruno@clisp.org>
22254
22255         * modules/mbsncasecmp-tests: New file.
22256         * tests/test-mbsncasecmp.sh: New file.
22257         * tests/test-mbsncasecmp.c: New file.
22258
22259         New module mbsncasecmp.
22260         * modules/mbsncasecmp: New file.
22261         * lib/mbsncasecmp.c: New file.
22262         * lib/string_.h (mbsncasecmp): New declaration.
22263         * m4/mbsncasecmp.m4: New file.
22264         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22265         GNULIB_MBSNCASECMP.
22266         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
22267         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
22268
22269 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
22270
22271         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
22272         Verify that it doesn't overlap with our flags.
22273         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
22274         do not have the desired effect in multibyte locales; instead, use
22275         mbscasecmp.
22276         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
22277         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
22278         we don't require GNU fnmatch ourselves (if our users require it, they
22279         should do so explicitly).
22280
22281         Fix regex code so it doesn't rely on strcasecmp.
22282         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
22283         Otherwise, include gnulib's langinfo.h.
22284         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
22285         undesirable behavior in non-C locales.  Instead, rely on localecharset.
22286         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
22287         * modules/regex (FILES): Remove m4/codeset.m4.
22288         (Depends-on): Add localcharset.  Remove strcase.
22289
22290 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22291
22292         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
22293         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
22294
22295 2007-02-13  Bruno Haible  <bruno@clisp.org>
22296
22297         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
22298         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22299
22300 2007-02-12  Bruno Haible  <bruno@clisp.org>
22301
22302         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
22303         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
22304         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
22305         time warning rather than a link error.
22306
22307 2007-02-12  Bruno Haible  <bruno@clisp.org>
22308
22309         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
22310         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
22311         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
22312
22313 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22314
22315         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
22316         args, not 2.
22317
22318 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
22319
22320         New module 'time', so that apps can include <time.h> as per
22321         POSIX and GNU instead of separate include files like time_r.h
22322         and timegm.h.  This implementation tries out a simpler approach
22323         for replacing decls in standard include files (as compared to
22324         the string module), somewhat as an experiment.
22325
22326         * config/srclist.txt: Comment out mktime.c for now.
22327         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
22328         since it doesn't apply any more.  Use generic wording instead.
22329         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
22330         'time'.
22331         * lib/time_.h, m4/time_h.m4, modules/time: New files.
22332         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
22333         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
22334         Don't include <sys/types.h>; no longer needed since we assume C89.
22335         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
22336         * lib/strftime.c: Likewise.
22337         * lib/time_r.c: Likewise.
22338         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
22339         * lib/nanosleep.c: Include <time.h> first, to check interface.
22340         * lib/strptime.c: Likewise.
22341         * lib/time_r.c: Likewise.
22342         * lib/timegm.c: Likewise.
22343         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
22344         needed.
22345         * lib/timegm.c: Don't include timegm.h; no longer needed.
22346         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
22347         time.h now handles any problems in that area.
22348         (struct timespec, nanosleep): Remove; time.h now arranges for these.
22349         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
22350         that time.h defines struct timespec.
22351         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
22352         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
22353         handles that.
22354         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
22355         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
22356         needed.  Set REPLACE_LOCALTIME.
22357         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
22358         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
22359         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
22360         nanosleep; time_h.m4 now does that.  Don't require
22361         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
22362         module handles this now.
22363         * modules/getdate (Depends-on): Remove timespec.  Add time.
22364         * modules/nanosleep (Depends-on): Likewise.
22365         * modules/stat-time (Depends-on): Likewise.
22366         * modules/nanosleep (Include): Include time.h, not timespec.h.
22367         * modules/strptime (Files): Remove lib/strptime.h.
22368         (Depends-on): Add extensions, time.
22369         (Include): Include time.h, not strptime.h.
22370         * modules/time_r (Files): Remove lib/time_r.h.
22371         (Depends-on): Add time.
22372         (Include): Include time.h, not time_r.h.
22373         * modules/timegm: Likewise.
22374         * modules/timespec (Description): Now does timespec-related decls
22375         of our own, instead of struct timespec itself.
22376         (Depends-on): Add time; remove extensions.
22377         (Maintainer): Add self.
22378         * modules/utimecmp (Depends-on): Add time; remove timespec.
22379         * modules/utimens (Depends-on): Likewise.
22380         * modules/xnanosleep (Depends-on): Likewise.
22381
22382 2007-02-11  Bruno Haible  <bruno@clisp.org>
22383
22384         * lib/c-strstr.c: Include allocsa.h.
22385         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22386         * lib/c-strcasestr.c: Include allocsa.h.
22387         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22388         * lib/strcasestr.c: Include allocsa.h.
22389         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
22390         * lib/mbsstr.c: Include allocsa.h.
22391         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22392         allocsa/freesa instead of malloc/free.
22393         * lib/mbscasestr.c: Include allocsa.h.
22394         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
22395         allocsa/freesa instead of malloc/free.
22396         * modules/c-strstr (Depends-on): Add allocsa.
22397         * modules/c-strcasestr (Depends-on): Likewise.
22398         * modules/strcasestr (Depends-on): Likewise.
22399         * modules/mbsstr (Depends-on): Likewise.
22400         * modules/mbscasestr (Depends-on): Likewise.
22401
22402 2007-02-11  Bruno Haible  <bruno@clisp.org>
22403
22404         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
22405
22406         * modules/mbsspn-tests: New file.
22407         * tests/test-mbsspn.sh: New file.
22408         * tests/test-mbsspn.c: New file.
22409
22410 2007-02-11  Bruno Haible  <bruno@clisp.org>
22411
22412         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
22413
22414         * modules/mbspbrk-tests: New file.
22415         * tests/test-mbspbrk.sh: New file.
22416         * tests/test-mbspbrk.c: New file.
22417
22418 2007-02-11  Bruno Haible  <bruno@clisp.org>
22419
22420         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
22421         unneeded cast.
22422
22423         * modules/mbscspn-tests: New file.
22424         * tests/test-mbscspn.sh: New file.
22425         * tests/test-mbscspn.c: New file.
22426
22427 2007-02-11  Bruno Haible  <bruno@clisp.org>
22428
22429         * modules/mbscasecmp-tests: New file.
22430         * tests/test-mbscasecmp.sh: New file.
22431         * tests/test-mbscasecmp.c: New file.
22432
22433 2007-02-11  Bruno Haible  <bruno@clisp.org>
22434
22435         Ensure O(n) worst-case complexity of mbscasestr.
22436         * lib/mbscasestr.c: Include stdbool.h.
22437         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22438         functions.
22439         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
22440         the bookkeeping indicates that it's worth it.
22441         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
22442
22443         * modules/mbscasestr-tests: New file.
22444         * tests/test-mbscasestr1.c: New file.
22445         * tests/test-mbscasestr2.sh: New file.
22446         * tests/test-mbscasestr2.c: New file.
22447         * tests/test-mbscasestr3.sh: New file.
22448         * tests/test-mbscasestr3.c: New file.
22449         * tests/test-mbscasestr4.sh: New file.
22450         * tests/test-mbscasestr4.c: New file.
22451         * m4/locale-tr.m4: New file.
22452
22453 2007-02-11  Bruno Haible  <bruno@clisp.org>
22454
22455         Ensure O(n) worst-case complexity of mbsstr.
22456         * lib/mbsstr.c: Include stdbool.h.
22457         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
22458         functions.
22459         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
22460         bookkeeping indicates that it's worth it.
22461         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
22462
22463         * modules/mbsstr-tests: New file.
22464         * tests/test-mbsstr1.c: New file.
22465         * tests/test-mbsstr2.sh: New file.
22466         * tests/test-mbsstr2.c: New file.
22467         * tests/test-mbsstr3.sh: New file.
22468         * tests/test-mbsstr3.c: New file.
22469         * m4/locale-fr.m4: New file.
22470
22471 2007-02-11  Bruno Haible  <bruno@clisp.org>
22472
22473         * lib/mbsrchr.c (mbsrchr): Fix bug.
22474
22475         * modules/mbsrchr-tests: New file.
22476         * tests/test-mbsrchr.sh: New file.
22477         * tests/test-mbsrchr.c: New file.
22478
22479 2007-02-11  Bruno Haible  <bruno@clisp.org>
22480
22481         * lib/mbschr.c (mbschr): Fix bug.
22482
22483         * modules/mbschr-tests: New file.
22484         * tests/test-mbschr.sh: New file.
22485         * tests/test-mbschr.c: New file.
22486         * m4/locale-zh.m4: New file.
22487
22488 2007-02-11  Bruno Haible  <bruno@clisp.org>
22489
22490         Support for copying multibyte string iterators.
22491         * lib/mbiter.h: Include <string.h>.
22492         (mbiter_multi_copy): New function.
22493         (mbi_copy): New macro.
22494         * lib/mbuiter.h: Include <string.h>.
22495         (mbuiter_multi_copy): New function.
22496         (mbui_copy): New macro.
22497
22498 2007-02-11  Bruno Haible  <bruno@clisp.org>
22499
22500         New module mbslen.
22501         * modules/mbslen: New file.
22502         * lib/mbslen.c: New file.
22503         * lib/string_.h (mbslen): New declaration.
22504         * m4/mbslen.m4: New file.
22505         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22506         GNULIB_MBSLEN.
22507         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
22508         * MODULES.html.sh (Internationalization functions): Add mbslen.
22509
22510 2007-02-11  Bruno Haible  <bruno@clisp.org>
22511
22512         Ensure O(n) worst-case complexity of strcasestr substitute.
22513         * lib/strcasestr.c: Include stdbool.h.
22514         (knuth_morris_pratt): New function.
22515         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
22516         bookkeeping indicates that it's worth it.
22517         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
22518
22519         * modules/strcasestr-tests: New file.
22520         * tests/test-strcasestr.c: New file.
22521
22522 2007-02-11  Bruno Haible  <bruno@clisp.org>
22523
22524         Ensure O(n) worst-case complexity of c_strcasestr.
22525         * lib/c-strcasestr.c: Include stdbool.h, string.h.
22526         (knuth_morris_pratt): New function.
22527         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
22528         the bookkeeping indicates that it's worth it.
22529         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
22530
22531         * modules/c-strcasestr-tests: New file.
22532         * tests/test-c-strcasestr.c: New file.
22533
22534 2007-02-11  Bruno Haible  <bruno@clisp.org>
22535
22536         Ensure O(n) worst-case complexity of c_strstr.
22537         * lib/c-strstr.c: Include stdbool.h, string.h.
22538         (knuth_morris_pratt): New function.
22539         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
22540         bookkeeping indicates that it's worth it.
22541         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
22542
22543         * lib/c-strstr.c: Complete rewrite for maintainability.
22544
22545         * modules/c-strstr-tests: New file.
22546         * tests/test-c-strstr.c: New file.
22547
22548 2007-02-11  Bruno Haible  <bruno@clisp.org>
22549
22550         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
22551         5.2.1 and earlier, whereby \055 was treated just like the range
22552         delimiter '-'.
22553         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
22554
22555 2007-02-08  Bruno Haible  <bruno@clisp.org>
22556
22557         * modules/regex (Depends-on): Add stdbool.
22558         Reported by Dalibor Topic <robilad@kaffe.org>.
22559
22560 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
22561
22562         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
22563         Prefer returning from main to exiting from it.
22564         Remove unnecessary parens after sizeof.
22565
22566 2007-02-05  Bruno Haible  <bruno@clisp.org>
22567
22568         New module mbssep.
22569         * modules/mbssep: New file.
22570         * lib/mbssep.c: New file.
22571         * lib/string_.h (strsep): Add a conditional link warning.
22572         (mbssep): New declaration.
22573         * m4/mbssep.m4: New file.
22574         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22575         GNULIB_MBSSEP.
22576         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
22577         * MODULES.html.sh (Internationalization functions): Add mbssep.
22578
22579 2007-02-05  Bruno Haible  <bruno@clisp.org>
22580
22581         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
22582         Optimize search in case of 1 delimiter.
22583
22584 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
22585
22586         * lib/acl.h: Include sys/types.h before sys/acl.h.
22587
22588 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
22589
22590         Merge upstream fix for glibc bugzilla #3957:
22591
22592         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
22593
22594         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
22595         bit for RE_HAT_LISTS_NOT_NEWLINE.
22596         (build_charclass_op): Remove bogus comment.
22597
22598 2007-02-05  Simon Josefsson  <simon@josefsson.org>
22599
22600         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
22601
22602 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
22603
22604         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
22605         * lib/memmem.c [!defined _LIBC]: Include config.h.
22606
22607 2007-02-04  Bruno Haible  <bruno@clisp.org>
22608
22609         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
22610         warning message.
22611
22612 2007-02-04  Bruno Haible  <bruno@clisp.org>
22613
22614         New module mbstok_r.
22615         * modules/mbstok_r: New file.
22616         * lib/mbstok_r.c: New file.
22617         * lib/string_.h (strtok_r): Change argument names to match the
22618         comments. Add a conditional link warning.
22619         (mbstok_r): New declaration.
22620         * m4/mbstok_r.m4: New file.
22621         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22622         GNULIB_MBSTOK_R.
22623         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
22624         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
22625
22626 2007-02-04  Bruno Haible  <bruno@clisp.org>
22627
22628         New module mbsspn.
22629         * modules/mbsspn: New file.
22630         * lib/mbsspn.c: New file.
22631         * lib/string_.h (strspn): Add a conditional link warning.
22632         (mbsspn): New declaration.
22633         * m4/mbsspn.m4: New file.
22634         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22635         GNULIB_MBSSPN.
22636         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
22637         * MODULES.html.sh (Internationalization functions): Add mbsspn.
22638
22639 2007-02-04  Bruno Haible  <bruno@clisp.org>
22640
22641         New module mbspbrk.
22642         * modules/mbspbrk: New file.
22643         * lib/mbspbrk.c: New file.
22644         * lib/string_.h (strpbrk): Add a conditional link warning.
22645         (mbspbrk): New declaration.
22646         * m4/mbspbrk.m4: New file.
22647         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22648         GNULIB_MBSPBRK.
22649         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
22650         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
22651
22652 2007-02-04  Bruno Haible  <bruno@clisp.org>
22653
22654         New module mbscspn.
22655         * modules/mbscspn: New file.
22656         * lib/mbscspn.c: New file.
22657         * lib/string_.h (strcspn): Add a conditional link warning.
22658         (mbscspn): New declaration.
22659         * m4/mbscspn.m4: New file.
22660         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22661         GNULIB_MBSCSPN.
22662         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
22663         * MODULES.html.sh (Internationalization functions): Add mbscspn.
22664
22665 2007-02-04  Bruno Haible  <bruno@clisp.org>
22666
22667         New module mbscasestr, reduced goal of strcasestr.
22668         * modules/mbscasestr: New file.
22669         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
22670         (mbscasestr): Renamed from strcasestr.
22671         * lib/strcasestr.c: Don't include mbuiter.h.
22672         (strcasestr): Remove support for multibyte locales.
22673         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
22674         Change the conditional link warning.
22675         (mbscasestr): New declaration.
22676         * m4/mbscasestr.m4: New file.
22677         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
22678         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
22679         REPLACE_STRCASESTR.
22680         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
22681         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
22682         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
22683         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
22684         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
22685         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
22686         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
22687         (Depends-on): Remove mbuiter.
22688         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
22689
22690 2007-02-04  Bruno Haible  <bruno@clisp.org>
22691
22692         Simplify handling of strncasecmp.
22693         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
22694         the conditional link warning.
22695         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
22696         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
22697         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
22698         * modules/strcase (configure.ac): Don't invoke
22699         gl_STRING_MODULE_INDICATOR.
22700         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
22701
22702 2007-02-04  Bruno Haible  <bruno@clisp.org>
22703
22704         New module mbscasecmp, reduced goal of strcasecmp.
22705         * modules/mbscasecmp: New file.
22706         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
22707         (mbscasecmp): Renamed from strcasecmp.
22708         * lib/strcasecmp.c: Don't include mbuiter.h.
22709         (strcasecmp): Remove support for multibyte locales.
22710         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
22711         Change the conditional link warning.
22712         (mbscasecmp): New declaration.
22713         * m4/mbscasecmp.m4: New file.
22714         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
22715         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
22716         REPLACE_STRCASECMP.
22717         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
22718         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22719         GNULIB_MBSCASECMP.
22720         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
22721         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
22722         * modules/strcase (Files): Remove m4/mbrtowc.m4.
22723         (Depends-on): Remove mbuiter.
22724         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
22725
22726 2007-02-04  Bruno Haible  <bruno@clisp.org>
22727
22728         New module mbsstr. Remove module strstr.
22729         * modules/mbsstr: New file.
22730         * modules/strstr: Remove file.
22731         * lib/mbsstr.c: Renamed from lib/strstr.c.
22732         (mbsstr): Renamed from strstr.
22733         * lib/string_.h (strstr): Remove declaration. Change the conditional
22734         link warning.
22735         (mbsstr): New declaration.
22736         * m4/mbsstr.m4: New file.
22737         * m4/strstr.m4: Remove file.
22738         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
22739         REPLACE_STRSTR.
22740         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
22741         Don't initialize GNULIB_STRSTR.
22742         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
22743         substitute GNULIB_STRSTR and REPLACE_STRSTR.
22744         * MODULES.html.sh (Internationalization functions): Add mbsstr.
22745         (Support for systems lacking ANSI C 89): Remove strstr.
22746
22747 2007-02-04  Bruno Haible  <bruno@clisp.org>
22748
22749         New module mbsrchr.
22750         * modules/mbsrchr: New file.
22751         * lib/mbsrchr.c: New file.
22752         * lib/string_.h (strrchr): Add a conditional link warning.
22753         (mbsrchr): New declaration.
22754         * m4/mbsrchr.m4: New file.
22755         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22756         GNULIB_MBSRCHR.
22757         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
22758         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
22759
22760 2007-02-04  Bruno Haible  <bruno@clisp.org>
22761
22762         New module mbschr.
22763         * modules/mbschr: New file.
22764         * lib/mbschr.c: New file.
22765         * lib/string_.h (strchr): Add a conditional link warning.
22766         (mbschr): New declaration.
22767         * m4/mbschr.m4: New file.
22768         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
22769         GNULIB_MBSCHR.
22770         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
22771         * MODULES.html.sh (Internationalization functions): Add mbschr.
22772
22773 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
22774
22775         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
22776
22777         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
22778
22779 2007-02-04  Bruno Haible  <bruno@clisp.org>
22780
22781         New module description section 'configure.ac-early'.
22782         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
22783         (func_get_autoconf_early_snippet): New function.
22784         (func_import, func_create_testdir): Use it. Remove special cases for
22785         modules 'extensions' and 'lock'.
22786         * modules/extensions (configure.ac-early): Require
22787         gl_USE_SYSTEM_EXTENSIONS.
22788         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
22789
22790 2007-02-04  Bruno Haible  <bruno@clisp.org>
22791
22792         Make use of gcj-4.3's -fsource and -ftarget option.
22793         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
22794         and if so try the options -fsource and -ftarget.
22795         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
22796         source_version, ftarget_option, target_version arguments.
22797         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
22798         (is_envjavac_oldgcj_14_14_usable): Renamed from
22799         is_envjavac_gcj_14_14_usable.
22800         (is_envjavac_oldgcj_14_13_usable): Renamed from
22801         is_envjavac_gcj_14_13_usable.
22802         (is_gcj_present): Update.
22803         (is_gcj_43, is_gcj43_usable): New functions.
22804         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
22805         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
22806         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
22807         try the options -fsource and -ftarget.
22808
22809 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
22810
22811         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
22812         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
22813         larger value.
22814
22815 2007-02-03  Jim Meyering  <jim@meyering.net>
22816
22817         Give tools a better chance to allocate space for very large buffers.
22818         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
22819
22820         Make pwd and readlink work also when run with an unreadable parent dir
22821         on systems with openat support.
22822         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
22823         provided getcwd function, even when we have openat support.
22824         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
22825
22826 2007-02-02  Bruno Haible  <bruno@clisp.org>
22827
22828         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
22829         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
22830         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
22831         portability problems if one of these functions is only used on specific
22832         platforms.
22833         Reported by Paul Eggert.
22834
22835 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
22836
22837         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
22838         is causing more trouble than it's curing.
22839         * lib/regex_internal.h (__mempcpy): Remove.
22840         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
22841         (and make the code a tad smaller to boot).
22842         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
22843
22844 2007-02-02  Jim Meyering  <jim@meyering.net>
22845
22846         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
22847         section, not in the Makefile.am: one.
22848
22849 2007-02-02  Eric Blake  <ebb9@byu.net>
22850
22851         * lib/strchrnul.c: Always include config.h first.
22852
22853         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
22854         gnulib strstr is not necessary here.
22855
22856 2007-02-02  Simon Josefsson  <simon@josefsson.org>
22857
22858         * m4/socklen.m4: Fix typo.
22859
22860 2007-02-02  Eric Blake  <ebb9@byu.net>
22861
22862         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
22863         * modules/netinet_in (Makefile.am): Likewise.
22864
22865 2007-02-01  Bruno Haible  <bruno@clisp.org>
22866
22867         * lib/string_.h (GL_LINK_WARNING): New macro.
22868         (strcasecmp, strstr, strcasestr): If provided by the system,
22869         conditionally define as a macro that leads to a warning instead of to
22870         an error.
22871         (strncasecmp): Conditionally define as a macro that leads to a warning.
22872
22873 2007-02-01  Karl Berry  <karl@gnu.org>
22874
22875         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
22876
22877 2007-02-01  Bruno Haible  <bruno@clisp.org>
22878
22879         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
22880         renamings.
22881
22882 2007-02-01  Eric Blake  <ebb9@byu.net>
22883
22884         * modules/regex (Depends-on): Revert dependence on mempcpy.
22885         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
22886         module's definition of mempcpy.
22887         Reported by Paul Eggert.
22888
22889 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
22890
22891         * lib/string_.h: If the gnulib module XYZ is not present, undefine
22892         the symbol XYZ before redefining it.  This fixes a problem with
22893         programs that don't use XYZ, when compiled on systems that define
22894         XYZ to something else.
22895
22896 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
22897
22898         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
22899         occurs when "mkdir -m foo" creates a setgid directory that is (1)
22900         writeable to group or other and (2) is intended to have a special
22901         mode bit that is set or cleared.  In such a case, the directory
22902         should be neither group- nor other-writeable until the special
22903         mode bits are right.
22904
22905 2007-01-31  Eric Blake  <ebb9@byu.net>
22906
22907         * modules/mountlist (Depends-on): Add strstr.
22908
22909         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
22910         bug.
22911         * modules/string (Makefile.am): Remove redundant replacement.
22912         * modules/regex (Depends-on): Add mempcpy.
22913
22914 2007-01-31  Bruno Haible  <bruno@clisp.org>
22915
22916         New module description field 'Link'.
22917         * gnulib-tool (func_usage): Document --extract-link-directive.
22918         (sed_extract_prog): Recognize 'Link' directive.
22919         (func_get_link_directive): New function.
22920         (func_import): Show summary of link directives.
22921         Handle --extract-link-directive option.
22922         * modules/acl (Link): New section.
22923         * modules/clock-time (Link): New section.
22924         * modules/euidaccess (Link): New section.
22925         * modules/gettext (Link): New section.
22926         * modules/iconv (Link): New section.
22927         * modules/lock (Link): New section.
22928         * modules/nanosleep (Link): New section.
22929         * modules/readline (Link): New section.
22930
22931 2007-01-27  Bruno Haible  <bruno@clisp.org>
22932
22933         Enforce the use of gnulib modules for unportable <string.h> functions.
22934         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
22935         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
22936         (gl_HEADER_STRING_H_BODY): Require it.
22937         * lib/string_.h: If the gnulib module XYZ is not present, redefine
22938         the symbol XYZ to one that gives a link error.
22939         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
22940         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
22941         * modules/mempcpy (configure.ac): Likewise.
22942         * modules/memrchr (configure.ac): Likewise.
22943         * modules/stpcpy (configure.ac): Likewise.
22944         * modules/stpncpy (configure.ac): Likewise.
22945         * modules/strcase (configure.ac): Likewise.
22946         * modules/strcasestr (configure.ac): Likewise.
22947         * modules/strchrnul (configure.ac): Likewise.
22948         * modules/strdup (configure.ac): Likewise.
22949         * modules/strndup (configure.ac): Likewise.
22950         * modules/strnlen (configure.ac): Likewise.
22951         * modules/strpbrk (configure.ac): Likewise.
22952         * modules/strsep (configure.ac): Likewise.
22953         * modules/strstr (configure.ac): Likewise.
22954         * modules/strtok_r (configure.ac): Likewise.
22955
22956 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
22957
22958         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
22959
22960 2007-01-30  Jim Meyering  <jim@meyering.net>
22961
22962         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
22963
22964 2007-01-29  Bruno Haible  <bruno@clisp.org>
22965
22966         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
22967         * lib/execute.c: Likewise.
22968         * lib/pipe.c: Likewise.
22969         * lib/printf-args.h: Likewise.
22970         * lib/printf-args.c: Likewise.
22971         * lib/printf-parse.c: Likewise.
22972         * lib/vasnprintf.c: Likewise.
22973
22974 2007-01-29  Eric Blake  <ebb9@byu.net>
22975
22976         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
22977         declaration.
22978
22979 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
22980
22981         * lib/strptime.h (strptime): Use 'restrict' for args where
22982         POSIX requires this.
22983         * lib/strptime.c (strptime): Likewise.
22984         Change license notice from LGPL to GPL, since gnulib-tool will
22985         change this as needed.
22986         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
22987         defined.
22988         Include "strptime.h" first, to check interface.
22989         Do not #undef _LIBC and _NL_CURRENT.
22990         Do not include <stdlib.h>; no longer needed.
22991         Include "time_r.h" and declare ptime_locale_status
22992         only if _LIBC is not defined.
22993         (__P): Remove unused macro.
22994         (match_string): Bring back glibc version, but use it only if _LIBC
22995         is defined.
22996         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
22997         Remove unnecessary assertion and abort() call.
22998         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
22999         * m4/strptime.m4: Fix serial number comment.
23000         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
23001         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
23002         (Depends-on): Add time_r.
23003
23004 2007-01-29  Bruno Haible  <bruno@clisp.org>
23005
23006         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23007         strptime.
23008         * modules/strptime (Depends-on): Add stdbool.
23009         * lib/strptime.h: Include <time.h> always. Add comments.
23010
23011 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
23012
23013         * modules/strptime: New file.
23014         * lib/strptime.h: New file.
23015         * lib/strptime.c: New file.
23016         * m4/strptime.m4: New file.
23017
23018 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
23019
23020         * MODULES.html.sh: New module mpsort.
23021         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
23022
23023         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
23024         a circularity problem with HP-UX ia64 reported by Bob Proulx in
23025         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
23026         All uses changed.
23027         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
23028         All uses changed.
23029         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
23030         to _Restrict_.
23031         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
23032         the parameter matches the prototype.
23033
23034 2007-01-28  Jim Meyering  <jim@meyering.net>
23035
23036         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
23037         sys/time.h here, reverting that part of the previous patch:
23038         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
23039
23040 2007-01-28  Bruno Haible  <bruno@clisp.org>
23041
23042         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
23043         value of $(SYS_TIME_H).
23044         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
23045         remove it conditionally, too. [added by Jim Meyering]
23046         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
23047         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
23048         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
23049         GETTIMEOFDAY_REPLACEMENT to 1.
23050
23051 2007-01-28  Bruno Haible  <bruno@clisp.org>
23052
23053         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
23054         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
23055         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
23056         Set UNISTD_H instead of UNISTD_H2.
23057         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
23058
23059 2007-01-28  Bruno Haible  <bruno@clisp.org>
23060
23061         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
23062         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
23063
23064 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23065
23066         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
23067         (func_create_testdir): Ensure C locale for `grep' and `tr'
23068         character ranges.
23069         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
23070         ACLOCAL_AMFLAGS parsing state machine.
23071
23072 2007-01-27  Bruno Haible  <bruno@clisp.org>
23073
23074         * modules/unistr/base: Update.
23075
23076 2007-01-27  Bruno Haible  <bruno@clisp.org>
23077
23078         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
23079         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
23080         * modules/unistr/u32-mbtouc-unsafe: Renamed from
23081         modules/unistr/u32-mbtouc.
23082         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
23083         * lib/unistr.h: Update.
23084         * lib/linebreak.c: Update.
23085         * modules/unistr/u32-mbtouc: Renamed from
23086         modules/unistr/u32-mbtouc-safe.
23087         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
23088         * lib/unistr.h: Update.
23089         * lib/unistr/u32-to-u8.c: Update.
23090         * lib/unistr/u32-to-u16.c: Update.
23091
23092 2007-01-27  Bruno Haible  <bruno@clisp.org>
23093
23094         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
23095         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
23096         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
23097         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
23098         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
23099         * modules/unistr/u16-mbtouc-unsafe: Renamed from
23100         modules/unistr/u16-mbtouc.
23101         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
23102         * lib/unistr.h: Update.
23103         * lib/linebreak.c: Update.
23104         * modules/linebreak: Update.
23105         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
23106         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
23107         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
23108         * modules/unistr/u16-mbtouc: Renamed from
23109         modules/unistr/u16-mbtouc-safe.
23110         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
23111         * lib/unistr.h: Update.
23112         * lib/unistr/u16-to-u8.c: Update.
23113         * modules/unistr/u16-to-u8: Update.
23114         * lib/unistr/u16-to-u32.c: Update.
23115         * modules/unistr/u16-to-u32: Update.
23116
23117 2007-01-27  Bruno Haible  <bruno@clisp.org>
23118
23119         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
23120         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
23121         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
23122         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
23123         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
23124         * modules/unistr/u8-mbtouc-unsafe: Renamed from
23125         modules/unistr/u8-mbtouc.
23126         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
23127         * lib/unistr.h: Update.
23128         * lib/striconveh.c: Update.
23129         * modules/striconveh: Update.
23130         * lib/linebreak.c: Update.
23131         * modules/linebreak: Update.
23132         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
23133         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
23134         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
23135         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
23136         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
23137         * lib/unistr.h: Update.
23138         * lib/striconveh.c: Update.
23139         * modules/striconveh: Update.
23140         * lib/unistr/u8-to-u16.c: Update.
23141         * modules/unistr/u8-to-u16: Update.
23142         * lib/unistr/u8-to-u32.c: Update.
23143         * modules/unistr/u8-to-u32: Update.
23144
23145 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23146
23147         Sync from Libtool.
23148         * lib/argz.c: Do not include strings.h nor memory.h, include
23149         string.h unconditionally.  Patch by Simon Josefsson.
23150
23151 2007-01-27  Bruno Haible  <bruno@clisp.org>
23152
23153         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
23154         from gl_HEADER_STRING_H_BODY.
23155         (gl_HEADER_STRING_H_BODY): Require it.
23156         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
23157         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
23158         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
23159         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
23160         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
23161         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
23162         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
23163         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
23164         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
23165         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
23166         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
23167         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
23168         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
23169         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
23170         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23171
23172 2007-01-27  Bruno Haible  <bruno@clisp.org>
23173
23174         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
23175         check_PROGRAMS into noinst_PROGRAMS.
23176         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
23177         check_PROGRAMS in this case.
23178         (func_import): Set for_test to false.
23179         (func_create_testdir): Set for_test to true.
23180
23181 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
23182             Bruno Haible  <bruno@clisp.org>
23183
23184         * modules/strcasestr (Files): Remove lib/strcasestr.h.
23185         (Depends-on): Add string.
23186         (Includes): Use <string.h> instead of strcasestr.h.
23187         * modules/string (Makefile.am): Also substitute the value of
23188         REPLACE_STRCASESTR.
23189         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
23190         assume strcasestr is declared in <string.h> not <strings.h>. Also
23191         set REPLACE_STRCASESTR.
23192         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
23193         REPLACE_STRCASESTR.
23194         * lib/strcasestr.h: Remove file.
23195         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
23196         * lib/string_.h (strcasestr): New declaration.
23197
23198 2007-01-27  Bruno Haible  <bruno@clisp.org>
23199
23200         * lib/string_.h: Use 'extern'.
23201
23202 2007-01-27  Jim Meyering  <jim@meyering.net>
23203
23204         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
23205         of set-but-not-used local, "q".
23206
23207         * lib/mempcpy.c: Include <config.h> before <string.h>.
23208         This fixes a compilation error on HP-UX, due to the system's
23209         "restrict"-using mempcpy prototype.
23210
23211 2007-01-26  Bruno Haible  <bruno@clisp.org>
23212
23213         Small optimization.
23214         * lib/javacomp.c: Include c-strstr.h.
23215          (is_envjavac_gcj): Use c_strstr instead of strstr.
23216         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
23217
23218 2007-01-26  Bruno Haible  <bruno@clisp.org>
23219
23220         * MODULES.html.sh (Unicode string functions): Add the new modules.
23221
23222         * modules/uniconv/u32-strconv-to-locale: New file.
23223         * lib/uniconv/u32-strconv-to-locale.c: New file.
23224
23225         * modules/uniconv/u16-strconv-to-locale: New file.
23226         * lib/uniconv/u16-strconv-to-locale.c: New file.
23227
23228         * modules/uniconv/u8-strconv-to-locale: New file.
23229         * lib/uniconv/u8-strconv-to-locale.c: New file.
23230
23231         * modules/uniconv/u32-strconv-from-locale: New file.
23232         * lib/uniconv/u32-strconv-from-locale.c: New file.
23233
23234         * modules/uniconv/u16-strconv-from-locale: New file.
23235         * lib/uniconv/u16-strconv-from-locale.c: New file.
23236
23237         * modules/uniconv/u8-strconv-from-locale: New file.
23238         * lib/uniconv/u8-strconv-from-locale.c: New file.
23239
23240         * modules/uniconv/u32-strconv-to-enc: New file.
23241         * lib/uniconv/u32-strconv-to-enc.c: New file.
23242         * modules/uniconv/u32-strconv-to-enc-tests: New file.
23243         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
23244
23245         * modules/uniconv/u16-strconv-to-enc: New file.
23246         * lib/uniconv/u16-strconv-to-enc.c: New file.
23247         * lib/uniconv/u-strconv-to-enc.h: New file.
23248         * modules/uniconv/u16-strconv-to-enc-tests: New file.
23249         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
23250
23251         * modules/uniconv/u8-strconv-to-enc: New file.
23252         * lib/uniconv/u8-strconv-to-enc.c: New file.
23253         * modules/uniconv/u8-strconv-to-enc-tests: New file.
23254         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
23255
23256         * modules/uniconv/u32-strconv-from-enc: New file.
23257         * lib/uniconv/u32-strconv-from-enc.c: New file.
23258         * modules/uniconv/u32-strconv-from-enc-tests: New file.
23259         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
23260
23261         * modules/uniconv/u16-strconv-from-enc: New file.
23262         * lib/uniconv/u16-strconv-from-enc.c: New file.
23263         * modules/uniconv/u16-strconv-from-enc-tests: New file.
23264         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
23265
23266         * modules/uniconv/u8-strconv-from-enc: New file.
23267         * lib/uniconv/u8-strconv-from-enc.c: New file.
23268         * lib/uniconv/u-strconv-from-enc.h: New file.
23269         * modules/uniconv/u8-strconv-from-enc-tests: New file.
23270         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
23271
23272         * modules/uniconv/u32-conv-from-enc: New file.
23273         * lib/uniconv/u32-conv-from-enc.c: New file.
23274         * modules/uniconv/u32-conv-from-enc-tests: New file.
23275         * tests/uniconv/test-u32-conv-from-enc.c: New file.
23276
23277         * modules/uniconv/u16-conv-from-enc: New file.
23278         * lib/uniconv/u16-conv-from-enc.c: New file.
23279         * lib/uniconv/u-conv-from-enc.h: New file.
23280         * modules/uniconv/u16-conv-from-enc-tests: New file.
23281         * tests/uniconv/test-u16-conv-from-enc.c: New file.
23282
23283         * modules/uniconv/u8-conv-from-enc: New file.
23284         * lib/uniconv/u8-conv-from-enc.c: New file.
23285         * modules/uniconv/u8-conv-from-enc-tests: New file.
23286         * tests/uniconv/test-u8-conv-from-enc.c: New file.
23287
23288         * modules/uniconv/base: New file.
23289         * lib/uniconv.h: New file.
23290
23291 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
23292
23293         * doc/gnulib-tool.texi (Initial import): Update to match current
23294         behavior with strdup module.
23295         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
23296         * lib/memmem.h: Remove; all uses removed.  This is now done
23297         by <string.h>.
23298         * lib/mempcpy.h: Likewise.
23299         * lib/memrchr.h: Likewise.
23300         * lib/stpcpy.h: Likewise.
23301         * lib/stpncpy.h: Likewise.
23302         * lib/strcase.h: Likewise.
23303         * lib/strchrnul.h: Likewise.
23304         * lib/strdup.h: Likewise.
23305         * lib/strndup.h: Likewise.
23306         * lib/strnlen.h: Likewise.
23307         * lib/strpbrk.h: Likewise.
23308         * lib/strsep.h: Likewise.
23309         * lib/strstr.h: Likewise.
23310         * lib/strtok_r.h: Likewise.
23311         * lib/string_.h: New file.
23312         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
23313         Rely on <string.h> instead.
23314         * lib/canon-host.c: Likewise.
23315         * lib/chdir-long.c: Likewise.
23316         * lib/concatpath.c: Likewise.
23317         * lib/exclude.c: Likewise.
23318         * lib/fchdir.c: Likewise.
23319         * lib/getaddrinfo.c: Likewise.
23320         * lib/getcwd.c: Likewise.
23321         * lib/getsubopt.c: Likewise.
23322         * lib/glob.c: Likewise.
23323         * lib/hard-locale.c: Likewise.
23324         * lib/iconvme.c: Likewise.
23325         * lib/javacomp.c: Likewise.
23326         * lib/mempcpy.c: Likewise.
23327         * lib/memrchr.c: Likewise.
23328         * lib/regex_internal.h: Likewise.
23329         * lib/stpncpy.c: Likewise.
23330         * lib/strcasecmp.c: Likewise.
23331         * lib/strchrnul.c: Likewise.
23332         * lib/strdup.c: Likewise.
23333         * lib/striconv.c: Likewise.
23334         * lib/striconveh.c: Likewise.
23335         * lib/striconveha.c: Likewise.
23336         * lib/strncasecmp.c: Likewise.
23337         * lib/strndup.c: Likewise.
23338         * lib/strnlen.c: Likewise.
23339         * lib/strsep.c: Likewise.
23340         * lib/strstr.c: Likewise.
23341         * lib/strtok_r.c: Likewise.
23342         * lib/userspec.c: Likewise.
23343         * lib/w32spawn.h: Likewise.
23344         * lib/xstrndup.c: Likewise.
23345         * lib/mountlist.c (strstr): Remove decl.
23346         * m4/string_h.m4: New file.
23347         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
23348         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
23349         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
23350         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
23351         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
23352         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
23353         Set REPLACE_STRCASECMP if necessary.
23354         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
23355         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
23356         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
23357         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
23358         HAVE_DECL_STRDUP if necessary.
23359         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
23360         since gl_FUNC_STRNDUP does that now.
23361         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
23362         Check for decl here...
23363         (gl_PREREQ_STRNLEN): ... not here.
23364         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
23365         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
23366         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
23367         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
23368         necessary.
23369         * modules/string: New file.
23370         * modules/memmem (Files): Remove special-purpose include file.
23371         (Depends-on): Add string.
23372         (Include): Include <string.h>, not the removed file.
23373         * modules/mempcpy: Likewise.
23374         * modules/memrchr: Likewise.
23375         * modules/stpcpy: Likewise.
23376         * modules/stpncpy: Likewise.
23377         * modules/strcase: Likewise.
23378         * modules/strchrnul: Likewise.
23379         * modules/strdup: Likewise.
23380         * modules/strndup: Likewise.
23381         * modules/strnlen: Likewise.
23382         * modules/strpbrk: Likewise.
23383         * modules/strsep: Likewise.
23384         * modules/strstr: Likewise.
23385         * modules/strtok_r: Likewise.
23386         * tests/test-dirname.c: Don't include "strdup.h", since
23387         <string.h> now suffices.
23388         * tests/test-memmem.c: Don't include "memmem.h", since
23389         <string.h> now suffices.
23390
23391 2007-01-25  Bruno Haible  <bruno@clisp.org>
23392
23393         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
23394         *resultp is 0.
23395
23396         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
23397         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
23398         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
23399         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
23400
23401         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
23402         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
23403         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
23404         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
23405         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
23406         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
23407
23408 2007-01-24  Bruno Haible  <bruno@clisp.org>
23409
23410         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
23411         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
23412         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
23413         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
23414         gl_FUNC_FTS_CORE.
23415         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
23416         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
23417         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
23418         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
23419         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
23420         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
23421         gl_FUNC_FCHOWNAT.
23422         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
23423         gl_FUNC_STRFTIME.
23424         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
23425         Reported by Ralf Wildenhues.
23426
23427 2007-01-24  Bruno Haible  <bruno@clisp.org>
23428
23429         Drop AC_REQUIRE calls that are redundant with the module dependencies.
23430         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
23431         gl_GETADDRINFO.
23432         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
23433         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
23434         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
23435
23436 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
23437
23438         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
23439         Don't use 'exit'; just return from 'main'.
23440         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
23441
23442         * lib/fnmatch_.h: Readjust white space and comments to match
23443         glibc, to avoid spurious diffs.
23444
23445 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23446
23447         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
23448         2004-12-01 change by Jakub Jelinek, since this code won't compile
23449         if !LIBC.  Problem reported by Bob Proulx.
23450
23451 2007-01-23  Bruno Haible  <bruno@clisp.org>
23452
23453         * lib/striconveh.c: Include c-strcaseeq.h.
23454         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
23455         * modules/striconveh (Depends-on): Add c-strcaseeq.
23456
23457 2007-01-23  Bruno Haible  <bruno@clisp.org>
23458
23459         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
23460
23461         * modules/c-strcaseeq: New file.
23462         * lib/c-strcaseeq.h: New file.
23463
23464         * modules/streq: New file.
23465         * lib/streq.h: New file.
23466
23467 2007-01-23  Bruno Haible  <bruno@clisp.org>
23468
23469         * modules/striconveha-tests: New file.
23470         * tests/test-striconveha.c: New file.
23471
23472         * lib/striconveha.h: Include <stdbool.h>.
23473         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
23474         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
23475         (mem_iconveha_notranslit): Renamed from mem_iconveha.
23476         (mem_iconveha): New function.
23477         (str_iconveha_notranslit): Renamed from str_iconveha.
23478         (str_iconveha): New function.
23479         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
23480         c-strcase.
23481
23482 2007-01-23  Bruno Haible  <bruno@clisp.org>
23483
23484         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
23485         encodings without forgiving before trying any encoding with handler.
23486         (str_iconveha): Try all encodings without forgiving before trying any
23487         encoding with handler.
23488
23489 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
23490
23491         Import the following changes from libc.
23492
23493         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
23494
23495         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
23496
23497         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
23498
23499         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
23500         normal_bracket label.
23501
23502         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
23503
23504         [BZ #361]
23505         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
23506         to normal_bracket after fetching the next character.
23507
23508 2007-01-22  Bruno Haible  <bruno@clisp.org>
23509
23510         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
23511         argument.
23512         * lib/striconveh.c (iconv_carefully_1): New function.
23513         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
23514         argument.
23515         (str_cd_iconveh): Update.
23516         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
23517         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
23518         * tests/test-striconveh.c (MAGIC): New macro.
23519         (new_offsets): New function.
23520         (main): Test call with and without offsets.
23521
23522 2007-01-22  Bruno Haible  <bruno@clisp.org>
23523
23524         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
23525         * modules/sys_select (Makefile.am): Likewise.
23526         * modules/sys_socket (Makefile.am): Likewise.
23527         * modules/sys_time (Makefile.am): Likewise.
23528
23529 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
23530
23531         * modules/gettimeofday (License): Change from GPL to LGPL, since
23532         gettimeofday is a library function.
23533
23534 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23535
23536         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
23537
23538 2007-01-21  Bruno Haible  <bruno@clisp.org>
23539
23540         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
23541
23542 2007-01-21  Bruno Haible  <bruno@clisp.org>
23543
23544         * modules/striconveha: New file.
23545         * lib/striconveha.h: New file.
23546         * lib/striconveha.c: New file.
23547         * MODULES.html.sh (Internationalization functions): Add striconveha.
23548         * lib/striconv.c (str_iconv): Optimize the case of an empty input
23549         string.
23550         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
23551
23552 2007-01-21  Bruno Haible  <bruno@clisp.org>
23553
23554         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
23555         * lib/striconveh.c (str_iconveh): Likewise.
23556
23557 2007-01-21  Bruno Haible  <bruno@clisp.org>
23558
23559         * lib/striconveh.h (mem_iconveh): New declaration.
23560         * lib/striconveh.c (mem_iconveh): New function.
23561         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
23562
23563 2007-01-21  Bruno Haible  <bruno@clisp.org>
23564
23565         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
23566
23567         * lib/striconveh.h (mem_cd_iconveh): Change specification.
23568         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
23569         original result buffer.
23570         (str_cd_iconveh): Update.
23571         * tests/test-striconveh.c (main): Update.
23572
23573         * lib/striconv.h (mem_cd_iconv): Change specification.
23574         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
23575         result buffer.
23576         (str_cd_iconv): Update.
23577         * tests/test-striconv.c (main): Update.
23578
23579 2007-01-21  Bruno Haible  <bruno@clisp.org>
23580
23581         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
23582
23583 2007-01-20  Jim Meyering  <jim@meyering.net>
23584
23585         * lib/userspec.c (parse_with_separator): If a user or group string
23586         starts with "+", skip the corresponding name-to-ID look-up, since
23587         such a look-up must fail: user and group names may not include "+".
23588
23589 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
23590
23591         * lib/poll.c: Include sys/time.h and time.h unconditionally,
23592         since we now assume the sys_time module.
23593         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
23594         check for sys/time.h; no longer needed.
23595         * modules/poll (Depends-on): Depend on sys_time.
23596
23597 2007-01-18  Bruno Haible  <bruno@clisp.org>
23598
23599         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
23600         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
23601
23602         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
23603         gettimeofday.
23604
23605         * tests/test-gettimeofday.c: Include <time.h>.
23606         (dummy): Remove variable.
23607
23608         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
23609         gl_HEADER_SYS_TIME_H.
23610         (gl_HEADER_SYS_TIME_H): New macro.
23611
23612         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
23613         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23614         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
23615         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
23616         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23617         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
23618         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
23619         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23620         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
23621         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
23622         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23623
23624         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
23625         last change; it caused a compilation error when cross-compiling to
23626         Cygwin.
23627
23628 2007-01-18  Jim Meyering  <jim@meyering.net>
23629
23630         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
23631         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
23632         than the race-prone "test -d sys || mkdir sys".
23633         (configure.ac): Use AC_PROG_MKDIR_P.
23634         * modules/sys_select: Likewise.
23635         * modules/sys_socket: Likewise.
23636         * modules/sys_time: Likewise.
23637
23638 2007-01-18  Eric Blake  <ebb9@byu.net>
23639
23640         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
23641         replace gettimeofday.
23642         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
23643         name, to avoid infinite recursion.
23644
23645 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
23646
23647         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
23648         module sys_time.
23649         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
23650         assume timespec.h defines struct timeval.
23651         * lib/settime.c: Likewise.
23652         * lib/utimens.c: Likewise.
23653         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
23654         since we now assume the gettimeofday module.
23655         * lib/tempname.c (__gen_tempname): Likewise.
23656         * lib/gettimeofday.h: Remove.
23657         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
23658         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
23659         Include <time.h>, for 'time()'.
23660         (localtime_buffer_addr): Also use this workaround if
23661         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
23662         to simplify the uses.  All uses changed.
23663         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
23664         that #undef is inside {}, and 'const' follows type name consistently.
23665         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
23666         (gettimeofday): Do not use the maximum possible value for
23667         tv->tv_usec, since that might break usages other than ls.c.
23668         Instead, we'll leave ls.c alone.  This undoes today's patch
23669         by Bruno.  Add a compile-time warning for 1s-clock resolution;
23670         we've never observed the problem but might as well keep the
23671         canary.
23672         * lib/nanosleep.c: Include timespec.h first, for interface check.
23673         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
23674         now assume the sys_time module.
23675         * lib/tempname.c: Likewise.
23676         * lib/timespec.h: Likewise.
23677         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
23678         needed.
23679         * lib/strftime.c: Likewise.
23680         * lib/timespec.h: Likewise.
23681         * lib/posixtm.c: Include posixtm.h first, for interface check.
23682         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
23683         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
23684         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
23685         * lib/sys_time_.h: New file.
23686         * lib/timespec.h (struct timespec): Use long int, not long.
23687         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
23688         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
23689         Remove obsolescent call to AC_HEADER_TIME.
23690         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
23691         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
23692         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
23693         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
23694         Likewise.
23695         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
23696         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
23697         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
23698         into the sys_time module.  Check for gettimeofday just once.
23699         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
23700         for gettimeofday signature to just check the signature.  Merely
23701         compile it, since linking doesn't test signature.  Improve test for
23702         whether gettimeofday.o is actually needed.
23703         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
23704         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
23705         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
23706         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23707         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
23708         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
23709         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
23710         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
23711         than worrying about sys/time.h.
23712         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
23713         Don't bother worrying about TIME_WITH_SYS_TIME.
23714         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
23715         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
23716         * m4/sys_time_h.m4: New file.
23717         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
23718         Don't include sys/time.h.  Return from main rather than exiting.
23719         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
23720         all uses changed.
23721         * modules/gethrxtime (Depends-on): Add sys_time.
23722         * modules/gettime (Depends-on): Likewise.
23723         * modules/gettimeofday (Depends-on): Likewise.
23724         * modules/nanosleep (Depends-on): Likewise.
23725         * modules/settime (Depends-on): Likewise.
23726         * modules/tempname (Depends-on): Likewise.
23727         * modules/utimens (Depends-on): Likewise.
23728         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
23729         (Include:) Change back to <sys/time.h>.
23730         (Maintainer:) Add self.
23731         * modules/sys_time: New file.
23732         * modules/tempname (Depends-on): Add gettimeofday.
23733         * tests/test-gettimeofday.c: Include <sys/time.h>
23734         rather than gettimeofday.h.
23735
23736 2007-01-17  Bruno Haible  <bruno@clisp.org>
23737
23738         * gnulib-tool (func_get_license): Revert last patch. Instead, let
23739         the license default to GPL.
23740         (func_create_testdir): Don't complain if a module is LGPL and its
23741         tests module depends on GPLed modules.
23742
23743 2007-01-17  Bruno Haible  <bruno@clisp.org>
23744
23745         * lib/gettimeofday.c (gettimeofday): Add code for the case
23746         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
23747         maximum possible value for tv->tv_usec, rather than the minimum one.
23748
23749 2005-10-08  Martin Lambers  <marlam@marlam.de>
23750 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
23751 2007-01-16  Bruno Haible  <bruno@clisp.org>
23752
23753         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
23754         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
23755         gl_FUNC_GETTIMEOFDAY.
23756         (Include): Add gettimeofday.h.
23757         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
23758         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
23759         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
23760         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
23761         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
23762         * lib/gettimeofday.h: New file.
23763         * lib/gettimeofday.c: Include <sys/timeb.h>.
23764         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
23765         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
23766         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
23767         fall back on time().
23768
23769         * tests/test-gettimeofday.c: New file.
23770         * modules/gettimeofday-tests: New file.
23771
23772 2007-01-16  Eric Blake  <ebb9@byu.net>
23773
23774         * modules/fnmatch (Depends-on): Depend on wchar.
23775         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
23776         * m4/fnmatch.m4: Likewise.
23777         * modules/mbchar (Makefile.am): Assume <wchar.h>.
23778         * m4/mbchar.m4: Likewise.
23779         * modules/mbswidth (Depends-on): Depend on wchar.
23780         * lib/mbswidth.c: Assume <wchar.h>.
23781         * m4/mbswidth.m4: Likewise.
23782         * modules/quotearg (Depends-on): Depend on wchar.
23783         * lib/quotearg.c: Assume <wchar.h>.
23784         * m4/quotearg.m4: Likewise.
23785         * modules/regex (Depends-on): Depend on wchar.
23786         * lib/regex_internal.h: Assume <wchar.h>.
23787         * m4/regex.m4: Likewise.
23788         * modules/stdint (Depends-on): Depend on wchar.
23789         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
23790         * m4/stdint.m4: Likewise.
23791         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
23792         * modules/strftime (Depends-on): Depend on wchar.
23793         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
23794         * modules/strtol (Depends-on): Depend on wchar.
23795         * lib/strtol.c: Assume <wchar.h>.
23796         * modules/wcwidth (Depends-on): Depend on wchar.
23797         * lib/wcwidth.h: Assume <wchar.h>.
23798         * m4/wcwidth.m4: Likewise.
23799
23800 2007-01-16  Bruno Haible  <bruno@clisp.org>
23801
23802         * modules/csharpexec-script: New, created from...
23803         * modules/csharpexec: ... this.
23804
23805 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
23806
23807         * modules/javaexec-script: New, created from...
23808         * modules/javaexec: ... this.
23809
23810 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23811
23812         * modules/poll (Dependencies): Add sys_select.
23813
23814 2007-01-15  Jim Meyering  <jim@meyering.net>
23815
23816         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
23817         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
23818         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
23819         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
23820
23821 2007-01-15  Bruno Haible  <bruno@clisp.org>
23822
23823         * modules/striconveh: New file.
23824         * lib/striconveh.h: New file.
23825         * lib/striconveh.c: New file.
23826         * MODULES.html.sh (Internationalization functions): Add striconveh.
23827
23828         * modules/striconveh-tests: New file.
23829         * tests/test-striconveh.c: New file.
23830
23831 2007-01-15  Bruno Haible  <bruno@clisp.org>
23832
23833         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
23834         not from GNU libiconv or GNU libc.
23835
23836 2007-01-15  Bruno Haible  <bruno@clisp.org>
23837
23838         * doc/gnulib-intro.texi (Copyright): Explain the different license
23839         terms for module descriptions, autoconf macros, tests, documentation.
23840
23841 2007-01-14  Bruno Haible  <bruno@clisp.org>
23842
23843         * modules/striconv-tests: New file.
23844         * tests/test-striconv.c: New file.
23845
23846 2007-01-14  Bruno Haible  <bruno@clisp.org>
23847
23848         * modules/iconv-tests: New file.
23849         * tests/test-iconv.c: New file.
23850
23851 2007-01-14  Bruno Haible  <bruno@clisp.org>
23852
23853         * gnulib-tool (func_get_license): For test modules, use the license of
23854         the main module.
23855
23856 2007-01-14  Bruno Haible  <bruno@clisp.org>
23857
23858         * modules/iconv (Include): Clarify that <iconv.h> can only be included
23859         if iconv is found to exist.
23860
23861 2007-01-14  Bruno Haible  <bruno@clisp.org>
23862
23863         * modules/c-ctype-tests: New file.
23864         * tests/test-c-ctype.c: New file.
23865
23866 2007-01-14  Bruno Haible  <bruno@clisp.org>
23867
23868         * modules/binary-io-tests: New file.
23869         * tests/test-binary-io.sh: New file.
23870         * tests/test-binary-io.c: New file.
23871
23872 2007-01-14  Bruno Haible  <bruno@clisp.org>
23873
23874         * modules/array-oset-tests: New file.
23875         * tests/test-array_oset.c: New file.
23876
23877 2007-01-14  Bruno Haible  <bruno@clisp.org>
23878
23879         * modules/array-list-tests: New file.
23880         * tests/test-array_list.c: New file.
23881
23882 2007-01-14  Bruno Haible  <bruno@clisp.org>
23883
23884         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
23885         and make.
23886         Reported by Simon Josefsson in
23887         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
23888
23889 2007-01-14  Bruno Haible  <bruno@clisp.org>
23890
23891         * modules/allocsa-tests: New file.
23892         * tests/test-allocsa.c: New file.
23893
23894 2007-01-14  Bruno Haible  <bruno@clisp.org>
23895
23896         * modules/fchdir (Depends-on): Add absolute-header.
23897         * modules/unistd (Depends-on): Likewise.
23898
23899 2006-12-30  Bruno Haible  <bruno@clisp.org>
23900
23901         * modules/fchdir: New file.
23902         * modules/unistd (Files): Add lib/unistd_.h.
23903         (Makefile.am): Generate unistd.h from unistd_.h.
23904         * lib/fchdir.c: New file.
23905         * lib/dirent_.h: New file.
23906         * lib/unistd_.h: New file.
23907         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
23908         * m4/fchdir.m4: New file.
23909         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
23910         (gl_HEADER_UNISTD): Invoke it.
23911         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
23912         function.
23913         * lib/backupfile.c (opendir, closedir): Undefine.
23914         * lib/chown.c (open, close): Undefine.
23915         * lib/clean-temp.c (open, close): Undefine.
23916         * lib/copy-file.c (open, close): Undefine.
23917         * lib/execute.c (open, close): Undefine.
23918         * lib/fsusage.c (open, close): Undefine.
23919         * lib/gc-gnulib.c (open, close): Undefine.
23920         * lib/getcwd.c (opendir, closedir): Undefine.
23921         * lib/glob.c (opendir, closedir): Undefine.
23922         * lib/javacomp.c (open, close): Undefine.
23923         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
23924         * lib/openat-proc.c (open, close): Undefine.
23925         * lib/pagealign_alloc.c (open, close): Undefine.
23926         * lib/pipe.c (open, close): Undefine.
23927         * lib/progreloc.c (open, close): Undefine.
23928         * lib/savedir.c (opendir, closedir): Undefine.
23929         * lib/utime.c (open, close): Undefine.
23930         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
23931
23932 2007-01-10  Bruno Haible  <bruno@clisp.org>
23933
23934         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
23935
23936 2007-01-12  Eric Blake  <ebb9@byu.net>
23937
23938         Provide a robust <wchar.h>.  Further simplifications are now
23939         possible in other modules, but not included here.
23940         * modules/wchar: New module.
23941         * m4/wchar.m4: New file.
23942         * lib/wchar_.h: Likewise.
23943         * modules/mbchar (Depends-on): Depend on wchar, as the first use
23944         of the new module.
23945         * MODULES.html.sh (Extended multibyte and wide character utilities):
23946         New section.
23947
23948 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
23949
23950         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
23951         to a reasonable default for memory allocation.
23952         (xreadlink): Don't allocate a huge buffer, to work around a buggy
23953         file system that reports garbage st_size values for symlinks.
23954         Problem reported by Liyang Hu.
23955
23956 2007-01-11  Simon Josefsson  <simon@josefsson.org>
23957
23958         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
23959         Emacs .#* auto-save files).
23960
23961 2007-01-11  Bruno Haible  <bruno@clisp.org>
23962
23963         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
23964         directory.
23965
23966 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
23967
23968         Use @...@ consistently in lib/wctype_.h.
23969         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
23970         on it being set to 1 or 0.
23971         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
23972         go back to AC_SUBSTing it.
23973         * modules/wctype (Makefile.am): Undo previous change.
23974
23975 2007-01-10  Eric Blake  <ebb9@byu.net>
23976
23977         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
23978         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
23979         * modules/wctype (Makefile.am): Likewise.
23980         Reported by Chris McGuire.
23981
23982 2007-01-10  Jim Meyering  <jim@meyering.net>
23983
23984         fts.c: a small readability/maintainability improvement
23985         * lib/fts.c (fts_read): Make this code slightly more readable and
23986         maintainable by hoisting the "sp->fts_cur = p" assignments to
23987         immediately follow the statements that set P.  Derived from
23988         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
23989
23990 2007-01-10  Eric Blake  <ebb9@byu.net>
23991
23992         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
23993         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
23994         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
23995         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
23996         Reported by Chris McGuire.
23997
23998 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23999
24000         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
24001         in sed script.
24002
24003 2007-01-09  Bruno Haible  <bruno@clisp.org>
24004
24005         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
24006         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
24007         variables.
24008         (func_module): Use them.
24009
24010 2007-01-09  Bruno Haible  <bruno@clisp.org>
24011
24012         * modules/unistr/base: New file.
24013         * lib/unistr.h: New file.
24014
24015         * modules/unistr/u8-to-u16: New file.
24016         * lib/unistr/u8-to-u16.c: New file.
24017
24018         * modules/unistr/u8-to-u32: New file.
24019         * lib/unistr/u8-to-u32.c: New file.
24020
24021         * modules/unistr/u16-to-u8: New file.
24022         * lib/unistr/u16-to-u8.c: New file.
24023
24024         * modules/unistr/u16-to-u32: New file.
24025         * lib/unistr/u16-to-u32.c: New file.
24026
24027         * modules/unistr/u32-to-u8: New file.
24028         * lib/unistr/u32-to-u8.c: New file.
24029
24030         * modules/unistr/u32-to-u16: New file.
24031         * lib/unistr/u32-to-u16.c: New file.
24032
24033         * modules/unistr/u8-check: New file.
24034         * modules/unistr/u16-check: New file.
24035         * modules/unistr/u32-check: New file.
24036         * lib/unistr/u8-check.c: New file.
24037         * lib/unistr/u16-check.c: New file.
24038         * lib/unistr/u32-check.c: New file.
24039
24040         * modules/unistr/u8-chr: New file.
24041         * modules/unistr/u16-chr: New file.
24042         * modules/unistr/u32-chr: New file.
24043         * lib/unistr/u8-chr.c: New file.
24044         * lib/unistr/u16-chr.c: New file.
24045         * lib/unistr/u32-chr.c: New file.
24046
24047         * modules/unistr/u8-cmp: New file.
24048         * modules/unistr/u16-cmp: New file.
24049         * modules/unistr/u32-cmp: New file.
24050         * lib/unistr/u8-cmp.c: New file.
24051         * lib/unistr/u16-cmp.c: New file.
24052         * lib/unistr/u32-cmp.c: New file.
24053
24054         * modules/unistr/u8-cpy: New file.
24055         * modules/unistr/u16-cpy: New file.
24056         * modules/unistr/u32-cpy: New file.
24057         * lib/unistr/u8-cpy.c: New file.
24058         * lib/unistr/u16-cpy.c: New file.
24059         * lib/unistr/u32-cpy.c: New file.
24060         * lib/unistr/u-cpy.h: New file.
24061
24062         * modules/unistr/u8-cpy-alloc: New file.
24063         * modules/unistr/u16-cpy-alloc: New file.
24064         * modules/unistr/u32-cpy-alloc: New file.
24065         * lib/unistr/u8-cpy-alloc.c: New file.
24066         * lib/unistr/u16-cpy-alloc.c: New file.
24067         * lib/unistr/u32-cpy-alloc.c: New file.
24068         * lib/unistr/u-cpy-alloc.h: New file.
24069
24070         * modules/unistr/u8-endswith: New file.
24071         * modules/unistr/u16-endswith: New file.
24072         * modules/unistr/u32-endswith: New file.
24073         * lib/unistr/u8-endswith.c: New file.
24074         * lib/unistr/u16-endswith.c: New file.
24075         * lib/unistr/u32-endswith.c: New file.
24076         * lib/unistr/u-endswith.h: New file.
24077
24078         * modules/unistr/u8-mblen: New file.
24079         * modules/unistr/u16-mblen: New file.
24080         * modules/unistr/u32-mblen: New file.
24081         * lib/unistr/u8-mblen.c: New file.
24082         * lib/unistr/u16-mblen.c: New file.
24083         * lib/unistr/u32-mblen.c: New file.
24084
24085         * modules/unistr/u8-mbtouc: New file.
24086         * modules/unistr/u16-mbtouc: New file.
24087         * modules/unistr/u32-mbtouc: New file.
24088         * lib/unistr/u8-mbtouc.c: New file.
24089         * lib/unistr/u16-mbtouc.c: New file.
24090         * lib/unistr/u32-mbtouc.c: New file.
24091
24092         * modules/unistr/u8-mbtouc-safe: New file.
24093         * modules/unistr/u16-mbtouc-safe: New file.
24094         * modules/unistr/u32-mbtouc-safe: New file.
24095         * lib/unistr/u8-mbtouc-safe.c: New file.
24096         * lib/unistr/u16-mbtouc-safe.c: New file.
24097         * lib/unistr/u32-mbtouc-safe.c: New file.
24098
24099         * modules/unistr/u8-move: New file.
24100         * modules/unistr/u16-move: New file.
24101         * modules/unistr/u32-move: New file.
24102         * lib/unistr/u8-move.c: New file.
24103         * lib/unistr/u16-move.c: New file.
24104         * lib/unistr/u32-move.c: New file.
24105         * lib/unistr/u-move.h: New file.
24106
24107         * modules/unistr/u8-next: New file.
24108         * modules/unistr/u16-next: New file.
24109         * modules/unistr/u32-next: New file.
24110         * lib/unistr/u8-next.c: New file.
24111         * lib/unistr/u16-next.c: New file.
24112         * lib/unistr/u32-next.c: New file.
24113
24114         * modules/unistr/u8-prev: New file.
24115         * modules/unistr/u16-prev: New file.
24116         * modules/unistr/u32-prev: New file.
24117         * lib/unistr/u8-prev.c: New file.
24118         * lib/unistr/u16-prev.c: New file.
24119         * lib/unistr/u32-prev.c: New file.
24120
24121         * modules/unistr/u8-set: New file.
24122         * modules/unistr/u16-set: New file.
24123         * modules/unistr/u32-set: New file.
24124         * lib/unistr/u8-set.c: New file.
24125         * lib/unistr/u16-set.c: New file.
24126         * lib/unistr/u32-set.c: New file.
24127         * lib/unistr/u-set.h: New file.
24128
24129         * modules/unistr/u8-startswith: New file.
24130         * modules/unistr/u16-startswith: New file.
24131         * modules/unistr/u32-startswith: New file.
24132         * lib/unistr/u8-startswith.c: New file.
24133         * lib/unistr/u16-startswith.c: New file.
24134         * lib/unistr/u32-startswith.c: New file.
24135         * lib/unistr/u-startswith.h: New file.
24136
24137         * modules/unistr/u8-stpcpy: New file.
24138         * modules/unistr/u16-stpcpy: New file.
24139         * modules/unistr/u32-stpcpy: New file.
24140         * lib/unistr/u8-stpcpy.c: New file.
24141         * lib/unistr/u16-stpcpy.c: New file.
24142         * lib/unistr/u32-stpcpy.c: New file.
24143         * lib/unistr/u-stpcpy.h: New file.
24144
24145         * modules/unistr/u8-stpncpy: New file.
24146         * modules/unistr/u16-stpncpy: New file.
24147         * modules/unistr/u32-stpncpy: New file.
24148         * lib/unistr/u8-stpncpy.c: New file.
24149         * lib/unistr/u16-stpncpy.c: New file.
24150         * lib/unistr/u32-stpncpy.c: New file.
24151         * lib/unistr/u-stpncpy.h: New file.
24152
24153         * modules/unistr/u8-strcat: New file.
24154         * modules/unistr/u16-strcat: New file.
24155         * modules/unistr/u32-strcat: New file.
24156         * lib/unistr/u8-strcat.c: New file.
24157         * lib/unistr/u16-strcat.c: New file.
24158         * lib/unistr/u32-strcat.c: New file.
24159         * lib/unistr/u-strcat.h: New file.
24160
24161         * modules/unistr/u8-strchr: New file.
24162         * modules/unistr/u16-strchr: New file.
24163         * modules/unistr/u32-strchr: New file.
24164         * lib/unistr/u8-strchr.c: New file.
24165         * lib/unistr/u16-strchr.c: New file.
24166         * lib/unistr/u32-strchr.c: New file.
24167
24168         * modules/unistr/u8-strcmp: New file.
24169         * modules/unistr/u16-strcmp: New file.
24170         * modules/unistr/u32-strcmp: New file.
24171         * lib/unistr/u8-strcmp.c: New file.
24172         * lib/unistr/u16-strcmp.c: New file.
24173         * lib/unistr/u32-strcmp.c: New file.
24174
24175         * modules/unistr/u8-strcpy: New file.
24176         * modules/unistr/u16-strcpy: New file.
24177         * modules/unistr/u32-strcpy: New file.
24178         * lib/unistr/u8-strcpy.c: New file.
24179         * lib/unistr/u16-strcpy.c: New file.
24180         * lib/unistr/u32-strcpy.c: New file.
24181         * lib/unistr/u-strcpy.h: New file.
24182
24183         * modules/unistr/u8-strcspn: New file.
24184         * modules/unistr/u16-strcspn: New file.
24185         * modules/unistr/u32-strcspn: New file.
24186         * lib/unistr/u8-strcspn.c: New file.
24187         * lib/unistr/u16-strcspn.c: New file.
24188         * lib/unistr/u32-strcspn.c: New file.
24189         * lib/unistr/u-strcspn.h: New file.
24190
24191         * modules/unistr/u8-strdup: New file.
24192         * modules/unistr/u16-strdup: New file.
24193         * modules/unistr/u32-strdup: New file.
24194         * lib/unistr/u8-strdup.c: New file.
24195         * lib/unistr/u16-strdup.c: New file.
24196         * lib/unistr/u32-strdup.c: New file.
24197         * lib/unistr/u-strdup.h: New file.
24198
24199         * modules/unistr/u8-strlen: New file.
24200         * modules/unistr/u16-strlen: New file.
24201         * modules/unistr/u32-strlen: New file.
24202         * lib/unistr/u8-strlen.c: New file.
24203         * lib/unistr/u16-strlen.c: New file.
24204         * lib/unistr/u32-strlen.c: New file.
24205         * lib/unistr/u-strlen.h: New file.
24206
24207         * modules/unistr/u8-strmblen: New file.
24208         * modules/unistr/u16-strmblen: New file.
24209         * modules/unistr/u32-strmblen: New file.
24210         * lib/unistr/u8-strmblen.c: New file.
24211         * lib/unistr/u16-strmblen.c: New file.
24212         * lib/unistr/u32-strmblen.c: New file.
24213
24214         * modules/unistr/u8-strmbtouc: New file.
24215         * modules/unistr/u16-strmbtouc: New file.
24216         * modules/unistr/u32-strmbtouc: New file.
24217         * lib/unistr/u8-strmbtouc.c: New file.
24218         * lib/unistr/u16-strmbtouc.c: New file.
24219         * lib/unistr/u32-strmbtouc.c: New file.
24220
24221         * modules/unistr/u8-strncat: New file.
24222         * modules/unistr/u16-strncat: New file.
24223         * modules/unistr/u32-strncat: New file.
24224         * lib/unistr/u8-strncat.c: New file.
24225         * lib/unistr/u16-strncat.c: New file.
24226         * lib/unistr/u32-strncat.c: New file.
24227         * lib/unistr/u-strncat.h: New file.
24228
24229         * modules/unistr/u8-strncmp: New file.
24230         * modules/unistr/u16-strncmp: New file.
24231         * modules/unistr/u32-strncmp: New file.
24232         * lib/unistr/u8-strncmp.c: New file.
24233         * lib/unistr/u16-strncmp.c: New file.
24234         * lib/unistr/u32-strncmp.c: New file.
24235
24236         * modules/unistr/u8-strncpy: New file.
24237         * modules/unistr/u16-strncpy: New file.
24238         * modules/unistr/u32-strncpy: New file.
24239         * lib/unistr/u8-strncpy.c: New file.
24240         * lib/unistr/u16-strncpy.c: New file.
24241         * lib/unistr/u32-strncpy.c: New file.
24242         * lib/unistr/u-strncpy.h: New file.
24243
24244         * modules/unistr/u8-strnlen: New file.
24245         * modules/unistr/u16-strnlen: New file.
24246         * modules/unistr/u32-strnlen: New file.
24247         * lib/unistr/u8-strnlen.c: New file.
24248         * lib/unistr/u16-strnlen.c: New file.
24249         * lib/unistr/u32-strnlen.c: New file.
24250         * lib/unistr/u-strnlen.h: New file.
24251
24252         * modules/unistr/u8-strpbrk: New file.
24253         * modules/unistr/u16-strpbrk: New file.
24254         * modules/unistr/u32-strpbrk: New file.
24255         * lib/unistr/u8-strpbrk.c: New file.
24256         * lib/unistr/u16-strpbrk.c: New file.
24257         * lib/unistr/u32-strpbrk.c: New file.
24258         * lib/unistr/u-strpbrk.h: New file.
24259
24260         * modules/unistr/u8-strrchr: New file.
24261         * modules/unistr/u16-strrchr: New file.
24262         * modules/unistr/u32-strrchr: New file.
24263         * lib/unistr/u8-strrchr.c: New file.
24264         * lib/unistr/u16-strrchr.c: New file.
24265         * lib/unistr/u32-strrchr.c: New file.
24266
24267         * modules/unistr/u8-strspn: New file.
24268         * modules/unistr/u16-strspn: New file.
24269         * modules/unistr/u32-strspn: New file.
24270         * lib/unistr/u8-strspn.c: New file.
24271         * lib/unistr/u16-strspn.c: New file.
24272         * lib/unistr/u32-strspn.c: New file.
24273         * lib/unistr/u-strspn.h: New file.
24274
24275         * modules/unistr/u8-strstr: New file.
24276         * modules/unistr/u16-strstr: New file.
24277         * modules/unistr/u32-strstr: New file.
24278         * lib/unistr/u8-strstr.c: New file.
24279         * lib/unistr/u16-strstr.c: New file.
24280         * lib/unistr/u32-strstr.c: New file.
24281         * lib/unistr/u-strstr.h: New file.
24282
24283         * modules/unistr/u8-strtok: New file.
24284         * modules/unistr/u16-strtok: New file.
24285         * modules/unistr/u32-strtok: New file.
24286         * lib/unistr/u8-strtok.c: New file.
24287         * lib/unistr/u16-strtok.c: New file.
24288         * lib/unistr/u32-strtok.c: New file.
24289         * lib/unistr/u-strtok.h: New file.
24290
24291         * modules/unistr/u8-uctomb: New file.
24292         * modules/unistr/u16-uctomb: New file.
24293         * modules/unistr/u32-uctomb: New file.
24294         * lib/unistr/u8-uctomb.c: New file.
24295         * lib/unistr/u16-uctomb.c: New file.
24296         * lib/unistr/u32-uctomb.c: New file.
24297
24298         * MODULES.html.sh (Unicode string functions): Add the new modules.
24299
24300 2007-01-08  Bruno Haible  <bruno@clisp.org>
24301
24302         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
24303         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
24304         subdirectories.
24305
24306 2007-01-08  Karl Berry  <karl@gnu.org>
24307
24308         * doc/error.texi: mention that main() fns must set program_name
24309         when progname is used.
24310
24311 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
24312
24313         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
24314         WCTYPE_H is empty, for the benefit of builds from non-distclean
24315         directories.  Problem reported by Eric Blake in
24316         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
24317
24318 2007-01-08  Bruno Haible  <bruno@clisp.org>
24319
24320         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
24321         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
24322         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
24323         PROVIDE_CANONICALIZE_FILENAME_MODE.
24324         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
24325
24326 2007-01-08  Bruno Haible  <bruno@clisp.org>
24327
24328         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
24329         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
24330         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
24331         * lib/fts.c: Likewise.
24332         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
24333
24334 2006-12-25  Bruno Haible  <bruno@clisp.org>
24335
24336         * modules/utf8-ucs4-safe: New file.
24337         * lib/utf8-ucs4-safe.h: New file.
24338         * lib/unistr/utf8-ucs4-safe.c: New file.
24339
24340         * modules/utf16-ucs4-safe: New file.
24341         * lib/utf16-ucs4-safe.h: New file.
24342         * lib/unistr/utf16-ucs4-safe.c: New file.
24343
24344         * MODULES.html.sh (Unicode string functions): Add the new modules.
24345
24346 2007-01-08  Bruno Haible  <bruno@clisp.org>
24347
24348         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
24349         (Depends-on): Add unitypes.
24350         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24351         (u8_mbtouc_aux): Move out to separate file.
24352         (u8_mbtouc): Use ucs4_t, uint8_t types.
24353         * lib/unistr/utf8-ucs4.c: New file.
24354
24355         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
24356         (Depends-on): Add unitypes.
24357         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
24358         (u16_mbtouc_aux): Move out to separate file.
24359         (u16_mbtouc): Use ucs4_t, uint16_t types.
24360         * lib/unistr/utf16-ucs4.c: New file.
24361
24362         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
24363         (Depends-on): Add unitypes.
24364         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
24365         (u8_uctomb_aux): Move out to separate file.
24366         (u8_uctomb): Use ucs4_t, uint8_t types.
24367         * lib/unistr/ucs4-utf8.c: New file.
24368
24369         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
24370         (Depends-on): Add unitypes.
24371         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
24372         (u16_uctomb_aux): Move out to separate file.
24373         (u16_uctomb): Use ucs4_t, uint16_t types.
24374         * lib/unistr/ucs4-utf16.c: New file.
24375
24376 2006-12-25  Bruno Haible  <bruno@clisp.org>
24377
24378         * modules/unitypes: New file.
24379         * lib/unitypes.h: New file.
24380         * MODULES.html.sh (func_all_modules): New section "Unicode string
24381         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
24382         this section. Add unitypes.
24383
24384 2007-01-08  Bruno Haible  <bruno@clisp.org>
24385
24386         Avoid variable names that conflict with those from libtool.
24387         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
24388         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
24389         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
24390         library_names_spec to acl_library_names_spec, hardcode_* to
24391         acl_hardcode_*.
24392         Reported by Ralf Wildenhues.
24393
24394 2007-01-08  Bruno Haible  <bruno@clisp.org>
24395
24396         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
24397         definition.
24398         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
24399         definition.
24400         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
24401         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
24402         definition.
24403         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
24404         definition.
24405         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
24406         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
24407         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
24408         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
24409         definition.
24410         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
24411         definition.
24412         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
24413         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
24414         GC_USE_<algorithm>.
24415         * lib/gc-libgcrypt.c: Likewise.
24416         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
24417         * modules/gc-arctwo (configure.ac): Likewise.
24418         * modules/gc-des (configure.ac): Likewise.
24419         * modules/gc-hmac-md5 (configure.ac): Likewise.
24420         * modules/gc-hmac-sha1 (configure.ac): Likewise.
24421         * modules/gc-md2 (configure.ac): Likewise.
24422         * modules/gc-md4 (configure.ac): Likewise.
24423         * modules/gc-md5 (configure.ac): Likewise.
24424         * modules/gc-random (configure.ac): Likewise.
24425         * modules/gc-rijndael (configure.ac): Likewise.
24426         * modules/gc-sha1 (configure.ac): Likewise.
24427
24428 2007-01-08  Bruno Haible  <bruno@clisp.org>
24429
24430         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
24431         macro definition.
24432         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
24433         definition.
24434         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
24435         definition.
24436         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
24437         * modules/fcntl-safer (configure.ac): Likewise.
24438         * modules/fopen-safer (configure.ac): Likewise.
24439         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
24440         GNULIB_FWRITEERROR macro definition.
24441
24442 2007-01-08  Bruno Haible  <bruno@clisp.org>
24443
24444         * m4/gnulib-common.m4: New file.
24445         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
24446         (func_get_filelist): Add m4/gnulib-common.m4.
24447
24448 2007-01-08  Bruno Haible  <bruno@clisp.org>
24449
24450         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
24451         command.
24452
24453 2007-01-08  Jim Meyering  <jim@meyering.net>
24454
24455         Use a more robust test for a "can't happen" condition.
24456         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
24457         narrowed the st_size value.  Presuming the "can't happen" condition
24458         is true, that narrowing could conceivably convert an invalid st_size
24459         value into a valid one.  Instead, use a change based on Matthew
24460         Woehlke's original patch.
24461
24462         Slight readability improvement: use an assert-like macro
24463         in place of literal "abort ()" uses.
24464         * lib/fts.c (fts_assert): Define.
24465         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
24466         Use this macro instead of a bare 'abort'.
24467
24468 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
24469
24470         Don't worry about using IRIX 5.3's wctype.h broken definitions;
24471         simply work around them.
24472         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
24473         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
24474         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
24475         declaring.
24476         Don't bother to define as macros, since the standard doesn't require it.
24477         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
24478         longer worry about IRIX 5.3.
24479         (HAVE_WCTYPE_CTMP_BUG): Remove.
24480
24481 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
24482
24483         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
24484         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
24485         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
24486         Problems reported by Georg Schwarz for IRIX 5.3.
24487
24488         * gnulib-tool (autoconf_minversion): Take the maximum version number
24489         found, not the minimum.  Problem reported by James Youngman.
24490
24491 2007-01-03  Karl Berry  <karl@gnu.org>
24492
24493         * doc/error.texi: new file, explaining interaction with progname.
24494         * doc/gnulib.texi: include it.  Update copyright.
24495
24496 2007-01-03  Simon Josefsson  <simon@josefsson.org>
24497
24498         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
24499         AC_CANONICAL_HOST, to improve autobuild outputs.
24500
24501 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
24502             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
24503
24504         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
24505         sockets, server sockets, and other file descriptors.  Count errors
24506         to compute the return value.  Reorder the code a bit to be easier
24507         to follow.  Don't set event bits that were not requested (except
24508         POLLERR and POLLHUP).
24509
24510 2007-01-01  Bruno Haible  <bruno@clisp.org>
24511
24512         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
24513
24514 2007-01-03  Jim Meyering  <jim@meyering.net>
24515
24516         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
24517
24518 2007-01-02  Bruno Haible  <bruno@clisp.org>
24519
24520         * modules/settime (Include): Require timespec.h.
24521         * modules/nanosleep (Include): Likewise.
24522
24523 2007-01-01  Bruno Haible  <bruno@clisp.org>
24524
24525         * gnulib-tool (func_emit_copyright_notice): Bump year.
24526         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
24527
24528 2007-01-01  Bruno Haible  <bruno@clisp.org>
24529
24530         Improve support for OpenBSD.
24531         * build-aux/config.rpath (libname_spec): Export.
24532         (library_names_spec): New variable. Export.
24533         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
24534         library_names_spec from the config.rpath output. Locate shared library
24535         through the name pattern in library_names_spec.
24536
24537 2007-01-01  Eric Blake  <ebb9@byu.net>
24538
24539         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
24540
24541 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
24542
24543         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
24544         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
24545         assume the C locale, and avoid an "eval" that could cause trouble.
24546         Problem with SORT reported by Bob Proulx.
24547
24548         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
24549         Define.  Trivial patch from Henning Nielsen Lund, originally
24550         sent to bug-grep@gnu.org today.
24551
24552 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
24553
24554         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
24555         struct stat.  Problem reported by Henning Nielsen Lund.
24556         * lib/acl.c: Include acl.h first, to check interface.  Don't
24557         bother to include sys/types.h and sys/stat.h again.
24558
24559 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
24560
24561         Import the following change from libc; problem reported by
24562         Sven Verdoolaege.
24563
24564         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
24565
24566         [BZ #1373]
24567         * lib/argp.h: Remove __NTH for __argp_usage inline function.
24568
24569 2006-12-28  Jim Meyering  <jim@meyering.net>
24570
24571         * build-aux/announce-gen: Do not assume that the package
24572         builds any of tar.gz, tar.bz2, and .xdelta files.
24573         Suggestion from Simon Josefsson.
24574
24575 2006-12-28  Simon Josefsson  <simon@josefsson.org>
24576
24577         * modules/announce-gen: New file.
24578
24579 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
24580
24581         * lib/mbchar.h: Just include <wctype.h>; the wctype module
24582         handles its gotchas now.
24583         * lib/mbswidth.c: Likewise.
24584         * lib/wcwidth.h: Likewise.
24585         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
24586         and iswcntrl; the wctype module does this stuff now.
24587         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
24588         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
24589         * modules/mbchar (Depends-on): Add wctype.
24590         * modules/mbswidth (Depends-on): Likewise.
24591         * modules/wcwidth (Depends-on): Likewise.
24592
24593 2006-12-27  Eric Blake  <ebb9@byu.net>
24594
24595         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
24596         module uses more than what <wctype.h> is required to provide.
24597
24598 2006-12-26  Eric Blake  <ebb9@byu.net>
24599
24600         * gnulib-tool (sed_extract_prog): Avoid space-tab.
24601
24602 2006-12-26  Eric Blake  <ebb9@byu.net>
24603
24604         * modules/absolute-header: New module.
24605         * modules/fcntl (Depends-on): Depend on it.
24606         * modules/inttypes (Depends-on): Likewise.
24607         * modules/stdint (Depends-on): Likewise.
24608         * modules/sys_stat (Depends-on): Likewise.
24609         * modules/wctype (Depends-on): Likewise.
24610         * MODULES.html.sh (Support for building libraries and
24611         executables): Document it.
24612
24613 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
24614
24615         * gnulib-tool (SED): Remove, undoing previous change.
24616         The problem was that it broke coreutils on Solaris, because
24617         "sed --posix" leaked into a makefile.
24618         (sed): New alias, if 'alias' and GNU sed.
24619
24620 2006-12-24  Jim Meyering  <jim@meyering.net>
24621
24622         Work around an fchownat bug in glibc-2.4:
24623         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
24624         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
24625         in spite of the -P option.
24626         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
24627         New macros.
24628         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
24629         * modules/openat (Files): Add lib/fchownat.c.
24630         * lib/openat.c (fchownat): Don't define here.  Move to...
24631         * lib/fchownat.c: ...this new file.
24632
24633 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
24634
24635         Fix bug reported by Bruno Haible in
24636         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
24637         where quotearg.c didn't compile on Mac OS X 10.2 because it
24638         lacks <wchar.h> and wint_t.
24639         * lib/wctype_.h (__wctype_wint_t): New type.
24640         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
24641         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
24642         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
24643         Arg is now of type __wctype_wint_t, not wint_t.
24644         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
24645         substitute HAVE_WINT_T.
24646         * modules/wctype (Files): Add m4/wint_t.m4.
24647         (wctype.h): Substitute HAVE_WINT_T.
24648
24649 2006-12-23  Bruno Haible  <bruno@clisp.org>
24650
24651         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
24652
24653 2006-12-23  Bruno Haible  <bruno@clisp.org>
24654
24655         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
24656         S_ISLNK.
24657         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
24658         mingw.
24659
24660 2006-12-22  Bruno Haible  <bruno@clisp.org>
24661
24662         * lib/copy-file.c: Include acl.h.
24663         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
24664         Close the file descriptors only after being done with copy_acl.
24665         * modules/copy-file (Depends-on): Add acl.
24666
24667 2006-12-22  Bruno Haible  <bruno@clisp.org>
24668
24669         * gnulib-tool (SED): New variable.
24670         Use $SED instead of sed everywhere.
24671
24672 2006-12-22  Bruno Haible  <bruno@clisp.org>
24673
24674         * modules/no-c++: New file.
24675         * m4/no-c++.m4: New file.
24676         * MODULES.html.sh (Support for building libraries and executables):
24677         Add no-c++.
24678
24679 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
24680
24681         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
24682         Include <limits.h>, and use its INT_MAX to rewrite the
24683         j loop so that it does not overflow 'int'.  Problem reported by
24684         Ralf Wildenhues in
24685         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
24686         Play it safe by shifting left by 1 rather than multiplying by 2,
24687         as GCC is less likely to optimize this away when the value
24688         is signed (when it assumes overflow leads to undefined behavior).
24689         Also, don't assume time_t uses two's complement.
24690
24691 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
24692
24693         * MODULES.html.sh: New module wctype.
24694         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
24695         * lib/fnmatch.c: Don't bother to include <wchar.h> before
24696         <wctype.h>, since the new wctype module should fix this.
24697         * lib/quotearg.c: Include <wctype.h> unconditionally, since
24698         the wctype module should arrange for it.
24699         * lib/regex_internal.h: Likewise.
24700         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
24701         since the wctype module should handle this now.
24702         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
24703         * modules/fnmatch (Depends-on): Add wctype.
24704         * modules/quotearg (Depends-on): Likewise.
24705         * modules/regex (Depends-on): Likewise.
24706
24707 2006-12-19  Bruno Haible  <bruno@clisp.org>
24708
24709         * lib/strdup.h [C++]: Wrap definitions in extern "C".
24710         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
24711
24712 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24713
24714         * modules/savewd (Depends-on): Fix dependency on fcntl.
24715
24716 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
24717
24718         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
24719         conforms to C99, rather than relying on the user's environment
24720         setting of STDINT_H.
24721
24722 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
24723         and Eric Blake  <ebb9@byu.net>
24724
24725         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
24726         This is more consistent with the other defines here.
24727         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
24728         Port to z/OS.  Problem reported by Paul Gilmartin.
24729         Change local vars to use gl_ prefix rather than ac_.
24730         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
24731         with other defines.
24732         * modules/double-slash-root: New module.
24733         * modules/dirname (Files): Remove m4/double-slash-root.m4.
24734         (Depends-on): Add double-slash-root.
24735         * MODULES.html.sh (File system functions): Mention new module.
24736
24737 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
24738
24739         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
24740         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
24741         This is for the benefit of gzip, which doesn't do i18n.
24742
24743 2006-12-12  Jim Meyering  <jim@meyering.net>
24744
24745         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
24746         Reported by Andreas Schwab <schwab@suse.de>.
24747
24748 2006-12-12  Bruno Haible  <bruno@clisp.org>
24749
24750         Merge these changes.
24751         2006-09-05  Bruno Haible  <bruno@clisp.org>
24752         * lib/iconvme.c (iconv_string): No need to save and restore errno when
24753         iconv_alloc succeeded.
24754         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
24755         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
24756         test for " && dest " at the end - dest is always != NULL there. Call
24757         iconv with 4xNULL arguments initially, to reset the state. Call iconv
24758         with 2xNULL arguments, also to flush the state storage. Handle the
24759         IRIX iconv behaviour. Realloc the final result, to throw away unused
24760         memory.
24761
24762 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
24763
24764         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
24765         and fchmodat unconditionally, since glibc 2.4 has them.
24766         Problem reported by Arkadiusz Miskiewicz.
24767
24768 2006-12-10  Bruno Haible  <bruno@clisp.org>
24769
24770         * gnulib-tool (func_import): Show the include files only for those
24771         modules that are copied and specified.
24772         Reported by Karl Berry.
24773
24774 2006-12-08  Jim Meyering  <jim@meyering.net>
24775
24776         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
24777         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
24778
24779         * build-aux/announce-gen: Add two new options, both optional:
24780         --bootstrap-tools=TOOL_LIST
24781               a comma-separated list of tools, e.g.,
24782               autoconf,automake,bison,gnulib
24783         --gnulib-snapshot-date=DATE
24784               if gnulib is in the bootstrap tool list,
24785               then report this as the snapshot date.
24786               If not specified, use the current date/time.
24787               If you specify a date here, be sure it's UTC.
24788
24789 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24790
24791         * tests/test-argp-2.sh: Fix test to match actual output.
24792         (func_compare): Fix sed script to be portable.
24793
24794 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
24795
24796         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
24797         workaround for this case.  It is not autoconfigured now; offhand
24798         it's hard to see how to autoconfigure it.
24799
24800 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
24801
24802         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
24803         a directory that is about to be chowned.  Such a directory's
24804         initial file permissions should permit the owner only and this
24805         should not be changed until after the chown, since the group and
24806         other bits would be incorrect if they granted permission before
24807         the chown.
24808
24809         Fix porting problem for iswctype reported by Georg Schwarz in:
24810         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
24811         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
24812         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
24813         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
24814         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
24815
24816 2006-12-03  Jim Meyering  <jim@meyering.net>
24817
24818         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
24819         p->fts_statp may not yet be defined.
24820         (fts_read): Instead, set it in the caller, once p->fts_statp is
24821         sure to be defined, and corresponds to a top-level directory.
24822         This bug made du -x fail.  Here's the coreutils test case:
24823         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
24824         Reported by Mike Frysinger.
24825
24826 2006-12-01  Jim Meyering  <jim@meyering.net>
24827
24828         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
24829         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
24830         Reported by Simon Josefsson.
24831
24832 2006-11-30  Jim Meyering  <jim@meyering.net>
24833
24834         * m4/warning.m4: Use the all-permissive copyright notice
24835         recommended by RMS (rather than LGPL).
24836         * m4/vararrays.m4: Likewise.
24837         * m4/flexmember.m4: Likewise.
24838
24839 2006-11-29  Bruno Haible  <bruno@clisp.org>
24840
24841         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
24842         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
24843         using +=.
24844         Reported by Simon Josefsson <simon@josefsson.org>.
24845
24846 2006-11-28  James Youngman <jay@gnu.org>
24847
24848         * README: Advise users that they might find the bug-gnulib@gnu.org
24849         and autotools-announce@gnu.org mailing lists useful.
24850
24851 2006-11-28  Bruno Haible  <bruno@clisp.org>
24852
24853         * m4/ptrdiff_max.m4: Remove file.
24854
24855 2006-11-21  Bruno Haible  <bruno@clisp.org>
24856
24857         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
24858         _AC_COMPUTE_INT.
24859         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24860         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
24861         _AC_COMPUTE_INT.
24862         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24863         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
24864         _AC_COMPUTE_INT.
24865         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24866
24867 2006-11-28  Jim Meyering  <jim@meyering.net>
24868
24869         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
24870         warning from "gcc -Wshadow" about shadowing the builtin.
24871
24872 2006-11-27  Bruno Haible  <bruno@clisp.org>
24873
24874         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
24875         _AC_COMPUTE_INT.
24876         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
24877
24878 2006-11-27  Bruno Haible  <bruno@clisp.org>
24879             Paul Eggert  <eggert@cs.ucla.edu>
24880
24881         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
24882
24883 2006-11-26  Bruno Haible  <bruno@clisp.org>
24884
24885         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
24886         noinst_LTLIBRARIES.
24887
24888 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
24889             Bruno Haible  <bruno@clisp.org>
24890
24891         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
24892         if compiling with "gcc -ansi".
24893
24894 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
24895
24896         Fix some incompatibilities with gcc -ansi -pedantic.
24897         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
24898         if compiling pedantically with GCC, unless it's C99 or later.
24899         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
24900         it mishandles gcc -ansi -pedantic as well.
24901         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
24902         if gcc -pedantic.
24903         * lib/regexec.c (check_node_accept_bytes): Don't use auto
24904         initializers for struct if -pedantic, unless it's C99 or later.
24905
24906 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
24907
24908         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
24909         Don't close an fd more than once. Identical atimes indicate
24910         success, not failure.
24911
24912 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
24913
24914         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
24915
24916 2006-11-23  Jim Meyering  <jim@meyering.net>
24917
24918         * build-aux/announce-gen: New file.  From coreutils.
24919
24920 2006-11-22  Jim Meyering  <jim@meyering.net>
24921
24922         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
24923         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
24924         (fts_read): Use a temporary to narrow the overused st_size member
24925         before using it in a switch statement.  Reported by Matthew Woehlke.
24926
24927         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
24928         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
24929
24930 2006-11-20  Bruno Haible  <bruno@clisp.org>
24931
24932         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
24933         changequote instead of pairs of brackets.
24934         Reported by Andreas Schwab <schwab@suse.de>.
24935
24936 2006-11-21  Jim Meyering  <jim@meyering.net>
24937
24938         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
24939         so as to remain compatible with older compilers.
24940         Patch from Michael Deutschmann.
24941
24942 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24943
24944         * MODULES.html.sh (File system functions): Add openat.
24945
24946         * lib/openat.h (rpl_fstatat): New macro, if
24947         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
24948         (fstatat): Define to rpl_fstatat under the same conditions,
24949         unless COMPILING_FSTATAT.
24950         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
24951         seems to have the bug.
24952         * lib/fstatat.c: New file.
24953         * modules/openat (Files): Add it.
24954
24955 2006-11-20  Bruno Haible  <bruno@clisp.org>
24956
24957         * Makefile: New file.
24958
24959 2006-11-20  Jim Meyering  <jim@meyering.net>
24960
24961         The beginnings of syntax-related checks for gnulib.
24962         * lib/Makefile: New file.
24963         * lib/t-idcache: New script.  Ensure that the two halves of
24964         idcache.c stay in sync.
24965
24966         * lib/idcache.c: Adjust comments in user- and group- portions to
24967         be more accurate, and to be consistent with one another.
24968
24969 2006-11-20  Jim Meyering  <jim@meyering.net>
24970
24971         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
24972         continue using the flexible array member (thus, this module performs
24973         half as many malloc calls), with the addition that...
24974         (getgroup, getuser): Consistently record a non-match via an empty
24975         "name" string, and map an empty string match to a NULL return value.
24976         * modules/idcache (Depends-on): Re-add flexmember.
24977
24978         * lib/idcache.c (getuser): Remove all uses of the register keyword.
24979         (getuidbyname, getgroup, getgidbyname): Likewise.
24980
24981         Use cleaner syntax: NULL rather than 0.
24982         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
24983
24984 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
24985
24986         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
24987         It mishandled the case where the group was missing.
24988         Problem reported by Greg Schafer.
24989         * modules/idcache: Likewise.
24990
24991 2006-11-18  Jim Meyering  <jim@meyering.net>
24992
24993         * check-module (%exempt_header): Add exception for some
24994         conditionally-included headers.
24995
24996         * modules/i-ring (Depends-on): Add verify.
24997         (License): Change to LGPL.
24998
24999 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
25000
25001         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
25002         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
25003         and inttostr.h.  Use snprintf rather than uinttostr, so that
25004         LGPLed code doesn't depend on GPLed.
25005
25006 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
25007
25008         * modules/inline (License): Change from GPL to LGPL.
25009
25010 2006-11-17  Jim Meyering  <jim@meyering.net>
25011
25012         * modules/d-type (License): Switch to LGPL.
25013
25014 2006-11-15  Bruno Haible  <bruno@clisp.org>
25015
25016         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
25017
25018 2006-11-15  Eric Blake  <ebb9@byu.net>
25019
25020         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
25021         the module dependency.
25022
25023 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
25024             Bruno Haible  <bruno@clisp.org>
25025
25026         * gnulib-tool (func_create_testdir): Add license consistency check.
25027
25028 2006-11-15  Eric Blake  <ebb9@byu.net>
25029
25030         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
25031         random "(cached)" in configure output.
25032
25033 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25034
25035         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
25036         test for conforming inttypes.h is both announced and cached.
25037
25038         * MODULES.html.sh (seen_modules, seen_files): New variables.
25039         (func_module): Rewrite to use a few less gnulib-tool and sed
25040         invocations.  Avoid a couple of quadratic algorithms for ...
25041         (missed_modules, missed_files): ... these, with ...
25042         (func_append, func_tmpdir): ... these new functions, from
25043         gnulib-tool.  Analogously, install traps for cleanup.
25044
25045         * tests/test-gc.c (main): Remove unused variables.
25046         * tests/test-read-file.c: Include stdlib.h, for 'free'.
25047
25048 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
25049
25050         * modules/inttostr (License): Change to LGPL.
25051
25052 2006-11-14  Eric Blake  <ebb9@byu.net>
25053
25054         * modules/tempname (License): Change to LGPL.
25055
25056 2006-11-14  Eric Blake  <ebb9@byu.net>
25057
25058         * doc/functions.texi (Function Portability): *printf functions on
25059         Cygwin now understand all POSIX size specifiers.
25060
25061 2006-11-14  Bruno Haible  <bruno@clisp.org>
25062
25063         * modules/c-ctype (License): Change to LGPL.
25064
25065 2006-11-12  Bruno Haible  <bruno@clisp.org>
25066
25067         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
25068         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
25069         for GNOME libraries, for which the include files are installed in
25070         subdirectories of $prefix/include.
25071
25072 2006-11-12  Bruno Haible  <bruno@clisp.org>
25073
25074         * m4/lib-link.m4: Require at least autoconf-2.54.
25075         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
25076         name to underscores for the --with option.
25077
25078 2006-11-13  Bruno Haible  <bruno@clisp.org>
25079
25080         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
25081         the tests directory.
25082         Reported by Ralf Wildenhues.
25083
25084 2006-11-13  Bruno Haible  <bruno@clisp.org>
25085
25086         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
25087         (func_emit_initmacro_end): Undo the override here.
25088         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
25089         Works around the famous automake error in coreutils.
25090
25091 2006-11-13  Eric Blake  <ebb9@byu.net>
25092
25093         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
25094         element, not its node.
25095
25096 2006-11-12  Bruno Haible  <bruno@clisp.org>
25097
25098         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
25099         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
25100
25101 2006-11-12  Bruno Haible  <bruno@clisp.org>
25102
25103         * gnulib-tool: New option --local-symlink.
25104         (func_usage): Document it.
25105         (lsymbolic): New variable.
25106         (func_import, func_create_testdir): If --symlink was not specified,
25107         test whether --local-symlink was specified and the file comes from
25108         the local_gnulib_dir.
25109
25110 2006-11-12  Bruno Haible  <bruno@clisp.org>
25111
25112         * gnulib-tool (func_ln): New function.
25113         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
25114
25115 2006-11-12  Bruno Haible  <bruno@clisp.org>
25116
25117         Finish support for source files in subdirectories.
25118         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
25119         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
25120         AUTOMAKE_OPTIONS.
25121         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
25122
25123 2006-11-12  Bruno Haible  <bruno@clisp.org>
25124
25125         * gnulib-tool (func_get_automake_snippet): Synthesize also an
25126         EXTRA_lib_SOURCES augmentation.
25127         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
25128
25129 2006-11-12  Jim Meyering  <jim@meyering.net>
25130
25131         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
25132         file descriptors.  This also averts a failure on systems with
25133         native openat support when a traversed directory lacks "x" access.
25134         * lib/fts_.h: Include "i-ring.h"
25135         (struct FTS) [fts_fd_ring]: New member.
25136         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
25137         (FCHDIR): Add parentheses.
25138         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
25139         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
25140         When descending, rather than simply closing the previous
25141         fts_cwd_fd value, push that file descriptor onto the ring.
25142         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
25143         (fts_open): Initialize the new fd_ring member.
25144         (fts_close): Clear the ring.
25145         (fts_safe_changedir): When possible, use our new fd_ring to skip
25146         the diropen and fstat and dev/ino comparison that would normally
25147         accompany a virtual `chdir ("..")'.
25148
25149         * modules/fts (Depends-on): Add i-ring.
25150         * modules/i-ring: New module.
25151         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
25152         * m4/i-ring.m4: New file.
25153
25154 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25155
25156         * gnulib-tool (func_create_testdir): Fix replacement of
25157         `build-aux' in configure.ac.  Run autotools in gltests
25158         subdirectory.
25159         (func_create_testdir, func_create_megatestdir, test): There is
25160         no need for '--force' in most autotool invocations in a new
25161         tree.  Actually fail the whole test if any of the tools, or the
25162         configure or make stages fail.
25163
25164         Sync from Automake.
25165         * build-aux/gnupload: Revert last change.  Add pointer to upload
25166         instructions of the GNU Maintenance Instructions.
25167         Suggestion by Karl Berry.
25168
25169 2006-11-10  Jim Meyering  <jim@meyering.net>
25170
25171         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
25172
25173 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25174
25175         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
25176         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
25177         (bind_textdomain_codeset) [! ENABLE_NLS]:
25178         Evaluate all the arguments.  That way, callers get compatible behavior
25179         if the arguments have side effects.  Also, it avoids some GCC
25180         diagnostics in some cases; Joel E. Denny reported problems when Bison
25181         was configured with --enable-gcc-warnigs.
25182
25183 2006-11-10  Jim Meyering  <jim@meyering.net>
25184
25185         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
25186         relevant options in CFLAGS (like -O, -fno-inline) are taken into
25187         account.
25188
25189 2006-11-10  Jim Meyering  <jim@meyering.net>
25190
25191         * modules/inline: New file/module.
25192         * modules/xalloc (Files): Remove m4/inline.m4.
25193         (Depends-on): Add inline, instead.
25194         * modules/oset: Likewise.
25195         * modules/list: Likewise.
25196
25197 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
25198
25199         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
25200         Problem reported by Matthew Woehlke.
25201
25202 2006-11-09  Bruno Haible  <bruno@clisp.org>
25203
25204         * lib/tempname.c (gen_tempname): Remove variant that invokes
25205         __gen_tempname.
25206         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
25207         __gen_tempname.
25208
25209 2006-11-08  Bruno Haible  <bruno@clisp.org>
25210
25211         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
25212         to 'yes' instead of 'cross-compiling'.
25213
25214 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
25215
25216         * lib/quotearg.h (quotearg_free): New decl.
25217         * lib/quotearg.c (quotearg_free): New function.
25218         (slot0, nslots, slotvec0, slotvec):
25219         Now file-scope so that quotearg_free can get at them.
25220
25221 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25222
25223         Sync from Automake.
25224         * build-aux/gnupload: Add missing 'gnu' to example URL.
25225         Report by Karl Berry.
25226
25227 2006-11-08  Bruno Haible  <bruno@clisp.org>
25228
25229         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
25230         Suggested by Paul Eggert.
25231
25232 2006-11-08  Jim Meyering  <jim@meyering.net>
25233
25234         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
25235         It's already included if !_LIBC.
25236         (fts_safe_changedir): Add a comment.
25237
25238 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25239
25240         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
25241         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
25242         Matthew Woehlke.
25243
25244         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
25245         definitions up, to avoid colliding with change below.
25246         (static_inline) [HAVE_INLINE]: New macro.
25247         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
25248         Provide extern decls when !HAVE_INLINE.  Do not define unless
25249         static_inline is defined, either by us or by xmalloc.c.  Use
25250         static_inline rather than static inline.
25251         (XCALLOC): Optimize sizeof(T) = 1 case.
25252         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
25253
25254 2006-11-07  Bruno Haible  <bruno@clisp.org>
25255
25256         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
25257         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
25258         AC_C_INLINE.
25259         * modules/xalloc (Files): Add m4/inline.m4.
25260
25261 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25262
25263         * README: Fix typo.
25264         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
25265         (Miscellanous Notes): ...from this.
25266
25267 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
25268
25269         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
25270         Mention that offsetof should be used instead of sizeof.
25271         From Bruno Haible.
25272
25273 2006-11-07  Bruno Haible  <bruno@clisp.org>
25274
25275         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
25276
25277 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25278
25279         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25280         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
25281         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25282         (gl_tree_add_before, gl_tree_add_after):
25283         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
25284         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
25285         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
25286         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
25287         (gl_linked_add_after, gl_linked_add_at): Likewise.
25288         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
25289         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
25290         (gl_tree_add_before, gl_tree_add_after): Likewise.
25291         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
25292         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
25293         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
25294
25295 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25296
25297         * lib/gl_oset.h: Use C comment style, not C++ comment style.
25298
25299 2006-11-06  Bruno Haible  <bruno@clisp.org>
25300
25301         * m4/inline.m4: New file.
25302         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
25303         * modules/list (Files): Add m4/inline.m4.
25304         * modules/oset (Files): Likewise.
25305
25306 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
25307
25308         * lib/idcache.c: Include <stddef.h>, for offsetof.
25309         (struct userid.name): Change from char * to a flexible array member.
25310         All uses changed.
25311         * modules/idcache (Depends-on): Add flexmember.
25312
25313         * MODULES.html.sh (Core language properties): New module flexmember.
25314         * modules/flexmember, m4/flexmember.m4: New files.
25315
25316         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
25317         inline functions that are identical with the old xnmalloc_inline,
25318         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
25319         that we can avoid some unnecessary integer multiplications and
25320         divisions in the common case where the element size is known at
25321         compile time.
25322         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
25323         needed.
25324         (xnboundedmalloc): Remove.
25325         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
25326         arguments, for consistency with rest of this header.
25327         (xcharalloc): Rewrite using XNMALLOC.
25328         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
25329         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
25330         versions have been moved to lib/xalloc.h and renamed to be the
25331         non-*_inline versions.
25332         (xmalloc, xrealloc): Implement without reference to the xnmalloc
25333         and xnrealloc functions, since those functions are now inline and
25334         now call us.
25335         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
25336         renaming described above.
25337         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
25338         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
25339         captures the dependency in AC_C_INLINE.
25340
25341         New module canonicalize-lgpl, proposed by Charles Wilson in
25342         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
25343         with a few small changes afterwards.
25344         * MODULES.html.sh (File system functions): New module
25345         canonicalize-lgpl.
25346         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
25347         and canonicalize_file_name.
25348         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
25349         * modules/canonicalize-lgpl: New files.
25350
25351 2006-11-05  Bruno Haible  <bruno@clisp.org>
25352
25353         * gnulib-tool (func_import, func_create_testdir): Create directories
25354         also for files in subdirectories of lib/.
25355
25356 2006-11-05  Bruno Haible  <bruno@clisp.org>
25357
25358         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
25359         ANSI C compliant.
25360
25361 2006-11-03  Bruno Haible  <bruno@clisp.org>
25362
25363         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
25364         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
25365         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
25366         (xnboundedmalloc): New inline function.
25367         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
25368         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
25369         xmalloc.
25370         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
25371         xmalloc.
25372         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
25373         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
25374         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
25375         xmalloc.
25376         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25377         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
25378         xmalloc.
25379         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
25380         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25381         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
25382         xmalloc.
25383         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
25384         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
25385         gl_tree_add_after): Use XMALLOC instead of xmalloc.
25386         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
25387         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
25388         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
25389         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
25390
25391 2006-11-03  Bruno Haible  <bruno@clisp.org>
25392
25393         * lib/c-ctype.h [C++]: Define functions without name mangling.
25394         * lib/fwriteerror.h [C++]: Likewise.
25395         * lib/gcd.h [C++]: Likewise.
25396         * lib/linebreak.h [C++]: Likewise.
25397
25398 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
25399
25400         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
25401         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
25402         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
25403         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
25404         Check for functions and headers just once.
25405         Check for declaration of canonicalize_file_name.
25406         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
25407
25408 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
25409
25410         * gnulib-tool (func_import): Fix typo in actioncmd.
25411
25412 2006-11-02  Bruno Haible  <bruno@clisp.org>
25413
25414         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
25415         newline sequence in the Makefile.am snippet as a space, like "make"
25416         does.
25417         Reported by Roger Persson <perrog@gmail.com>.
25418
25419 2006-11-01  Bruno Haible  <bruno@clisp.org>
25420
25421         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
25422         already declared in <string.h>.
25423         * lib/strcase.h (strncasecmp): Don't declare it if yes.
25424
25425 2006-11-01  Bruno Haible  <bruno@clisp.org>
25426
25427         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
25428         * lib/strcase.h: Include <string.h>.
25429         (strcasecmp): Define to rpl_strcasecmp here.
25430
25431 2006-11-01  Bruno Haible  <bruno@clisp.org>
25432
25433         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
25434
25435 2006-11-01  Eric Blake  <ebb9@byu.net>
25436
25437         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
25438
25439         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
25440
25441 2006-10-29  Bruno Haible  <bruno@clisp.org>
25442
25443         Make it compile in C++ mode.
25444         * lib/full-write.c (full_rw): Add a cast.
25445
25446 2006-11-01  Bruno Haible  <bruno@clisp.org>
25447
25448         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
25449         be POSIX compliant.
25450         Reported by Roger Persson <perrog@gmail.com>.
25451
25452 2006-11-01  Eric Blake  <ebb9@byu.net>
25453
25454         * lib/getopt_.h: Fix comments.
25455
25456 2006-10-31  Eric Blake  <ebb9@byu.net>
25457
25458         * modules/tmpdir (Depends-on): Add sys_stat.
25459         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
25460         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
25461         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
25462         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
25463         tempname.
25464
25465 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
25466
25467         Avoid some C++ diagnostics reported by Bruno Haible.
25468         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
25469         xmalloc.
25470         (quotearg_alloc): Use xcharalloc rather than xmalloc.
25471         (struct slotvec): Move to top level.
25472         (quotearg_n_options): Rewrite to avoid xmalloc.
25473         * lib/xalloc.h (xcharalloc): New function.
25474         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
25475         [defined __cplusplus]: Add function template that provides result
25476         type propagation.  This part of the change is from Bruno Haible.
25477
25478 2006-10-29  Bruno Haible  <bruno@clisp.org>
25479
25480         Make it compile in C++ mode.
25481         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
25482         * lib/strnlen1.c (strnlen1): Cast memchr result.
25483         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
25484         * lib/clean-temp.c (string_equals, string_hash): Add casts.
25485         (create_temp_dir): Rename local variable 'template'.
25486         (compile_csharp_using_sscli): Add cast.
25487         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
25488         * lib/findprog.c (find_in_path): Likewise.
25489         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
25490         * lib/wait-process.c (register_slave_subprocess): Likewise.
25491
25492 2006-10-22  Bruno Haible  <bruno@clisp.org>
25493
25494         * modules/tsearch: New file.
25495         * lib/tsearch.h: New file.
25496         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
25497         * m4/tsearch.m4: New file.
25498         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
25499
25500 2006-10-29  Eric Blake  <ebb9@byu.net>
25501
25502         * lib/arcfour.c: Assume config.h.
25503         * lib/arctwo.c: Likewise.
25504         * lib/base64.c: Likewise.
25505         * lib/check-version.c: Likewise.
25506         * lib/crc.c: Likewise.
25507         * lib/des.c: Likewise.
25508         * lib/gc-gnulib.c: Likewise.
25509         * lib/gc-libgcrypt.c: Likewise.
25510         * lib/gc-pbkdf2-sha1.c: Likewise.
25511         * lib/getaddrinfo.c: Likewise.
25512         * lib/getdelim.c: Likewise.
25513         * lib/getline.c: Likewise.
25514         * lib/hmac-md5.c: Likewise.
25515         * lib/hmac-sha1.c: Likewise.
25516         * lib/iconvme.c: Likewise.
25517         * lib/md2.c: Likewise.
25518         * lib/md4.c: Likewise.
25519         * lib/memxor.c: Likewise.
25520         * lib/read-file.c: Likewise.
25521         * lib/readline.c: Likewise.
25522         * lib/rijndael-alg-fst.c: Likewise.
25523         * lib/rijndael-api-fst.c: Likewise.
25524         * lib/xgetdomainname.c: Likewise.
25525
25526 2006-10-28  Eric Blake  <ebb9@byu.net>
25527
25528         * lib/xstrndup.c: Assume config.h.
25529
25530 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
25531
25532         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
25533         stat-macros.h is now for our own macros, whereas stat_h is for
25534         macros in the <sys/stat.h> name space.
25535         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
25536         (STAT_MACROS_H): Remove.
25537         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
25538         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
25539         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
25540         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
25541         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
25542         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
25543         Move these macros to ...
25544         * lib/stat_.h: here.  Don't include stat-macros.h.
25545         * lib/canonicalize.c: Don't include stat-macros.h.
25546         * lib/chown.c: Likewise.
25547         * lib/euidaccess.c: Likewise.
25548         * lib/file-type.c: Likewise.
25549         * lib/filemode.c: Likewise.
25550         * lib/glob.c: Likewise.
25551         * lib/isapipe.c: Likewise.
25552         * lib/lchown.c: Likewise.
25553         * lib/lstat.c: Likewise.
25554         * lib/mkdir-p.c: Likewise.
25555         * lib/rmdir.c: Likewise.
25556         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
25557         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
25558         unless mkdir isn't declared, to speed up 'configure'.
25559         Always create sys/stat.h, since it's unlikely any real sys/stat.h
25560         would define all the S_* symbols.
25561         * modules/canonicalize (Depends-on):
25562         Depend on sys_stat, not stat-macros.
25563         * modules/chown: Likewise.
25564         * modules/euidaccess: Likewise.
25565         * modules/filemode: Likewise.
25566         * modules/file-type: Likewise.
25567         * modules/glob: Likewise.
25568         * modules/isapipe: Likewise.
25569         * modules/lchown: Likewise.
25570         * modules/lstat: Likewise.
25571         * modules/mkancesdirs: Likewise.
25572         * modules/rmdir: Likewise.
25573         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
25574         * modules/modechange: Likewise.
25575         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
25576         (configure.ac): Remove gl_STAT_MACROS.
25577         * modules/sys_stat (Depends-on): Remove stat-macros.
25578
25579 2006-10-27  Bruno Haible  <bruno@clisp.org>
25580
25581         * m4/signed.m4: Remove file.
25582         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
25583         invocation.
25584         * modules/vasnprintf (Files): Remove m4/signed.m4.
25585
25586 2006-10-27  Bruno Haible  <bruno@clisp.org>
25587
25588         Update to GNU gettext 0.16.
25589         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
25590         m4/inttypes-h.m4, m4/signed.m4.
25591         * m4/gettext.m4: Update to GNU gettext 0.16.
25592         * m4/intl.m4: New file, from GNU gettext.
25593         * m4/intldir.m4: New file, from GNU gettext.
25594         * config/srclist.txt: Update
25595
25596 2006-10-27  Eric Blake  <ebb9@byu.net>
25597
25598         * MODULES.html.sh: Document tempname.
25599         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
25600         dependencies.
25601         (Files): Move lib/tempname.c...
25602         * modules/tempname: ...to this new module.
25603         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
25604         (gl_PREREQ_TEMPNAME): Move...
25605         * m4/tempname.m4: ...to this new file.
25606         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
25607         * modules/sys_stat (Depends-on): Add stat-macros.
25608         * lib/stat_.h (includes): Pick up stat macros.
25609         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
25610         if stat macros are broken.
25611         * lib/tempname.c (includes): No need to include "stat-macros.h".
25612         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
25613         (direxists, __path_search) [!_LIBC]: Don't compile these in
25614         gnulib; the tmpdir module covers that.
25615         * lib/tempname.h: New file.
25616
25617 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
25618
25619         * COPYING: Explain how gnulib-tool converts licence headers.
25620         Almost all wording by Eric Blake.
25621
25622 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
25623
25624         * lib/mbchar.h (is_basic_table): Make read-only.
25625         * lib/mbchar.c (is_basic_table): Likewise.
25626         Reported by John Darrington.
25627
25628 2006-10-25  Bruno Haible  <bruno@clisp.org>
25629
25630         * lib/progname.h (set_program_name): Undefine before defining.
25631
25632 2006-10-25  Bruno Haible  <bruno@clisp.org>
25633
25634         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
25635         false for non-gcc C++ compilers.
25636         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
25637
25638 2006-10-24  Bruno Haible  <bruno@clisp.org>
25639
25640         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
25641         iconv implementations like Irix iconv.
25642
25643 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25644
25645         * modules/vararrays: New file.
25646         * m4/vararrays.m4: New file, taken from diffutils.
25647         * MODULES.html.sh: New module vararrays.
25648
25649 2006-10-24  Karl Berry  <karl@gnu.org>
25650
25651         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
25652         Don't call GNU Unix.
25653
25654 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25655
25656         * users.txt: Add Libtool.
25657
25658         Sync from Libtool:
25659
25660         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25661
25662         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
25663         to gnulib's policy of including config.h unconditionally.
25664
25665 2006-10-24  Bruno Haible  <bruno@clisp.org>
25666
25667         * modules/wcwidth (Files): Add m4/wint_t.m4.
25668         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
25669         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
25670
25671 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
25672
25673         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
25674         to pacify GCC with some -W flags enabled.  Problem reported by
25675         Bruno Haible.
25676
25677 2006-10-24  Jim Meyering  <jim@meyering.net>
25678
25679         * MODULES.html.sh: Remove uinttostr.  It's not a module.
25680         Reported by Karl Berry.
25681
25682 2006-10-23  Bruno Haible  <bruno@clisp.org>
25683
25684         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
25685
25686 2006-10-24  Bruno Haible  <bruno@clisp.org>
25687
25688         * lib/gl_list.h: Use C comment style, not C++ comment style.
25689
25690 2006-10-23  Eric Blake  <ebb9@byu.net>
25691
25692         * lib/getaddrinfo.c (includes): Add missing include.
25693
25694 2006-10-23  Bruno Haible  <bruno@clisp.org>
25695             Paul Eggert  <eggert@cs.ucla.edu>
25696
25697         Ability to rename obstack_free.
25698         * lib/obstack.h (__obstack_free): New macro. Declare instead of
25699         obstack_free.
25700         (obstack_free): Invoke the __obstack_free macro.
25701         * lib/obstack.c (obstack_free): Use __obstack_free macro.
25702
25703 2006-10-23  Bruno Haible  <bruno@clisp.org>
25704             Paul Eggert  <eggert@cs.ucla.edu>
25705
25706         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
25707         __argc, __argv from the declaration. (They are defined as macros on
25708         mingw.)
25709
25710 2006-10-22  Bruno Haible  <bruno@clisp.org>
25711
25712         * doc/gnulib-intro.texi: New file.
25713         * doc/gnulib.texi: Include it.
25714
25715 2006-10-21  Bruno Haible  <bruno@clisp.org>
25716
25717         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
25718         "Introduction", "Miscellanous Notes", "Particular Modules".
25719
25720 2006-10-21  Bruno Haible  <bruno@clisp.org>
25721
25722         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
25723         Change mostlyclean-local rule to avoid sh syntax error from bash
25724         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
25725
25726 2006-10-23  Jim Meyering  <jim@meyering.net>
25727
25728         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
25729         in place of snprintf.
25730
25731         * modules/inttostr (Files): Add lib/uinttostr.c.
25732         * lib/uinttostr.c (inttostr): New file/function.
25733         * lib/inttostr.h (uinttostr): Declare.
25734         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
25735         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
25736         Add uinttostr.
25737         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
25738
25739 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
25740
25741         * lib/canonicalize.c (ELOOP): Define if not already defined.
25742         Problem reported by Bruno Haible in
25743         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
25744
25745 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
25746
25747         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
25748         Problem reported by Perry Smith and Ville Laurikari.
25749
25750         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
25751         uses.
25752
25753 2006-10-19  Bruno Haible  <bruno@clisp.org>
25754
25755         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
25756         for mingw.
25757
25758 2006-10-19  Bruno Haible  <bruno@clisp.org>
25759
25760         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
25761         Needed for mingw.
25762
25763 2006-10-19  Bruno Haible  <bruno@clisp.org>
25764
25765         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
25766
25767 2006-10-19  Bruno Haible  <bruno@clisp.org>
25768
25769         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
25770         it.
25771
25772 2006-10-19  Bruno Haible  <bruno@clisp.org>
25773
25774         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
25775         invocation.
25776
25777 2006-10-19  Bruno Haible  <bruno@clisp.org>
25778
25779         * gnulib-tool (func_create_testdir): Don't include ftruncate and
25780         mountlist by default.
25781
25782 2006-10-16  Bruno Haible  <bruno@clisp.org>
25783
25784         * lib/c-strstr.c: Include c-strstr.h.
25785
25786 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
25787
25788         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
25789         in a slash.
25790
25791 2006-10-18  Bruno Haible  <bruno@clisp.org>
25792
25793         * lib/lock.h [C++]: Wrap definitions in extern "C".
25794
25795 2006-10-18  Bruno Haible  <bruno@clisp.org>
25796
25797         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
25798         gl_LIBOBJS list.
25799
25800 2006-10-18  Bruno Haible  <bruno@clisp.org>
25801
25802         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
25803
25804 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
25805
25806         * lib/xstrtol.h: Include gettext.h.
25807         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
25808         Problem reported by Eric Blake.
25809         * modules/xstrtol (Depends-on): Add gettext-h.
25810
25811 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
25812
25813         * lib/strftime.c (advance): New macro.
25814         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
25815         incomplete type, so you can't add 0 to it.  Problem and patch
25816         reported by Eelco Dolstra for dietlibc.
25817
25818 2006-10-18  Jim Meyering  <jim@meyering.net>
25819
25820         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
25821         type for a local, and rename it: s/up/user_proc/.
25822
25823 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
25824
25825         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
25826         READ_UTMP_USER_PROCESS.
25827         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
25828
25829 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
25830
25831         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
25832         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
25833
25834 2006-10-17  Eric Blake  <ebb9@byu.net>
25835
25836         * lib/sigprocmask.c (sigprocmask): Fix typo.
25837
25838         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
25839
25840         * modules/clean-temp (Makefile.am): Don't add to make output...
25841         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
25842         config.h.
25843
25844 2006-10-17  Bruno Haible  <bruno@clisp.org>
25845
25846         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
25847         differently if DEFAULT_TEXT_DOMAIN is set.
25848
25849 2006-10-16  Bruno Haible  <bruno@clisp.org>
25850
25851         * lib/clean-temp.c: Include fwriteerror.h.
25852
25853 2006-10-16  Bruno Haible  <bruno@clisp.org>
25854
25855         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
25856
25857 2006-10-16  Bruno Haible  <bruno@clisp.org>
25858
25859         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
25860         * lib/sigprocmask.h: Include <sys/types.h>.
25861         (sigset_t): Use the system's definition if present.
25862
25863 2006-10-17  Eric Blake  <ebb9@byu.net>
25864
25865         * lib/xvasprintf.c (includes): Assume config.h.
25866         * lib/xasprintf.c (includes): Likewise.
25867
25868 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
25869
25870         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
25871         at least as wide as intmax_t.
25872
25873 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
25874
25875         (Imported from Automake.)
25876         * build-aux/gnupload: Update to version 1.1 of directive file.
25877
25878 2006-10-16  Eric Blake  <ebb9@byu.net>
25879
25880         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
25881         match Automake 1.10a.
25882
25883 2006-10-14  Bruno Haible  <bruno@clisp.org>
25884
25885         * modules/sigprocmask: New file.
25886         * lib/sigprocmask.h: New file.
25887         * lib/sigprocmask.c: New file.
25888         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
25889         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
25890         request sigprocmask.o.
25891         (gl_PREREQ_SIGPROCMASK): New macro.
25892         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
25893         (Depends-on): Add sigprocmask.
25894         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
25895         gt_SIGNALBLOCKING. Test for 'raise' only once.
25896         * lib/fatal-signal.c: Include sigprocmask.h.
25897         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
25898         unblock_fatal_signals): Define always.
25899         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
25900         sigprocmask.
25901
25902 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
25903
25904         Sync from Automake.
25905         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
25906         which incorrectly sets the mode of an existing destination
25907         directory.  In some cases the unpatched install-sh could do the
25908         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
25909         system.  We hope this is rare in practice, but it's clearly worth
25910         fixing.  Problem reported by Alex Unleashed in
25911         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
25912         Also, don't bother to check for -m bugs unless we're using -m;
25913         suggested by Stepan Kasal.
25914
25915 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25916
25917         Sync from Automake.
25918         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
25919         `-c' flag, so they appear at the same position as in %FASTDEP%
25920         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
25921         which ignores unknown options only after the first non-option.
25922         Bug report against M4 by Nelson H. F. Beebe.
25923
25924 2006-10-13  Jim Meyering  <jim@meyering.net>
25925
25926         Fix a bug in yesterday's change.
25927         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
25928         p->fts_statp->st_dev would be used uninitialized.
25929         Ensures that we always call fts_stat on the very first entry.
25930         Miklos Szeredi reported that find -xdev stopped working.
25931
25932 2006-10-12  Bruno Haible  <bruno@clisp.org>
25933
25934         * gnulib-tool (func_get_automake_snippet): Append an automatically
25935         computed EXTRA_DIST augmentation.
25936         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
25937         * modules/alloca-opt (Makefile.am): Likewise.
25938         * modules/allocsa (Makefile.am): Likewise.
25939         * modules/arcfour (Makefile.am): Likewise.
25940         * modules/arctwo (Makefile.am): Likewise.
25941         * modules/argmatch (Makefile.am): Likewise.
25942         * modules/argz (Makefile.am): Likewise.
25943         * modules/atexit (Makefile.am): Likewise.
25944         * modules/backupfile (Makefile.am): Likewise.
25945         * modules/byteswap (Makefile.am): Likewise.
25946         * modules/c-strtod (Makefile.am): Likewise.
25947         * modules/c-strtold (Makefile.am): Likewise.
25948         * modules/calloc (Makefile.am): Likewise.
25949         * modules/canon-host (Makefile.am): Likewise.
25950         * modules/canonicalize (Makefile.am): Likewise.
25951         * modules/chdir-long (Makefile.am): Likewise.
25952         * modules/chdir-safer (Makefile.am): Likewise.
25953         * modules/check-version (Makefile.am): Likewise.
25954         * modules/chown (Makefile.am): Likewise.
25955         * modules/cloexec (Makefile.am): Likewise.
25956         * modules/close-stream (Makefile.am): Likewise.
25957         * modules/closeout (Makefile.am): Likewise.
25958         * modules/crc (Makefile.am): Likewise.
25959         * modules/csharpexec (Makefile.am): Likewise.
25960         * modules/cycle-check (Makefile.am): Likewise.
25961         * modules/des (Makefile.am): Likewise.
25962         * modules/dev-ino (Makefile.am): Likewise.
25963         * modules/dirfd (Makefile.am): Likewise.
25964         * modules/dirname (Makefile.am): Likewise.
25965         * modules/dup2 (Makefile.am): Likewise.
25966         * modules/eealloc (Makefile.am): Likewise.
25967         * modules/error (Makefile.am): Likewise.
25968         * modules/euidaccess (Makefile.am): Likewise.
25969         * modules/exclude (Makefile.am): Likewise.
25970         * modules/exitfail (Makefile.am): Likewise.
25971         * modules/fcntl-safer (Makefile.am): Likewise.
25972         * modules/fcntl (Makefile.am): Likewise.
25973         * modules/file-type (Makefile.am): Likewise.
25974         * modules/fileblocks (Makefile.am): Likewise.
25975         * modules/filemode (Makefile.am): Likewise.
25976         * modules/filenamecat (Makefile.am): Likewise.
25977         * modules/fnmatch (Makefile.am): Likewise.
25978         * modules/fopen-safer (Makefile.am): Likewise.
25979         * modules/fpending (Makefile.am): Likewise.
25980         * modules/fprintftime (Makefile.am): Likewise.
25981         * modules/free (Makefile.am): Likewise.
25982         * modules/fsusage (Makefile.am): Likewise.
25983         * modules/ftruncate (Makefile.am): Likewise.
25984         * modules/fts (Makefile.am): Likewise.
25985         * modules/gc-arcfour (Makefile.am): Likewise.
25986         * modules/gc-des (Makefile.am): Likewise.
25987         * modules/gc-hmac-md5 (Makefile.am): Likewise.
25988         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
25989         * modules/gc-md4 (Makefile.am): Likewise.
25990         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
25991         * modules/gc-sha1 (Makefile.am): Likewise.
25992         * modules/gc (Makefile.am): Likewise.
25993         * modules/getaddrinfo (Makefile.am): Likewise.
25994         * modules/getcwd (Makefile.am): Likewise.
25995         * modules/getdelim (Makefile.am): Likewise.
25996         * modules/getdomainname (Makefile.am): Likewise.
25997         * modules/getgroups (Makefile.am): Likewise.
25998         * modules/gethostname (Makefile.am): Likewise.
25999         * modules/gethrxtime (Makefile.am): Likewise.
26000         * modules/getline (Makefile.am): Likewise.
26001         * modules/getloadavg (Makefile.am): Likewise.
26002         * modules/getlogin_r (Makefile.am): Likewise.
26003         * modules/getndelim2 (Makefile.am): Likewise.
26004         * modules/getopt (Makefile.am): Likewise.
26005         * modules/getpagesize (Makefile.am): Likewise.
26006         * modules/getpass-gnu (Makefile.am): Likewise.
26007         * modules/getpass (Makefile.am): Likewise.
26008         * modules/getsubopt (Makefile.am): Likewise.
26009         * modules/gettime (Makefile.am): Likewise.
26010         * modules/gettimeofday (Makefile.am): Likewise.
26011         * modules/getugroups (Makefile.am): Likewise.
26012         * modules/getusershell (Makefile.am): Likewise.
26013         * modules/glob (Makefile.am): Likewise.
26014         * modules/group-member (Makefile.am): Likewise.
26015         * modules/hard-locale (Makefile.am): Likewise.
26016         * modules/hash (Makefile.am): Likewise.
26017         * modules/hmac-md5 (Makefile.am): Likewise.
26018         * modules/hmac-sha1 (Makefile.am): Likewise.
26019         * modules/human (Makefile.am): Likewise.
26020         * modules/idcache (Makefile.am): Likewise.
26021         * modules/imaxabs (Makefile.am): Likewise.
26022         * modules/imaxdiv (Makefile.am): Likewise.
26023         * modules/inet_ntop (Makefile.am): Likewise.
26024         * modules/inet_pton (Makefile.am): Likewise.
26025         * modules/intprops (Makefile.am): Likewise.
26026         * modules/inttostr (Makefile.am): Likewise.
26027         * modules/inttypes (Makefile.am): Likewise.
26028         * modules/isapipe (Makefile.am): Likewise.
26029         * modules/javaversion (Makefile.am): Likewise.
26030         * modules/lchmod (Makefile.am): Likewise.
26031         * modules/lchown (Makefile.am): Likewise.
26032         * modules/localcharset (Makefile.am): Likewise.
26033         * modules/long-options (Makefile.am): Likewise.
26034         * modules/lstat (Makefile.am): Likewise.
26035         * modules/malloc (Makefile.am): Likewise.
26036         * modules/mathl (Makefile.am): Likewise.
26037         * modules/mbchar (Makefile.am): Likewise.
26038         * modules/md2 (Makefile.am): Likewise.
26039         * modules/md4 (Makefile.am): Likewise.
26040         * modules/md5 (Makefile.am): Likewise.
26041         * modules/memcasecmp (Makefile.am): Likewise.
26042         * modules/memchr (Makefile.am): Likewise.
26043         * modules/memcmp (Makefile.am): Likewise.
26044         * modules/memcoll (Makefile.am): Likewise.
26045         * modules/memcpy (Makefile.am): Likewise.
26046         * modules/memmem (Makefile.am): Likewise.
26047         * modules/memmove (Makefile.am): Likewise.
26048         * modules/mempcpy (Makefile.am): Likewise.
26049         * modules/memrchr (Makefile.am): Likewise.
26050         * modules/memset (Makefile.am): Likewise.
26051         * modules/memxor (Makefile.am): Likewise.
26052         * modules/mkancesdirs (Makefile.am): Likewise.
26053         * modules/mkdir-p (Makefile.am): Likewise.
26054         * modules/mkdir (Makefile.am): Likewise.
26055         * modules/mkdtemp (Makefile.am): Likewise.
26056         * modules/mkstemp (Makefile.am): Likewise.
26057         * modules/mktime (Makefile.am): Likewise.
26058         * modules/modechange (Makefile.am): Likewise.
26059         * modules/mountlist (Makefile.am): Likewise.
26060         * modules/nanosleep (Makefile.am): Likewise.
26061         * modules/obstack (Makefile.am): Likewise.
26062         * modules/openat (Makefile.am): Likewise.
26063         * modules/pagealign_alloc (Makefile.am): Likewise.
26064         * modules/pathmax (Makefile.am): Likewise.
26065         * modules/physmem (Makefile.am): Likewise.
26066         * modules/poll (Makefile.am): Likewise.
26067         * modules/posixtm (Makefile.am): Likewise.
26068         * modules/posixver (Makefile.am): Likewise.
26069         * modules/putenv (Makefile.am): Likewise.
26070         * modules/quote (Makefile.am): Likewise.
26071         * modules/quotearg (Makefile.am): Likewise.
26072         * modules/raise (Makefile.am): Likewise.
26073         * modules/read-file (Makefile.am): Likewise.
26074         * modules/readline (Makefile.am): Likewise.
26075         * modules/readlink (Makefile.am): Likewise.
26076         * modules/readtokens (Makefile.am): Likewise.
26077         * modules/readutmp (Makefile.am): Likewise.
26078         * modules/realloc (Makefile.am): Likewise.
26079         * modules/regex (Makefile.am): Likewise.
26080         * modules/rename-dest-slash (Makefile.am): Likewise.
26081         * modules/rename (Makefile.am): Likewise.
26082         * modules/rijndael (Makefile.am): Likewise.
26083         * modules/rmdir (Makefile.am): Likewise.
26084         * modules/rpmatch (Makefile.am): Likewise.
26085         * modules/safe-read (Makefile.am): Likewise.
26086         * modules/safe-write (Makefile.am): Likewise.
26087         * modules/same-inode (Makefile.am): Likewise.
26088         * modules/same (Makefile.am): Likewise.
26089         * modules/save-cwd (Makefile.am): Likewise.
26090         * modules/savedir (Makefile.am): Likewise.
26091         * modules/setenv (Makefile.am): Likewise.
26092         * modules/settime (Makefile.am): Likewise.
26093         * modules/sha1 (Makefile.am): Likewise.
26094         * modules/sig2str (Makefile.am): Likewise.
26095         * modules/snprintf (Makefile.am): Likewise.
26096         * modules/stat-macros (Makefile.am): Likewise.
26097         * modules/stat-time (Makefile.am): Likewise.
26098         * modules/stdbool (Makefile.am): Likewise.
26099         * modules/stdint (Makefile.am): Likewise.
26100         * modules/stdlib-safer (Makefile.am): Likewise.
26101         * modules/stpcpy (Makefile.am): Likewise.
26102         * modules/stpncpy (Makefile.am): Likewise.
26103         * modules/strcase (Makefile.am): Likewise.
26104         * modules/strcasestr (Makefile.am): Likewise.
26105         * modules/strchrnul (Makefile.am): Likewise.
26106         * modules/strcspn (Makefile.am): Likewise.
26107         * modules/strdup (Makefile.am): Likewise.
26108         * modules/strerror (Makefile.am): Likewise.
26109         * modules/strftime (Makefile.am): Likewise.
26110         * modules/strndup (Makefile.am): Likewise.
26111         * modules/strnlen (Makefile.am): Likewise.
26112         * modules/strpbrk (Makefile.am): Likewise.
26113         * modules/strsep (Makefile.am): Likewise.
26114         * modules/strstr (Makefile.am): Likewise.
26115         * modules/strtod (Makefile.am): Likewise.
26116         * modules/strtoimax (Makefile.am): Likewise.
26117         * modules/strtok_r (Makefile.am): Likewise.
26118         * modules/strtol (Makefile.am): Likewise.
26119         * modules/strtoll (Makefile.am): Likewise.
26120         * modules/strtoul (Makefile.am): Likewise.
26121         * modules/strtoull (Makefile.am): Likewise.
26122         * modules/strtoumax (Makefile.am): Likewise.
26123         * modules/strverscmp (Makefile.am): Likewise.
26124         * modules/sys_socket (Makefile.am): Likewise.
26125         * modules/sys_stat (Makefile.am): Likewise.
26126         * modules/sysexits (Makefile.am): Likewise.
26127         * modules/time_r (Makefile.am): Likewise.
26128         * modules/timegm (Makefile.am): Likewise.
26129         * modules/timespec (Makefile.am): Likewise.
26130         * modules/tmpfile-safer (Makefile.am): Likewise.
26131         * modules/trim (Makefile.am): Likewise.
26132         * modules/unistd-safer (Makefile.am): Likewise.
26133         * modules/unlinkdir (Makefile.am): Likewise.
26134         * modules/unlocked-io (Makefile.am): Likewise.
26135         * modules/userspec (Makefile.am): Likewise.
26136         * modules/utime (Makefile.am): Likewise.
26137         * modules/utimecmp (Makefile.am): Likewise.
26138         * modules/utimens (Makefile.am): Likewise.
26139         * modules/vasnprintf (Makefile.am): Likewise.
26140         * modules/vasprintf (Makefile.am): Likewise.
26141         * modules/vsnprintf (Makefile.am): Likewise.
26142         * modules/xalloc (Makefile.am): Likewise.
26143         * modules/xgetcwd (Makefile.am): Likewise.
26144         * modules/xnanosleep (Makefile.am): Likewise.
26145         * modules/xreadlink (Makefile.am): Likewise.
26146         * modules/xstrtod (Makefile.am): Likewise.
26147         * modules/xstrtol (Makefile.am): Likewise.
26148         * modules/xstrtold (Makefile.am): Likewise.
26149         * modules/yesno (Makefile.am): Likewise.
26150         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
26151
26152 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26153
26154         * modules/error (Makefile.am): Distribute files through
26155         EXTRA_DIST, not lib_SOURCES.
26156
26157 2006-10-12  Eric Blake  <ebb9@byu.net>
26158
26159         * modules/error (Makefile.am): Distribute files in /lib.
26160         * modules/obstack (Makefile.am): Likewise.
26161
26162 2006-10-12  Bruno Haible  <bruno@clisp.org>
26163
26164         * modules/acl (Makefile.am): Distribute all files in lib/ through
26165         EXTRA_DIST.
26166         * modules/arcfour (Makefile.am): Likewise.
26167         * modules/arctwo (Makefile.am): Likewise.
26168         * modules/argmatch (Makefile.am): Likewise.
26169         * modules/argz (Makefile.am): Likewise.
26170         * modules/atexit (Makefile.am): Likewise.
26171         * modules/backupfile (Makefile.am): Likewise.
26172         * modules/c-strtod (Makefile.am): Likewise.
26173         * modules/c-strtold (Makefile.am): Likewise.
26174         * modules/calloc (Makefile.am): Likewise.
26175         * modules/canon-host (Makefile.am): Likewise.
26176         * modules/canonicalize (Makefile.am): Likewise.
26177         * modules/chdir-long (Makefile.am): Likewise.
26178         * modules/chdir-safer (Makefile.am): Likewise.
26179         * modules/check-version (Makefile.am): Likewise.
26180         * modules/chown (Makefile.am): Likewise.
26181         * modules/cloexec (Makefile.am): Likewise.
26182         * modules/close-stream (Makefile.am): Likewise.
26183         * modules/closeout (Makefile.am): Likewise.
26184         * modules/crc (Makefile.am): Likewise.
26185         * modules/cycle-check (Makefile.am): Likewise.
26186         * modules/des (Makefile.am): Likewise.
26187         * modules/dirfd (Makefile.am): Likewise.
26188         * modules/dirname (Makefile.am): Likewise.
26189         * modules/dup2 (Makefile.am): Likewise.
26190         * modules/euidaccess (Makefile.am): Likewise.
26191         * modules/exclude (Makefile.am): Likewise.
26192         * modules/exitfail (Makefile.am): Likewise.
26193         * modules/fcntl-safer (Makefile.am): Likewise.
26194         * modules/file-type (Makefile.am): Likewise.
26195         * modules/fileblocks (Makefile.am): Likewise.
26196         * modules/filemode (Makefile.am): Likewise.
26197         * modules/filenamecat (Makefile.am): Likewise.
26198         * modules/fnmatch (Makefile.am): Likewise.
26199         * modules/fopen-safer (Makefile.am): Likewise.
26200         * modules/fpending (Makefile.am): Likewise.
26201         * modules/fprintftime (Makefile.am): Likewise.
26202         * modules/free (Makefile.am): Likewise.
26203         * modules/fsusage (Makefile.am): Likewise.
26204         * modules/ftruncate (Makefile.am): Likewise.
26205         * modules/fts (Makefile.am): Likewise.
26206         * modules/gc (Makefile.am): Likewise.
26207         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
26208         * modules/getaddrinfo (Makefile.am): Likewise.
26209         * modules/getcwd (Makefile.am): Likewise.
26210         * modules/getdelim (Makefile.am): Likewise.
26211         * modules/getdomainname (Makefile.am): Likewise.
26212         * modules/getgroups (Makefile.am): Likewise.
26213         * modules/gethostname (Makefile.am): Likewise.
26214         * modules/gethrxtime (Makefile.am): Likewise.
26215         * modules/getline (Makefile.am): Likewise.
26216         * modules/getloadavg (Makefile.am): Likewise.
26217         * modules/getlogin_r (Makefile.am): Likewise.
26218         * modules/getopt (Makefile.am): Likewise.
26219         * modules/getpass (Makefile.am): Likewise.
26220         * modules/getpass-gnu (Makefile.am): Likewise.
26221         * modules/getsubopt (Makefile.am): Likewise.
26222         * modules/gettime (Makefile.am): Likewise.
26223         * modules/gettimeofday (Makefile.am): Likewise.
26224         * modules/getugroups (Makefile.am): Likewise.
26225         * modules/getusershell (Makefile.am): Likewise.
26226         * modules/glob (Makefile.am): Likewise.
26227         * modules/group-member (Makefile.am): Likewise.
26228         * modules/hard-locale (Makefile.am): Likewise.
26229         * modules/hash (Makefile.am): Likewise.
26230         * modules/hmac-md5 (Makefile.am): Likewise.
26231         * modules/hmac-sha1 (Makefile.am): Likewise.
26232         * modules/human (Makefile.am): Likewise.
26233         * modules/idcache (Makefile.am): Likewise.
26234         * modules/imaxabs (Makefile.am): Likewise.
26235         * modules/imaxdiv (Makefile.am): Likewise.
26236         * modules/inet_ntop (Makefile.am): Likewise.
26237         * modules/inet_pton (Makefile.am): Likewise.
26238         * modules/inttostr (Makefile.am): Likewise.
26239         * modules/isapipe (Makefile.am): Likewise.
26240         * modules/lchown (Makefile.am): Likewise.
26241         * modules/long-options (Makefile.am): Likewise.
26242         * modules/lstat (Makefile.am): Likewise.
26243         * modules/malloc (Makefile.am): Likewise.
26244         * modules/mathl (Makefile.am): Likewise.
26245         * modules/mbchar (Makefile.am): Likewise.
26246         * modules/md2 (Makefile.am): Likewise.
26247         * modules/md4 (Makefile.am): Likewise.
26248         * modules/md5 (Makefile.am): Likewise.
26249         * modules/memcasecmp (Makefile.am): Likewise.
26250         * modules/memchr (Makefile.am): Likewise.
26251         * modules/memcmp (Makefile.am): Likewise.
26252         * modules/memcoll (Makefile.am): Likewise.
26253         * modules/memcpy (Makefile.am): Likewise.
26254         * modules/memmem (Makefile.am): Likewise.
26255         * modules/memmove (Makefile.am): Likewise.
26256         * modules/mempcpy (Makefile.am): Likewise.
26257         * modules/memrchr (Makefile.am): Likewise.
26258         * modules/memset (Makefile.am): Likewise.
26259         * modules/memxor (Makefile.am): Likewise.
26260         * modules/mkancesdirs (Makefile.am): Likewise.
26261         * modules/mkdir (Makefile.am): Likewise.
26262         * modules/mkdir-p (Makefile.am): Likewise.
26263         * modules/mkdtemp (Makefile.am): Likewise.
26264         * modules/mkstemp (Makefile.am): Likewise.
26265         * modules/mktime (Makefile.am): Likewise.
26266         * modules/modechange (Makefile.am): Likewise.
26267         * modules/mountlist (Makefile.am): Likewise.
26268         * modules/nanosleep (Makefile.am): Likewise.
26269         * modules/openat (Makefile.am): Likewise.
26270         * modules/pagealign_alloc (Makefile.am): Likewise.
26271         * modules/physmem (Makefile.am): Likewise.
26272         * modules/poll (Makefile.am): Likewise.
26273         * modules/posixtm (Makefile.am): Likewise.
26274         * modules/posixver (Makefile.am): Likewise.
26275         * modules/putenv (Makefile.am): Likewise.
26276         * modules/quote (Makefile.am): Likewise.
26277         * modules/quotearg (Makefile.am): Likewise.
26278         * modules/raise (Makefile.am): Likewise.
26279         * modules/read-file (Makefile.am): Likewise.
26280         * modules/readline (Makefile.am): Likewise.
26281         * modules/readlink (Makefile.am): Likewise.
26282         * modules/readtokens (Makefile.am): Likewise.
26283         * modules/readutmp (Makefile.am): Likewise.
26284         * modules/realloc (Makefile.am): Likewise.
26285         * modules/regex (Makefile.am): Likewise.
26286         * modules/rename (Makefile.am): Likewise.
26287         * modules/rename-dest-slash (Makefile.am): Likewise.
26288         * modules/rijndael (Makefile.am): Likewise.
26289         * modules/rmdir (Makefile.am): Likewise.
26290         * modules/rpmatch (Makefile.am): Likewise.
26291         * modules/safe-read (Makefile.am): Likewise.
26292         * modules/safe-write (Makefile.am): Likewise.
26293         * modules/same (Makefile.am): Likewise.
26294         * modules/save-cwd (Makefile.am): Likewise.
26295         * modules/savedir (Makefile.am): Likewise.
26296         * modules/setenv (Makefile.am): Likewise.
26297         * modules/settime (Makefile.am): Likewise.
26298         * modules/sha1 (Makefile.am): Likewise.
26299         * modules/sig2str (Makefile.am): Likewise.
26300         * modules/snprintf (Makefile.am): Likewise.
26301         * modules/stdlib-safer (Makefile.am): Likewise.
26302         * modules/stpcpy (Makefile.am): Likewise.
26303         * modules/stpncpy (Makefile.am): Likewise.
26304         * modules/strcase (Makefile.am): Likewise.
26305         * modules/strcasestr (Makefile.am): Likewise.
26306         * modules/strchrnul (Makefile.am): Likewise.
26307         * modules/strcspn (Makefile.am): Likewise.
26308         * modules/strdup (Makefile.am): Likewise.
26309         * modules/strerror (Makefile.am): Likewise.
26310         * modules/strftime (Makefile.am): Likewise.
26311         * modules/strndup (Makefile.am): Likewise.
26312         * modules/strnlen (Makefile.am): Likewise.
26313         * modules/strpbrk (Makefile.am): Likewise.
26314         * modules/strsep (Makefile.am): Likewise.
26315         * modules/strstr (Makefile.am): Likewise.
26316         * modules/strtod (Makefile.am): Likewise.
26317         * modules/strtoimax (Makefile.am): Likewise.
26318         * modules/strtok_r (Makefile.am): Likewise.
26319         * modules/strtol (Makefile.am): Likewise.
26320         * modules/strtoll (Makefile.am): Likewise.
26321         * modules/strtoul (Makefile.am): Likewise.
26322         * modules/strtoull (Makefile.am): Likewise.
26323         * modules/strtoumax (Makefile.am): Likewise.
26324         * modules/strverscmp (Makefile.am): Likewise.
26325         * modules/time_r (Makefile.am): Likewise.
26326         * modules/timegm (Makefile.am): Likewise.
26327         * modules/tmpfile-safer (Makefile.am): Likewise.
26328         * modules/unistd-safer (Makefile.am): Likewise.
26329         * modules/unlinkdir (Makefile.am): Likewise.
26330         * modules/userspec (Makefile.am): Likewise.
26331         * modules/utime (Makefile.am): Likewise.
26332         * modules/utimecmp (Makefile.am): Likewise.
26333         * modules/utimens (Makefile.am): Likewise.
26334         * modules/vasnprintf (Makefile.am): Likewise.
26335         * modules/vasprintf (Makefile.am): Likewise.
26336         * modules/vsnprintf (Makefile.am): Likewise.
26337         * modules/xalloc (Makefile.am): Likewise.
26338         * modules/xgetcwd (Makefile.am): Likewise.
26339         * modules/xnanosleep (Makefile.am): Likewise.
26340         * modules/xreadlink (Makefile.am): Likewise.
26341         * modules/xstrtod (Makefile.am): Likewise.
26342         * modules/xstrtol (Makefile.am): Likewise.
26343         * modules/xstrtold (Makefile.am): Likewise.
26344         * modules/yesno (Makefile.am): Likewise.
26345
26346 2006-10-12  Jim Meyering  <jim@meyering.net>
26347
26348         * m4/getloadavg.m4: Revert the change below.
26349
26350         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
26351         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
26352         fail with a symlink, which is what coreutils' ./bootstrap now
26353         creates by default.
26354
26355 2006-10-12  Bruno Haible  <bruno@clisp.org>
26356
26357         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
26358         mingw.
26359         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
26360         MSVC and mingw explicitly.
26361
26362 2006-10-11  Simon Josefsson  <jas@extundo.com>
26363             Bruno Haible  <bruno@clisp.org>
26364
26365         Add support for multiple gnulib-tool invocations in the scope of a
26366         single configure.ac file.
26367         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
26368         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
26369         with the same contents as the _LIBADD variable.
26370         (func_emit_initmacro_start, func_emit_initmacro_end,
26371         func_emit_initmacro_done): New functions.
26372         (func_import, func_create_testdir): Invoke them. Allow the identifiers
26373         gl_LIBOBJS and gl_LTLIBOBJS.
26374
26375 2006-10-11  Bruno Haible  <bruno@clisp.org>
26376
26377         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
26378         (func_create_testdir): Don't create po/Makefile.am, don't invoke
26379         autoreconf. Instead, invoke autopoint explicitly but move back the
26380         *.m4 files from gnulib.
26381
26382 2006-10-11  Bruno Haible  <bruno@clisp.org>
26383
26384         * gnulib-tool (func_usage): Make module names after --create-testdir
26385         optional.
26386         (func_create_testdir): If no module was specified, use nearly all
26387         modules.
26388
26389 2006-10-12  Jim Meyering  <jim@meyering.net>
26390
26391         Big performance improvement for fts-based tools that use FTS_NOSTAT.
26392         Avoid spurious inode-mismatch problems on non-POSIX file systems.
26393         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
26394         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
26395         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
26396         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
26397         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
26398         (fts_set_stat_required): New function.
26399         (fts_open): Defer the calls to fts_stat, if possible or requested.
26400         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
26401         into fts_stat itself.
26402         (fts_read): Perform any required (deferred) fts_stat call.
26403         (fts_build): Likewise, for the directory we're about to open and read.
26404         In the readdir loop, carefully decide whether each entry will require
26405         an eventual call to fts_stat, using dirent.d_type info if available.
26406         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
26407         a command line argument into this function.  Update all callers.
26408         Map a return value of FTS_DOT to FTS_D for a command line argument.
26409         * modules/fts (Depends-on): Add d-type.  Alphabetize.
26410         Thanks to Miklos Szeredi for his tenacity and for the initial
26411         bug report about "find" failing on a FUSE-based file system.
26412
26413         * lib/fts.c (fts_open): Use consistent indentation.
26414
26415 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
26416
26417         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
26418         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
26419         reported by Jim Meyering.  All uses of cache variables renamed
26420         to match Autoconf's.
26421         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
26422         the other one.
26423
26424         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
26425         Fix misspelling in diagnostic.
26426
26427 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26428
26429         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
26430         defined.  Problem reported by Matthew Woehlke.
26431
26432         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
26433         Add support for Tandem NonStop R series.
26434         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
26435         Use new macro.
26436
26437         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
26438         (has_trailing_slash): Omit size arg; all callers changed.
26439         Omit 'inline', since it doesn't help performance and we'd
26440         need to configure it.
26441         Don't count //, ///, etc. as having a trailing slash.
26442         As a side effect, this removes a C99ism reported by Matthew Woehlke.
26443         (rpl_rename_dest_slash): On failure, use rename's errno rather
26444         than (in some cases) an incorrect or junk errno.
26445         Simplify code by removing need to compute length; this does
26446         cause it to make two passes instead of one over the file name,
26447         but it's worth it.
26448
26449         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
26450         change, since Autoconf's version may no longer be appropriate now
26451         that we are using CVS Autoconf's version.  Add support for Tandem.
26452
26453 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
26454             Bruno Haible  <bruno@clisp.org>
26455
26456         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
26457         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
26458         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
26459         gl_AC_TYPE_LONG_LONG.
26460
26461         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
26462         instead of HAVE_LONG_LONG.
26463         * lib/printf-args.c (printf_fetchargs): Likewise.
26464         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
26465         * lib/vasnprintf.c (VASNPRINTF): Likewise.
26466         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
26467         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
26468         gl_AC_TYPE_LONG_LONG.
26469
26470 2006-10-11  Bruno Haible  <bruno@clisp.org>
26471
26472         * m4/longlong.m4: Add comments.
26473         * m4/ulonglong.m4: Likewise.
26474
26475 2006-10-10  Bruno Haible  <bruno@clisp.org>
26476
26477         Make it possible to #define stpcpy, strdup to aliases.
26478         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
26479         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
26480
26481 2006-10-10  Bruno Haible  <bruno@clisp.org>
26482
26483         Make it possible to #define gcd to an alias.
26484         * lib/gcd.c: Include config.h.
26485
26486 2006-10-10  Bruno Haible  <bruno@clisp.org>
26487
26488         Make it possible to #define c_isascii to an alias.
26489         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
26490         defined. Undefine the macros before defining them, to avoid gcc
26491         warnings.
26492         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
26493         define NO_C_CTYPE_MACROS early.
26494
26495 2006-10-10  Bruno Haible  <bruno@clisp.org>
26496
26497         Make it possible to #define set_program_name to an alias.
26498         * lib/progname.c: Don't undefine set_program_name; instead, undefine
26499         ENABLE_RELOCATABLE early.
26500
26501 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26502
26503         Port to Tandem NSK OSS, which has 64-bit signed int but at most
26504         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
26505         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
26506         More generally, don't assume that 64-bit signed int is available
26507         if unsigned int is, and vice versa.
26508         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
26509         unsigned symbols, not on their signed counterparts.
26510         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
26511         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
26512         (UINT64_C, UINTMAX_C):
26513         Likewise.
26514         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
26515         unsigned counterparts.
26516         (Have_long_long, Unsigned): New macros.
26517         (Int): Renamed from INT.
26518         (strtoimax): Use the new macros.
26519         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
26520         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
26521         * modules/inttypes (inttypes.h): Substitute
26522         HAVE_UNSIGNED_LONG_LONG_INT.
26523         * modules/stdint (stdint.h): Likewise.
26524         (Files): Add m4/ulonglong.m4.
26525
26526 2006-10-10  Bruno Haible  <bruno@clisp.org>
26527
26528         Fix a gcc -Wshadow warning.
26529         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
26530         to 'bucket'.
26531         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
26532         gl_linked_indexof_from_to): Likewise.
26533         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
26534         Likewise.
26535         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
26536         Likewise.
26537         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
26538         Reported by Eric Blake.
26539
26540 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
26541
26542         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
26543         for NetBSD.  Problem reported by Bruno Haible.
26544
26545 2006-10-09  Jim Meyering  <jim@meyering.net>
26546
26547         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
26548         Patch from Bruno Haible.
26549
26550 2006-10-09  Jim Meyering  <jim@meyering.net>
26551
26552         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
26553         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
26554         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
26555
26556 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
26557
26558         Don't include <config.h> twice; this doesn't work in some cases,
26559         e.g., when config.h has "#define intmax_t long long int" and
26560         we include <config.h>, <inttypes.h>, <config.h> in that order.
26561         Problem reported by Matthew Woehlke in:
26562         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
26563         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
26564         * lib/fts-cycle.c: Don't include config.h.
26565         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
26566         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
26567         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
26568         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
26569         inttypes.h.
26570         * lib/xstrtoumax.c: Likewise.
26571         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
26572         __strtol and the like, so that this module is more like its siblings.
26573         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
26574         Remove; no longer needed now that we assume gnulib inttypes.h.
26575
26576 2006-10-08  Bruno Haible  <bruno@clisp.org>
26577
26578         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
26579         option.
26580
26581 2006-10-07  Jim Meyering  <jim@meyering.net>
26582
26583         * modules/inttypes (inttypes.h): Revert what seems to have been
26584         an inadvertent part of today's change: use "|", not "/" in the
26585         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
26586
26587 2006-10-07  Bruno Haible  <bruno@clisp.org>
26588
26589         * modules/sublist: New file.
26590
26591 2006-10-07  Bruno Haible  <bruno@clisp.org>
26592
26593         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
26594         * modules/argz (argz.h): Likewise.
26595         * modules/arpa_inet (arpa/inet.h): Likewise.
26596         * modules/byteswap (byteswap.h): Likewise.
26597         * modules/configmake (configmake.h): Likewise.
26598         * modules/fcntl (fcntl.h): Likewise.
26599         * modules/fnmatch (fnmatch.h): Likewise.
26600         * modules/getopt (getopt.h): Likewise.
26601         * modules/glob (glob.h): Likewise.
26602         * modules/inttypes (inttypes.h): Likewise.
26603         * modules/netinet_in (netinet/in.h): Likewise.
26604         * modules/poll (poll.h): Likewise.
26605         * modules/stdbool (stdbool.h): Likewise.
26606         * modules/stdint (stdint.h): Likewise.
26607         * modules/sys_select (sys/select.h): Likewise.
26608         * modules/sys_socket (sys/socket.h): Likewise.
26609         * modules/sys_stat (sys/stat.h): Likewise.
26610         * modules/sysexits (sysexits.h): Likewise.
26611         * modules/unistd (unistd.h): Likewise.
26612         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26613         Add a "DO NOT EDIT" comment to the generated file.
26614         (func_import): Likewise for gnulib-comp.m4.
26615
26616 2006-10-07  Bruno Haible  <bruno@clisp.org>
26617
26618         * lib/gl_sublist.h: New file.
26619         * lib/gl_sublist.c: New file.
26620
26621 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
26622
26623         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
26624         name (relative to the original working directory) and the file
26625         name component (relative to the temporary working directory).  All
26626         callers changed.
26627         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
26628         * lib/mkdir-p.c (make_dir_parents): Likewise.
26629         * lib/mkdir-p.h (make_dir_parents): Likewise.
26630
26631 2006-10-06  Eric Blake  <ebb9@byu.net>
26632
26633         Define several macros for use by the clean-temp module.
26634         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
26635         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
26636         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
26637
26638         * lib/clean-temp.h (close_stream_temp): New declaration.
26639         * lib/clean-temp.c (includes): Pull in headers according to what
26640         other modules are in use.
26641         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
26642
26643 2006-10-06  Bruno Haible  <bruno@clisp.org>
26644
26645         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
26646         instead of fopen, fwriteerror.
26647
26648 2006-10-06  Bruno Haible  <bruno@clisp.org>
26649
26650         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
26651         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
26652         int.
26653         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
26654         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
26655         Return an error indicator.
26656         Suggested by Eric Blake.
26657
26658 2006-10-06  Bruno Haible  <bruno@clisp.org>
26659
26660         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
26661         Reported by Eric Blake.
26662
26663 2006-10-06  Bruno Haible  <bruno@clisp.org>
26664
26665         * modules/closeout (Description): Mention stderr too.
26666
26667 2006-10-06  Bruno Haible  <bruno@clisp.org>
26668         and Paul Eggert  <eggert@cs.ucla.edu>
26669
26670         * lib/closeout.c (close_stdout): Also close stderr.
26671         * lib/closeout.h: Update comment.
26672
26673 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
26674
26675         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
26676         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
26677         * lib/dirchownmod.c: Include lchown.h.
26678         * lib/lchown.c: Don't include files that lchown.h now includes.
26679         Don't declare chown, since lchown.h now does that.
26680         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
26681         (lchown): Define to rpl_chown if lchown is declared but
26682         does not exist.  Declare using a prototype if lchown is not
26683         declared.  Add a copyright notice.
26684         * lib/mkstemp.h: Include <unistd.h>.
26685         * lib/openat.c: Include lchown.h.
26686
26687         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
26688         we now test for that separately.
26689         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
26690         rather than O_NOFOLLOW, when testing whether it's possible to
26691         avoid a race condition reliably.
26692         * lib/savewd.c (savewd_chdir): Likewise.
26693
26694         Remove macros that are no longer needed now that stdint.h is
26695         reliable.
26696         * lib/fsusage.c (UINTMAX_MAX): Remove.
26697         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
26698         * lib/utimecmp.c (SIZE_MAX): Remove.
26699
26700         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
26701
26702         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
26703         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
26704         O_NOATIME works.
26705
26706 2006-10-05  Bruno Haible  <bruno@clisp.org>
26707
26708         * lib/gl_list.h (gl_sortedlist_search_from_to,
26709         gl_sortedlist_indexof_from_to): New declarations.
26710         (gl_list_implementation): New fields sortedlist_search_from_to,
26711         sortedlist_indexof_from_to.
26712         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
26713         inline functions.
26714         * lib/gl_list.c (gl_sortedlist_search_from_to,
26715         gl_sortedlist_indexof_from_to): New functions.
26716         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
26717         function.
26718         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
26719         (gl_array_sortedlist_search_from_to): New function.
26720         (gl_array_list_implementation): Update.
26721         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
26722         function.
26723         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
26724         (gl_carray_sortedlist_search_from_to): New function.
26725         (gl_carray_list_implementation): Update.
26726         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
26727         gl_linked_sortedlist_indexof_from_to): New functions.
26728         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
26729         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
26730         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
26731         gl_tree_sortedlist_indexof_from_to): New functions.
26732         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
26733         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
26734         Update.
26735         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
26736         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
26737         Update.
26738
26739 2006-10-05  Bruno Haible  <bruno@clisp.org>
26740
26741         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
26742         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
26743         (struct gl_list_implementation): Add fields search_from_to,
26744         indexof_from_to. Remove fields search, indexof.
26745         (gl_list_search): Use the search_from_to method.
26746         (gl_list_search_from, gl_list_search_from_to): New functions.
26747         (gl_list_indexof): Use the indexof_from_to method.
26748         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
26749         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
26750         (gl_list_search_from, gl_list_search_from_to): New functions.
26751         (gl_list_indexof): Use the indexof_from_to method.
26752         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
26753         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
26754         gl_array_indexof. Add start_index, end_index arguments.
26755         (gl_array_search_from_to): Renamed from gl_array_search. Add
26756         start_index, end_index arguments.
26757         (gl_array_remove, gl_array_list_implementation): Update.
26758         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
26759         gl_carray_indexof. Add start_index, end_index arguments.
26760         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
26761         start_index, end_index arguments.
26762         (gl_carray_remove, gl_carray_list_implementation): Update.
26763         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
26764         gl_linked_search. Add start_index, end_index arguments.
26765         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
26766         start_index, end_index arguments.
26767         (gl_linked_remove): Update.
26768         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
26769         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
26770         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
26771         field to 'size_t'.
26772         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
26773         gl_tree_search. Add start_index, end_index arguments.
26774         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
26775         start_index, end_index arguments.
26776         (gl_tree_remove): Update.
26777         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
26778         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
26779         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
26780         function.
26781         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
26782         gl_tree_search. Add start_index, end_index arguments.
26783         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
26784         start_index, end_index arguments.
26785         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
26786         Update.
26787         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
26788
26789 2006-10-05  Bruno Haible  <bruno@clisp.org>
26790
26791         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
26792
26793         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
26794         fwriteerror_temp): New declarations.
26795         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
26796         (descriptors): New variable.
26797         (cleanup): First, close the descriptors.
26798         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
26799         fclose_temp, fwriteerror_temp): New functions.
26800
26801 2006-10-04  Jim Meyering  <jim@meyering.net>
26802
26803         * lib/fts.c (fts_open): Tiny comment change.
26804
26805 2006-10-04  Bruno Haible  <bruno@clisp.org>
26806
26807         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
26808         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
26809         gl_LOCK_BODY.
26810         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
26811         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
26812         gl_LOCK_EARLY_BODY.
26813         (gl_LOCK): Require gl_LOCK_BODY.
26814
26815 2006-10-04  Bruno Haible  <bruno@clisp.org>
26816
26817         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
26818         (gl_oset_search_atleast): New declaration.
26819         (struct gl_oset_implementation): Add field 'search_atleast'.
26820         (gl_oset_search_atleast): New inline function.
26821         * lib/gl_oset.c (gl_oset_search_atleast): New function.
26822         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
26823         (gl_array_oset_implementation): Update.
26824         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
26825         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
26826         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
26827
26828 2006-10-04  Bruno Haible  <bruno@clisp.org>
26829
26830         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
26831
26832 2006-10-03  Bruno Haible  <bruno@clisp.org>
26833
26834         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
26835         from gl_avltreehash_list_implementation.
26836
26837 2006-10-03  Bruno Haible  <bruno@clisp.org>
26838
26839         * lib/gl_oset.c (gl_oset_add): Fix return type.
26840
26841 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
26842
26843         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
26844
26845 2006-10-02  Eric Blake  <ebb9@byu.net>
26846
26847         * modules/strnlen (Depends-on): Add extensions.
26848
26849 2006-10-02  Eric Blake  <ebb9@byu.net>
26850
26851         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
26852         definition in 2.60+.
26853
26854 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
26855
26856         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
26857         checks.
26858
26859 2006-10-02  Bruno Haible  <bruno@clisp.org>
26860
26861         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
26862         to the AUTOMAKE_OPTIONS.
26863         Reported by Jim Meyering.
26864
26865 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
26866
26867         Work around bug in Solaris 10 /proc file system:
26868         /proc/self/fd/NNN/.. isn't the parent directory of
26869         the directory whose file descriptor is NNN.  This needs to
26870         be worked around at run time, not compile time, since a
26871         program might be built on Solaris 8, where things work, and
26872         run on Solaris 10.
26873         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
26874         to use the following interface instead:
26875         (OPENAT_BUFFER_SIZE): New macro.
26876         (openat_proc_name): New function.
26877         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
26878         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
26879         Likewise.
26880         * lib/openat-proc.c: New file.
26881         * modules/openat (Files): Add lib/openat-proc.c.
26882         (Depends-on): Add same-inode, stdbool.
26883         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
26884
26885 2006-09-29  Bruno Haible  <bruno@clisp.org>
26886
26887         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
26888         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
26889         argument. Set stdout_closed before testing for ferror, not after.
26890         (fwriteerror, fwriteerror_no_ebadf): New functions.
26891
26892 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26893
26894         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
26895
26896 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
26897
26898         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
26899         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
26900
26901 2006-09-28  Jim Meyering  <jim@meyering.net>
26902
26903         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
26904         Include <unistd.h>.
26905
26906 2006-09-28  Bruno Haible  <bruno@clisp.org>
26907
26908         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
26909         * modules/linkedhash-list (Depends-on): Likewise.
26910         * modules/rbtreehash-list (Depends-on): Likewise.
26911
26912 2006-09-28  Bruno Haible  <bruno@clisp.org>
26913
26914         * lib/strndup.h: Simplify the redefinition of strndup.
26915         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
26916         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
26917
26918 2006-09-28  Bruno Haible  <bruno@clisp.org>
26919
26920         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
26921         * lib/gl_linkedhash_list.c: Likewise.
26922         * lib/gl_rbtreehash_list.c: Likewise.
26923
26924 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
26925
26926         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
26927         getaddrinfo.
26928
26929         * lib/__fpending.h: Don't include <stdio_ext.h> unless
26930         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
26931         it causes <stdio_ext.h> to cause a compile-time error.
26932         Problem reported by Nelson H. F. Beebe.
26933         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
26934         of HAVE_DECL___PENDING.
26935
26936         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
26937         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
26938         declaration.
26939
26940 2006-09-27  Jim Meyering  <jim@meyering.net>
26941
26942         This file could end up with a definition for a function
26943         named __strndup, rather than rpl_strndup on a system with
26944         incomplete weak_alias support.
26945         * lib/strndup.c (strndup): Rename from __strndup.
26946         Remove #defines that used to map __strndup to strndup.
26947         Don't use K&R prototypes.
26948         Remove LIBC-related code, since this file is not sync'd with glibc.
26949         * lib/strndup.h: Revamp, accordingly.
26950         * m4/strndup.m4: Modernize.
26951
26952 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
26953
26954         * modules/savewd (Depends-on): Add 'raise'.
26955         * lib/savewd.c: Include <signal.h>, for 'raise'.
26956
26957 2006-09-26  Jim Meyering  <jim@meyering.net>
26958
26959         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
26960         when we detect Darwin 8.7.0's acl_get_file bug.
26961         Rearrange to perform the new (below) run-test while $LIBS
26962         contains any acl-related library.  Set USE_ACL at the end.
26963         (gl_ACL_GET_FILE): New function.
26964
26965 2006-09-26  Eric Blake  <ebb9@byu.net>
26966
26967         * lib/verror.c: Include <config.h> unconditionally.
26968
26969 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
26970
26971         * modules/clock-time (Maintainer): Add self.
26972         * modules/getlogin_r (Depends-on): Add extensions.
26973
26974 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26975
26976         * modules/clock-time: New module.
26977         * modules/nanosleep (Depends-on): Add clock-time.
26978         * modules/gethrxtime (Depends-on): Likewise.
26979         * modules/gettime (Depends-on): Likewise.
26980         * modules/settime (Depends-on): Likewise.
26981
26982         * modules/fts-lgpl: Depend on openat.
26983         * modules/mkancesdirs: Depend on savewd.
26984         * modules/mkdir-p: Likewise.
26985
26986 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26987
26988         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
26989
26990         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
26991         `gl_have_arbitrary_file_name_length_limit' to
26992         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
26993         actually works between configure runs.
26994
26995 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26996             Bruno Haible  <bruno@clisp.org>
26997
26998         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
26999
27000 2006-09-25  Jim Meyering  <jim@meyering.net>
27001
27002         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
27003         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
27004
27005 2006-09-25  Eric Blake  <ebb9@byu.net>
27006
27007         * gnulib-tool (func_import, func_create_testdir): Fix typos in
27008         exec's in 2006-09-18 patch when shuffling fds.
27009
27010 2006-09-25  Bruno Haible  <bruno@clisp.org>
27011
27012         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
27013         Reported by Jim Meyering.
27014
27015 2006-09-24  Jim Meyering  <jim@meyering.net>
27016
27017         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
27018         compare a pointer against a literal "0".  That caused failures with
27019         at least HP-UX's hpcc.
27020
27021 2006-09-22  Simon Josefsson  <jas@extundo.com>
27022
27023         * modules/gc-sha1:
27024         * modules/gc-md4:
27025         * modules/gc-hmac-sha1:
27026         * modules/gc-hmac-md5:
27027         * modules/gc-des:
27028         * modules/gc-arcfour: Distribute more files.
27029
27030 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27031
27032         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
27033         (gl_linked_iterator_from_to): Initialize struct completely.
27034         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
27035         (gl_tree_iterator_from_to): Likewise
27036         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
27037         * lib/gl_array_list.c [lint] (gl_array_iterator)
27038         (gl_array_iterator_from_to): Likewise.
27039         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
27040         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
27041         (gl_carray_iterator_from_to): Likewise.
27042
27043         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
27044         * lib/md4.c (md4_process_block): Remove unused variable.
27045         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
27046         parentheses for clarity.
27047
27048 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27049
27050         * modules/bison-i18n (Depends-on): Add gettext.
27051
27052 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27053
27054         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
27055         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
27056         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
27057         also add missing comma that caused broken test.
27058         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
27059         stdlib.h, for `abort'.
27060         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
27061         variables.
27062         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
27063         include unistd.h if present, for `rmdir'.
27064         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
27065         variables.
27066         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
27067         in the process include standard headers for prototypes.
27068         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
27069         gets declared on GNU/Linux.
27070         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
27071         unistd.h, for `rmdir'.
27072         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
27073
27074         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
27075         always true.
27076         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
27077
27078         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
27079
27080 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27081
27082         * gnulib-tool (func_version): Create output all at once.  This
27083         may help avoid triggering unnecessary SIGPIPEs, and at any
27084         rate it doesn't hurt.
27085
27086 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27087             Bruno Haible  <bruno@clisp.org>
27088
27089         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
27090         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
27091         * m4/signed.m4 (bh_C_SIGNED): Likewise.
27092
27093         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
27094         (gl_FUNC_VASPRINTF): Invoke it.
27095
27096 2006-09-22  Bruno Haible  <bruno@clisp.org>
27097
27098         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
27099         getloadavg.c as first argument.
27100
27101 2006-09-22  Bruno Haible  <bruno@clisp.org>
27102
27103         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
27104         at the beginning of the gl_INIT macro.
27105         * modules/getloadavg (configure.ac): Pass $gl_source_base to
27106         gl_GETLOADAVG.
27107
27108 2006-09-22  Bruno Haible  <bruno@clisp.org>
27109
27110         * gnulib-tool (func_create_megatestdir): Don't include the config-h
27111         module.
27112         Suggested by Ralf Wildenhues.
27113
27114 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
27115
27116         Import this patch from libc:
27117
27118         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
27119
27120         * lib/regex_internal.c (re_string_reconstruct): Handle
27121         offset < pstr->valid_raw_len && pstr->offsets_needed case.
27122         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
27123         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
27124         re_string_context_at.
27125
27126         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
27127         now requires it.
27128         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
27129         gl_REGEX now does it for us.
27130         (gl_REGEX): Add test taken from
27131         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
27132
27133         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
27134         Check that large offsets work.  Modernize Autoconf usages.
27135         Prefer "yes" to mean a good thing rather than a bad.
27136         Don't put "#define mkstemp" in config.h, as this might interfere
27137         with standard system headers that "#define mkstemp mkstemp64".
27138
27139         * modules/mkstemp (Depends-on): Add extensions, so that
27140         mkstemp is visible on some platforms.
27141         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
27142         (Include): Change to "mkstemp.h" from <stdlib.h>.
27143         (Files): Add mkstemp.h.
27144
27145         * lib/mkstemp.h: New file, since some standard headers
27146         #define mkstemp.
27147         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
27148         Include "mkstemp.h".
27149         Make the _LIBC code resemble glibc original more,
27150         e.g., use K&R style.
27151         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
27152         (mkstemp): Remove, since mkstemp.h does this for us.
27153         * lib/stdlib--.h: Include mkstemp.h.
27154
27155         Import this patch from libc:
27156
27157         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27158
27159         * lib/tempname.c (__gen_tempname): Change attempts_min
27160         into a macro.  Use preprocessor to decide how to initialize
27161         attempts [Coverity CID 67].
27162
27163 2006-09-20  Bruno Haible  <bruno@clisp.org>
27164
27165         * lib/mkdtemp.c: Import from libc.
27166         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
27167                 * sysdeps/posix/tempname.c (__gen_tempname): Change
27168                 attempts_min into a macro.  Use preprocessor to decide how to
27169                 initialize attempts [Coverity CID 67].
27170         2001-11-27  Paul Eggert  <eggert@twinsun.com>
27171                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
27172                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
27173
27174 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27175
27176         * gnulib-tool (func_exit): New function, to allow to pass the
27177         exit status portably through the trap.  Use everywhere.
27178         (--help, --version): Signal a write error.
27179         (trap): catch SIGPIPE, for write errors.
27180         Exit at the end of the trap, with the correct exit status.
27181
27182 2006-09-19  Karl Berry  <karl@gnu.org>
27183
27184         * doc/gnulib.texi: note about the license texinfo files.
27185
27186 2006-09-19  Eric Blake  <ebb9@byu.net>
27187
27188         * gnulib-tool: Avoid space-tab.
27189
27190 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27191
27192         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
27193         that prevented coreutils 6.1 from building.  Problem reported
27194         by Petter Reinholdtsen.
27195
27196 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
27197
27198         * gnulib-tool (avoidlist): Fix typo that broke options like
27199         --avoid=lock that are used by coreutils bootstrap.
27200
27201 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
27202
27203         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
27204         more systematically.
27205
27206 2006-09-18  Jim Meyering  <jim@meyering.net>
27207
27208         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
27209
27210 2006-09-18  Bruno Haible  <bruno@clisp.org>
27211
27212         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
27213
27214 2006-09-18  Bruno Haible  <bruno@clisp.org>
27215
27216         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
27217         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
27218         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
27219         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
27220         * m4/gettext.m4: Require autoconf >= 2.52.
27221         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
27222         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
27223         of gl_cv_header_inttypes_h.
27224
27225 2006-09-18  Bruno Haible  <bruno@clisp.org>
27226
27227         * lib/javaversion.c: Include configmake.h.
27228
27229 2006-09-18  Bruno Haible  <bruno@clisp.org>
27230
27231         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
27232         avoid that the while loops be executed in a subshell.
27233
27234 2006-09-18  Bruno Haible  <bruno@clisp.org>
27235
27236         * MODULES.html.sh (func_module): Break long lines.
27237         Suggested by Bruce Korb <bkorb@gnu.org>.
27238
27239 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27240
27241         Speed up by a factor of 1.12.
27242         * gnulib-tool (nl): New variable.
27243         (func_import): Rewrite include directive extraction to only read each
27244         directive once.
27245
27246 2006-09-17  Bruno Haible  <bruno@clisp.org>
27247
27248         * modules/javaversion (Makefile.am): Remove DEFS setting.
27249         (Depends-on): Add configmake, for PKGDATADIR definition.
27250
27251 2006-09-17  Bruno Haible  <bruno@clisp.org>
27252
27253         * gnulib-tool (func_create_testdir): Rewrite all files at once.
27254
27255 2006-09-17  Bruno Haible  <bruno@clisp.org>
27256
27257         * gnulib-tool (func_append): New function, stolen from libtool.m4.
27258         (func_modules_transitive_closure, func_modules_add_dummy,
27259         func_modules_to_filelist, func_import, func_create_testdir,
27260         func_create_megatestdir, ...): Use it wherever possible.
27261         Suggested by Ralf Wildenhues.
27262
27263 2006-09-16  Karl Berry  <karl@gnu.org>
27264
27265         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
27266         to avoid sectioning errors.
27267         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
27268         [ifinfo]: blank line after @center-ed titles.
27269         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
27270         Spell FSF address consistently with others.
27271         (These changes approved by rms.)
27272
27273 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27274
27275         Speed up by a factor of 1.61.
27276         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
27277         already checked module names again.
27278
27279 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27280
27281         Speed up by a factor of 1.13.
27282         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
27283         for new_files, and the input to func_add_or_update.
27284
27285 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27286
27287         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
27288         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
27289
27290 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27291
27292         * modules/mkancesdirs (Depends-on): Add fcntl.
27293         * modules/savewd: New file.
27294         * MODULES.html.sh (File system functions): Add savewd.
27295
27296         * modules/configmake (Makefile.am): Add support for the
27297         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
27298
27299 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27300
27301         * m4/savewd.m4: New file.
27302
27303 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
27304
27305         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
27306         (dirchownmod): New arg FD.  All callers changed.
27307         Use FD rather than opening the directory ourself, as opening is
27308         now the caller's responsibility.
27309         * lib/dirchownmod.h: Likewise.
27310         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
27311         hosts that require <sys/types.h> before <sys/stat.h>.  Include
27312         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
27313         (test_dir): Remove.
27314         (mkancesdirs): Return length of prefix of FILE that has already
27315         been made, or -2 if there is a child doing the work.  Redo
27316         algorithm so that it is O(N) rather than O(N**2).  Optimize away
27317         ".", and treat ".." specially since it might stray back into
27318         already-created areas.  Use a subprocess if necessary.  New arg
27319         WD; all users changed.  MAKE_DIR function should now return 1
27320         if it creates a directory that is not readable.  Return -2 if
27321         a child process is spun off.
27322         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
27323         Adjust signature to match code.
27324         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
27325         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
27326         all users changed.
27327         * lib/savewd.c, lib/savewd.h: New files.
27328
27329 2006-09-15  Jim Meyering  <jim@meyering.net>
27330
27331         * modules/rename-dest-slash: New module.
27332         * MODULES.html.sh (posix_compat): Add it here.
27333
27334         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
27335
27336 2006-09-15  Jim Meyering  <jim@meyering.net>
27337
27338         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
27339         file.
27340
27341         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
27342
27343 2006-09-15  Jim Meyering  <jim@meyering.net>
27344
27345         * lib/rename-dest-slash.c (has_trailing_slash): Use
27346         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
27347         (rpl_rename_dest_slash): Perform the cheaper trailing slash
27348         test before testing whether SRC is a directory.
27349         Suggestions from Bruno Haible.
27350
27351         Avoid a warning about an unused variable.
27352         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
27353         into the #ifdef block where it's used.
27354
27355         * lib/rename-dest-slash.c: New file.
27356
27357 2006-09-14  Bruno Haible  <bruno@clisp.org>
27358
27359         * lib/allocsa.c: Include <config.h> unconditionally.
27360         * lib/asnprintf.c: Likewise.
27361         * lib/asprintf.c: Likewise.
27362         * lib/c-strcasecmp.c: Likewise.
27363         * lib/c-strcasestr.c: Likewise.
27364         * lib/c-strncasecmp.c: Likewise.
27365         * lib/c-strstr.c: Likewise.
27366         * lib/classpath.c: Likewise.
27367         * lib/clean-temp.c: Likewise.
27368         * lib/concatpath.c: Likewise.
27369         * lib/copy-file.c: Likewise.
27370         * lib/csharpcomp.c: Likewise.
27371         * lib/csharpexec.c: Likewise.
27372         * lib/execute.c: Likewise.
27373         * lib/fatal-signal.c: Likewise.
27374         * lib/findprog.c: Likewise.
27375         * lib/fwriteerror.c: Likewise.
27376         * lib/gl_array_list.c: Likewise.
27377         * lib/gl_array_oset.c: Likewise.
27378         * lib/gl_avltree_list.c: Likewise.
27379         * lib/gl_avltree_oset.c: Likewise.
27380         * lib/gl_avltreehash_list.c: Likewise.
27381         * lib/gl_carray_list.c: Likewise.
27382         * lib/gl_linked_list.c: Likewise.
27383         * lib/gl_linkedhash_list.c: Likewise.
27384         * lib/gl_list.c: Likewise.
27385         * lib/gl_oset.c: Likewise.
27386         * lib/gl_rbtree_list.c: Likewise.
27387         * lib/gl_rbtree_oset.c: Likewise.
27388         * lib/gl_rbtreehash_list.c: Likewise.
27389         * lib/imaxabs.c: Likewise.
27390         * lib/imaxdiv.c: Likewise.
27391         * lib/javacomp.c: Likewise.
27392         * lib/javaexec.c: Likewise.
27393         * lib/javaversion.c: Likewise.
27394         * lib/linebreak.c: Likewise.
27395         * lib/localcharset.c: Likewise.
27396         * lib/lock.c: Likewise.
27397         * lib/mbchar.c: Likewise.
27398         * lib/mbswidth.c: Likewise.
27399         * lib/mkdtemp.c: Likewise.
27400         * lib/pipe.c: Likewise.
27401         * lib/printf-args.c: Likewise.
27402         * lib/printf-parse.c: Likewise.
27403         * lib/progname.c: Likewise.
27404         * lib/progreloc.c: Likewise.
27405         * lib/readlink.c: Likewise.
27406         * lib/sh-quote.c: Likewise.
27407         * lib/stpcpy.c: Likewise.
27408         * lib/stpncpy.c: Likewise.
27409         * lib/strcasecmp.c: Likewise.
27410         * lib/strcasestr.c: Likewise.
27411         * lib/strcspn.c: Likewise.
27412         * lib/striconv.c: Likewise.
27413         * lib/strncasecmp.c: Likewise.
27414         * lib/strnlen1.c: Likewise.
27415         * lib/strstr.c: Likewise.
27416         * lib/strtok_r.c: Likewise.
27417         * lib/tls.c: Likewise.
27418         * lib/tmpdir.c: Likewise.
27419         * lib/unicodeio.c: Likewise.
27420         * lib/unsetenv.c: Likewise.
27421         * lib/vasnprintf.c: Likewise.
27422         * lib/vasprintf.c: Likewise.
27423         * lib/wait-process.c: Likewise.
27424         * lib/xallocsa.c: Likewise.
27425         * lib/xsetenv.c: Likewise.
27426         * lib/xstriconv.c: Likewise.
27427
27428 2006-09-13  Simon Josefsson  <jas@extundo.com>
27429
27430         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
27431         that internally, suggested by Ralf Wildenhues
27432         <Ralf.Wildenhues@gmx.de>.
27433
27434 2006-09-13  Simon Josefsson  <jas@extundo.com>
27435
27436         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
27437         @LIBOBJS@.
27438         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27439
27440 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
27441
27442         * lib/_fpending.c: Include <config.h> unconditionally, since we no
27443         longer worry about uses that don't define HAVE_CONFIG_H.
27444         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
27445         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
27446         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
27447         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
27448         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
27449         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
27450         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
27451         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
27452         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
27453         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
27454         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
27455         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
27456         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
27457         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
27458         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
27459         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
27460         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
27461         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
27462         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
27463         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
27464         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
27465         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
27466         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
27467         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
27468         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
27469         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
27470         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
27471         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
27472         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
27473         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
27474         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
27475         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
27476         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
27477         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
27478         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
27479         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
27480         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
27481         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
27482         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
27483         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
27484         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
27485         Likewise.
27486
27487 2006-09-13  Eric Blake  <ebb9@byu.net>
27488
27489         * lib/getopt.c: Fix typo in last commit.
27490
27491 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
27492
27493         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
27494         dgettext.
27495
27496 2006-09-12  Jim Meyering  <jim@meyering.net>
27497
27498         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
27499         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
27500         Reported by Nelson H. F. Beebe.
27501
27502 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
27503
27504         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
27505         program_invocation_name and program_invocation_short_name are
27506         initialized.
27507         * lib/argp-namefrob.h: Move declarations of program_invocation_name
27508         and program_invocation_short_name to argp.h, so they are visible
27509         to user programs.
27510         * lib/argp.h: Likewise
27511
27512 2006-09-10  Bruno Haible  <bruno@clisp.org>
27513
27514         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
27515         m4/inttypes_h.m4, m4/uintmax_t.m4.
27516
27517 2006-09-10  Bruno Haible  <bruno@clisp.org>
27518
27519         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
27520         gl_AC_TYPE_UINTMAX_T.
27521
27522 2006-09-10  Bruno Haible  <bruno@clisp.org>
27523
27524         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
27525
27526 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
27527
27528         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
27529         convention.  Text proposed by Bruno Haible.
27530         (struct argp_option): Document the use of N_() wrappers.
27531
27532         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
27533         '\v', and translate the two parts separately, instead of feeding
27534         the whole string to gettext.  This allows to exclude
27535         '\v' from the strings visible to the translator by writing doc
27536         strings as N_("..") "\v" N_("..").
27537
27538 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
27539
27540         * config/srclist.txt: Undo latest change; the bug was fixed.
27541
27542 2006-09-09  Bruno Haible  <bruno@clisp.org>
27543
27544         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
27545         assignments if building a library without libtool.
27546         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
27547         in func_emit_lib_Makefile_am.
27548         (func_import): When building a static library libfoo.a, arrange to
27549         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
27550         (func_create_testdir): Likewise.
27551         * modules/gc (configure.ac, Makefile.am): If building statically,
27552         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
27553         * modules/iconvme (configure.ac, Makefile.am): Likewise.
27554         * modules/striconv (configure.ac, Makefile.am): Likewise.
27555         Based on a suggestion by Ralf Wildenhues.
27556
27557 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27558
27559         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
27560         Check for unistd.h too, since Autoconf doesn't assume POSIX.
27561         Also:
27562
27563         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27564         Add year_2050_test to catch glibc bug 2821
27565         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
27566
27567         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27568         Prefer #ifdef to #if.
27569
27570         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
27571         Return from 'main' instead of calling 'exit'.
27572
27573 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27574
27575         * lib/mktime.c (guess_time_tm): Fix bug where mktime
27576         returned the maximum time_t value rather than (time_t) -1.
27577         Problem originally reported by William Bardwell
27578         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
27579
27580         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
27581         Moved to here ...
27582         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
27583         ... from here.
27584
27585 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27586
27587         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
27588         2821 is fixed.
27589
27590 2006-09-08  Jim Meyering  <jim@meyering.net>
27591
27592         Don't make generated files read-only.  That would bother too many
27593         people.  However, do retain the ability to work when targets are
27594         read-only: remove the destination and temporary files before writing
27595         them (when generated via sed or echo), or by using the -f option for
27596         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
27597         * modules/alloca-opt, modules/argz, modules/arpa_inet:
27598         * modules/byteswap, modules/configmake, modules/fcntl:
27599         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
27600         * modules/localcharset, modules/netinet_in, modules/poll:
27601         * modules/stdbool, modules/stdint, modules/sys_select:
27602         * modules/sys_socket, modules/sys_stat, modules/sysexits:
27603
27604 2006-09-08  Jim Meyering  <jim@meyering.net>
27605
27606         Avoid new build failure on FreeBSD 6.0.
27607         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
27608         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
27609         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
27610
27611 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27612
27613         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
27614
27615 2006-09-07  Jim Meyering  <jim@meyering.net>
27616
27617         Fix global typo in last change: use chmod u-w, not chmod u-x.
27618         Spotted by Paul Eggert and Bruce Korb.
27619         * modules/alloca-opt, modules/argz, modules/arpa_inet:
27620         * modules/byteswap, modules/configmake, modules/fcntl:
27621         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
27622         * modules/localcharset, modules/netinet_in, modules/poll:
27623         * modules/stdbool, modules/stdint, modules/sys_select:
27624         * modules/sys_socket, modules/sys_stat, modules/sysexits:
27625
27626 2006-09-06  Jim Meyering  <jim@meyering.net>
27627
27628         Make generated files be read-only.
27629         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
27630         Ensure that each generated file is now read-only.
27631         * modules/argz: Likewise.
27632         * modules/arpa_inet: Likewise.
27633         * modules/byteswap: Likewise.
27634         * modules/configmake: Likewise.
27635         * modules/fcntl: Likewise.
27636         * modules/fnmatch: Likewise.
27637         * modules/getopt: Likewise.
27638         * modules/glob: Likewise.
27639         * modules/inttypes: Likewise.
27640         * modules/netinet_in: Likewise.
27641         * modules/poll: Likewise.
27642         * modules/stdbool: Likewise.
27643         * modules/stdint: Likewise.
27644         * modules/sys_select: Likewise.
27645         * modules/sys_socket: Likewise.
27646         * modules/sys_stat: Likewise.
27647         * modules/sysexits: Likewise.
27648         * modules/localcharset: Same as above, but continue using temporary
27649         file named "t-$@" (why different?) rather than the "$@-t" used
27650         everywhere else.
27651
27652         * modules/sysexits (Makefile.am): Replace literal occurrences
27653         of "sysexit.h" more readable, and more consistent, "$@".
27654
27655 2006-09-06  Bruno Haible  <bruno@clisp.org>
27656
27657         * modules/striconv: New file.
27658         * modules/xstriconv: New file.
27659         * MODULES.html.sh (Internationalization functions): Add striconv,
27660         xstriconv.
27661
27662 2006-09-06  Bruno Haible  <bruno@clisp.org>
27663
27664         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
27665         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
27666         not using libtool correctly.
27667
27668 2006-09-06  Bruno Haible  <bruno@clisp.org>
27669
27670         * lib/striconv.h: New file.
27671         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
27672         iconvstring.c.
27673         * lib/xstriconv.h: New file.
27674         * lib/xstriconv.c: New file.
27675
27676 2006-09-06  Bruno Haible  <bruno@clisp.org>
27677
27678         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
27679         lib_..._LDFLAGS.
27680
27681 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27682
27683         * lib/argz_.h: Sync from Libtool.
27684
27685         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
27686                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
27687
27688         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
27689
27690 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
27691
27692         * modules/trim: New file.
27693
27694 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
27695
27696         * lib/trim.h: New file.
27697         * lib/trim.c: New file.
27698
27699 2006-09-05  Bruno Haible  <bruno@clisp.org>
27700
27701         * MODULES.html.sh (String handling): Add trim.
27702
27703 2006-09-04  Karl Berry  <karl@gnu.org>
27704
27705         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
27706         until next release.
27707
27708 2006-09-03  Bruno Haible  <bruno@clisp.org>
27709
27710         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
27711         correctly.
27712
27713 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27714
27715         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
27716         not gl_GETLOADAVG.  Omit unneeded semicolons.
27717         Problems reported by Ralf Wildenhues in
27718         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
27719         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
27720         at the end, which is the usual gnulib style.
27721
27722         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
27723         of doing all the work ourselves.
27724         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
27725         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
27726
27727 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27728
27729         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
27730         Problem reported by Ralf Wildenhues in
27731         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
27732
27733         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
27734         HAVE_STRUCT_STATFS_F_FSTYPENAME.
27735
27736 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27737
27738         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
27739         yesterday's patch by changing test -n to test -z.
27740
27741 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27742
27743         * modules/getloadavg (Files): Add m4/getloadavg.m4.
27744         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
27745         the former is now obsolescent.
27746
27747         * modules/chdir-long (Depends-on): Add fcntl.
27748
27749 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27750
27751         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
27752         obsolescent, and programs should use gnulib instead.
27753         * m4/getloadavg.m4: New file, with contents taken from Autoconf
27754         but with prefixes changed.
27755
27756 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27757
27758         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
27759         or stdbool.h, because they might not exist while configuring.
27760
27761         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
27762         Don't include unistd.h or limits.h; not needed, since chdir-long.h
27763         does that for us.
27764         (O_DIRECTORY): Remove.
27765
27766 2006-08-31  Eric Blake  <ebb9@byu.net>
27767
27768         * gnulib-tool: Don't let emacs change spaces to TAB.
27769
27770 2006-08-31  Bruno Haible  <bruno@clisp.org>
27771
27772         * gnulib-tool: When calling func_import more than once, do it in a
27773         subshell.
27774         Reported by Eric Blake <ebb9@byu.net>.
27775
27776 2006-08-31  Bruno Haible  <bruno@clisp.org>
27777
27778         * gnulib-tool (nl): Remove variable.
27779         (sed_transform_lib_file): Use more robust test for config-h module.
27780         (func_import): Fix typo in 2006-08-25 patch.
27781
27782 2006-08-31  Bruno Haible  <bruno@clisp.org>
27783
27784         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
27785         specified, augment Makefile.am variables instead of assigning them.
27786
27787 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
27788
27789         Work around a bug in both the Linux and SunOS 64-bit kernels:
27790         nanosleep mishandles sleeps for longer than 2**31 seconds.
27791         Problem reported by Frank v Waveren in
27792         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
27793         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
27794         Check for nanosleep bug.
27795         (LIB_NANOSLEEP): Append clock_gettime library if needed.
27796
27797 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
27798
27799         Work around a bug in both the Linux and SunOS 64-bit kernels:
27800         nanosleep mishandles sleeps for longer than 2**31 seconds.
27801         Problem reported by Frank v Waveren in
27802         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
27803         * lib/nanosleep.c (BILLION): New constant.
27804         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
27805         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
27806         implementation.
27807
27808 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
27809
27810         * modules/nanosleep (Depends-on): Add gettime.
27811
27812 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
27813         and Simon Josefsson  <jas@extundo.com>
27814         and Oskar Liljeblad  <oskar@osk.mine.nu>
27815
27816         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
27817         * gnulib-tool (func_import): New license type 'unmodifiable license
27818         text'.
27819         * modules/fdl: Use it.  Longer description.
27820         * module/gpl, module/lgpl: New files.
27821
27822 2006-08-30  Jim Meyering  <jim@meyering.net>
27823
27824         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
27825         shadowing the parameter.
27826
27827 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27828
27829         Sync from Libtool:
27830
27831         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27832
27833         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
27834         sharing with gnulib.  Report by Eric Blake.
27835
27836 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27837
27838         * modules/isapipe: New file.
27839         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
27840
27841 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27842
27843         * modules/configmake (Makefile.am): Add a comment, and omit
27844         the CONFIGMAKE_ prefix from generated macro names.  Suggested
27845         by Bruno Haible.
27846
27847 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27848
27849         * m4/isapipe.m4: New file.
27850
27851 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
27852
27853         * lib/isapipe.c, lib/isapipe.h: New files.
27854
27855 2006-08-29  Jim Meyering  <jim@meyering.net>
27856
27857         * modules/configmake (Makefile.am): Make configmake.h depend on
27858         Makefile.  Otherwise, a stale configmake.h could hang around.
27859
27860 2006-08-29  Eric Blake  <ebb9@byu.net>
27861
27862         * lib/error.c (error_at_line, print_errno_message): Match libc, after
27863         resolution of upstream bug 3044.
27864
27865 2006-08-29  Bruno Haible  <bruno@clisp.org>
27866
27867         * modules/localcharset (Depends-on): Add configmake.
27868         (Makefile.am): Remove setting of LIBDIR through DEFS.
27869
27870 2006-08-29  Bruno Haible  <bruno@clisp.org>
27871
27872         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
27873         defined.
27874
27875 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27876
27877         * modules/fcntl: New file.
27878         * modules/chdir-safer (Depends-on): Add fcntl.
27879         * modules/fts: Likewise.
27880         * modules/mkdir-p: Likewise.
27881
27882         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
27883         This undoes the most recent change, since we're now addressing the
27884         problem in a different way.
27885
27886         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
27887         into output, since the output might be called Makefile.am even
27888         if $makefile_name is something different.
27889         (func_import): Use $makefile_am rather than
27890         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
27891         empty.
27892
27893         * modules/inttypes (Files): Add m4/inttypes-h.m4.
27894
27895 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27896
27897         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
27898         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
27899         recent change to stdint.m4, since we're now addressing the problem in a
27900         different way.
27901
27902 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27903
27904         * m4/fcntl_h.m4: New file.
27905
27906 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
27907
27908         * lib/fcntl_.h: New file.
27909         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
27910         the fcntl module.
27911         * lib/dirchownmod.c: Likewise.
27912         * lib/fts.c: Likewise.
27913
27914         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
27915         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
27916         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
27917         just before including <inttypes.h>, to avoid circular inclusion.
27918
27919 2006-08-28  Jim Meyering  <jim@meyering.net>
27920
27921         * doc/visibility.texi: Actually read and correct the grammar of the
27922         sentence affected by yesterday's change.
27923
27924 2006-08-28  Eric Blake  <ebb9@byu.net>
27925
27926         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
27927         needs wrapper.
27928
27929 2006-08-28  Eric Blake  <ebb9@byu.net>
27930
27931         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
27932
27933 2006-08-28  Eric Blake  <ebb9@byu.net>
27934
27935         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
27936
27937 2006-08-28  Bruno Haible  <bruno@clisp.org>
27938
27939         * modules/c-strstr: New file, from GNU gettext.
27940         * MODULES.html.sh (String handling): Add c-strstr.
27941
27942 2006-08-28  Bruno Haible  <bruno@clisp.org>
27943
27944         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
27945         macros.
27946         Reported by Eric Blake.
27947
27948 2006-08-28  Bruno Haible  <bruno@clisp.org>
27949
27950         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
27951         (VASNPRINTF): Return a string of length > INT_MAX without failing.
27952         * lib/vasprintf.c: Include errno.h, limits.h.
27953         (EOVERFLOW): New fallback definition.
27954         (vasprintf): Test here whether the string length is > INT_MAX.
27955         * lib/vsnprintf.c: Include errno.h, limits.h.
27956         (EOVERFLOW): New fallback definition.
27957         (vsnprintf): Fix bug when generated string was too long for the buffer.
27958         Test here whether the string length is > INT_MAX.
27959
27960 2006-08-28  Bruno Haible  <bruno@clisp.org>
27961
27962         * lib/inttypes_.h (SCNX*): Remove definitions.
27963         Reported by Eric Blake.
27964
27965 2006-08-28  Bruno Haible  <bruno@clisp.org>
27966
27967         * lib/c-strstr.h: New file, from GNU gettext.
27968         * lib/c-strstr.c: New file, from GNU gettext.
27969
27970 2006-08-28  Bruno Haible  <bruno@clisp.org>
27971
27972         * gnulib-tool: Reorder some statements.
27973
27974 2006-08-28  Bruno Haible  <bruno@clisp.org>
27975
27976         * gnulib-tool: New option --makefile-name.
27977         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
27978         $makefile_name.
27979         (func_import): Write $makefile_name to the cache file, and read it from
27980         there unless explicitly specified. Use $makefile_name as file name
27981         instead of Makefile.am. Adjust the recommendations accordingly.
27982
27983 2006-08-28  Bruno Haible  <bruno@clisp.org>
27984
27985         * gnulib-tool (func_verify_module): Check against misapplying patch.
27986
27987 2006-08-28  Bruno Haible  <bruno@clisp.org>
27988
27989         * gnulib-tool (func_relativize, func_relconcat): New functions.
27990         Give an error if --local-dir is given with --update.
27991         Remove trailing slashes from $local_gnulib_dir.
27992         (func_import): Store the relativized $local_gnulib_dir in
27993         gnulib-cache.m4, and read it from there if not specified explicitly.
27994
27995 2006-08-28  Bruno Haible  <bruno@clisp.org>
27996
27997         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
27998         is the current directory. Respect also $local_gnulib_dir.
27999
28000 2006-08-28  Bruno Haible  <bruno@clisp.org>
28001             Simon Josefsson  <jas@extundo.com>
28002
28003         BeOS portability.
28004         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
28005
28006 2006-08-27  Jim Meyering  <jim@meyering.net>
28007
28008         * doc/visibility.texi: Remove duplicate word: "pointer".
28009
28010 2006-08-26  Bruno Haible  <bruno@clisp.org>
28011
28012         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
28013         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
28014         (Makefile.am): Create inttypes.h from inttypes_.h.
28015         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
28016
28017         * modules/imaxabs: New file.
28018
28019         * modules/imaxdiv: New file.
28020
28021 2006-08-26  Bruno Haible  <bruno@clisp.org>
28022
28023         * m4/inttypes.m4: New file.
28024         * m4/_inttypes_h.m4: Remove file.
28025         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
28026         PRI_MACROS_BROKEN.
28027         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
28028
28029         * m4/imaxabs.m4: New file.
28030
28031         * m4/imaxdiv.m4: New file.
28032
28033 2006-08-26  Bruno Haible  <bruno@clisp.org>
28034
28035         * lib/inttypes_.h: New file.
28036         * lib/inttypes.h: Remove file.
28037         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
28038
28039         * lib/imaxabs.c: New file.
28040
28041         * lib/imaxdiv.c: New file.
28042
28043 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28044
28045         New config-h module, so that "make" output needn't be cluttered
28046         by -DHAVE_CONFIG_H.
28047         * MODULES.html.sh (Support for building libraries and executables):
28048         Add config-h.
28049         * modules/config-h: New file.
28050         * gnulib-tool (nl, sed_transform_lib_file): New vars.
28051         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
28052         the config-h module is used.
28053
28054         New configmake module, so that "make" output needn't be cluttered
28055         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
28056         * MODULES.html.sh (Support for building libraries and executables):
28057         Add configmake.
28058         * modules/configmake: New file.
28059
28060 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
28061
28062         * m4/config-h.m4: New file.
28063
28064 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28065
28066         * config/srclist.txt: Add elisp-comp.
28067
28068 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
28069
28070         * MODULES.html.sh (Support for building libraries and executables):
28071         Add elisp-comp.
28072         * build-aux/elisp-comp: New file.
28073         * modules/elisp-comp: New file.
28074
28075 2006-08-24  Bruno Haible  <bruno@clisp.org>
28076
28077         * gnulib-tool (func_create_testdir): Use non-default values of
28078         sourcebase and m4base.
28079
28080 2006-08-24  Bruno Haible  <bruno@clisp.org>
28081
28082         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
28083         HTML structure.
28084
28085 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28086
28087         * modules/openat (Depends-on): Add lchown.
28088
28089 2006-08-23  Bruno Haible  <bruno@clisp.org>
28090
28091         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
28092         of gl_LOCK_EARLY instead of gl_LOCK.
28093
28094 2006-08-23  Bruno Haible  <bruno@clisp.org>
28095
28096         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
28097         on OSF/1 to no.
28098         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
28099
28100 2006-08-23  Bruno Haible  <bruno@clisp.org>
28101
28102         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
28103         as unusable.
28104
28105         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
28106         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
28107         (gl_LOCK): New macro.
28108
28109 2006-08-22  Simon Josefsson  <jas@extundo.com>
28110
28111         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
28112         to md5 module.
28113
28114 2006-08-22  Simon Josefsson  <jas@extundo.com>
28115
28116         * MODULES.html.sh: Add "Support for maintaining and release
28117         projects".
28118
28119         * build-aux/gnupload: New file, from coreutils.
28120
28121 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28122
28123         Avoid the need for AC_LIBSOURCES in m4 macros.
28124         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
28125         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
28126         * modules/check-version (EXTRA_DIST): Add check-version.h.
28127         * modules/crc (EXTRA_DIST): Add crc.h.
28128         * modules/des (EXTRA_DIST): Add des.h.
28129         * modules/gc (EXTRA_DIST): Add gc.h.
28130         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
28131         * modules/getline (EXTRA_DIST): Add getline.h.
28132         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
28133         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
28134         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
28135         * modules/md2 (EXTRA_DIST): Add md2.h.
28136         * modules/md4 (EXTRA_DIST): Add md4.h.
28137         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
28138         * modules/read-file (EXTRA_DIST): Add read-file.h.
28139         * modules/readline (EXTRA_DIST): Add readline.h.
28140         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
28141         rijndael-api-fst.h.
28142
28143 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28144
28145         * m4/rijndael.m4 (gl_ARCFOUR):
28146         * m4/arctwo.m4 (gl_ARCTWO):
28147         * m4/check-version.m4 (gl_CHECK_VERSION):
28148         * m4/crc.m4 (gl_CRC):
28149         * m4/des.m4 (gl_DES):
28150         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
28151         * m4/gc.m4 (gl_GC):
28152         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
28153         * m4/getline.m4 (gl_FUNC_GETLINE):
28154         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
28155         * m4/hmac-md5.m4 (gl_HMAC_MD5):
28156         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
28157         * m4/md2.m4 (gl_MD2):
28158         * m4/md4.m4 (gl_MD4):
28159         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
28160         * m4/read-file.m4 (gl_FUNC_READ_FILE):
28161         * m4/readline.m4 (gl_FUNC_READLINE):
28162         * m4/rijndael.m4 (gl_RIJNDAEL):
28163         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28164         to get the necessary .h files and whatnot.
28165
28166 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
28167
28168         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
28169         gnulib rather than the other way around.
28170         * config/srclistvars.sh (COREUTILS): Remove.
28171
28172 2006-08-22  Jim Meyering  <jim@meyering.net>
28173
28174         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
28175
28176         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
28177
28178 2006-08-22  Eric Blake  <ebb9@byu.net>
28179
28180         * modules/regexprops-generic: New file.
28181         * MODULES.html.sh (Support for building documentation): List it.
28182
28183 2006-08-22  Eric Blake  <ebb9@byu.net>
28184
28185         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
28186         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
28187         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
28188         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
28189
28190 2006-08-22  Bruno Haible  <bruno@clisp.org>
28191
28192         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
28193         and lib_LTLIBRARIES like the other lib_* variables.
28194
28195 2006-08-22  Bruno Haible  <bruno@clisp.org>
28196
28197         * build-aux/x-to-1.in: New file, from GNU gettext.
28198
28199 2006-08-22  Bruno Haible  <bruno@clisp.org>
28200
28201         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
28202         <utmpx.h> exists.
28203
28204 2006-08-22  Bruno Haible  <bruno@clisp.org>
28205
28206         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
28207         <utmpx.h> exists.
28208
28209 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28210
28211         BeOS portability.
28212         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
28213         exist.
28214         Problem reported by Bruno Haible.
28215
28216 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28217
28218         Avoid the need for AC_LIBSOURCES in m4 macros.
28219         * modules/acl (EXTRA_DIST): Add acl.h.
28220         * modules/argmatch (Files): Add m4/argmatch.m4.
28221         (configure.ac): Add gl_ARGMATCH.
28222         (EXTRA_DIST): Renamed from lib_SOURCES, for
28223         consistency with the other modules.  Remove argmatch.c.
28224         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
28225         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
28226         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
28227         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
28228         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
28229         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
28230         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
28231         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
28232         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
28233         * modules/closeout (EXTRA_DIST): Add closeout.h.
28234         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
28235         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
28236         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
28237         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
28238         dirname.h; remove basename.c and stripslash.c.
28239         * modules/exclude (EXTRA_DIST): Add exclude.h.
28240         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
28241         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
28242         * modules/file-type (EXTRA_DIST): Add file-type.h.
28243         * modules/filemode (EXTRA_DIST): Add filemode.h.
28244         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
28245         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28246         * modules/fpending (EXTRA_DIST): Add __fpending.h.
28247         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
28248         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
28249         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
28250         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
28251         * modules/getdate (EXTRA_DIST): Add getdate.c.
28252         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
28253         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
28254         * modules/getpass (EXTRA_DIST): Add getpass.h.
28255         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
28256         * modules/group-member (EXTRA_DIST): Add group-member.h.
28257         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
28258         * modules/hash (EXTRA_DIST): Add hash.h.
28259         * modules/human (EXTRA_DIST): Add human.h.
28260         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
28261         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
28262         * modules/lchown (EXTRA_DIST): Add lchown.h.
28263         * modules/long-options (EXTRA_DIST): Add long-options.h.
28264         * modules/lstat (EXTRA_DIST): Add lstat.h.
28265         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
28266         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
28267         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
28268         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
28269         * modules/memxor (EXTRA_DIST): Add memxor.h.
28270         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
28271         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
28272         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
28273         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
28274         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
28275         * modules/physmem (EXTRA_DIST): Add physmem.h.
28276         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
28277         * modules/posixver (EXTRA_DIST): Add posixver.h.
28278         * modules/quote (EXTRA_DIST): Add quote.h.
28279         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
28280         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
28281         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
28282         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
28283         regex_internal.h regexec.c.
28284         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
28285         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
28286         * modules/same (EXTRA_DIST): Add same.h.
28287         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
28288         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
28289         * modules/savedir (EXTRA_DIST): Add savedir.h.
28290         * modules/sha1 (EXTRA_DIST): Add sha1.h.
28291         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
28292         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
28293         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
28294         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
28295         * modules/strdup (EXTRA_DIST): Add strdup.h.
28296         * modules/strftime (EXTRA_DIST): Add strftime.h.
28297         * modules/strndup (EXTRA_DIST): Add strndup.h.
28298         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
28299         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
28300         * modules/time_r (EXTRA_DIST): Add time_r.h.
28301         * modules/timespec (EXTRA_DIST): Add timespec.h.
28302         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
28303         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
28304         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
28305         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
28306         * modules/userspec (EXTRA_DIST): Add userspec.h.
28307         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
28308         * modules/utimens (EXTRA_DIST): Add utimens.h.
28309         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
28310         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
28311         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
28312         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
28313         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
28314         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
28315         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
28316         * modules/yesno (EXTRA_DIST): Add yesno.h.
28317
28318 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
28319
28320         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
28321
28322         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
28323         * m4/dev-ino.m4, same-inode.m4: Remove.
28324
28325         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
28326         * m4/acl.m4 (AC_FUNC_ACL):
28327         * m4/backupfile.m4 (gl_BACKUPFILE):
28328         * m4/c-strtod.m4 (gl_C99_STRTOLD):
28329         * m4/canon-host.m4 (gl_CANON_HOST):
28330         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
28331         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
28332         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
28333         * m4/cloexec.m4 (gl_CLOEXEC):
28334         * m4/close-stream.m4 (gl_CLOSE_STREAM):
28335         * m4/closeout.m4 (gl_CLOSEOUT):
28336         * m4/dirfd.m4 (gl_FUNC_DIRFD):
28337         * m4/dirname.m4 (gl_DIRNAME):
28338         * m4/exclude.m4 (gl_EXCLUDE):
28339         * m4/exitfail.m4 (gl_EXITFAIL):
28340         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
28341         * m4/file-type.m4 (gl_FILE_TYPE):
28342         * m4/filemode.m4 (gl_FILEMODE):
28343         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
28344         * m4/fpending.m4 (gl_FUNC_FPENDING):
28345         * m4/fprintftime.m4 (gl_FPRINTFTIME):
28346         * m4/fts.m4 (gl_FUNC_FTS):
28347         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
28348         * m4/getdate.m4 (gl_GETDATE):
28349         * m4/gethrxtime.m4 (gl_GETHRXTIME):
28350         * m4/getpagesize.m4 (gl_GETPAGESIZE):
28351         * m4/getpass.m4 (gl_FUNC_GETPASS):
28352         * m4/gettime.m4 (gl_GETTIME):
28353         * m4/getugroups.m4 (gl_GETUGROUPS):
28354         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
28355         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
28356         * m4/hard-locale.m4 (gl_HARD_LOCALE):
28357         * m4/hash.m4 (gl_HASH):
28358         * m4/idcache.m4 (gl_IDCACHE):
28359         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
28360         * m4/lchown.m4 (gl_FUNC_LCHOWN):
28361         * m4/long-options.m4 (gl_LONG_OPTIONS):
28362         * m4/lstat.m4 (gl_FUNC_LSTAT):
28363         * m4/md5.m4 (gl_MD5):
28364         * m4/memcasecmp.m4 (gl_MEMCASECMP):
28365         * m4/memcoll.m4 (gl_MEMCOLL):
28366         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
28367         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
28368         * m4/memxor.m4 (gl_MEMXOR):
28369         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
28370         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
28371         * m4/modechange.m4 (gl_MODECHANGE):
28372         * m4/mountlist.m4 (gl_MOUNTLIST):
28373         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
28374         * m4/openat.m4 (gl_FUNC_OPENAT):
28375         * m4/pathmax.m4 (gl_PATHMAX):
28376         * m4/physmem.m4 (gl_PHYSMEM):
28377         * m4/posixtm.m4 (gl_POSIXTM):
28378         * m4/posixver.m4 (gl_POSIXVER):
28379         * m4/quote.m4 (gl_QUOTE):
28380         * m4/quotearg.m4 (gl_QUOTEARG):
28381         * m4/readtokens.m4 (gl_READTOKENS):
28382         * m4/readutmp.m4 (gl_READUTMP):
28383         * m4/regex.m4 (gl_REGEX):
28384         * m4/safe-read.m4 (gl_SAFE_READ):
28385         * m4/safe-write.m4 (gl_SAFE_WRITE):
28386         * m4/same.m4 (gl_SAME):
28387         * m4/save-cwd.m4 (gl_SAVE_CWD):
28388         * m4/savedir.m4 (gl_SAVEDIR):
28389         * m4/settime.m4 (gl_SETTIME):
28390         * m4/sha1.m4 (gl_SHA1):
28391         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
28392         * m4/stat-macros.m4 (gl_STAT_MACROS):
28393         * m4/stat-time.m4 (gl_STAT_TIME):
28394         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
28395         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
28396         * m4/strdup.m4 (gl_FUNC_STRDUP):
28397         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
28398         * m4/strndup.m4 (gl_FUNC_STRNDUP):
28399         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
28400         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
28401         * m4/time_r.m4 (gl_TIME_R):
28402         * m4/timespec.m4 (gl_TIMESPEC):
28403         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
28404         * m4/unlinkdir.m4 (gl_UNLINKDIR):
28405         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
28406         * m4/userspec.m4 (gl_USERSPEC):
28407         * m4/utimecmp.m4 (gl_UTIMECMP):
28408         * m4/utimens.m4 (gl_UTIMENS):
28409         * m4/xalloc.m4 (gl_XALLOC):
28410         * m4/xgetcwd.m4 (gl_XGETCWD):
28411         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
28412         * m4/xreadlink.m4 (gl_XREADLINK):
28413         * m4/xstrtod.m4 (gl_XSTRTOD):
28414         * m4/yesno.m4 (gl_YESNO):
28415         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
28416         to get the necessary .h files and whatnot.
28417
28418 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
28419             Bruno Haible  <bruno@clisp.org>
28420
28421         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
28422         /bin/sh understanding of '!' conditional negation.
28423
28424 2006-08-21  Jim Meyering  <jim@meyering.net>
28425
28426         * modules/openat (Depends-on): Really alphabetize.
28427
28428         * modules/acl (Depends-on): Add error and quote.
28429
28430         * check-module (find_included_lib_files): Add at-func.c to the
28431         ok-to-include-more-than-once white list.
28432
28433         * modules/openat (Depends-on): Add lstat.  Alphabetize.
28434
28435 2006-08-21  Bruno Haible  <bruno@clisp.org>
28436
28437         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
28438         Emit a pkgdata_DATA variable only if some snippets add contents to it.
28439         Reported by Martin Lambers <marlam@marlam.de>.
28440
28441 2006-08-21  Bruno Haible  <bruno@clisp.org>
28442
28443         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
28444         specify an installation location, don't emit a noinst_LIBRARIES or
28445         noinst_LTLIBRARIES assignment.
28446
28447 2006-08-21  Bruno Haible  <bruno@clisp.org>
28448
28449         BeOS portability.
28450         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
28451         BeOS has mbrtowc() but no <wctype.h>.
28452
28453 2006-08-21  Bruno Haible  <bruno@clisp.org>
28454
28455         BeOS portability.
28456         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
28457         exist.
28458
28459 2006-08-21  Bruno Haible  <bruno@clisp.org>
28460
28461         BeOS portability.
28462         * lib/mbchar.h: Include <wctype.h> only if it exists.
28463
28464 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28465
28466         Remove files that are no longer needed by their respective modules.
28467         * m4/obstack.m4: Remove.
28468         * m4/strerror_r.m4: Remove.
28469         * m4/uint32_t.m4: Remove.
28470         * m4/uintptr_t.m4: Remove.
28471         * m4/ullong_max.m4: Remove.
28472         * m4/xstrtoimax.m4: Remove.
28473         * m4/xstrtoumax.m4: Remove.
28474
28475         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
28476         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
28477         dependencies now capture this.
28478
28479         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
28480         Do not use AC_LIBSOURCES, since gnulib modules now do this.
28481         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
28482         * m4/human.m4 (gl_HUMAN): Likewise.
28483         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
28484         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
28485
28486         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
28487
28488         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
28489         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
28490         stdint.
28491         * m4/human.m4 (gl_HUMAN): Likewise.
28492         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
28493         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
28494         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28495         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28496         * m4/xstrtol (gl_XSTRTOL): Likewise.
28497
28498         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
28499         AC_TYPE_LONG_LONG_INT.
28500         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
28501         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
28502         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
28503         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
28504
28505         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
28506         on stdbool.
28507
28508         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
28509         (gl_PREREQ_XSTRTOUL): Remove.
28510
28511         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
28512
28513         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
28514         mode.
28515
28516 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28517
28518         Add and change modules to make it easier for coreutils to use
28519         gnulib-tool.
28520         * modules/backupfile (Files): Remove m4/d-ino.m4.
28521         (Depends-on): Add d-ino.
28522         * modules/cycle-check (Depends-on): Add stdint.
28523         (lib_SOURCES): Add cycle-check.h.
28524         * modules/d-ino: New module.
28525         * modules/d-type: New module.
28526         * modules/error (Files): Remove m4/strerror_r.m4.
28527         * modules/filemode (Files): Add m4/st_dm_mode.m4.
28528         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
28529         m4/inttypes_h.m4, m4/uintmax_t.m4.
28530         (Depends-on): Add stdint.
28531         (lib_SOURCES): Add fsusage.h.
28532         * modules/getcwd (Files): Remove d-ino.m4.
28533         (Depends-on): Add d-ino.
28534         * modules/getndelim2 (Depends-on): Add stdint.
28535         * modules/glob (Files): Remove m4/d-type.m4.
28536         (Depends-on): Add d-type.
28537         * modules/host-os: New module.
28538         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
28539         m4/inttypes_h.m4, m4/uintmax_t.m4.
28540         * Depends-on: Add stdint.
28541         (lib_SOURCES): Add human.h.
28542         * modules/inttostr (Files): Remove m4/intmax_t.m4,
28543         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
28544         m4/uintmax_t.m4, m4/ulonglong.m4.
28545         (Depends-on): Add stdint.
28546         (EXTRA_DIST): Add inttostr.h.
28547         * modules/lchmod: New module.
28548         * modules/link-follow: New module.
28549         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
28550         (Depends-on): Add lchmod.
28551         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
28552         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
28553         (Depends-on): Add stdint.
28554         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
28555         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
28556         (Depends-on): Add stdint.
28557         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
28558         * modules/perl: New module.
28559         * modules/regex (Depends-on): Add stdint.
28560         * modules/rmdir-errno: New module.
28561         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
28562         m4/intmax_t.m4.
28563         (Depends-on): Add stdint.
28564         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
28565         m4/uintmax_t.m4.
28566         (Depends-on): Add stdint.
28567         * modules/unlink-busy: New module.
28568         * modules/utimecmp (Depends-on): Add stdint.
28569         * modules/uptime: New module.
28570         * modules/winsz-ioctl: New module.
28571         * modules/winsz-termios: New module.
28572         * modules/xnanosleep (Depends-on): Add nanosleep.
28573         * modules/ullong_max: Remove.
28574         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
28575         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
28576         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
28577         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
28578         (Depends-on): Add inttypes.
28579         (lib_SOURCES): Add xstrtol.h.
28580         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
28581         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
28582         * MODULES.html.sh: Move 'assert' into the assert section.
28583         Move 'dummy' into the linking section.
28584         Remove ullong_max.
28585         Add section for compatibility checks for POSIX:2001 functions,
28586         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
28587         winsz-ioctl, and winsz-termios into it.
28588         Add lchmod.
28589         Add top-level Misc section and put host-os, perl, and uptime
28590         into it.
28591
28592 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28593
28594         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
28595         now assume the stdint module.  Do not include inttypes.h.
28596         * lib/fsusage.h: Likewise.
28597         * lib/getndelim2.c: Likewise.
28598         * lib/human.h: Likewise.
28599         * lib/inttostr.h: Likewise.
28600         * lib/obstack.c: Likewise.
28601         * lib/regex_internal.h: Likewise.
28602         * lib/tempname.c: Likewise.
28603         * lib/utimecmp.c: Likewise.
28604         * lib/xstrtol.h: Likewise.
28605
28606         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
28607
28608         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
28609         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
28610         * lib/xtime.h: Likewise.
28611
28612 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28613
28614         * modules/openat (Files): Add lib/fchmodat.c.
28615         Fixes problem reported by Jay Youngman.
28616
28617 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28618
28619         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
28620         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
28621
28622 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
28623             Bruno Haible  <bruno@clisp.org>
28624
28625         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
28626         and is a script that invokes bison. Tighten the code. Add comments.
28627
28628 2006-08-18  Jim Meyering  <jim@meyering.net>
28629
28630         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
28631         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
28632         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
28633         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
28634
28635 2006-08-18  Bruno Haible  <bruno@clisp.org>
28636
28637         * modules/bison-i18n: New file.
28638         * MODULES.html.sh (Internationalization functions): Add it.
28639
28640 2006-08-18  Bruno Haible  <bruno@clisp.org>
28641
28642         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
28643         sys/statvfs.h. When getmntinfo was found, check its declaration and
28644         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
28645
28646 2006-08-18  Bruno Haible  <bruno@clisp.org>
28647
28648         * m4/bison-i18n.m4: New file, from bison.
28649
28650 2006-08-18  Bruno Haible  <bruno@clisp.org>
28651
28652         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
28653         (ME_DUMMY): Treat "kernfs" as a dummy.
28654         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
28655
28656 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28657
28658         Update from coreutils.
28659
28660         2006-08-15  Jim Meyering  <jim@meyering.net>
28661
28662         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
28663
28664         2006-01-17  Jim Meyering  <jim@meyering.net>
28665
28666         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
28667
28668         2006-01-11  Jim Meyering  <jim@meyering.net>
28669
28670         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
28671         Check for the lchmod function.
28672
28673 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28674
28675         Update from coreutils.
28676
28677         * lib/__fpending.h: Add copyright notice.
28678         * lib/fprintftime.h: Likewise.
28679         * lib/savedir.c: Use (C) in copyright notice.
28680         * lib/savedir.h: Likewise.
28681
28682         2006-08-15  Jim Meyering  <jim@meyering.net>
28683
28684         * lib/at-func.c: New file, with the logic of all emulated at-functions.
28685         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
28686         in support of the EXPECTED_ERRNO macro.
28687         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
28688         definitions.  Instead, define the appropriate symbols and include
28689         "at-func.c".
28690         * lib/mkdirat.c (mkdirat): Likewise.
28691         * lib/fchmodat.c (fchmodat): Likewise.
28692         (ENOSYS): Remove definition.
28693         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
28694         it.  Don't include "unistd--.h" -- it wasn't ever used.
28695
28696         2006-01-17  Jim Meyering  <jim@meyering.net>
28697
28698         Rewrite fts.c not to change the current working directory,
28699         by using openat, fstatat, fdopendir, etc..
28700
28701         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
28702         (HAVE_OPENAT_SUPPORT): Define.
28703         [_LIBC] (fchdir): Don't undef or define; no longer used.
28704         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
28705         Now, this `function' always succeeds, and consumes its file descriptor
28706         parameter -- so callers must not close such FDs.  Update callers.
28707         (diropen_fd, opendirat, cwd_advance_fd): New functions.
28708         (diropen): Add parameter, SP.  Adjust all callers.
28709         Implement using diropen_fd, rather than open.
28710         (fts_open): Initialize new member, fts_cwd_fd.
28711         Remove fts_rft-setting code.
28712         (fts_close): Close fts_cwd_fd, if necessary.
28713         (__opendir2): Define in terms of opendir or opendirat,
28714         depending on whether the FST_NOCHDIR flag is set.
28715         (fts_build): Since fts_safe_changedir consumes its FD, and since
28716         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
28717         and close the dup'd file descriptor upon failure.
28718         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
28719         (fts_safe_changedir): Tweak semantics to reflect that this function
28720         now calls cwd_advance_fd and hence consumes its FD argument.
28721         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
28722         [struct FTS] (fts_rft): Remove now-unused member.
28723         [struct FTS] (fts_cycle.state): Improve comment.
28724
28725         * lib/openat.c (openat_needs_fchdir): New function.
28726         * lib/openat.h (openat_needs_fchdir): Declare it.
28727
28728 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
28729
28730         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
28731         Problem and fix reported by Pádraig Brady in
28732         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
28733
28734 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28735
28736         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
28737
28738 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28739
28740         * lib/memcoll.c (memcoll): Optimize for the common case where the
28741         arguments are bytewise equal.
28742
28743 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28744
28745         * doc/regexprops-generic.texi: Add a copyright notice.
28746
28747 2006-08-15  Bruno Haible  <bruno@clisp.org>
28748
28749         * modules/tmpdir (License): Change to LGPL.
28750
28751 2006-08-15  Bruno Haible  <bruno@clisp.org>
28752
28753         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
28754         module.
28755
28756 2006-08-14  Simon Josefsson  <jas@extundo.com>
28757
28758         * config/srclist.txt: Add gnupload.
28759
28760 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28761
28762         Change copyright notice from LGPL 2 to GPL 2, since that's the
28763         standard form used in the gnulib repository.
28764         * tests/test-lock.c: Likewise.
28765         * tests/test-stdint.c: Likewise.
28766         * tests/test-tls.c: Likewise.
28767
28768         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
28769         prelude-manager.  User shorter URLs for GNU projects, without '?'.
28770         Add copyright notice.
28771
28772         * check-module: Add copyright notice.  Output a copyright
28773         notice if "--version" is specified.
28774         * modules/COPYING: New file.
28775         * tests/test-getaddrinfo.c: Add copyright notice.
28776         * tests/test-verify.c: Likewise.
28777
28778 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28779
28780         Change copyright notice from LGPL 2 to GPL 2, since that's the
28781         standard form used in the gnulib repository.
28782         * lib/lock.c: LGPL -> GPL.
28783         * lib/lock.h: Likewise.
28784         * lib/strnlen1.c: Likewise.
28785         * lib/strnlen1.h: Likewise.
28786         * lib/tls.c: Likewise.
28787         * lib/tls.h: Likewise.
28788         * lib/tmpdir.c: Likewise.
28789
28790         * lib/TODO: Remove; this belongs only in coreutils.
28791
28792 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28793
28794         Add copyright notices to long-enough files that lack them, since
28795         otherwise the files aren't clearly free.  Use the same notice that
28796         getdate.texi already uses.
28797         * doc/alloca-opt.texi: Add copyright notice.
28798         * doc/alloca.texi: Likewise.
28799         * doc/ctime.texi: Likewise.
28800         * doc/functions.texi: Likewise.
28801         * doc/gcd.texi: Likewise.
28802         * doc/gnulib-tool.texi: Likewise.
28803         * doc/inet_ntoa.texi: Likewise.
28804         * doc/visibility.texi: Likewise.
28805
28806         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
28807         * doc/quote.texi: Add copyright notice.
28808
28809         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
28810         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
28811         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
28812         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
28813         is now obsolete, and give a pointer to the Sun list.
28814         Add copyright notice.
28815
28816 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
28817
28818         * config/srclistvars.sh: Add copyright notice.
28819
28820 2006-08-14  Eric Blake  <ebb9@byu.net>
28821
28822         Import the following change from libc:
28823
28824         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
28825
28826         Upstream bug 2997.
28827         * lib/misc/error.c: Add space between program name and message if file
28828         name is missing.
28829
28830 2006-08-12  Karl Berry  <karl@gnu.org>
28831
28832         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
28833         remove, these originate in gnulib now.
28834
28835 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28836
28837         * doc/Makefile (standards.info standards.html standards.dvi):
28838         Also depend on make-stds.texi.
28839
28840 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
28841
28842         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
28843         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
28844
28845         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
28846         in wchar_t.  Problem reported by Eric Blake.
28847
28848         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
28849         LEN is smaller than SIZE.  Suggested by Bruno Haible.
28850         Also, help the compiler to keep LEN in a register.
28851
28852 2006-08-11  Eric Blake  <ebb9@byu.net>
28853
28854         * users.txt: Sort.  Add tar.
28855
28856 2006-08-11  Bruno Haible  <bruno@clisp.org>
28857
28858         * users.txt: New file.
28859
28860 2006-08-11  Bruno Haible  <bruno@clisp.org>
28861
28862         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
28863         before <wchar.h>. Needed for OSF/1 and BSD/OS.
28864
28865 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
28866
28867         * modules/snprintf (Depends-on): Remove minmax.
28868         (Maintainer): Add self and Bruno.
28869
28870 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
28871
28872         * lib/.cppi-disable: Add snprintf.h, socket_.h.
28873         * lib/snprintf.c: Include <errno.h> and <limits.h>.
28874         (EOVERFLOW): Define if the system does not.
28875         Do not include "minmax.h"; it wasn't used.
28876         (snprintf): Don't assume size_t promotes to an unsigned type.
28877         Fix bug when generated string was too long for the buffer: the
28878         buffer's contents are supposed to be the initial prefix of the
28879         output.  Don't assume vasnprintf returns EOVERFLOW if the size
28880         exceeds INT_MAX; do the check ourselves.
28881
28882         Import the following changes from libc:
28883
28884         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
28885
28886         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
28887         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
28888         set wc to the byte which couldn't be converted.
28889         (re_string_reconstruct): Don't clear valid_raw_len before calling
28890         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
28891         tip_context using re_string_context_at.
28892
28893         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
28894
28895         * lib/posix/regex.h: g++ still cannot handled [restrict].
28896
28897         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
28898
28899         * lib/posix/regex.h: Remove special handling for VMS.
28900
28901 2006-08-10  Jim Meyering  <jim@meyering.net>
28902
28903         * modules/same-inode: New module.
28904         * modules/dev-ino: New module.
28905         * modules/cycle-check: Depend on these modules, rather than simply
28906         including their .h files.
28907         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
28908         required via m4/cycle-check.m4.
28909         * modules/same: Depend on new same-inode module, rather than
28910         including same-inode.h.
28911         * modules/chdir-safer: New file.
28912
28913         * modules/chown (Depends-on): Add stat-macros.
28914
28915 2006-08-10  Jim Meyering  <jim@meyering.net>
28916
28917         * m4/cycle-check.m4: New file.
28918         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
28919         * m4/dev-ino.m4, m4/same-inode.m4: New files.
28920
28921 2006-08-10  Eric Blake  <ebb9@byu.net>
28922
28923         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
28924         in from original proposal.
28925
28926 2006-08-10  Eric Blake  <ebb9@byu.net>
28927         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
28928
28929         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
28930         namespace.
28931
28932 2006-08-10  Bruno Haible  <bruno@clisp.org>
28933
28934         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
28935         as well.
28936
28937 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28938
28939         Sync from coreutils.
28940
28941         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
28942
28943         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
28944         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
28945
28946 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28947
28948         * modules/restrict: Remove; no longer needed now that we assume
28949         Autoconf 2.59 or later.
28950         * MODULES.html.sh: Remove 'restrict'.
28951         * modules/argp (Depends-on): Remove 'restrict'.
28952         * modules/base64 (Depends-on): Likewise.
28953         * modules/gc (Depends-on): Likewise.
28954         * modules/getaddrinfo (Depends-on): Likewise.
28955         * modules/glob (Depends-on): Likewise.
28956         * modules/inet_ntop (Depends-on): Likewise.
28957         * modules/inet_pton (Depends-on): Likewise.
28958         * modules/memxor (Depends-on): Likewise.
28959         * modules/regex (Depends-on): Likewise.
28960         * modules/strtok_r (Depends-on): Likewise.
28961         * modules/time_r (Depends-on): Likewise.
28962
28963 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
28964
28965         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
28966         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
28967         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
28968         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
28969         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
28970         * m4/memxor.m4 (gl_MEMXOR): Likewise.
28971         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
28972         gl_C_RESTRICT replaced by AC_C_RESTRICT.
28973
28974         Merge from coreutils.
28975         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
28976         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
28977         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
28978         * m4/time_r.m4 (gl_TIME_R): Likewise.
28979
28980 2006-08-09  Karl Berry  <karl@gnu.org>
28981
28982         * config/srclist.txt: no more gettext-tools, per Bruno.
28983
28984 2006-08-08  Eric Blake  <ebb9@byu.net>
28985
28986         * modules/verror: New module.
28987         * MODULES.html.sh: Document it.
28988
28989 2006-08-08  Eric Blake  <ebb9@byu.net>
28990
28991         * lib/verror.h, lib/verror.c: New files.
28992
28993 2006-08-08  Eric Blake  <ebb9@byu.net>
28994
28995         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
28996         verror_at_line output complies with GNU Coding Standards even when
28997         file is NULL.
28998
28999 2006-08-07  Bruno Haible  <bruno@clisp.org>
29000
29001         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
29002         versions of AIX.
29003         Reported by Ralf Wildenhues.
29004
29005 2006-08-07  Bruno Haible  <bruno@clisp.org>
29006
29007         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
29008         in an AC_DEFUN. Needed so that the autoconf snippets can use
29009         AC_REQUIRE.
29010
29011 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29012
29013         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29014         Initialize pkgdata_DATA.
29015         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
29016         overriding it.
29017
29018 2006-08-06  Eric Blake  <ebb9@byu.net>
29019
29020         * lib/error.h: Fold in some upstream changes from glibc.
29021         * lib/error.c: Likewise.
29022
29023 2006-08-04  Bruno Haible  <bruno@clisp.org>
29024
29025         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29026         Make the mostlyclean-local rule depend on mostlyclean-generic.
29027         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
29028
29029 2006-07-31  Bruno Haible  <bruno@clisp.org>
29030
29031         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
29032         <stdlib.h>, <string.h>.
29033
29034 2006-07-30  Bruno Haible  <bruno@clisp.org>
29035
29036         * modules/readlink (License): Change to LGPL.
29037
29038 2006-07-30  Bruno Haible  <bruno@clisp.org>
29039
29040         * modules/javaversion (Makefile.am): Distribute javaversion.java and
29041         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
29042         set PKGDATADIR to point to it.
29043
29044 2006-07-30  Bruno Haible  <bruno@clisp.org>
29045
29046         * modules/csharpexec (configure.ac): Comment out macro invocation.
29047         * modules/javaexec (configure.ac): Likewise.
29048         * modules/javacomp-script (configure.ac): Likewise.
29049
29050         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
29051
29052 2006-07-30  Bruno Haible  <bruno@clisp.org>
29053
29054         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
29055         linked-list.
29056
29057 2006-07-30  Bruno Haible  <bruno@clisp.org>
29058
29059         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
29060
29061 2006-07-30  Bruno Haible  <bruno@clisp.org>
29062
29063         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29064         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
29065         get removed.
29066
29067 2006-07-29  Bruno Haible  <bruno@clisp.org>
29068
29069         Make it possible for gnulib-tool to work with locally modified or
29070         augmented gnulib repositories.
29071         * gnulib-tool (func_usage): Document --local-dir option.
29072         (local_gnulib_dir): New variable.
29073         Handle --local-dir option.
29074         (func_lookup_file): New function.
29075         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
29076         (func_get_description, func_get_filelist, func_get_description,
29077         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
29078         func_get_automake_snippet, func_get_include_directive,
29079         func_get_license, func_get_maintainer): Use func_lookup_file.
29080         (func_import, func_create_testdir): Use func_lookup_file.
29081
29082 2006-07-29  Bruno Haible  <bruno@clisp.org>
29083
29084         * modules/setenv (Depends-on): Add unistd.
29085
29086 2006-07-29  Bruno Haible  <bruno@clisp.org>
29087
29088         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
29089
29090 2006-07-29  Bruno Haible  <bruno@clisp.org>
29091
29092         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
29093
29094 2006-07-29  Bruno Haible  <bruno@clisp.org>
29095
29096         * gnulib-tool (import, update): If there is no Makefile.am, look at
29097         aclocal.m4, instead of bailing out.
29098
29099 2006-07-29  Bruno Haible  <bruno@clisp.org>
29100
29101         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
29102         Categorize the options by when they are useful.
29103
29104 2006-07-29  Bruno Haible  <bruno@clisp.org>
29105
29106         * gnulib-tool (func_usage): Document option --no-libtool.
29107         Handle option --no-libtool.
29108         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
29109         for changed semantics of $libtool variable.
29110         (func_import): Likewise. If libtool is not used, show this through
29111         an option --no-libtool.
29112         (func_create_testdir): Update.
29113
29114 2006-07-29  Bruno Haible  <bruno@clisp.org>
29115
29116         * gnulib-tool (func_import): Extend error message about missing
29117         --doc-base.
29118
29119 2006-07-29  Bruno Haible  <bruno@clisp.org>
29120
29121         * gnulib-tool (func_import): Don't create the $docbase directory if
29122         there is no file to store there.
29123
29124 2006-07-29  Bruno Haible  <bruno@clisp.org>
29125
29126         * gnulib-tool (autoconf_minversion): If a --dir option is given and
29127         relevant, look for configure.ac there, not in the current directory.
29128         Also use a simple search for AC_PREREQ, not "autoconf --trace".
29129
29130 2006-07-29  Bruno Haible  <bruno@clisp.org>
29131
29132         * gnulib-tool (SORT): New variable.
29133         (func_usage): Undocument --assume-autoconf option.
29134         Remove --assume-autoconf option handling.
29135         (autoconf_minversion): Determine from the contents of configure.ac.
29136         (func_import): Remove autoconf_minversion handling.
29137         Suggested by Eric Blake.
29138
29139 2006-07-29  Bruno Haible  <bruno@clisp.org>
29140
29141         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
29142
29143 2006-07-29  Bruno Haible  <bruno@clisp.org>
29144
29145         * config/srclist.txt (*setenv.[ch]): Remove rules.
29146
29147 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29148
29149         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
29150
29151 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29152
29153         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
29154         arpa/inet.h.
29155
29156 2006-07-28  Simon Josefsson  <jas@extundo.com>
29157
29158         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
29159         * modules/inet_pton (Depends-on): Likewise.
29160
29161 2006-07-28  Simon Josefsson  <jas@extundo.com>
29162
29163         * m4/netinet_in_h.m4: New file.
29164
29165 2006-07-28  Simon Josefsson  <jas@extundo.com>
29166
29167         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
29168         #include's.
29169
29170 2006-07-28  Simon Josefsson  <jas@extundo.com>
29171
29172         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
29173         #include's.
29174
29175 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
29176
29177         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
29178         setgid on directories only if they set these bits.
29179         * lib/modechange.h: Remove obsolete comment about masks.
29180
29181 2006-07-28  Eric Blake  <ebb9@byu.net>
29182
29183         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
29184         macro expansion.
29185
29186 2006-07-28  Bruno Haible  <bruno@clisp.org>
29187
29188         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
29189
29190 2006-07-28  Bruno Haible  <bruno@clisp.org>
29191
29192         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
29193
29194 2006-07-28  Bruno Haible  <bruno@clisp.org>
29195
29196         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
29197         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
29198         Define fallbacks.
29199         Avoids link error on FreeBSD 4.x.
29200         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
29201
29202         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
29203         encoding.
29204         * lib/mbswidth.c (iswcntrl): Likewise.
29205
29206 2006-07-27  Bruno Haible  <bruno@clisp.org>
29207
29208         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
29209         test.
29210
29211 2006-07-27  Bruno Haible  <bruno@clisp.org>
29212
29213         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
29214         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
29215         defined.
29216
29217 2006-07-26  Eric Blake  <ebb9@byu.net>
29218
29219         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
29220
29221 2006-07-26  Eric Blake  <ebb9@byu.net>
29222
29223         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
29224         like mingw that lack mkstemp.
29225         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
29226         avoid compilation warning on mingw.
29227
29228 2006-07-26  Bruno Haible  <bruno@clisp.org>
29229
29230         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
29231         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
29232         INT_FAST*_MIN, INTPTR_MIN.
29233
29234 2006-07-25  Bruno Haible  <bruno@clisp.org>
29235
29236         * modules/version-etc (Depends-on): Add stdarg.
29237
29238 2006-07-25  Bruno Haible  <bruno@clisp.org>
29239
29240         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
29241         complex commands.
29242
29243 2006-07-25  Bruno Haible  <bruno@clisp.org>
29244
29245         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
29246         defined in <stdarg.h> or config.h.
29247
29248 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29249
29250         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
29251         (gl_STDIO_SAFER): Remove.
29252
29253 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
29254
29255         * MODULES.html.sh (File stream based Input/Output):
29256         Add fopen-safer, tmpfile-safer; remove stdio-safer.
29257         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
29258         * modules/fopen-safer, modules/tmpfile-safer: New files.
29259         * modules/stdio-safer: Remove.
29260
29261 2006-07-24  Bruno Haible  <bruno@clisp.org>
29262
29263         * modules/tmpdir: New file.
29264         * MODULES.html.sh (File system functions): Add it.
29265
29266 2006-07-24  Bruno Haible  <bruno@clisp.org>
29267
29268         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
29269         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
29270
29271 2006-07-24  Bruno Haible  <bruno@clisp.org>
29272
29273         * modules/clean-temp: New file.
29274
29275 2006-07-24  Bruno Haible  <bruno@clisp.org>
29276
29277         * m4/tmpdir.m4: New file, from GNU gettext.
29278
29279 2006-07-24  Bruno Haible  <bruno@clisp.org>
29280
29281         * lib/tmpdir.h: New file, from GNU gettext.
29282         * lib/tmpdir.c: New file, from GNU gettext.
29283
29284 2006-07-24  Bruno Haible  <bruno@clisp.org>
29285
29286         * lib/clean-temp.h: New file, from GNU gettext.
29287         * lib/clean-temp.c: New file, from GNU gettext.
29288
29289 2006-07-23  Eric Blake  <ebb9@byu.net>
29290
29291         * modules/stdio-safer (Files): Add tmpfile-safer.c.
29292         (Depends-on): Add binary-io.
29293
29294 2006-07-23  Eric Blake  <ebb9@byu.net>
29295
29296         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
29297
29298 2006-07-23  Eric Blake  <ebb9@byu.net>
29299
29300         * lib/tmpfile-safer.c: New file.
29301         * lib/stdio-safer.h (fopen_safer): Add prototype.
29302         * lib/stdio--.h (tmpfile): Make safer.
29303
29304 2006-07-23  Bruno Haible  <bruno@clisp.org>
29305
29306         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
29307         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
29308         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
29309         gl_linked_remove_at): Use it.
29310
29311 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29312         and Simon Josefsson <jas@extundo.com>
29313
29314         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
29315
29316         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
29317
29318 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29319
29320         * modules/close-stream: New file.
29321         * modules/closeout (Description): Make it clear that it exits
29322         with a diagnostic on error.
29323         (Depends-on): Add close-stream.  Remove fpending, stdbool.
29324         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
29325
29326 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29327
29328         * m4/close-stream.m4: New file.
29329
29330 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
29331
29332         * lib/close-stream.c, lib/close-stream.h: New files.
29333
29334 2006-07-22  Bruno Haible  <bruno@clisp.org>
29335
29336         Merge from GNU gettext 0.15.
29337
29338         2006-05-01  Bruno Haible  <bruno@clisp.org>
29339
29340                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
29341
29342         2006-07-22  Bruno Haible  <bruno@clisp.org>
29343
29344                 * modules/javaversion: New file.
29345                 * MODULES.html.sh (Java): Add javaversion.
29346
29347         2006-03-12  Bruno Haible  <bruno@clisp.org>
29348
29349                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
29350
29351         2005-12-04  Bruno Haible  <bruno@clisp.org>
29352
29353                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
29354                 (untested).
29355
29356         2006-06-21  Bruno Haible  <bruno@clisp.org>
29357
29358                 Avoid warnings from recent versions of mcs.
29359                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
29360                 -o, -L, -r any more. Use options documented since mcs-1.0
29361                 instead. Similarly for -g.
29362
29363         2005-12-04  Bruno Haible  <bruno@clisp.org>
29364
29365                 * build-aux/csharpcomp.sh.in: Suffix for resources is
29366                 .resources, not .resource.
29367
29368         2005-07-09  Bruno Haible  <bruno@clisp.org>
29369
29370                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
29371                 add a .dll suffix.
29372                 Reported by Mark Junker <mjscod@gmx.de>.
29373
29374         2006-07-22  Bruno Haible  <bruno@clisp.org>
29375
29376                 * modules/gettext: Upgrade to gettext-0.15.
29377                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
29378                 m4/visibility.m4.
29379                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
29380
29381 2006-07-22  Bruno Haible  <bruno@clisp.org>
29382
29383         Merge from GNU gettext 0.15.
29384
29385         2006-03-25  Bruno Haible  <bruno@clisp.org>
29386
29387                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
29388
29389         2006-07-21  Bruno Haible  <bruno@clisp.org>
29390
29391                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
29392                 "1.1".
29393
29394         2006-05-09  Bruno Haible  <bruno@clisp.org>
29395
29396                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
29397                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
29398                 for the conftestver execution.
29399
29400         2006-05-01  Bruno Haible  <bruno@clisp.org>
29401
29402                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
29403                 optional target-version argument. Verify that the compiler
29404                 groks source of the specified source-version, or add -source
29405                 option as necessary. Verify that the compiler produces
29406                 bytecode in the specified target-version, or add -target and
29407                 -source options as necessary. Make the result of the test
29408                 available as variable CONF_JAVAC. Also log error output in
29409                 config.log.
29410
29411         2006-03-11  Bruno Haible  <bruno@clisp.org>
29412
29413                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
29414
29415         2006-05-09  Bruno Haible  <bruno@clisp.org>
29416
29417                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
29418                 CLASSPATH_SEPARATOR to a semicolon.
29419
29420         2006-03-12  Bruno Haible  <bruno@clisp.org>
29421
29422                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
29423                 available as variable CONF_JAVA, for subsequent autoconf
29424                 tests. Also log error output in config.log.
29425
29426         2006-07-19  Bruno Haible  <bruno@clisp.org>
29427
29428                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
29429                 that getline works on glibc2 systems. Needed to avoid trouble
29430                 in relocatable.c.
29431                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
29432
29433         2005-12-04  Bruno Haible  <bruno@clisp.org>
29434
29435                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
29436                 launcher (untested).
29437
29438         2005-12-04  Bruno Haible  <bruno@clisp.org>
29439
29440                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
29441
29442         2006-07-22  Bruno Haible  <bruno@clisp.org>
29443
29444                 * gettext.m4: Update from GNU gettext-0.15.
29445                 * nls.m4: Likewise.
29446                 * po.m4: Likewise.
29447                 * inttypes-pri.m4: Likewise.
29448                 * inttypes-h.m4: Renamed from inttypes.m4.
29449                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
29450
29451 2006-07-22  Bruno Haible  <bruno@clisp.org>
29452
29453         Merge from GNU gettext 0.15.
29454
29455         2005-07-05  Bruno Haible  <bruno@clisp.org>
29456
29457                 * printf-args.c (printf_fetchargs): Work around broken
29458                 definition of wint_t on mingw.
29459
29460         2005-02-12  Bruno Haible  <bruno@clisp.org>
29461
29462                 * xallocsa.h: Add extern "C" for C++.
29463
29464         2006-05-17  Bruno Haible  <bruno@clisp.org>
29465
29466                 Cygwin portability.
29467                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
29468
29469         2006-04-30  Bruno Haible  <bruno@clisp.org>
29470
29471                 * progreloc.c: Include <mach-o/dyld.h> if available.
29472                 (find_executable): Use _NSGetExecutablePath when possible.
29473
29474         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
29475
29476                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
29477                 function.
29478
29479         2005-12-29  Bruno Haible  <bruno@clisp.org>
29480
29481                 * progreloc.c (set_program_name_and_installdir): Fix
29482                 compilation error.
29483
29484         2005-12-04  Bruno Haible  <bruno@clisp.org>
29485
29486                 Cygwin portability.
29487                 * progreloc.c: Include <windows.h> also on Cygwin.
29488                 (find_executable): Add support for Cygwin.
29489                 (set_program_name_and_installdir): Handle also platforms with
29490                 nonempty EXEEXT.
29491
29492         2006-07-11  Bruno Haible  <bruno@clisp.org>
29493
29494                 * javacomp.c: Fix a comment.
29495                 Reported by Jim Meyering.
29496
29497         2006-04-30  Bruno Haible  <bruno@clisp.org>
29498
29499                 * javacomp.h (compile_java_class): Add source_version,
29500                 target_version arguments.
29501                 * javacomp.c: Rewritten to choose only a compiler that
29502                 respects the specified source_version and target_version.
29503
29504         2006-06-27  Bruno Haible  <bruno@clisp.org>
29505
29506                 Assume correct S_ISDIR macro.
29507                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
29508
29509         2006-07-22  Bruno Haible  <bruno@clisp.org>
29510
29511                 * javaversion.h: New file, from GNU gettext.
29512                 * javaversion.c: New file, from GNU gettext.
29513                 * javaversion.java: New file, from GNU gettext.
29514                 * javaversion.class: New file, from GNU gettext.
29515
29516         2006-05-17  Bruno Haible  <bruno@clisp.org>
29517
29518                 Cygwin portability.
29519                 * javaexec.c (execute_java_class): Test for jview program
29520                 also on Cygwin.
29521
29522         2006-04-09  Bruno Haible  <bruno@clisp.org>
29523
29524                 * fatal-signal.c: Don't include string.h.
29525                 (at_fatal_signal): Use a copying loop instead of memcpy.
29526
29527         2005-12-04  Bruno Haible  <bruno@clisp.org>
29528
29529                 * csharpexec.c: Add support for 'clix' launcher (untested).
29530                 (execute_csharp_using_sscli): New function.
29531                 (execute_csharp_program): Call it.
29532
29533         2006-06-21  Bruno Haible  <bruno@clisp.org>
29534
29535                 Avoid warnings from recent versions of mcs.
29536                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
29537                 -o, -L, -r any more. Use options documented since mcs-1.0
29538                 instead. Similarly for -g.
29539
29540         2005-07-09  Bruno Haible  <bruno@clisp.org>
29541
29542                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
29543                 add a .dll suffix.
29544                 Reported by Mark Junker <mjscod@gmx.de>.
29545
29546         2006-06-17  Bruno Haible  <bruno@clisp.org>
29547
29548                 * config.charset: Update for NetBSD 3.0.
29549
29550         2006-05-17  Bruno Haible  <bruno@clisp.org>
29551
29552                 Cygwin portability.
29553                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
29554
29555         2006-05-16  Bruno Haible  <bruno@clisp.org>
29556
29557                 * localcharset.c [CYGWIN]: Include <windows.h>.
29558                 (get_charset_aliases): For Cygwin, return the same CPxxx
29559                 aliases list as under WIN32.
29560                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
29561                 the environment variables. Fall back to GetACP().
29562
29563         2006-04-05  Bruno Haible  <bruno@clisp.org>
29564
29565                 * config.charset: Update Juan Manuel Guerrero's address.
29566
29567         2005-02-12  Bruno Haible  <bruno@clisp.org>
29568
29569                 * allocsa.h: Add extern "C" for C++.
29570
29571         2005-02-10  Bruno Haible  <bruno@clisp.org>
29572
29573                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
29574                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
29575
29576         2006-07-22  Bruno Haible  <bruno@clisp.org>
29577
29578                 * gettext.h: Update to GNU gettext-0.15.
29579
29580 2006-07-22  Bruno Haible  <bruno@clisp.org>
29581
29582         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
29583         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
29584         lib-prefix.m4, longdouble.m4, ssize_t.m4.
29585
29586 2006-07-21  Eric Blake  <ebb9@byu.net>
29587
29588         * modules/stdlib-safer: New file.
29589         * MODULES.html.sh (File stream based Input/Output): Add
29590         stdlib-safer.
29591
29592 2006-07-21  Eric Blake  <ebb9@byu.net>
29593
29594         * lib/stdlib-safer.h: New file from coreutils, required by
29595         stdlib--.h.
29596
29597 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
29598
29599         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
29600
29601 2006-07-20  Bruno Haible  <bruno@clisp.org>
29602
29603         * gnulib-tool: Recognize new option --assume-autoconf.
29604         (autoconf_minversion): New variable.
29605         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
29606
29607 2006-07-20  Bruno Haible  <bruno@clisp.org>
29608
29609         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
29610
29611 2006-07-19  Derek R. Price  <derek@ximbiot.com>
29612
29613         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
29614         Reindent and repaginate.
29615
29616 2006-07-19  Derek Price  <derek@ximbiot.com>
29617
29618         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
29619         Correct grammar.
29620
29621 2006-07-17  Bruno Haible  <bruno@clisp.org>
29622
29623         * modules/list: New file.
29624         * modules/array-list: New file.
29625         * modules/carray-list, modules/carray-list-tests: New files.
29626         * modules/linked-list, modules/linked-list-tests: New files.
29627         * modules/avltree-list, modules/avltree-list-tests: New files.
29628         * modules/rbtree-list, modules/rbtree-list-tests: New files.
29629         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
29630         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
29631         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
29632         * modules/oset: New file.
29633         * modules/array-oset: New file.
29634         * modules/avltree-oset, modules/avltree-oset-tests: New files.
29635         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
29636         * tests/test-carray_list.c: New file.
29637         * tests/test-linked_list.c: New file.
29638         * tests/test-avltree_list.c: New file.
29639         * tests/test-rbtree_list.c: New file.
29640         * tests/test-linkedhash_list.c: New file.
29641         * tests/test-avltreehash_list.c: New file.
29642         * tests/test-rbtreehash_list.c: New file.
29643         * tests/test-avltree_oset.c: New file.
29644         * tests/test-rbtree_oset.c: New file.
29645         * MODULES.html.sh (Container data structures): New section.
29646
29647 2006-07-17  Bruno Haible  <bruno@clisp.org>
29648
29649         * m4/gl_list.m4: New file.
29650
29651 2006-07-17  Bruno Haible  <bruno@clisp.org>
29652
29653         * lib/gl_list.h: New file.
29654         * lib/gl_list.c: New file.
29655         * lib/gl_array_list.h: New file.
29656         * lib/gl_array_list.c: New file.
29657         * lib/gl_carray_list.h: New file.
29658         * lib/gl_carray_list.c: New file.
29659         * lib/gl_linked_list.h: New file.
29660         * lib/gl_linked_list.c: New file.
29661         * lib/gl_anylinked_list1.h: New file.
29662         * lib/gl_anylinked_list2.h: New file.
29663         * lib/gl_avltree_list.h: New file.
29664         * lib/gl_avltree_list.c: New file.
29665         * lib/gl_anyavltree_list1.h: New file.
29666         * lib/gl_anyavltree_list2.h: New file.
29667         * lib/gl_rbtree_list.h: New file.
29668         * lib/gl_rbtree_list.c: New file.
29669         * lib/gl_anyrbtree_list1.h: New file.
29670         * lib/gl_anyrbtree_list2.h: New file.
29671         * lib/gl_anytree_list1.h: New file.
29672         * lib/gl_anytree_list2.h: New file.
29673         * lib/gl_linkedhash_list.h: New file.
29674         * lib/gl_linkedhash_list.c: New file.
29675         * lib/gl_anyhash_list1.h: New file.
29676         * lib/gl_anyhash_list2.h: New file.
29677         * lib/gl_avltreehash_list.h: New file.
29678         * lib/gl_avltreehash_list.c: New file.
29679         * lib/gl_rbtreehash_list.h: New file.
29680         * lib/gl_rbtreehash_list.c: New file.
29681         * lib/gl_anytreehash_list1.h: New file.
29682         * lib/gl_anytreehash_list2.h: New file.
29683
29684         * lib/gl_oset.h: New file.
29685         * lib/gl_oset.c: New file.
29686         * lib/gl_array_oset.h: New file.
29687         * lib/gl_array_oset.c: New file.
29688         * lib/gl_avltree_oset.h: New file.
29689         * lib/gl_avltree_oset.c: New file.
29690         * lib/gl_rbtree_oset.h: New file.
29691         * lib/gl_rbtree_oset.c: New file.
29692         * lib/gl_anytree_oset.h: New file.
29693
29694 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
29695
29696         * m4/mkancesdirs.m4: New file.
29697         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
29698         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
29699         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
29700         it.
29701
29702 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
29703
29704         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
29705         * lib/mkancesdirs.h: New files.
29706         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
29707         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
29708         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
29709         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
29710         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
29711         callers changed.  Revamp internals significantly, by not
29712         attempting to create directories that are temporarily more
29713         permissive than the final results.  Do not attempt to use
29714         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
29715         This removes some race conditions, fixes some bugs, and simplifies
29716         things.  Use new dirchownmod function to do owner and mode changes.
29717         * lib/mkdir-p.h: Likewise.
29718         * lib/modechange.c (octal_to_mode): New function.
29719         (struct mode_change): New member mentioned.
29720         (make_node_op_equals): New arg mentioned.  All callers changed.
29721         (mode_compile): Keep track of which mode bits the user has explicitly
29722         mentioned.
29723         (mode_adjust): New arg DIR, so that we implement the X op correctly.
29724         New arg PMODE_BITS, to keep track of which mode bits the user
29725         mentioned; it treats S_ISUID and S_ISGID speciall.
29726         All callers changed.
29727         * lib/modechange.h: Likewise.
29728
29729 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
29730
29731         * MODULES.html.sh: Add mkancestors.
29732         * modules/mkancesdirs: New module.
29733         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
29734         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
29735         The chdir-safer and afs files are now orphans; I'll remove them
29736         unless someone speaks up.
29737         Add lib/dirchownmod.c, lib/dirchownmod.h.
29738         (Depends-on): Remove alloca, chown, save-cwd, dirname.
29739         Add lchown, mkancesdirs.
29740         (Maintainer): Add self.
29741
29742 2006-07-15  Karl Berry  <karl@gnu.org>
29743
29744         * gnulib-tool: help message wording/arrangement.
29745
29746 2006-07-14  Simon Josefsson  <jas@extundo.com>
29747
29748         * doc/gnulib.texi (Libtool and Windows): New section.
29749
29750 2006-07-12  Simon Josefsson  <jas@extundo.com>
29751
29752         * modules/gendocs (License): Fix license, approved by Karl.
29753
29754 2006-07-12  Eric Blake  <ebb9@byu.net>
29755
29756         * MODULES.html.sh: Add gendocs.
29757
29758 2006-07-11  Eric Blake  <ebb9@byu.net>
29759
29760         * modules/fdl: New module, to install doc/fdl.texi.
29761         * MODULES.html.sh: Add new section for documentation modules.
29762         * gnulib-tool: Avoid space-tab.
29763         (--doc-base): New option, to manage files from doc.
29764
29765 2006-07-11  Eric Blake  <ebb9@byu.net>
29766
29767         * m4/absolute-header.m4: Fix comments to match recent change.
29768
29769 2006-07-11  Eric Blake  <ebb9@byu.net>
29770
29771         * gnulib-tool: List --doc-base before --tests-base.
29772
29773 2006-07-11  Derek R. Price  <derek@ximbiot.com>
29774
29775         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
29776
29777 2006-07-11  Bruno Haible  <bruno@clisp.org>
29778
29779         * README: Mention where to put documentation.
29780
29781 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29782
29783         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
29784
29785 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
29786
29787         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
29788         to stdint.m4.
29789
29790 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
29791
29792         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
29793         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
29794         "no/such/file/stdint.h" when there is no such file, so that
29795         the resulting C code can be parsed by dodgy compilers.
29796         Problems reported by Bob Proulx.
29797
29798 2006-07-10  Derek R. Price  <derek@ximbiot.com>
29799
29800         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
29801         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
29802         macros into the GNU _D_EXACT_NAMLEN.
29803         * lib/savedir.c:  Likewise.
29804         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
29805
29806 2006-07-10  Derek R. Price  <derek@ximbiot.com>
29807         and Paul Eggert  <eggert@cs.ucla.edu>
29808
29809         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
29810         * m4/savedir.m4:
29811         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
29812         macros into the GNU _D_EXACT_NAMLEN.
29813
29814 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29815
29816         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
29817         around the absolute name, to work around a problem with the HP-UX
29818         11.23 native C compiler, reported by Bob Proulx.
29819
29820 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29821
29822         * doc/maintain.texi, make-stds.texi: Sync from
29823         <http://savannah.gnu.org/projects/gnustandards>.
29824
29825 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
29826
29827         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
29828
29829 2006-07-09  Jim Meyering  <jim@meyering.net>
29830
29831         * m4/glob.m4: Remove a doubled word in a comment.
29832
29833 2006-07-09  Jim Meyering  <jim@meyering.net>
29834
29835         * lib/argp-pv.c: Remove a doubled word in a comment.
29836         * lib/check-version.c (check_version): Likewise.
29837         * lib/javacomp.c (compile_java_class): Likewise.
29838
29839 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
29840
29841         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
29842         for the benefit of people using Autoconf 2.60.  If you want to
29843         support older Autoconf versions you can copy m4/onceonly_2_57.m4
29844         (or m4/onceonly.m4, if pre-2.57) manually.
29845
29846 2006-07-08  Jim Meyering  <jim@meyering.net>
29847
29848         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
29849         comment.
29850         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
29851         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
29852         comment.
29853
29854 2006-07-08  Jim Meyering  <jim@meyering.net>
29855
29856         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
29857
29858 2006-07-07  Simon Josefsson  <jas@extundo.com>
29859
29860         * tests/test-crc.c: Change expected crc value, the test vector
29861         were probably computed using the old broken crc.c?
29862
29863 2006-07-06  Simon Josefsson  <jas@extundo.com>
29864
29865         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
29866         now the canonical place for the M4 file).
29867
29868         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
29869         from the sys_socket dependency now.
29870
29871         * modules/inet_pton (Files): Ditto.
29872
29873         * modules/inet_ntop (Files): Ditto.
29874
29875 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
29876
29877         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
29878         not gl_PREREQ_GETUSERSHELL.
29879
29880 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29881
29882         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
29883         with only one argument, for Autoconf 2.60.
29884         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
29885         expand to nothing, so add a shell command to avoid syntax error.
29886         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
29887
29888 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29889
29890         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
29891
29892 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29893
29894         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
29895         no longer needed.  Check for isblank decl.
29896         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
29897         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
29898         of existence.
29899
29900 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29901
29902         * lib/getloadavg.c: Use __VMS, not VMS.
29903         * lib/getopt.c: Likewise.
29904         * lib/getpagesize.h: Likewise.
29905         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
29906         and probably does not work.
29907
29908 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
29909
29910         * lib/.cppi-disable: Add wcwidth.
29911         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
29912         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
29913         (ISGRAPH): Remove.  All uses changed to isgraph.
29914         (FOLD) [!defined _LIBC]: Remove special case.
29915         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
29916         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
29917         HAVE_ISBLANK.
29918         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
29919         case.
29920
29921 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
29922
29923         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
29924         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
29925         brackets.  Other minor changes to suppress some compiler
29926         warnings.
29927
29928 2006-07-06  Derek R. Price  <derek@ximbiot.com>
29929         and Paul Eggert  <eggert@cs.ucla.edu>
29930
29931         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
29932         of invoking obsolescent AC_HEADER_DIRENT macro.
29933         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
29934         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
29935         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
29936         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
29937         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
29938         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
29939         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
29940         * m4/readdir.m4: Remove; no longer needed.
29941
29942 2006-07-06  Derek R. Price  <derek@ximbiot.com>
29943         and Paul Eggert  <eggert@cs.ucla.edu>
29944
29945         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
29946         Don't worry about this obsolete case any more.
29947         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
29948         directories.
29949         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
29950         worry about this obsolete case any more.
29951         * lib/fts.c: Likewise.
29952         * lib/getcwd.c: Likewise.
29953         * lib/glob.h: Likewise.
29954         * lib/savedir.c: Likewise.
29955
29956 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29957
29958         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
29959         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
29960         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
29961         needed.
29962         All uses removed.
29963         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
29964         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
29965         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
29966         needed.
29967         * m4/getdate.m4 (gl_GETDATE): Likewise.
29968         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
29969         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
29970         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
29971         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
29972         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
29973         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
29974         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
29975         needed.
29976
29977 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29978
29979         * lib/memcasecmp.c: Include <limits.h>.
29980         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
29981         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
29982         Don't assume isdigit succeeds only on '0' through '9'.
29983
29984 2006-07-05  Eric Blake  <ebb9@byu.net>
29985
29986         * modules/getaddrinfo (Depends-on): Add snprintf.
29987
29988 2006-07-05  Eric Blake  <ebb9@byu.net>
29989
29990         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
29991         to avoid 'header present but could not be compiled' on cygwin.
29992
29993 2006-07-05  Eric Blake  <ebb9@byu.net>
29994
29995         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
29996         missing from netdb.h.
29997         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
29998
29999 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30000
30001         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
30002         no longer needed.
30003         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
30004         * m4/getdate.m4 (gl_GETDATE): Likewise.
30005         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
30006         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
30007         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
30008         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
30009         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
30010
30011 2006-07-05  Derek R. Price  <derek@ximbiot.com>
30012
30013         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
30014         All uses of is_space replaced by isspace.
30015         * lib/exit.h: Don't talk about STDC_HEADERS.
30016         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
30017         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
30018         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
30019         replaced by isprint etc.
30020         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
30021         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30022         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
30023         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
30024         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
30025         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
30026
30027 2006-07-05  Bruno Haible  <bruno@clisp.org>
30028
30029         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
30030         the function exists, before testing against AIX.
30031         Reported by Martin Lambers <marlam@marlam.de>.
30032
30033 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30034
30035         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
30036         From Mark D. Baushke.
30037
30038 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
30039
30040         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
30041         to the absolute name, not just one, to bypass Sun C 5.8's
30042         "warning: #include of /usr/include/... may be non-portable".
30043
30044 2006-07-04  Eric Blake  <ebb9@byu.net>
30045
30046         * modules/dirname-tests: New test module.
30047         * tests/test-dirname.c: New file, replacing dirname.c
30048         TEST_DIRNAME section that was recently deleted.
30049
30050 2006-07-04  Bruno Haible  <bruno@clisp.org>
30051
30052         Assume ANSI C header files and <ctype.h> functions.
30053         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
30054         (mbsnwidth): Use isprint, iscntrl instead.
30055
30056 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30057
30058         Merge from coreutils.
30059         * MODULES.html.sh: Add xstrtold.
30060         * modules/xstrtold: New file.
30061         * modules/cycle-check (Files): Add lib/same-inode.h.
30062         * modules/dirname (Files): Add m4/double-slash-root.m4.
30063         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
30064         * modules/mkdir-p (Files): Add lib/same-inode.h.
30065         * modules/same (Files): Add lib/same-inode.h.
30066
30067 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30068
30069         * m4/absolute-header.m4: Renamed from full-header-path.m4.
30070         This is to keep the terminology clean; POSIX talks about
30071         "absolute pathnames", not "full pathnames", but the GNU
30072         Coding Standards say to use "path" for something else;
30073         so use "absolute" to keep both sides happy.
30074         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
30075         Set gl_absolute_header, not gl_full_header_path.
30076         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
30077         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
30078         All uses changed.
30079
30080         Merge from coreutils.
30081
30082         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30083
30084         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
30085         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
30086         want to require the building of c-strtod.o.
30087         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
30088         needs -lm directly.
30089         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
30090
30091         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30092
30093         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
30094         --as-needed option if available.  Problem reported by Albert Chin in
30095         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
30096         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
30097         cc merely issues a bunch of annoying warnings for --as-needed
30098         (this problem was reported by Bob Proulx).  Also, try linking with
30099         -lm to detect a bug in binutils 2.16 (this problem was reported
30100         by Ralf Wildenhues).
30101
30102         2006-06-18  Jim Meyering  <jim@meyering.net>
30103
30104         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
30105         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
30106         macro.
30107         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
30108         also check for glibc-2.4's abort-inducing bug.
30109
30110         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
30111         Low-probability clean-up should be to use rmdir to get rid of
30112         the just-created directory, not unlink.
30113
30114         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
30115         configure fail, and request a bug report to inform us about it.
30116         Add a comment that, barring reports to the contrary, in 2007 we'll
30117         assume ftruncate is universally available.
30118
30119         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30120
30121         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
30122
30123         2006-03-12  Jim Meyering  <jim@meyering.net>
30124
30125         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
30126         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
30127         * m4/same.m4 (gl_SAME): Likewise.
30128         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
30129
30130         2006-03-11  Eric Blake  <ebb9@byu.net>
30131
30132         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
30133         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
30134         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
30135         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
30136
30137 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
30138
30139         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
30140         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
30141         reported by Mark D. Baushke, one in
30142         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
30143
30144         Merge from coreutils.
30145
30146         * lib/.cppi-disable: Add stdint_.h.
30147         * lib/.cvsignore: Add stdint.h.
30148
30149         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
30150
30151         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
30152         both double and long double versions.
30153         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
30154         * lib/xstrtold.c: New file.
30155         * lib/xstrtod.h (xstrtold): New decl.
30156
30157         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
30158
30159         * lib/filemode.c (setst): Remove.
30160         (strmode): Rewrite to avoid setst.  This makes the code shorter,
30161         (arguably) clearer, and the generated code is a bit smaller on my
30162         Debian GNU/Linux stable x86 host.
30163
30164         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
30165
30166         * lib/filemode.c: Include "filemode.h" first, to test the interface.
30167         Assume that filemode.h includes sys/types.h and sys/stat.h.
30168         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
30169         (ftypelet): Reorder to put common cases first, for efficiency.
30170         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
30171         to do 'M'.
30172         (strmode): Renamed from mode_string, and now stores 12 bytes instead
30173         of 10, for compatibility with FreeBSD.  All callers changed.
30174         (filemodestring): Now stores 12 bytes instead of 10, and sets file
30175         types that can't be deduced solely from st_mode.  First arg is now a
30176         const pointer.
30177         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
30178         (strmode): Renamed from mode_string.
30179         (filemodestring): New decl.
30180         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
30181         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
30182         needed.
30183         (S_ISPORT, S_ISWHT): New macros, if not already defined.
30184
30185         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
30186
30187         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
30188         fsusage.h now does that.  Include fsusage.h first, to test interface.
30189         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
30190         at most one method (the old code could have generated decls that
30191         didn't conform to C89, not that this was ever exercised).
30192         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
30193
30194         2006-03-19  Jim Meyering  <jim@meyering.net>
30195
30196         Work even in a chroot where d_ino values for entries in "/"
30197         don't match the stat.st_ino values for the same names.
30198         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
30199         number, iterate through all entries again, using lstat instead.
30200         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
30201         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
30202
30203         * lib/getcwd.c (__getcwd): Clarify a comment.
30204         Use memcpy in place of a call to strcpy.
30205
30206         2006-03-12  Jim Meyering  <jim@meyering.net>
30207
30208         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
30209         matches that of the current directory (which we're about to chdir ".."
30210         out of), then save the dev-ino of the parent, instead.
30211
30212         * lib/same-inode.h (SAME_INODE): New file/macro.
30213         * lib/chdir-safer.c (SAME_INODE): Remove definition.
30214         Include "same-inode.h", instead.
30215         * lib/same.c: Likewise.
30216         * lib/cycle-check.h: Include "same-inode.h".
30217         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
30218         * lib/cycle-check.c (SAME_INODE): Remove definition.
30219         * lib/root-dev-ino.h: Include "same-inode.h".
30220
30221         2006-03-11  Eric Blake  <ebb9@byu.net>
30222
30223         * lib/same.c (same_name): s/base_name/last_component/
30224         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
30225         * lib/filenamecat.c (file_name_concat): Likewise.
30226
30227         2006-03-11  Eric Blake  <ebb9@byu.net>,
30228                     Paul Eggert  <eggert@cs.ucla.edu>
30229
30230         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
30231         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
30232         drive prefix.
30233         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
30234         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
30235         (last_component): New method.
30236         * lib/dirname.c (dir_len): Determine when drive letters need a
30237         subsequent slash.  Preserve // when it is special.
30238         (dir_name): Don't append dot when drive letter is absolute.
30239         [TEST_DIRNAME]: Move into a full-blown gnulib test.
30240         * lib/basename.c (base_name): New semantics - malloc the result.
30241         Preserve // when it is special.  Preserve relative files that look
30242         like drive letters.
30243         (base_len): Preserve // when it is special.
30244         (last_component): New method, similar to old base_name semantics.
30245         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
30246         base_name.  Strip redundant slashes from ///.
30247
30248 2006-07-03  Jim Meyering  <jim@meyering.net>
30249
30250         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
30251         macro is used before the first cycle_check call.
30252
30253 2006-07-03  Eric Blake  <ebb9@byu.net>
30254
30255         * modules/dirname (Depends-on): Add xstrndup.
30256
30257 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30258
30259         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
30260         test cases, so that config.log is a bit easier to follow.
30261
30262 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
30263
30264         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
30265         both are 64 bits, since this seems to be the tradition, and this
30266         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
30267         we ever run into a host that prefers long long to long in this
30268         case, we'll need another configure-time test.  Problem reported by
30269         Jim Meyering.
30270
30271 2006-07-02  Eric Blake  <ebb9@byu.net>
30272
30273         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
30274
30275 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30276
30277         * modules/inttypes (Depends-on): No longer depends on stdint.
30278         * modules/stdint (Description): Say more about assumptions.
30279         Say that the fast types might differ.  Say macros are used.
30280         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
30281         (Makefile.am): Revise list of substituted symbols to match
30282         new stdint.m4.
30283         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
30284         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
30285         * tests/test-stdint.c (verify_same_types)
30286         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
30287         the code conforms to C99/C89.
30288         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
30289         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
30290
30291 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30292
30293         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
30294         but fix a bug, by requiring at least 64 bits.
30295         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
30296         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
30297         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
30298         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
30299
30300         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
30301         changes.  Make 2.59 a prerequisite.  Check and substitute for
30302         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
30303         inttypes.h.  Do not use special include files; just use the
30304         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
30305         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
30306         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
30307         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
30308         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
30309         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
30310         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
30311         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
30312         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
30313         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
30314         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
30315         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
30316         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
30317         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
30318         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
30319         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
30320         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
30321         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
30322         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
30323         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
30324         WINT_MAX.  Check for C99 conformance more strictly, by detecting
30325         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
30326         not check for things that C99 does not require, e.g., int8_t.  If
30327         a test isn't needed unless <stdint.h> isn't working, and is
30328         unlikely to be needed for any other reason, then don't do it
30329         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
30330         size_t, since we assume C89 freestanding at least.  Do not check
30331         for sig_atomic_t, wchar_t, or wint_t, since the code now does
30332         the right thing even if the types are not defined.  Instead use:
30333         (gl_STDINT_TYPE_PROPERTIES): New macro.
30334         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
30335         testing whether <sys/types.h> clashes, as Autoconf does this for
30336         us now.  All uses removed.
30337         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
30338         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
30339         (gl_CHECK_TYPE_SAME):
30340         Remove; no longer needed.
30341         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
30342         exists, since we'll return 0 anyway in that case.
30343         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
30344
30345 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
30346
30347         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
30348         possible collision with system files.
30349         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
30350         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
30351         WCHAR_MIN and WCHAR_MAX in this case.
30352         (<stddef.h>): Do not include; no longer needed.
30353         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
30354         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
30355         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
30356         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
30357         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
30358         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
30359         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
30360         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
30361         !defined(__c99))]: Include in this case too, since it's harmless
30362         now.
30363         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
30364         dangerous to do so.
30365         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
30366         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
30367         (_STDINT_MIN, _STDINT_MAX): New macros.
30368         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
30369         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
30370         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
30371         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
30372         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
30373         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
30374         macros, not typedefs; this simplifies things quite a bit.
30375         Use long int for all types narrower than int64_t.
30376         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
30377         Define in terms of long long int or int64_t or long int,
30378         not int64_t or int32_t.  This saves some compile-time testing.
30379         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
30380         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
30381         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
30382         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
30383         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
30384         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
30385         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
30386         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
30387         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
30388         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
30389         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30390         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30391         undef any previous version and define our own version, for
30392         simplicity and consistency with the new macros for types.
30393         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
30394         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
30395         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
30396         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
30397         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
30398         @WINT_T_SUFFIX@ to keep things simple here.
30399         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
30400         Simplify by assuming typical 8/16/32/64 host, since we're
30401         already doing that elsewhere anyway.
30402         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
30403         and assume long long int is 64 bits if available.  This
30404         speeds up 'configure'.
30405
30406 2006-07-01  Eric Blake  <ebb9@byu.net>
30407
30408         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
30409         Reported by Andreas Buening.
30410
30411 2006-07-01  Eric Blake  <ebb9@byu.net>
30412
30413         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
30414
30415 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
30416
30417         * lib/getaddrinfo.c: fixed typo
30418
30419 2006-06-29  Jim Meyering  <jim@meyering.net>
30420
30421         * modules/strftime (Maintainer): Add my name, since with the
30422         FPRINTFTIME changes strftime.c has forked from glibc.
30423
30424 2006-06-29  Eric Blake  <ebb9@byu.net>
30425
30426         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
30427
30428 2006-06-29  Eric Blake  <ebb9@byu.net>
30429
30430         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
30431
30432 2006-06-29  Eric Blake  <ebb9@byu.net>
30433
30434         * lib/stat_.h: New file.
30435
30436 2006-06-29  Eric Blake  <ebb9@byu.net>
30437
30438         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
30439         unused static function.
30440
30441 2006-06-29  Eric Blake  <ebb9@byu.net>
30442
30443         * doc/functions.texi (Function Portability): Document missing lstat
30444         on mingw.
30445
30446 2006-06-29  Eric Blake  <ebb9@byu.net>
30447
30448         * MODULES.html.sh: Add sys_stat.
30449         * modules/sys_stat: New module.
30450         * modules/mkstemp (Depends-on): Add sys_stat.
30451
30452 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30453
30454         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
30455
30456 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30457
30458         * m4/c-bs-a.m4: Removed.
30459
30460 2006-06-29  Derek R. Price  <derek@ximbiot.com>
30461
30462         * lib/strftime.c: Assume strftime() exists.
30463
30464 2006-06-29  Derek Price  <derek@ximbiot.com>
30465
30466         * modules/c-bs-a: Removed - \a is C89.
30467         * MODULES.html.sh: Remove c-bs-a.
30468
30469 2006-06-29  Bruno Haible  <bruno@clisp.org>
30470
30471         * modules/wcwidth (License): Change to LGPL.
30472
30473 2006-06-28  Simon Josefsson  <jas@extundo.com>
30474
30475         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
30476         on _WIN32.
30477
30478         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
30479         getnameinfo.
30480
30481 2006-06-28  Simon Josefsson  <jas@extundo.com>
30482
30483         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
30484
30485 2006-06-28  Simon Josefsson  <jas@extundo.com>
30486
30487         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
30488         functions there.  It will succeed on Windows XP, but on Windows
30489         2000 and (presumably) earlier, it will fail, and use the internal
30490         re-implementation.
30491         (use_win32_p): New function.
30492         (getaddrinfo): Use strtoul on servname, to support numeric ports.
30493         Support AI_NUMERICSERV to disable getservbyname.
30494         (getnameinfo): New function, only supports
30495         NI_NUMERICHOST|NI_NUMERICSERV for now.
30496
30497         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
30498         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
30499         getnameinfo.
30500
30501 2006-06-28  Eric Blake  <ebb9@byu.net>
30502
30503         * modules/wcwidth: New file.
30504         * modules/mbchar (Depends-on): Add wcwidth.
30505         * modules/mbswidth (Depends-on): Add wcwidth.
30506         * MODULES.html.sh: Add wcwidth.
30507
30508 2006-06-28  Eric Blake  <ebb9@byu.net>
30509
30510         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
30511         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
30512
30513 2006-06-28  Eric Blake  <ebb9@byu.net>
30514
30515         * lib/xvasprintf.h: Fix comments.
30516
30517 2006-06-28  Eric Blake  <ebb9@byu.net>
30518
30519         * lib/mbchar.h (wcwidth): Include wcwidth.h.
30520         * lib/mbswidth.c (wcwidth): Move from here...
30521         * lib/wcwidth.h: ...to this new file.
30522
30523 2006-06-28  Derek R. Price  <derek@ximbiot.com>
30524
30525         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
30526
30527         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
30528         it's obsolete.
30529         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
30530
30531 2006-06-28  Derek R. Price  <derek@ximbiot.com>
30532
30533         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
30534         Autoconf 2.60 says this stuff was obsolete.
30535
30536 2006-06-28  Bruno Haible  <bruno@clisp.org>
30537
30538         * modules/wcwidth (Files): Add m4/wchar_t.m4.
30539
30540 2006-06-28  Bruno Haible  <bruno@clisp.org>
30541
30542         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
30543         gt_TYPE_WCHAR_T.
30544
30545 2006-06-28  Bruno Haible  <bruno@clisp.org>
30546
30547         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
30548         declaration for wcwidth.
30549         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
30550
30551 2006-06-28  Bruno Haible  <bruno@clisp.org>
30552
30553         * lib/mkdtemp.c [MINGW]: Include <io.h>.
30554         (mkdir): Define using _mkdir.
30555
30556 2006-06-28  Bruno Haible  <bruno@clisp.org>
30557
30558         * lib/getaddrinfo.h: Fix POSIX URL.
30559         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
30560         _WIN32.
30561         (use_win32_p): Make static.
30562         (getaddrinfo): Reject service name if it is empty or does not consist
30563         solely of decimal digits, or if its value is > 65535.
30564         (getnameinfo): Remove useless casts.
30565
30566 2006-06-27  Simon Josefsson  <jas@extundo.com>
30567
30568         * modules/sys_select: New file, suggested by Bruno Haible, Paul
30569         Eggert and Martin Lambers.
30570
30571 2006-06-27  Simon Josefsson  <jas@extundo.com>
30572
30573         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
30574         Eggert and Martin Lambers.
30575
30576 2006-06-27  Bruno Haible  <bruno@clisp.org>
30577
30578         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
30579         result to 0, not to empty.
30580         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
30581
30582 2006-06-27  Bruno Haible  <bruno@clisp.org>
30583
30584         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
30585
30586 2006-06-26  Simon Josefsson  <jas@extundo.com>
30587
30588         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
30589         present.
30590
30591 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
30592
30593         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
30594         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
30595         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
30596
30597 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
30598
30599         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
30600
30601 2006-06-26  Bruno Haible  <bruno@clisp.org>
30602
30603         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
30604
30605 2006-06-26  Bruno Haible  <bruno@clisp.org>
30606
30607         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
30608
30609 2006-06-26  Bruno Haible  <bruno@clisp.org>
30610
30611         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
30612         SGI C compiler in pre-C99 mode.
30613         Suggested by Mark D. Baushke and Larry Jones.
30614
30615 2006-06-26  Bruno Haible  <bruno@clisp.org>
30616
30617         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
30618         WCHAR_MAX.
30619         Reported by Mark D. Baushke and Larry Jones.
30620
30621 2006-06-26  Bruno Haible  <bruno@clisp.org>
30622
30623         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
30624         in pre-C99 mode.
30625         Suggested by Mark D. Baushke and Larry Jones.
30626
30627 2006-06-23  Simon Josefsson  <jas@extundo.com>
30628             Bruno Haible  <bruno@clisp.org>
30629
30630         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
30631         Emit mostlyclean-local rule.
30632         (func_emit_tests_Makefile_am): Likewise.
30633         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
30634
30635 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
30636
30637         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
30638
30639 2006-06-23  Bruno Haible  <bruno@clisp.org>
30640
30641         * tests/test-stdint.c: Update to match ISO C 99 Technical
30642         Corrigendum 1.
30643
30644 2006-06-23  Bruno Haible  <bruno@clisp.org>
30645
30646         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
30647
30648 2006-06-23  Bruno Haible  <bruno@clisp.org>
30649
30650         * lib/stdint_.h: Treat IRIX like OpenBSD.
30651
30652 2006-06-23  Bruno Haible  <bruno@clisp.org>
30653
30654         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
30655         ISO C 99 Technical Corrigendum 1.
30656
30657 2006-06-22  Simon Josefsson  <jas@extundo.com>
30658
30659         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
30660         MinGW.
30661
30662 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30663
30664         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
30665         needed.  Some compiler complained about some of them.  Problem reported
30666         by Larry Jones in
30667         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
30668
30669 2006-06-21  Simon Josefsson  <jas@extundo.com>
30670
30671         * tests/test-getaddrinfo.c: New file.
30672
30673         * modules/getaddrinfo-tests: New file.
30674
30675         * MODULES.html.sh: Add inet_pton.
30676
30677         * modules/inet_pton: New file.
30678
30679 2006-06-21  Simon Josefsson  <jas@extundo.com>
30680
30681         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
30682         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
30683         of using the (limited) gnulib implementation on Windows XP.
30684
30685         * m4/inet_pton.m4: New file.
30686
30687 2006-06-21  Simon Josefsson  <jas@extundo.com>
30688
30689         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
30690         variable.
30691
30692         * lib/socket_.h: Don't define WINVER.
30693
30694         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
30695         slightly modified to work in gnulib.
30696
30697 2006-06-21  Simon Josefsson  <jas@extundo.com>
30698
30699         * doc/gnulib.texi (Windows sockets): Add.
30700
30701 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
30702
30703         * lib/read-file.c (fread_file): Start with buffer allocation of
30704         0 bytes rather than 1 byte; this simplifies the code.
30705         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
30706         code to free buffer and save/restore errno.
30707         (internal_read_file): Remove unused local.
30708
30709 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
30710
30711         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
30712         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
30713         Problem reported by Denis Excoffier in
30714         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
30715
30716 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
30717
30718         * modules/sys_socket, modules/socklen: Include sys/types since
30719         FreeBSD 4.x's sys/socket.h needs it.
30720
30721 2006-06-19  Simon Josefsson  <jas@extundo.com>
30722
30723         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
30724
30725 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30726
30727         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
30728
30729 2006-06-19  Bruno Haible  <bruno@clisp.org>
30730
30731         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
30732         and FULL_PATH_INTTYPES_H in angle brackets.
30733         Reported by Mark D. Baushke <mdb@gnu.org>.
30734
30735 2006-06-17  Eric Blake  <ebb9@byu.net>
30736
30737         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
30738         errno.
30739
30740 2006-06-17  Bruno Haible  <bruno@clisp.org>
30741
30742         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
30743         <sys/inttypes.h>.
30744
30745 2006-06-17  Bruno Haible  <bruno@clisp.org>
30746
30747         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
30748         whether errno is declared. Assume <errno.h> declares errno.
30749
30750 2006-06-17  Bruno Haible  <bruno@clisp.org>
30751
30752         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
30753
30754 2006-06-17  Bruno Haible  <bruno@clisp.org>
30755
30756         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
30757         problem on Solaris 2.5.1.
30758
30759 2006-06-16  Eric Blake  <ebb9@byu.net>
30760
30761         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
30762         * lib/unicodeio.c [!defined errno]: Likewise.
30763         * lib/strtol.c [!defined errno]: Likewise.
30764         * lib/strtod.c [!defined errno]: Likewise.
30765
30766 2006-06-15  Eric Blake  <ebb9@byu.net>
30767
30768         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
30769
30770 2006-06-15  Eric Blake  <ebb9@byu.net>
30771
30772         * config/srclist.txt (ssize_t.m4): Lose sync.
30773
30774 2006-06-15  Bruno Haible  <bruno@clisp.org>
30775
30776         * modules/stdint (Files): Include m4/full-header-path.m4,
30777         m4/size_max.m4, m4/wchar_t.m4.
30778         (Makefile.am): Many more substitutions.
30779         * modules/stdint-tests: New file.
30780         * tests/test-stdint.c: New file.
30781
30782 2006-06-15  Bruno Haible  <bruno@clisp.org>
30783
30784         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
30785         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
30786         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
30787         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
30788         gl_CHECK_TYPE_SAME): New macros.
30789
30790 2006-06-15  Bruno Haible  <bruno@clisp.org>
30791
30792         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
30793
30794 2006-06-15  Bruno Haible  <bruno@clisp.org>
30795
30796         * lib/stdint_.h: Rewritten to be fully auto-configured.
30797         Fixes bug on HP-UX/IA64.
30798
30799 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30800
30801         * lib/getdate.y (__attribute__): Don't define if already defined.
30802         Problem reported by Larry Jones.
30803         * lib/utimens.c (__attribute__): Likewise.
30804
30805 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
30806
30807         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
30808         reported by Andreas Schwab.
30809
30810 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30811             Bruno Haible  <bruno@clisp.org>
30812
30813         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
30814         check for the declaration of strnlen and a run test that exposes the
30815         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
30816         rpl_strndup.
30817
30818 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30819             Bruno Haible  <bruno@clisp.org>
30820
30821         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
30822
30823 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30824
30825         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
30826         compile test, for Tru64 4.0D.
30827
30828 2006-05-28  Karl Berry  <karl@gnu.org>
30829
30830         * config/srclist.txt (printf-args.c): lose sync.
30831
30832 2006-05-26  Martin Lambers  <marlam@marlam.de>
30833
30834         * lib/getpass.c: Updates the test for the native W32 API, and adds
30835         missing includes, thus fixing compilation warnings.
30836
30837 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
30838
30839         * lib/exclude.c (exclude_fnmatch): New function.
30840         (excluded_file_name): Call exclude_fnmatch.
30841         * lib/exclude.h (excluded_file_name): New prototype
30842
30843 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
30844
30845         * lib/tempname.c (small_open, large_open): New macros.
30846         (__open, __open64) [!_LIBC]: Remove.
30847         (__gen_tempname): Use small_open and large_open instead of __open
30848         and __open64.  This fixes a portability bug on HP-UX 11.11i
30849         reported by Simon Wing-Tang in
30850         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
30851
30852 2006-05-24  Bruno Haible  <bruno@clisp.org>
30853
30854         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
30855         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
30856         Reported by Thorsten Maerz <torte@netztorte.de> via
30857         Aaron Stone <aaron@serendipity.cx>.
30858
30859 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
30860
30861         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
30862         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
30863         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
30864         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
30865         not really conditional on the cache.
30866         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
30867
30868 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
30869
30870         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
30871         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
30872         (my_usleep): Don't mishandle maximum value.
30873
30874 2006-05-19  Jim Meyering  <jim@meyering.net>
30875
30876         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
30877
30878 2006-05-17  Bruno Haible  <bruno@clisp.org>
30879
30880         Cygwin portability.
30881         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
30882
30883 2006-05-17  Bruno Haible  <bruno@clisp.org>
30884
30885         * lib/stdint_.h: Fix recognition of Cygwin.
30886
30887 2006-05-15  Bruno Haible  <bruno@clisp.org>
30888
30889         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
30890         on libtool patch by Ralf Wildenhues.
30891
30892 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
30893
30894         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
30895         test for C99 conformance; (bool) 0.5 is an integer constant
30896         expression, but (bool) -0.5 is not.  Problem reported by Fedor
30897         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
30898
30899 2006-05-11  Simon Josefsson  <jas@extundo.com>
30900
30901         * m4/xvasprintf.m4: Fix obvious typo.
30902
30903 2006-05-11  Jim Meyering  <jim@meyering.net>
30904
30905         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
30906         James Lemley.
30907
30908 2006-05-10  Simon Josefsson  <jas@extundo.com>
30909
30910         * lib/md4.c: Typo fix, update copyright years.
30911         (K1, K2): Don't use L because it turn computations into 64-bit on
30912         64-bit platforms.
30913
30914 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
30915
30916         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
30917         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
30918         unwanted sign propagation, e.g., on hosts with 64-bit int.
30919         There still are some problems with reeelly weird theoretical hosts
30920         (e.g., 33-bit int) but it's not worth worrying about now.
30921         * lib/sha1.c (rol): Likewise.
30922         (K1, K2, K3, K4): Remove unnecessary L suffix.
30923
30924 2006-05-10  Bruno Haible  <bruno@clisp.org>
30925
30926         * lib/des.c: Cast to avoid warnings.
30927
30928 2006-05-09  Bruno Haible  <bruno@clisp.org>
30929
30930         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
30931         (Depends-on): Depend also on xsize, stdarg.
30932         (configure.ac): Add gl_XVASPRINTF.
30933
30934 2006-05-09  Bruno Haible  <bruno@clisp.org>
30935
30936         * m4/xvasprintf.m4: New file.
30937
30938 2006-05-09  Bruno Haible  <bruno@clisp.org>
30939
30940         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
30941         (EOVERFLOW): Define fallback value.
30942         (xstrcat): New function.
30943         (xvasprintf): Recognize the special case of a string concatenation.
30944
30945 2006-05-08  Eric Blake  <ebb9@byu.net>
30946
30947         * gnulib-tool (func_version): Base copyright year on CVS date.
30948         (func_emit_copyright_notice): New function.
30949         (func_emit_lib_Makefile_am): Use it.
30950         (func_emit_tests_Makefile_am): Likewise.
30951         (func_import): Likewise.
30952
30953 2006-05-08  Bruno Haible  <bruno@clisp.org>
30954
30955         * modules/stdarg: New file.
30956         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
30957
30958 2006-05-08  Bruno Haible  <bruno@clisp.org>
30959
30960         * m4/stdarg.m4: New file, from GNU gettext.
30961
30962 2006-05-08  Bruno Haible  <bruno@clisp.org>
30963
30964         * config/srclist.txt (build-aux/config.rpath): different from latest
30965         release.
30966
30967 2006-05-08  Bruno Haible  <bruno@clisp.org>
30968
30969         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
30970
30971 2006-05-05  Jim Meyering  <jim@meyering.net>
30972
30973         * m4/warning.m4: New file, derived from bison's file by the same name.
30974
30975 2006-05-03  Bruno Haible  <bruno@clisp.org>
30976
30977         * lib/stdint_.h: Shorter URL.
30978         * lib/inttypes.h: Likewise.
30979
30980 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30981
30982         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
30983
30984 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30985
30986         * lib/verify.h: Document the internals better.  Most of this change
30987         was written by Bruno Haible.
30988
30989 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
30990
30991         * doc/verify.texi: New file, partly based on a proposal by
30992         Bruno Haible.
30993
30994 2006-05-02  Bruno Haible  <bruno@clisp.org>
30995
30996         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
30997         test from here...
30998         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
30999
31000 2006-04-29  Bruno Haible  <bruno@clisp.org>
31001
31002         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
31003         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
31004
31005 2006-04-29  Bruno Haible  <bruno@clisp.org>
31006
31007         * gnulib-tool: Make --update option actually work.
31008
31009 2006-04-29  Bruno Haible  <bruno@clisp.org>
31010
31011         * doc/gcd.texi: New file.
31012         * doc/gnulib.texi: Include it.
31013
31014 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
31015
31016         * lib/getdate.y (get_date): When adding relative date, start with the
31017         initial time, not with the result of the first mktime call.
31018
31019 2006-04-25  Bruno Haible  <bruno@clisp.org>
31020
31021         * gnulib-tool (func_import): Output the include directives in three
31022         blocks, sorted separately.
31023         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31024
31025 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31026
31027         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
31028         to define main with arguments, for C++.  Reported by Eric Blake.
31029         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
31030         Prefer 'int main ()' to 'int main (void)', for C++.
31031         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
31032         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
31033         for 'main', for C99 and C++.
31034
31035 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
31036
31037         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
31038         Don't assume that exit status -1 is valid.
31039         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
31040         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
31041         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
31042         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
31043         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
31044         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
31045         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
31046         functions can be used without declaring them, or that you can
31047         exit with status -1.
31048         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
31049
31050 2006-04-24  Karl Berry  <karl@gnu.org>
31051
31052         * config/srclist.txt (longdouble.m4): sync lost.
31053
31054 2006-04-24  Eric Blake  <ebb9@byu.net>
31055
31056         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
31057
31058 2006-04-24  Bruno Haible  <bruno@clisp.org>
31059
31060         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
31061         poll() implementation in AIX.
31062         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31063
31064 2006-04-24  Bruno Haible  <bruno@clisp.org>
31065
31066         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
31067         assigned exactly once.
31068
31069 2006-04-23  Claudio Fontana  <claudio@gnu.org>
31070             Bruno Haible  <bruno@clisp.org>
31071
31072         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
31073         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
31074         for AM_CPPFLAGS.
31075
31076 2006-04-23  Bruno Haible  <bruno@clisp.org>
31077
31078         * modules/copy-file: Depend on unistd.
31079         * modules/execute: Likewise.
31080         * modules/fatal-signal: Likewise.
31081         * modules/findprog: Likewise.
31082         * modules/mkdtemp : Likewise.
31083         * modules/pipe: Likewise.
31084         * modules/wait-process: Likewise.
31085
31086 2006-04-23  Bruno Haible  <bruno@clisp.org>
31087
31088         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
31089         condition was already detected.
31090         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31091
31092 2006-04-23  Bruno Haible  <bruno@clisp.org>
31093
31094         * lib/copy-file.c: Include <unistd.h> unconditionally.
31095         * lib/execute.c: Likewise.
31096         * lib/fatal-signal.c: Likewise.
31097         * lib/findprog.c: Likewise.
31098         * lib/mkdtemp.c: Likewise.
31099         * lib/pipe.h: Likewise.
31100         * lib/pipe.c: Likewise.
31101         * lib/wait-process.h: Likewise.
31102
31103 2006-04-23  Bruno Haible  <bruno@clisp.org>
31104
31105         * gnulib-tool (func_usage): Fix --import description. Document
31106         --update.
31107         (func_import): Create temporary file in a temporary directory, if
31108         --dry-run is specified. Silence errors from 'grep' when there are no
31109         m4 files in $m4dir.
31110         (func_create_testdir): Silence errors from 'grep' when there are no
31111         m4 files in $m4dir.
31112         Reported by Karl Berry <karl@freefriends.org>.
31113
31114 2006-04-20  Bruno Haible  <bruno@clisp.org>
31115
31116         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
31117         one argument, so that the code will be portable to Autoconf 2.60.
31118         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
31119         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
31120         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
31121
31122 2006-04-19  Derek Price  <derek@ximbiot.com>
31123             Eric Blake  <ebb9@byu.net>
31124
31125         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
31126         rather than "/full/path.h".  Update comment to match.  Shorten &
31127         generalize m4_translit call via AS_TR_CPP.
31128
31129 2006-04-19  Derek Price  <derek@ximbiot.com>
31130             Eric Blake  <ebb9@byu.net>
31131
31132         * lib/inttypes.h: Correct grammar in comment.
31133
31134 2006-04-18  Derek Price  <derek@ximbiot.com>
31135             Paul Eggert  <eggert@cs.ucla.edu>
31136
31137         * modules/inttypes: New file.
31138         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
31139
31140 2006-04-18  Derek Price  <derek@ximbiot.com>
31141             Paul Eggert  <eggert@cs.ucla.edu>
31142
31143         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
31144         New files.
31145
31146 2006-04-18  Derek Price  <derek@ximbiot.com>
31147             Paul Eggert  <eggert@cs.ucla.edu>
31148
31149         * lib/inttypes.h: New file.
31150         * lib/strtoimax.c: Assume <inttypes.h>.
31151
31152 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31153
31154         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
31155         isn't mounted.  Problem reported by Kir Kolyshkin.
31156
31157 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31158
31159         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
31160         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
31161         Derek R. Price.
31162         * lib/regex.h (RE_DUP_MAX): Update comment to match current
31163         implementation.
31164
31165 2006-04-12  Eric Blake  <ebb9@byu.net>
31166
31167         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
31168         is now done automatically by the corresponding Autoconf macro.
31169
31170 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31171
31172         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
31173         time_r.h.
31174
31175 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31176
31177         Merge regex changes from libc, removing some of our
31178         POSIX-conformance changes that were rejected and redoing them in a
31179         less-intrusive way.
31180
31181         * lib/regcomp.c (re_compile_internal, init_dfa):
31182         Length arg is now size_t, not Idx.  All uses changed.
31183         (peek_token): Forward decl now says internal_function.
31184         (__re_error_msgid, __re_error_msgid_idx):
31185         Now static rather than extern with attribute_hidden.
31186         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
31187         For some reason libc prefers K&R style defns for external functions.
31188         (regerror) [!defined _LIBC]: Likewise.
31189         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
31190         (seek_collating_symbol_entry, lookup_collation_sequence_value):
31191         (build_range_exp, build_collating_symbol):
31192         Use K&R-style defn.
31193         (re_compile_fastmap): Use '\0' to memset, not 0.
31194         (utf8_sb_map): Make the calculations more obvious.
31195         (init_dfa, parse_bracket_exp, build_charclass_op):
31196         Call calloc and cast result, as glibc does.
31197         (init_word_char, fetch_token, peek_token, peek_token_bracket):
31198         (build_range_exp, build_collating_symbol):
31199         Now internal functions.
31200
31201         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
31202
31203         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
31204         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
31205         Don't depend on VMS; depend on __VMS instead, for POSIX
31206         namespace cleanness.
31207         (regoff_t): Define to ssize_t, not long int.
31208
31209         Remove the REG_ macros named below.  Instead, make the old names
31210         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
31211         __USE_GNU_REGEX.
31212         (REG_BACKSLASH_ESCAPE_IN_LISTS):
31213         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
31214         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
31215         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
31216         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
31217         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
31218         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
31219         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
31220         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
31221         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
31222         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
31223         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
31224         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
31225         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
31226         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
31227         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
31228         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
31229         (REG_NREGS):
31230         Remove.  All uses replaced by the old RE_* names.
31231         (RE_BACKSLASH_ESCAPE_IN_LISTS):
31232         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
31233         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
31234         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
31235         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
31236         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
31237         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
31238         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
31239         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
31240         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
31241         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
31242         Don't bother having these macros be independent of each others'
31243         values, since they no longer exist in the POSIX name space.
31244
31245         Rename the following member names back to their old names,
31246         unless !__USE_GNU_REGEX.  All uses changed back.
31247         (buffer): Renamed from re_buffer.
31248         (allocated): Renamed from re_allocated.
31249         (used): Renamed from re_used.
31250         (syntax): Renamed from re_syntax.
31251         (fastmap): Renamed from re_fastmap.
31252         (translate): Renamed from re_translate.
31253         (can_be_null): Renamed from re_can_be_null.
31254         (regs_allocated): Renamed from re_regs_allocated.
31255         (fastmap_accurate): Renamed from re_fastmap_accurate.
31256         (no_sub): Renamed from re_no_sub.
31257         (not_bol): Renamed from re_not_bol.
31258         (not_eol): Renamed from re_not_eol.
31259         (newline_anchor): Renamed from re_newline_anchor.
31260         (num_regs): Renamed from rm_num_regs.
31261         (start): Renamed from rm_start.
31262         (end): Renamed from rm_end.
31263
31264         (free_state): Move up a bit.
31265
31266         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
31267         #define to be empty.
31268         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
31269         when that is what is intended.
31270         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
31271         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
31272         (MAX): New macro.
31273         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
31274         All uses changed back to re_malloc, etc.  It's now the caller's
31275         responsibility to check for overflow; all callers changed.
31276         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
31277         (re_x2nrealloc): Remove.
31278         (free_state): Remove decl.
31279
31280         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
31281         (re_set_registers, re_exec):
31282         Use K&R-style defn.
31283
31284         2006-01-31  Roland McGrath  <roland@redhat.com>
31285
31286         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
31287         Reported by Mike Frysinger <vapier@gentoo.org>.
31288
31289         2006-01-15  Andreas Jaeger  <aj@suse.de>
31290
31291         [BZ #1950]
31292         * lib/regex_internal.c (re_string_reconstruct): Adjust for
31293         build_wcs_upper_buffer change.
31294         (build_wcs_upper_buffer): Change return type.
31295
31296         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
31297
31298         * lib/regex_internal.h: Include <stdint.h> if available.
31299
31300         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
31301
31302         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
31303
31304         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
31305
31306         * lib/regcomp.c: Adjust for changed secondary hash function.
31307
31308         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
31309
31310         * lib/regex.h: Pretty printing.
31311         Clean up namespace a bit.
31312
31313         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
31314
31315         * lib/regexec.c (update_cur_sifted_state, check_arrival,
31316         check_arrival_add_next_nodes): Avoid using uninitialized variable.
31317
31318         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
31319                     Ulrich Drepper  <drepper@redhat.com>
31320
31321         [BZ #1302]
31322         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
31323         changed.
31324         (bitset_word_t): Renamed from bitset_word.  All uses changed.
31325
31326         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
31327
31328         [BZ #281]
31329         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
31330         * lib/regcomp.c: Remove unnecessary uses of
31331         unsigned RE_TRANSLATE_TYPE.
31332         * lib/regex_internal.h: Likewise.
31333         * lib/regex_internal.c: Likewise.
31334         * lib/regexec.c: Likewise.
31335         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
31336
31337         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
31338
31339         * lib/regexec.c (find_recover_state): Remove unnecessary
31340         initialization.
31341         (transit_state_bkref): Make DFA a const pointer.
31342         (get_subexp): Likewise.
31343         (check_arrival): Likewise.
31344         (update_cur_sifted_state): Likewise.
31345         (re_search_internal): Likewise.
31346         (prune_impossible_nodes): Likewise.
31347         (acquire_init_state_context): Likewise.
31348         (proceed_next_node): Likewise.
31349         (set_regs): Likewise.
31350         (free_fail_stack_return): Likewise.
31351         (check_arrival_expand_ecl): Mark DFA parameter as const.
31352         (check_arrival_expand_ecl_sub): Likewise.
31353         (check_subexp_limits): Likewise.
31354         (sub_epsilon_src_nodes):  Likewise.
31355         (add_epsilon_src_nodes):  Likewise.
31356         (merge_state_array): Likewise.
31357         (update_regs): Likewise.
31358         (build_trtable): Likewise.
31359         (sift_states_backward): Mark MCTX parameter as const.
31360         (build_sifted_states): Likewise.
31361         (update_cur_sifted_state): Likewise.
31362         (sift_states_mkref): Likewise.
31363         (check_arrival_expand_ecl): Mark eclosure as const.
31364         (check_dst_limits_calc_pos_1): Likewise.
31365         * lib/regex_internal.h (re_match_context_t): Make dfa a const
31366         pointer.
31367
31368         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
31369
31370         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
31371         (transit_state_sb): Likewise.
31372         (transit_state_mb): Likewise.
31373         (sift_states_iter_mb): Likewise.
31374         (check_arrival_add_next_nodes): Likewise.
31375         (check_node_accept_bytes): Change first parameter to pointer-to-const.
31376         [_LIBC] (re_search_2_stub): Use mempcpy.
31377
31378         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
31379         mbrtowc for very simple UTF-8 case.
31380
31381         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
31382         a pointer-to-const.
31383         (re_acquire_state_context): Likewise.
31384         * lib/regex_internal.h: Adjust prototypes.
31385
31386         * lib/regex.c: Prevent using C++ compilers.
31387
31388         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
31389         (re_acquire_state_context): Likewise.
31390
31391 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31392
31393         * modules/regex (Depends-on): Add ssize_t.
31394
31395 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31396
31397         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
31398         translation table.
31399
31400 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
31401
31402         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
31403
31404 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
31405             Bruno Haible  <bruno@clisp.org>
31406
31407         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
31408         <sys/types.h> and <inttypes.h>.
31409
31410 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31411
31412         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
31413         `__error_t_defined', so argp.h will not typedef the former.
31414
31415 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
31416
31417         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
31418         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
31419         glibc names.  Even if glibc is changed to conform to POSIX, the
31420         traditional names will be available anyway, since regex depends on
31421         the extensions module.  Also, fix a longstanding typo in the
31422         implementation of Spencer ERE test #75 from grep 2.3.  Problems
31423         reported by Emanuele Giaquinta.  Also, change sense of cached
31424         variable, so that the message makes sense.
31425
31426 2006-03-24  Simon Josefsson  <jas@extundo.com>
31427
31428         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
31429         including some doc fixes.
31430         (base64_encode_alloc): Fix +1 bug on allocation failures.
31431
31432 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31433
31434         * lib/base64.c (base64_encode): Do not read past end of array with
31435         unsanitized input on systems with CHAR_BIT > 8.
31436
31437 2006-03-24  Eric Blake  <ebb9@byu.net>
31438
31439         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
31440
31441 2006-03-22  Karl Berry  <karl@gnu.org>
31442
31443         * config/srclist.txt (*setenv.[ch]): get from coreutils.
31444         * config/srclistvars.sh (COREUTILS): new var.
31445
31446 2006-03-17  Jim Meyering  <jim@meyering.net>
31447
31448         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
31449         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
31450
31451 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31452
31453         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
31454         no longer needs it.  Instead, check that regoff_t is as least
31455         as wide as ptrdiff_t.
31456
31457         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
31458         so that our regex.h stays compatible with the installed regex.
31459         This is helpful for installers who configure --without-included-regex.
31460         Problem reported by Emanuele Giaquinta.
31461
31462 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
31463
31464         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
31465         Typedef to long int, not to off_, as POSIX will likely change
31466         in that direction.
31467
31468 2006-03-15  Eric Blake  <ebb9@byu.net>
31469
31470         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
31471
31472 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
31473
31474         * lib/argp-help.c (validate_uparams): Fix typo
31475         * lib/argp-parse.c (argp_default_options): Consistently begin help
31476         messages with a lowercase letter.
31477
31478 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
31479
31480         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
31481         overrun buffers and shouldn't be used (much as gets shouldn't be
31482         used).
31483         * lib/time_r.c (asctime_r, ctime_r): Likewise.
31484
31485 2006-03-08  Simon Josefsson  <jas@extundo.com>
31486
31487         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
31488         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31489
31490 2006-03-08  Simon Josefsson  <jas@extundo.com>
31491
31492         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
31493         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31494
31495 2006-03-08  Simon Josefsson  <jas@extundo.com>
31496
31497         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
31498         signal that configure disabled the device.
31499
31500 2006-03-08  Simon Josefsson  <jas@extundo.com>
31501
31502         * build-aux/maint.mk: Fix refresh-po, to handle no translated
31503         languages.
31504
31505 2006-03-07  Simon Josefsson  <jas@extundo.com>
31506
31507         * modules/getopt (Depends-on): Add unistd.
31508
31509         * modules/unistd: New file.
31510
31511 2006-03-07  Simon Josefsson  <jas@extundo.com>
31512
31513         * modules/gc-random: New file.
31514
31515 2006-03-07  Simon Josefsson  <jas@extundo.com>
31516
31517         * m4/unistd_h.m4: New file.
31518
31519 2006-03-07  Simon Josefsson  <jas@extundo.com>
31520
31521         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
31522         test to be side-effect free by storing the result in the cache
31523         variable gl_cv_lib_readline, and moving the assignment of
31524         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
31525         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
31526
31527 2006-03-07  Simon Josefsson  <jas@extundo.com>
31528
31529         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
31530         error on missing devices (the functions will return an error).
31531
31532         * m4/gc.m4: Move random stuff to gc-random.m4
31533
31534 2006-03-07  Simon Josefsson  <jas@extundo.com>
31535
31536         * lib/unistd_.h: New file.
31537
31538 2006-03-07  Simon Josefsson  <jas@extundo.com>
31539
31540         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
31541
31542 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31543
31544         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
31545         Problem reported by Juan Manuel Guerrero.
31546
31547 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31548
31549         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
31550         the unistd module.
31551         * lib/getlogin_r.c: Likewise.
31552         * lib/getlogin_r.h: Likewise.
31553         * lib/glob.c: Likewise.
31554         * lib/pagealign_alloc.c: Likewise.
31555         * lib/unistd_.h: Remove; no longer needed.
31556
31557 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
31558
31559         * MODULES.html.sh (Support for systems lacking POSIX:2001):
31560         Add unistd.
31561         * modules/c-stack (Depends-on): Add unistd.
31562         * modules/getlogin_r: Likewise.
31563         * modules/glob: Likewise.
31564         * modules/pagealign_alloc: Likewise.
31565         * modules/unistd (Files): Remove lib/unistd_.h.
31566         (EXTRA_DIST): Remove.
31567         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
31568         need unistd_.h.
31569         (MOSTLYCLEANFILES): Remove unistd.h-t.
31570
31571 2006-03-03  Simon Josefsson  <jas@extundo.com>
31572
31573         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
31574
31575 2006-03-03  Simon Josefsson  <jas@extundo.com>
31576
31577         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
31578         libidn and bison.
31579
31580 2006-03-03  Simon Josefsson  <jas@extundo.com>
31581
31582         * build-aux/maint.mk: Add indent target.
31583
31584 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
31585
31586         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
31587         our replacement poll.h in any case, to avoid a differing
31588         declaration from a system header.  Seen on AIX.
31589
31590 2006-03-01  Simon Josefsson  <jas@extundo.com>
31591
31592         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
31593         <kasal@ucw.cz>.
31594
31595 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31596
31597         * modules/gettime (Depends-on): Add extensions module.
31598         * modules/nanosleep (Depends-on): Likewise.
31599         * modules/settime (Depends-on): Likewise.
31600
31601 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
31602
31603         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
31604         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
31605         pedantically.
31606         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
31607         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
31608
31609         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
31610         not "==".  Reported by Ralf Wildenhues.
31611
31612 2006-03-01  Karl Berry  <karl@gnu.org>
31613
31614         * doc/Copyright/request-*: new files, synced from gnuorg.
31615
31616 2006-03-01  Karl Berry  <karl@gnu.org>
31617
31618         * config/srclist.txt (Copyright/*): new entries.
31619
31620 2006-02-28  Simon Josefsson  <jas@extundo.com>
31621
31622         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
31623
31624 2006-02-27  Simon Josefsson  <jas@extundo.com>
31625
31626         * lib/base64.h: Indent #define's.  From Jim Meyering
31627         <jim@meyering.net>.
31628
31629 2006-02-27  Jim Meyering  <jim@meyering.net>
31630
31631         Revert the change of 2006-02-24, so these files can continue
31632         to be sync'd from gettext.
31633         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
31634         of `config.h'.
31635
31636 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
31637
31638         * modules/intprops: New file.
31639         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
31640         Add intprops.
31641         * modules/getloadavg (Files): Remove lib/intprops.h.
31642         (Depends-on): Add intprops.
31643         * modules/human: Likewise.
31644         * modules/inttostr: Likewise.
31645         * modules/openat: Likewise.
31646         * modules/sig2str: Likewise.
31647         * modules/userspec: Likewise.
31648         * modules/utimecmp: Likewise.
31649         * modules/xnanosleep: Likewise.
31650         * modules/xstrtol: Likewise.
31651
31652 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
31653
31654         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
31655         * modules/lock-tests (TESTS): Use $(EXEEXT).
31656         * modules/tls-tests: Likewise.
31657         * modules/argp-tests: Likewise.
31658         (check_PROGRAMS): New var, replacing...
31659         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
31660
31661 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31662
31663         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
31664         `config.h'.
31665
31666 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
31667
31668         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
31669
31670 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31671
31672         Sync from coreutils.
31673         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
31674         gl_CHDIR_SAFER.
31675
31676 2006-02-22  Jim Meyering  <jim@meyering.net>
31677
31678         Sync from coreutils.
31679         * m4/chdir-safer.m4: New file.
31680
31681 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
31682
31683         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
31684         AT_FDCWD exceeds INT_MAX.
31685         * lib/openat.h (AT_FDCWD): Likewise.
31686
31687 2006-02-17  Eric Blake  <address@hidden>
31688
31689         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
31690
31691 2006-02-16  Simon Josefsson  <jas@extundo.com>
31692
31693         * modules/getaddrinfo (Depends-on): Add sys_socket.
31694
31695 2006-02-15  Simon Josefsson  <jas@extundo.com>
31696
31697         * build-aux/maint.mk: Add dsyntax-check rule.
31698
31699 2006-02-15  Eric Blake  <ebb9@byu.net>
31700
31701         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
31702         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
31703         'present but cannot compile' warnings on cygwin.
31704         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
31705         use ws2tcpip.h if sys/socket.h works.
31706         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
31707         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
31708
31709 2006-02-14  Simon Josefsson  <jas@extundo.com>
31710
31711         * modules/maintainer-makefile (Files): Rename.
31712
31713         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
31714         and (the local) Makefile.cfg to maint-cfg.mk.
31715
31716         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
31717         to the latter.
31718
31719         * modules/maintainer-makefile: New module.
31720
31721         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
31722         severaly stripped to make it possible to build it up from scratch
31723         with reliable tests.
31724
31725         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
31726         fixes to permit overriding the default actions when configure and
31727         makefile are not available.
31728
31729 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
31730
31731         Sync from coreutils.
31732         * modules/lstat (Depends-on): Don't depend on xalloc.
31733         (License): Change from GPL to LGPL, since this is now simply a
31734         replacement for a libc function.
31735
31736 2006-02-14  Jim Meyering  <jim@meyering.net>
31737
31738         Sync from coreutils.
31739
31740         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
31741         failure on deficient systems, and simplify gnulib lgpl dependencies.
31742         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
31743         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
31744
31745         * lib/xalloc-die.c: Remove unused definition of N_.
31746
31747 2006-02-14  Jim Meyering  <jim@meyering.net>
31748
31749         Sync from coreutils.
31750         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
31751         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
31752         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
31753         double-quote uses of that variable, to accommodate the rare case in
31754         which getmntent is available in none of the libraries checked.  This
31755         happens at least on FreeBSD 5.0.
31756
31757 2006-02-13  Simon Josefsson  <jas@extundo.com>
31758
31759         * gnulib-tool (Usage): Fix --import, from
31760         karl@freefriends.org (Karl Berry).
31761
31762 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
31763
31764         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
31765
31766 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
31767
31768         * lib/argp-namefrob.h: Restore changes accidentally lost during the
31769         "autoupdate" on 2005-12-12.
31770
31771 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
31772
31773         * modules/closeout (Depends-on): Remove atexit.
31774
31775 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
31776
31777         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
31778         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
31779
31780 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
31781
31782         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
31783         __EXTENSIONS__ if this causes compilation to fail.  Problem
31784         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
31785         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
31786
31787 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
31788
31789         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
31790         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
31791         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
31792         All uses changed.
31793
31794 2006-01-26  Simon Josefsson  <jas@extundo.com>
31795
31796         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
31797         prototype is visible on mingw32.
31798
31799         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
31800         for mingw32.
31801
31802         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
31803         mingw32).
31804
31805 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
31806
31807         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
31808         attempt to open for write; this always fails, at least on POSIX
31809         hosts.  This reinstates the 2006-01-09 change, which was
31810         inadvertently removed.
31811
31812 2006-01-26  Bruno Haible  <bruno@clisp.org>
31813
31814         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
31815         Reported by Paul Eggert.
31816
31817 2006-01-26  Bruno Haible  <bruno@clisp.org>
31818             Paul Eggert  <eggert@cs.ucla.edu>
31819
31820         * lib/stdbool_.h (_Bool)
31821         [(! (defined __cplusplus || defined __BEOS__)
31822           && !defined __GNUC__
31823           && !(defined __HP_cc || defined __xlc__
31824                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
31825                || defined __sgi))]:
31826         #define to signed char in these cases too; this simplifies
31827         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
31828         etc., separately) and makes it more conservative.
31829
31830 2006-01-25  Simon Josefsson  <jas@extundo.com>
31831
31832         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
31833         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
31834         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
31835
31836 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
31837
31838         * lib/argp-namefrob.h: Bugfix. Remove stray #
31839
31840 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
31841
31842         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
31843         so that we test the test.
31844         Check for yet another HP-UX cc bug involving *bool |= bool.
31845
31846 2006-01-25  Karl Berry  <karl@gnu.org>
31847
31848         * config/srclist.txt (vasnprintf.c): sync lost.
31849
31850 2006-01-25  Jim Meyering  <jim@meyering.net>
31851
31852         Sync from the stable (b5) branch of coreutils:
31853
31854         * lib/fts.c (fts_children): Don't let close() clobber errno from
31855         failed fchdir().
31856
31857         * lib/fts.c (fts_stat): When following a symlink-to-directory,
31858         don't necessarily interpret stat-fails+lstat-succeeds as indicating
31859         a dangling symlink.  That can also happen at least for ELOOP.
31860         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
31861         FYI, this bug predates the inclusion of fts.c in coreutils.
31862
31863         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
31864         in their own block, so pre-c99 compilers don't object.
31865
31866         Avoid the double-free (first in fts_read, second in fts_close) that
31867         would occur when an `active' directory is made inaccessible (e.g.,
31868         via chmod a-x) during a traversal.
31869         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
31870         before returning.  Reproduce this failure by
31871         mkdir -p a/b; cd a; chmod a-x . b
31872         Reported by Stavros Passas.
31873
31874 2006-01-25  Jim Meyering  <jim@meyering.net>
31875
31876         * lib/fileblocks.c: Remove more useless parentheses.
31877         * lib/readutmp.h: Likewise.
31878
31879 2006-01-25  Bruno Haible  <bruno@clisp.org>
31880
31881         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
31882         warnings.
31883         Reported by Paul Eggert.
31884
31885 2006-01-25  Bruno Haible  <bruno@clisp.org>
31886
31887         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
31888         rid of a trap command. For Solaris sh.
31889         Reported by Mark D. Baushke <mdb@gnu.org>.
31890
31891 2006-01-24  Simon Josefsson  <jas@extundo.com>
31892
31893         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
31894         Bruno.
31895
31896 2006-01-24  Karl Berry  <karl@gnu.org>
31897
31898         * config/srclist.txt (argp-namefrob.h): sync lost.
31899
31900 2006-01-24  Jim Meyering  <jim@meyering.net>
31901
31902         * modules/openat (Files): Add lib/intprops.h.
31903         From Mark D. Baushke.
31904
31905 2006-01-24  Jim Meyering  <jim@meyering.net>
31906
31907         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
31908         Reported by Mark D. Baushke.
31909
31910 2006-01-24  Jim Meyering  <jim@meyering.net>
31911
31912         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
31913
31914 2006-01-24  Bruno Haible  <bruno@clisp.org>
31915
31916         * modules/strnlen (Maintainer): Change from glibc to all.
31917
31918 2006-01-24  Bruno Haible  <bruno@clisp.org>
31919
31920         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
31921         Patch by Paul Eggert.
31922
31923 2006-01-24  Bruno Haible  <bruno@clisp.org>
31924
31925         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
31926         already has it.
31927         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
31928         2005-11-26.
31929
31930         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
31931         'signed char' to avoid problems with the built-in _Bool type.
31932         Reported by Paul Eggert on 2005-11-26.
31933
31934 2006-01-24  Bruno Haible  <bruno@clisp.org>
31935
31936         * gnulib-tool (func_import): Avoid constructing complicated sed
31937         expressions inside backquote.
31938         Report and solution by Mark D. Baushke <mdb@gnu.org>.
31939
31940 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
31941
31942         These changes imported from libc.
31943         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
31944         test and two separate function calls.
31945         * lib/strndup.c (__strndup): Add libc_hidden_def.
31946
31947 2006-01-23  Simon Josefsson  <jas@extundo.com>
31948
31949         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
31950         Remove the test_*_SOURCES variable: automake infers it by default.
31951         * modules/tls-tests: Likewise.
31952
31953 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31954
31955         Work around porting bugs reported by Dieter in
31956         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
31957         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
31958         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
31959         Include "getopt.h" first, to check interface.
31960         (getenv): Declare only if defined HAVE_DECL_GETENV &&
31961         !HAVE_DECL_GETENV.
31962         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
31963         (__strndup): Revert to K&R-style function dfns, the glibc style.
31964         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
31965         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
31966         Include strnlen.h first, to get prototype properly.
31967         (strnlen): Renamed from __strnlen.
31968         Remove weak alias.
31969
31970 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31971
31972         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
31973
31974 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
31975
31976         * config/srclist.txt: Adjust to reflect glibc reorganization.
31977         This affects only comments.
31978
31979 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
31980
31981          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
31982          Reported by Bruce Korb <bkorb@gnu.org>.
31983
31984 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
31985
31986         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
31987         to pacify gcc -Wswitch-default.
31988
31989 2006-01-22  Bruno Haible  <bruno@clisp.org>
31990
31991         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
31992         temporary buffer for sprintf, take into account the precision also
31993         for 'd', 'i', 'u', 'o', 'x', 'X'.
31994
31995 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
31996
31997         * modules/argp-tests: New module
31998         * tests/test-argp.c: New file
31999         * tests/test-argp-2.sh: New file
32000
32001 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
32002
32003         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
32004         (__argp_base_name): Removed
32005         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
32006         typo.
32007         (__argp_base_name): Provide macro definition or extern declaration
32008         depending on the configuration
32009
32010 2006-01-20  Simon Josefsson  <jas@extundo.com>
32011
32012         * modules/inet_ntop (Depends-on): Depend on sys_socket.
32013
32014 2006-01-20  Simon Josefsson  <jas@extundo.com>
32015
32016         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
32017
32018 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
32019
32020         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
32021         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
32022         Suggested by Bruno Haible.
32023
32024 2006-01-20  Karl Berry  <karl@gnu.org>
32025
32026         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
32027         until changes propagate, I guess.
32028
32029 2006-01-19  Simon Josefsson  <jas@extundo.com>
32030
32031         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
32032
32033 2006-01-19  Simon Josefsson  <jas@extundo.com>
32034
32035         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
32036
32037 2006-01-19  Simon Josefsson  <jas@extundo.com>
32038
32039         * gnulib-tool: Set check_PROGRAMS.
32040
32041         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32042         modules/des-tests, modules/gc-arcfour-tests,
32043         modules/gc-arctwo-tests, modules/gc-des-tests,
32044         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32045         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32046         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32047         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32048         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32049         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
32050         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
32051         test_*_SOURCES.
32052
32053 2006-01-18  Simon Josefsson  <jas@extundo.com>
32054
32055         * modules/socklen (Depends-on): Depend on sys_socket.
32056
32057 2006-01-18  Simon Josefsson  <jas@extundo.com>
32058
32059         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
32060         modules/des-tests, modules/gc-arcfour-tests,
32061         modules/gc-arctwo-tests, modules/gc-des-tests,
32062         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
32063         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
32064         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
32065         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
32066         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
32067         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
32068         $(EXEEXT) to automake TESTS variable, for mingw32.
32069
32070 2006-01-17  Simon Josefsson  <jas@extundo.com>
32071
32072         * modules/socklen (Include): Need sys/socket.h.
32073
32074 2006-01-17  Bruno Haible  <bruno@clisp.org>
32075
32076         * modules/ssize_t (Include): Add <sys/types.h>.
32077
32078 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
32079
32080         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
32081         it's not portable and it doesn't work with cross-compiles.
32082         Problem reported by Bruno Haible.  Fix missing-$ typo in
32083         'test "gl_cv_ignore_unused_libraries" ...' that prevented
32084         -zignore from being used with Sun's C compiler.
32085
32086 2006-01-12  Simon Josefsson  <jas@extundo.com>
32087
32088         * lib/base64.c: Fix warning, reported by Bruno Haible
32089         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
32090
32091 2006-01-12  Bruno Haible  <bruno@clisp.org>
32092
32093         * modules/ldd: New file.
32094         * build-aux/ldd.sh.in: New file.
32095         * MODULES.html.sh (Support for building libraries and executables): Add
32096         ldd.
32097
32098 2006-01-12  Bruno Haible  <bruno@clisp.org>
32099
32100         * m4/ldd.m4: New file.
32101
32102 2006-01-12  Bruno Haible  <bruno@clisp.org>
32103
32104         * gnulib-tool (func_import, func_create_testdir): Don't go into an
32105         endless loop while replacing $auxdir with build-aux.
32106
32107 2006-01-11  Simon Josefsson  <jas@extundo.com>
32108
32109         * lib/stdint_.h (SIZE_MAX): Add missing (.
32110
32111 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
32112
32113         Sync from coreutils.
32114         * lib/md5.c: Fix commentary typos.
32115         (alignof, UNALIGNED_P): No need for a GCC-specific version.
32116         * lib/md5.h (__attribute__): Remove; unused.
32117         * lib/sha1.c: Fix commentary to match md5 better.
32118         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
32119         so that we don't need to worry about alignment.  All uses changed.
32120         This merges the 2005-10-28 md5 change into sha1.
32121
32122 2006-01-11  Jim Meyering  <jim@meyering.net>
32123
32124         Sync from coreutils.
32125         * lib/md5.c (OP): Fix spacing.
32126
32127 2006-01-11  Bruno Haible  <bruno@clisp.org>
32128
32129         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32130         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
32131         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
32132
32133 2006-01-11  Bruno Haible  <bruno@clisp.org>
32134
32135         Ensure automatic ordering between gl_LOCK and gl_ARGP.
32136         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
32137         the "early" section as well.
32138
32139 2006-01-11  Bruno Haible  <bruno@clisp.org>
32140
32141         Avoid "ar: no archive members specified" error on MacOS X.
32142         * gnulib-tool (func_modules_add_dummy): New function.
32143         (func_import, func_create_testdir): Invoke it.
32144
32145 2006-01-11  Bruno Haible  <bruno@clisp.org>
32146
32147         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
32148         with $auxdir in AC_CONFIG_FILES statements.
32149
32150 2006-01-11  Bruno Haible  <bruno@clisp.org>
32151
32152         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32153         Initialize also noinst_HEADERS to empty.
32154
32155 2006-01-11  Bruno Haible  <bruno@clisp.org>
32156
32157         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
32158         variables.
32159         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
32160         autoreconf.
32161
32162 2006-01-11  Bruno Haible  <bruno@clisp.org>
32163
32164         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
32165         overridable by the user.
32166         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32167
32168 2006-01-10  Simon Josefsson  <jas@extundo.com>
32169
32170         * modules/sys_socket: New file.
32171
32172 2006-01-10  Simon Josefsson  <jas@extundo.com>
32173
32174         * m4/sys_socket_h.m4: New file.
32175
32176 2006-01-10  Simon Josefsson  <jas@extundo.com>
32177
32178         * lib/socket_.h: New file.
32179
32180 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32181
32182         * modules/readutmp (Maintainer): Add myself.
32183
32184 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32185
32186         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
32187         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
32188         People who are still concerned with buggy memcmp implementations
32189         can invoke gl_FUNC_MEMCMP themselves.
32190
32191 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
32192
32193         * lib/regex_internal.h (BITSET_WORD_BITS):
32194         Work around a bug in 64-bit PGC (before version 6.1-2), where the
32195         preprocessor mishandles large unsigned values as if they were signed.
32196         Problem reported by Claudio Fontana in
32197         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
32198
32199 2006-01-10  Jim Meyering  <jim@meyering.net>
32200
32201         Avoid the double-free (first in fts_read, second in fts_close) that
32202         would occur when an `active' directory is made inaccessible (e.g.,
32203         via chmod a-x) during a traversal.
32204         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
32205         before returning.  Reproduce this failure by
32206         mkdir -p a/b; cd a; chmod a-x . b
32207         Reported by Stavros Passas.
32208
32209         Sync from coreutils.
32210         * lib/sha1.c: Tweak grammar in a comment.
32211
32212 2006-01-10  Jim Meyering  <jim@meyering.net>
32213
32214         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
32215         Patch by Joerg Sonnenberger.
32216
32217 2006-01-10  Bruno Haible  <bruno@clisp.org>
32218
32219         * modules/readutmp: Depend on module free.
32220         * modules/strtok_r: Depend on module restrict.
32221
32222 2006-01-10  Bruno Haible  <bruno@clisp.org>
32223
32224         * modules/gettext (configure.ac): Add an invocation of
32225         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
32226
32227 2006-01-10  Bruno Haible  <bruno@clisp.org>
32228
32229         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
32230         Reported by Werner Lemberg <wl@gnu.org>.
32231
32232 2006-01-10  Bruno Haible  <bruno@clisp.org>
32233
32234         * lib/localcharset.c: Update from GNU gettext.
32235
32236 2006-01-10  Bruno Haible  <bruno@clisp.org>
32237
32238         * lib/argp.h (__const): Remove macro. Use const instead.
32239         * lib/argp-fmtstream.h (__const): Likewise.
32240         * lib/glob_.h (__const): Remove macro.
32241         * lib/glob-libc.h: Use const instead of __const.
32242
32243 2006-01-10  Bruno Haible  <bruno@clisp.org>
32244
32245         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
32246         variable.
32247         Needed to avoid an automake error regarding the 'gettext' module.
32248
32249 2006-01-09  Simon Josefsson  <jas@extundo.com>
32250
32251         * modules/inet_ntop (Depends-on): Add restrict.
32252
32253 2006-01-09  Simon Josefsson  <jas@extundo.com>
32254
32255         * modules/gc-rijndael-tests (License): Put under LGPL.
32256
32257         * modules/gc-des-tests (License): Likewise.
32258
32259         * modules/gc-arcfour-tests (License): Likewise.
32260
32261         * modules/gc-arctwo-tests (License): Likewise.
32262
32263         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
32264
32265         * modules/gc-hmac-sha1-tests (Files): Likewise.
32266
32267         * modules/gc-hmac-md5-tests (License): Likewise.
32268
32269         * modules/gc-sha1-tests (License): Likewise.
32270
32271         * modules/gc-md5-tests (License): Likewise.
32272
32273         * modules/gc-md4-tests (License): Likewise.
32274
32275         * modules/gc-md2-tests (License): Likewise.
32276
32277         * modules/gc-tests (License): Likewise.
32278
32279         * modules/des-tests (License): Likewise.
32280
32281         * modules/md4-tests (License): Likewise.
32282
32283         * modules/md2-tests (License): Likewise.
32284
32285 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32286
32287         Sync from coreutils:
32288
32289         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
32290         * modules/lib-ignore: New file.
32291         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
32292         chdir-safer.m4, lchmod.m4.
32293         * modules/openat: Add mkdirat.c, openat-priv.h.
32294
32295 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32296
32297         Sync from coreutils.
32298         * m4/lib-ignore.m4: New file.
32299         * m4/lchmod.m4: New file.
32300
32301 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32302
32303         Sync from coreutils.
32304         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
32305         for write access: POSIX says that must fail.
32306         * lib/fts.c (diropen): Likewise.
32307         * lib/save-cwd.c (save_cwd): Likewise.
32308         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
32309         well, for minor improvements on hosts that lack O_DIRECTORY.
32310         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
32311         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
32312         Fall back on chown if open failed with EACCES.
32313
32314         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
32315         Report an error at compile-time if only a 1-second nominal clock
32316         resolution is found.
32317
32318         * lib/lchmod.h: New file.
32319         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
32320         (make_dir_parents): Use lchown rather than chown, and
32321         lchmod rather than chmod.
32322
32323         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
32324         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
32325         "proc" reported by n0dalus.
32326
32327         * lib/mountlist.c: Include <limits.h>.
32328         (dev_from_mount_options)
32329         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
32330         New function.  It no longer assumes "dev=" has the System V meaning
32331         on Linux (since it doesn't).  It also parses "dev=" more carefully.
32332         (read_file_system_list)
32333         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
32334         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
32335         dev= in that case.
32336
32337         * lib/posixtm.h (PDS_PRE_2000): New macro.
32338         * lib/posixtm.c (year): Arg is now syntax_bits rather than
32339         allow_century.  All usages changed.  Reject dates outside the range
32340         1969-1999 if PDS_PRE_2000 is used.
32341
32342 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
32343
32344         Sync from coreutils.
32345         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
32346         (Time of day items): Mention the possibility of leap seconds.
32347         Problem reported by Dr. David Alan Gilbert.
32348
32349 2006-01-09  Jim Meyering  <jim@meyering.net>
32350
32351         Sync from coreutils.
32352
32353         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
32354
32355         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
32356
32357         * lib/modechange.c (mode_compile): Reject an invalid mode string
32358         that starts with an octal digit.  From Andreas Gruenbacher.
32359
32360         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
32361         and dup to open_safer and dup_safer, respectively.
32362         (openat_permissive): Fix typo in comment.
32363
32364         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
32365         "gettext.h"; either no longer needed or are guaranteed by openat.h.
32366         (_): Remove; no longer needed.
32367         (openat): Renamed from rpl_openat; no need for rpl_openat
32368         since openat.h renames openat for us.
32369         Replace most of the body with a call to openat_permissive,
32370         to avoid duplicate code.
32371         Port to (probably hypothetical) environments were mode_t is
32372         wider than int.
32373         (openat_permissive): Require mode arg, so that we can check
32374         types better.  Put it just after flags.  Change cwd failure
32375         indicator from pointer-to-bool to pointer-to-errno-value.
32376         All callers changed.
32377         Invoke openat_save_fail and/or openat_restore_fail if
32378         cwd_errno is null, so that openat can call us.
32379         (openat_permissive, fdopendir, fstatat, unlinkat):
32380         Simplify errno handling to avoid some duplicate code,
32381         as it's OK to set errno on success.
32382         * lib/openat.h: Revamp code so that function macros depend on
32383         __OPENAT_PREFIX only, not also on AT_FDCWD.
32384         (openat_ro): Remove.  Caller changed to use openat_permissive.
32385         (openat_permissive): Now a macro, if not a function.
32386         (openat_restore_fail, openat_save_fail): Now always functions,
32387         since mkdirat needs them even if __OPENAT_PREFIX is defined.
32388
32389         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
32390         and openat.c.
32391         * lib/mkdirat.c: Include openat-priv.h.
32392         Remove definitions of macros defined therein.
32393         * lib/openat.c: Likewise.
32394
32395         * lib/mkdirat.c (mkdirat): New file and function.
32396         * lib/openat.h (mkdirat): Declare.
32397
32398         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
32399
32400         * lib/openat.h (openat_permissive): Declare.
32401         (openat_ro): Define.
32402
32403         * lib/openat.c (EXPECTED_ERRNO): New macro.
32404         (openat_permissive): New function -- used in remove.c rewrite.
32405         (all functions): Set errno just before returning, only if there
32406         was an actual failure.
32407         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
32408
32409         Emulate openat-family functions using Linux's procfs, if possible.
32410         Idea and some code based on Ulrich Drepper's glibc changes.
32411
32412         * lib/openat.c: (BUILD_PROC_NAME): New macro.
32413         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
32414         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
32415         before falling back on save_cwd and restore_cwd.
32416         (fdopendir, fstatat, unlinkat): Likewise.
32417
32418         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
32419         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
32420
32421         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
32422         as second argument to va_arg.  Otherwise, some versions of gcc
32423         warn that `if this code is reached, the program will abort'.
32424
32425 2006-01-09  Jim Meyering  <jim@meyering.net>
32426
32427         Sync from coreutils.
32428         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
32429         Require openat-priv.h.
32430
32431 2006-01-09  Bruno Haible  <bruno@clisp.org>
32432
32433         * modules/strnlen (Include): Use strnlen.h.
32434
32435 2006-01-09  Bruno Haible  <bruno@clisp.org>
32436
32437         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
32438
32439 2006-01-09  Bruno Haible  <bruno@clisp.org>
32440
32441         * lib/sysexit_.h (EX_OK): New macro.
32442         Suggested by Martin Lambers <marlam@marlam.de>.
32443
32444 2006-01-09  Bruno Haible  <bruno@clisp.org>
32445
32446         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
32447         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
32448
32449 2006-01-09  Bruno Haible  <bruno@clisp.org>
32450
32451         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
32452         numbers.
32453
32454 2006-01-09  Bruno Haible  <bruno@clisp.org>
32455
32456         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
32457         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
32458         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
32459         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
32460
32461 2006-01-09  Bruno Haible  <bruno@clisp.org>
32462
32463         * build-aux/javacomp.sh.in: New file, moved from lib/.
32464         * modules/javacomp-script (Files): Update.
32465         (configure.ac): Add AC_CONFIG_FILES invocation.
32466         (EXTRA_DIST): Remove variable.
32467
32468         * build-aux/javaexec.sh.in: New file, moved from lib/.
32469         * modules/javaexec (Files): Update.
32470         (configure.ac): Add AC_CONFIG_FILES invocation.
32471         (EXTRA_DIST): Remove javaexec.sh.in.
32472
32473         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
32474         * modules/csharpcomp-script (Files): Update.
32475         (configure.ac): Add AC_CONFIG_FILES invocation.
32476         (EXTRA_DIST): Remove variable.
32477
32478         * build-aux/csharpexec.sh.in: New file, moved from lib/.
32479         * modules/csharpexec (Files): Update.
32480         (configure.ac): Add AC_CONFIG_FILES invocation.
32481         (EXTRA_DIST): Remove csharpexec.sh.in.
32482
32483 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32484
32485         Sync from coreutils.
32486
32487         Add POSIX ACL support
32488         * lib/acl.h (copy_acl, set_acl): Add declarations.
32489         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
32490         systems other than Linux.
32491         (chmod_or_fchmod): New function: use fchmod when possible,
32492         and chmod otherwise.
32493         (file_has_acl): Add a POSIX ACL implementation, with a
32494         Linux-specific subcase.
32495         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
32496         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
32497         acls are unsupported.
32498         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
32499         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
32500         are unsupported.
32501
32502 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
32503
32504         Sync from coreutils.
32505         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
32506
32507 2006-01-07  Bruno Haible  <bruno@clisp.org>
32508
32509         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
32510         gl_EARLY.
32511
32512 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32513
32514         * lib/strftime.c (tzname): Don't declare if it is already #defined.
32515         Problem reported for Mingw by Mark Junker.
32516
32517 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
32518
32519         * README: Gnulib normally doesn't generate a tarball.
32520
32521 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
32522
32523         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
32524         long int, not int, for nanosecond counts, so that people who are
32525         used to POSIX struct timespec won't be surprised.  Reported by Jim
32526         Meyering.
32527
32528 2005-12-28  Bruno Haible  <bruno@clisp.org>
32529
32530         * build-aux/config.rpath: Update from GNU gettext.
32531
32532 2005-12-16  Jim Meyering  <jim@meyering.net>
32533
32534         * modules/fprintftime: New module.
32535         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
32536
32537 2005-12-16  Jim Meyering  <jim@meyering.net>
32538
32539         * m4/fprintftime.m4: New file.
32540
32541 2005-12-16  Jim Meyering  <jim@meyering.net>
32542
32543         * lib/fprintftime.c, lib/fprintftime.h: New files.
32544
32545 2005-12-15  Simon Josefsson  <jas@extundo.com>
32546
32547         * modules/socklen (configure.ac): Fix M4 macro name, to align with
32548         new m4/socklen.m4.
32549
32550 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32551
32552         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
32553         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
32554
32555 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32556
32557         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
32558         * lib/argp-help.c (fill_in_uparams): Check if the constructed
32559         struct uparams is valid. Fall back to the default values if it is
32560         not.
32561
32562 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32563
32564         * modules/argp (Files): Add argp-pin.c
32565         (Depends-on): dirname
32566         (lib_SOURCES): Add argp-pin.c
32567
32568 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32569
32570         * m4/argp.m4:  Check if program_invocation_name and
32571         program_invocation_short_name are declared and define appropriate
32572         macros if they are not.
32573
32574 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32575
32576         * lib/argp-help.c (__argp_base_name): New function
32577         (__argp_short_program_name): Rewrite using __argp_base_name
32578         * lib/argp-namefrob.h: Define program_invocation_name and
32579         program_invocation_short_name if requested
32580         (__argp_base_name): Add prototype
32581         * lib/argp-parse.c (argp_def): Use gettext wrappers
32582         (argp_default_parser): Use __argp_base_name
32583         * lib/argp-pin.c: New file. Defines program_invocation_name and
32584         program_invocation_short_name on systems that lack them.
32585
32586 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
32587
32588         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
32589         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
32590         porting problem reported by Georg Schwarz in
32591         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
32592
32593 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
32594
32595         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
32596         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
32597         porting problem reported by Georg Schwarz in
32598         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
32599
32600 2005-12-05  Bruno Haible  <bruno@clisp.org>
32601
32602         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
32603         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
32604         Reported by Mark Junker <mjscod@gmx.de>.
32605
32606 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
32607
32608         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
32609         Use implementation from Albert Chin, with some
32610         comments/corrections by Stepan Kasal and myself.
32611
32612 2005-12-02  Bruno Haible  <bruno@clisp.org>
32613
32614         * gnulib-tool (func_import): Accept GPLed build tool modules when
32615         --lgpl is given.
32616         * modules/csharpcomp-script: New file.
32617         * modules/csharpcomp: Depend on it.
32618         * modules/javacomp-script: New file.
32619         * modules/javacomp: Depend on it.
32620         Suggested by Simon Josefsson.
32621
32622 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
32623
32624         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
32625         statement, to work around an HP-UX 10.20 compiler bug reported by
32626         Peter O'Gorman.
32627
32628 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
32629
32630         * modules/savedir (Depends-on): Add openat.
32631
32632 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
32633
32634         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
32635         (uintmax_t) [defined uintmax_t]: Do not declare.
32636         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
32637         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
32638         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
32639         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
32640         sake of portability to weird hosts that C allows (though we don't
32641         know of any practical examples).
32642
32643         * lib/savedir.h (fdsavedir): New decl.
32644         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
32645         contains most of the former guts of savedir.
32646         (savedir): Use savedirstream.
32647         Include "openat.h".
32648
32649 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
32650
32651         * modules/obstack (Files): Add m4/ulonglong.m4.
32652         Problem reported by Davide Angelocola.
32653
32654 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
32655
32656         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
32657         coreutils no longer futzes with rounding modes.
32658
32659 2005-11-14  Jim Meyering  <jim@meyering.net>
32660
32661         * lib/mkstemp-safer.c: Include <config.h>, required for possible
32662         replacement of mkstemp.
32663
32664 2005-11-10  Simon Josefsson  <jas@extundo.com>
32665
32666         * lib/readline.c: Remove EOL.
32667
32668 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32669
32670         * modules/gethrxtime (Depends-on): Add gettime.
32671
32672 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32673
32674         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
32675         or gettimeofday; no longer needed.
32676
32677 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
32678
32679         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
32680         time business.
32681         (gethrxtime) [! (HAVE_NANOUPTIME
32682         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
32683         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
32684         our own approximation.
32685
32686 2005-11-08  Eric Blake  <ebb9@byu.net>
32687
32688         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
32689
32690 2005-11-08  Eric Blake  <ebb9@byu.net>
32691
32692         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
32693
32694 2005-11-04  Bruno Haible  <bruno@clisp.org>
32695
32696         * gnulib-tool: Implement --update mode.
32697
32698 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
32699
32700         Fix porting problem reported by Theodoros V. Kalamatianos.
32701         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
32702         Don't assume that futimes failing means we must fail.
32703
32704 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
32705
32706         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
32707         variables to suggest the intended function of the PATH_MAX check.
32708
32709 2005-10-30  Kean Johnston  <jkj@sco.com>
32710
32711         Trivial changes to support SCO systems.
32712         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
32713         as PATH_MAX.
32714         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
32715         where __ptr is null when no I/O is pending.
32716
32717 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
32718
32719         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
32720         leave errno alone.  Problem reported by Dmitry V. Levin.
32721
32722 2005-10-28  Simon Josefsson  <jas@extundo.com>
32723
32724         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
32725         Test more.
32726
32727         * tests/test-gc-md2.c, tests/test-md2.c: New files.
32728
32729         * modules/md2, modules/md2-tests: New files.
32730
32731 2005-10-28  Simon Josefsson  <jas@extundo.com>
32732
32733         * m4/inet_ntop.m4: More tests.
32734
32735         * m4/gc-md2.m4, md2.m4: New file.
32736
32737 2005-10-28  Simon Josefsson  <jas@extundo.com>
32738
32739         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
32740         "restrict" keywords, as per POSIX.  Protect the function
32741         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
32742         Don't use K&R prototypes.  Check the sprintf return values.
32743         Re-define EAFNOSUPPORT if not present.  Indent.
32744
32745         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
32746         suggested by Bruno Haible <bruno@clisp.org>.
32747
32748         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
32749
32750         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
32751
32752         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
32753         libgcrypt).
32754
32755         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
32756
32757         * lib/md2.h, lib/md2.c: New files.
32758
32759 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
32760
32761         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
32762         errno alone.  Problem reported by Frederic Jolliton.
32763
32764 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
32765
32766         * modules/verify (License): Change from GPL to LGPL.  This is a
32767         tiny module and there are apparently near-equivalents that are
32768         under the BSD license.
32769
32770 2005-10-24  Simon Josefsson  <jas@extundo.com>
32771
32772         * modules/sha1: Relicense to LGPL.
32773
32774 2005-10-24  Simon Josefsson  <jas@extundo.com>
32775
32776         * lib/md4.h: Shrink buffer size, now that we changed the type.
32777
32778 2005-10-23  Simon Josefsson  <jas@extundo.com>
32779
32780         * gnulib-tool (func_import): Fix --tests-base.
32781
32782 2005-10-22  Simon Josefsson  <jas@extundo.com>
32783
32784         * modules/arcfour (Depends-on): Need stdint.
32785
32786 2005-10-22  Simon Josefsson  <jas@extundo.com>
32787
32788         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
32789         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
32790
32791 2005-10-22  Simon Josefsson  <jas@extundo.com>
32792
32793         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
32794         suggested by Bruno Haible <bruno@clisp.org>.
32795
32796 2005-10-22  Simon Josefsson  <jas@extundo.com>
32797
32798         * lib/crc.h: Include stddef.h, for size_t.
32799
32800 2005-10-22  Simon Josefsson  <jas@extundo.com>
32801
32802         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
32803         arcfour_context struct (simplify test vector testing in GNU
32804         Shishi).
32805
32806 2005-10-21  Simon Josefsson  <jas@extundo.com>
32807
32808         * modules/des, modules/des-tests: New files.
32809
32810         * modules/gc-des, modules/gc-des-tests: New files.
32811
32812         * tests/test-des.c, tests/test-gc-des.c: New file.
32813
32814 2005-10-21  Simon Josefsson  <jas@extundo.com>
32815
32816         * modules/arctwo, modules/arctwo-tests: New files.
32817
32818         * tests/test-arctwo.c: New file.
32819
32820         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
32821
32822         * tests/test-gc-arctwo.c: New file.
32823
32824 2005-10-21  Simon Josefsson  <jas@extundo.com>
32825
32826         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
32827         Bruno Haible <bruno@clisp.org>.
32828
32829         * m4/gc-des.m4: New file.
32830
32831 2005-10-21  Simon Josefsson  <jas@extundo.com>
32832
32833         * m4/arctwo.m4: New file.
32834
32835         * m4/gc-arctwo.m4: New file.
32836
32837 2005-10-21  Simon Josefsson  <jas@extundo.com>
32838
32839         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
32840         block.
32841
32842 2005-10-21  Simon Josefsson  <jas@extundo.com>
32843
32844         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
32845         <bruno@clisp.org>.
32846
32847         * lib/hmac-sha1.c (hmac_sha1): Likewise.
32848
32849         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
32850         Bruno Haible <bruno@clisp.org>.
32851
32852         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
32853         <bruno@clisp.org>.
32854
32855 2005-10-21  Simon Josefsson  <jas@extundo.com>
32856
32857         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
32858
32859 2005-10-21  Simon Josefsson  <jas@extundo.com>
32860
32861         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
32862
32863 2005-10-21  Simon Josefsson  <jas@extundo.com>
32864
32865         * lib/des.h, lib/des.c: New files.
32866
32867         * lib/gc-gnulib.c: Support DES.c
32868
32869 2005-10-21  Simon Josefsson  <jas@extundo.com>
32870
32871         * lib/arctwo.h, lib/arctwo.c: New files.
32872
32873         * lib/gc-gnulib.c: Support ARCTWO.
32874
32875 2005-10-21  Simon Josefsson  <jas@extundo.com>
32876
32877         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
32878         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32879
32880 2005-10-21  Simon Josefsson  <jas@extundo.com>
32881
32882         * gnulib-tool (func_import, func_create_testdir): Define automake
32883         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
32884         Makefile.am snippet),
32885         suggested by Bruno Haible <bruno@clisp.org>.
32886
32887         * modules/gc (Makefile.am): Use it.
32888
32889 2005-10-21  Bruno Haible  <bruno@clisp.org>
32890
32891         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
32892         patch.
32893
32894 2005-10-19  Simon Josefsson  <jas@extundo.com>
32895
32896         * tests/test-gc-rijndael.c: New file.
32897
32898         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
32899
32900 2005-10-19  Simon Josefsson  <jas@extundo.com>
32901
32902         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
32903         interface too.
32904
32905 2005-10-19  Simon Josefsson  <jas@extundo.com>
32906
32907         * tests/test-gc-arcfour.c: New file.
32908
32909         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
32910
32911 2005-10-19  Simon Josefsson  <jas@extundo.com>
32912
32913         * modules/gc-md4, modules/gc-md4-tests: New file.
32914
32915         * tests/test-gc-md4.c: New file.
32916
32917 2005-10-19  Simon Josefsson  <jas@extundo.com>
32918
32919         * m4/gc-md4.m4: New file.
32920
32921 2005-10-19  Simon Josefsson  <jas@extundo.com>
32922
32923         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
32924         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
32925         <kasal@ucw.cz>.
32926
32927 2005-10-19  Simon Josefsson  <jas@extundo.com>
32928
32929         * m4/gc-arcfour.m4: New file.
32930
32931         * m4/gc-rijndael.m4: New file.
32932
32933 2005-10-19  Simon Josefsson  <jas@extundo.com>
32934
32935         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
32936
32937 2005-10-19  Simon Josefsson  <jas@extundo.com>
32938
32939         * lib/gc-gnulib.c: Support ARCFOUR.
32940
32941 2005-10-19  Simon Josefsson  <jas@extundo.com>
32942
32943         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
32944         support.
32945
32946         * lib/gc.h: Add ECB enum type.
32947
32948         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
32949
32950 2005-10-18  Simon Josefsson  <jas@extundo.com>
32951
32952         * tests/test-md5.c: New file.
32953
32954         * modules/md5-tests: New file.
32955
32956 2005-10-18  Simon Josefsson  <jas@extundo.com>
32957
32958         * tests/test-md4.c: New file.
32959
32960         * modules/md4, modules/md4-tests: New files.
32961
32962 2005-10-18  Simon Josefsson  <jas@extundo.com>
32963
32964         * m4/md4.m4: New file.
32965
32966 2005-10-18  Simon Josefsson  <jas@extundo.com>
32967
32968         * lib/md4.h, lib/md4.c: New files, based on md5.?.
32969
32970 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
32971
32972         * gnulib-tool (func_create_testdir): Omit the second check whether
32973         BUILT_SOURCES in nonempty.
32974
32975 2005-10-17  Simon Josefsson  <jas@extundo.com>
32976
32977         * tests/test-rijndael.c: New file.
32978
32979 2005-10-17  Simon Josefsson  <jas@extundo.com>
32980
32981         * modules/sha1: Depend on stdint instead of md5.
32982
32983         * modules/md5: Depend on stdint, remove uint32_t.
32984
32985 2005-10-17  Simon Josefsson  <jas@extundo.com>
32986
32987         * modules/gc-sha1-tests: New file.
32988
32989         * tests/test-gc-sha1.c: New file.
32990
32991 2005-10-17  Simon Josefsson  <jas@extundo.com>
32992
32993         * m4/md5.m4: Remove call to uint32_t.m4.
32994
32995 2005-10-17  Simon Josefsson  <jas@extundo.com>
32996
32997         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
32998
32999         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
33000         md5.h.
33001
33002         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
33003
33004         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
33005
33006 2005-10-17  Simon Josefsson  <jas@extundo.com>
33007
33008         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
33009
33010 2005-10-17  Simon Josefsson  <jas@extundo.com>
33011
33012         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
33013
33014 2005-10-17  Simon Josefsson  <jas@extundo.com>
33015
33016         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
33017
33018         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
33019
33020 2005-10-17  Bruno Haible  <bruno@clisp.org>
33021
33022         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
33023         that it can also be used in a test.
33024
33025 2005-10-16  Bruno Haible  <bruno@clisp.org>
33026
33027         * gnulib-tool (func_emit_tests_Makefile_am): Also define
33028         TESTS_ENVIRONMENT, so that individual tests can augment it.
33029
33030         * gnulib-tool (func_create_testdir): Use an intermediate target for
33031         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
33032         macros, like $(ALLOCA_H), which cannot be passed through the command
33033         line.
33034
33035 2005-10-15  Simon Josefsson  <jas@extundo.com>
33036
33037         * modules/rijndael-tests: New file.
33038
33039         * modules/rijndael: New file.
33040
33041 2005-10-15  Simon Josefsson  <jas@extundo.com>
33042
33043         * m4/rijndael.m4: New file.
33044
33045 2005-10-15  Simon Josefsson  <jas@extundo.com>
33046
33047         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
33048
33049         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
33050
33051 2005-10-14  Simon Josefsson  <jas@extundo.com>
33052
33053         * tests/test-arcfour.c: New file.
33054
33055         * modules/arcfour, modules/arcfour-tests: New files.
33056
33057 2005-10-14  Simon Josefsson  <jas@extundo.com>
33058
33059         * m4/arcfour.m4: New file.
33060
33061 2005-10-14  Simon Josefsson  <jas@extundo.com>
33062
33063         * lib/arcfour.h, lib/arcfour.c: New files.
33064
33065 2005-10-14  Roland McGrath  <roland@redhat.com>
33066
33067         Import from libc.  [BZ #1331]
33068         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
33069         macro argument.
33070         Reported by Matej Vela <vela@debian.org>.
33071
33072 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33073
33074         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
33075         include <wchar.h>; no longer needed.
33076
33077 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
33078
33079         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
33080
33081 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
33082         and  Ulrich Drepper  <drepper@redhat.com>
33083
33084         Import from libc.
33085         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
33086         instead of inline stream orientation test and two separate
33087         function calls.  Pay no attention to USE_IN_LIBIO.
33088
33089 2005-10-13  Simon Josefsson  <jas@extundo.com>
33090
33091         * modules/gc-hmac-md5-tests: New file.
33092
33093         * tests/test-gc-hmac-sha1.c: New file.
33094
33095         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
33096
33097         * modules/gc-hmac-md5-tests: New file.
33098
33099         * tests/test-gc-md5.c: New file.
33100
33101         * modules/gc-md5-tests: New file.
33102
33103 2005-10-13  Simon Josefsson  <jas@extundo.com>
33104
33105         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
33106         Move memory allocation outside of loop.
33107
33108 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
33109
33110         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
33111         intermediate directory is in a read-only file system.  Problem
33112         reported by Eric Blake.
33113
33114 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
33115
33116         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
33117
33118 2005-10-12  Simon Josefsson  <jas@extundo.com>
33119
33120         * tests/test-hmac-sha1.c: New file.
33121
33122         * modules/hmac-sha1-tests: New file.
33123
33124         * modules/hmac-sha1: New file.
33125
33126 2005-10-12  Simon Josefsson  <jas@extundo.com>
33127
33128         * modules/gc-sha1: New file.
33129
33130 2005-10-12  Simon Josefsson  <jas@extundo.com>
33131
33132         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
33133
33134         * tests/test-gc-pbkdf2-sha1.c: New file.
33135
33136 2005-10-12  Simon Josefsson  <jas@extundo.com>
33137
33138         * modules/gc-md5, modules/gc-hmac-md5: New files.
33139
33140         * modules/gc (Files): Remove md5, memxor and hmac files.
33141
33142 2005-10-12  Simon Josefsson  <jas@extundo.com>
33143
33144         * m4/gc-pbkdf2-sha1.m4: New file.
33145
33146         * m4/gc-hmac-sha1.m4: New file.
33147
33148         * m4/gc-sha1: New file.
33149
33150         * m4/hmac-sha1.m4: New file.
33151
33152 2005-10-12  Simon Josefsson  <jas@extundo.com>
33153
33154         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
33155
33156         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
33157
33158 2005-10-12  Simon Josefsson  <jas@extundo.com>
33159
33160         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
33161         suggested by Bruno Haible <bruno@clisp.org>.
33162
33163 2005-10-12  Simon Josefsson  <jas@extundo.com>
33164
33165         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
33166
33167 2005-10-12  Simon Josefsson  <jas@extundo.com>
33168
33169         * lib/gc-pbkdf2-sha1.c: New file.
33170
33171         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
33172
33173 2005-10-12  Simon Josefsson  <jas@extundo.com>
33174
33175         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
33176
33177         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
33178
33179 2005-10-12  Simon Josefsson  <jas@extundo.com>
33180
33181         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
33182         GC_USE_HMAC_MD5, respectively.
33183
33184         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
33185         (gc_md5): Fix typo.
33186
33187         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
33188
33189         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
33190
33191         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
33192
33193 2005-10-12  Bruno Haible  <bruno@clisp.org>
33194
33195         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
33196         Reported by Stepan Kasal <kasal@ucw.cz>.
33197
33198 2005-10-11  Simon Josefsson  <jas@extundo.com>
33199
33200         * tests/test-crc.c: New file.
33201
33202         * modules/crc, modules/crc-tests: New files.
33203
33204 2005-10-11  Simon Josefsson  <jas@extundo.com>
33205
33206         * m4/crc.m4: New file.
33207
33208 2005-10-11  Simon Josefsson  <jas@extundo.com>
33209
33210         * lib/gc.h: Add gc_hash and gc_hash_buffer.
33211
33212         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
33213
33214         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
33215
33216 2005-10-11  Simon Josefsson  <jas@extundo.com>
33217
33218         * lib/crc.h, lib/crc.c: New files.
33219
33220         * lib/gc.h (gc_hash_buffer): Add doc.
33221
33222 2005-10-11  Bruno Haible  <bruno@clisp.org>
33223
33224         * modules/c-strcasestr: New file.
33225         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
33226
33227 2005-10-11  Bruno Haible  <bruno@clisp.org>
33228
33229         * modules/c-strcase: New file.
33230         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
33231
33232 2005-10-11  Bruno Haible  <bruno@clisp.org>
33233
33234         * lib/strcasecmp.c: Include limits.h.
33235         (strcasecmp): Avoid integer overflow on exotic platforms.
33236         * lib/strncasecmp.c: Include limits.h.
33237         (strncasecmp): Avoid integer overflow on exotic platforms.
33238         Reported by Paul Eggert.
33239
33240 2005-10-11  Bruno Haible  <bruno@clisp.org>
33241
33242         * lib/c-strcasestr.h: New file, from GNU gettext.
33243         * lib/c-strcasestr.c: New file, from GNU gettext.
33244
33245 2005-10-11  Bruno Haible  <bruno@clisp.org>
33246
33247         * lib/c-strcase.h: New file, from GNU gettext.
33248         * lib/c-strcasecmp.c: New file, from GNU gettext.
33249         * lib/c-strncasecmp.c: New file, from GNU gettext.
33250
33251 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
33252
33253         * modules/mempcpy (License): GPL -> LGPL.
33254         * modules/strchrnul (License): Likewise.
33255         * modules/sysexits (License): Likewise.
33256
33257 2005-10-08  Simon Josefsson  <jas@extundo.com>
33258
33259         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
33260
33261 2005-10-07  Simon Josefsson  <jas@extundo.com>
33262
33263         * m4/memxor.m4: Remove gl_C_RESTRICT call.
33264
33265 2005-10-06  Simon Josefsson  <jas@extundo.com>
33266
33267         * tests/test-hmac-md5.c: New file.
33268
33269         * modules/hmac-md5-tests: New file.
33270
33271         * modules/hmac-md5: New file.
33272
33273 2005-10-06  Simon Josefsson  <jas@extundo.com>
33274
33275         * m4/hmac-md5.m4: New file.
33276
33277         * m4/memxor.m4: Require gl_C_RESTRICT.
33278
33279 2005-10-06  Simon Josefsson  <jas@extundo.com>
33280
33281         * lib/memxor.c (memxor): Avoid casts and warnings.
33282
33283 2005-10-06  Simon Josefsson  <jas@extundo.com>
33284
33285         * lib/hmac-md5.c: New file.
33286
33287         * lib/hmac.h: New file.
33288
33289 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
33290
33291         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
33292         promotes to int, not unsigned int, to catch the AIX 5.3
33293         compiler bug.
33294
33295 2005-10-05  Simon Josefsson  <jas@extundo.com>
33296
33297         * modules/memxor: New file.
33298
33299         * modules/iconv (Files): Move config.rpath to havelib, it is used
33300         there.
33301
33302         * modules/havelib (Files): Add config.rpath.
33303
33304 2005-10-05  Simon Josefsson  <jas@extundo.com>
33305
33306         * m4/memxor.m4: New file.
33307
33308 2005-10-05  Simon Josefsson  <jas@extundo.com>
33309
33310         * lib/memxor.c (memxor): Fix compiler error.
33311
33312         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
33313         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
33314
33315         * lib/memxor.h, lib/memxor.c: New files.
33316
33317         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
33318         we assume all systems have it, suggested by Jim Meyering
33319         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
33320         any systems lack sys/socket.h; mingw32 is known to lack it, but we
33321         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
33322         same reasons.
33323
33324 2005-10-05  Simon Josefsson  <jas@extundo.com>
33325
33326         * config/srclist.txt: Add glibc bug 1423 for md5.h.
33327
33328 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
33329
33330         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
33331         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
33332         needed, since the source code now assumes these .h files.
33333
33334 2005-10-05  Derek Price  <derek@ximbiot.com>
33335
33336         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
33337
33338 2005-10-05  Bruno Haible  <bruno@clisp.org>
33339
33340         * modules/stdint (License): Change to LGPL.
33341
33342 2005-10-04  Simon Josefsson  <jas@extundo.com>
33343
33344         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
33345         D. Baushke" <mdb@gnu.org>.
33346
33347 2005-10-04  Bruno Haible  <bruno@clisp.org>
33348
33349         * lib/verify.h (verify_true): Provide alternative definition for C++.
33350
33351 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
33352
33353         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
33354         (SSIZE_MAX): New macro, if not already defined.
33355         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
33356         than 2 GiB.
33357
33358 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33359
33360         Sync from coreutils.
33361         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
33362         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
33363         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
33364         ULLONG_MAX doesn't work with 2.7.2.1.
33365
33366 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33367
33368         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
33369         From Ben Pfaff.
33370
33371         * modules/exclude (Depends-on): Depend on verify.
33372         * modules/strtoimax (Depends-on): Likewise.
33373         * modules/utimecmp (Depends-on): Likewise.
33374
33375 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
33376
33377         * lib/exclude.c: Include verify.h.
33378         (verify): Remove.  All callers changed to use verify.h's version.
33379         * lib/strtoimax.c: Likewise.
33380         * lib/utimecmp.c: Likewis.e
33381
33382         Sync from coreutils.
33383         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
33384         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
33385         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
33386         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
33387         bother returning ENOSYS if settimeofday or stime fails; just let
33388         them return whatever errno they want to return.
33389         * lib/utimens.c: Include unistd.h, for dup2.
33390         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
33391         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
33392
33393 2005-10-02  Jim Meyering  <jim@meyering.net>
33394
33395         Sync from coreutils.
33396         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
33397         from glibc-2.2.5 that fails for read-only files.
33398
33399 2005-10-02  Jim Meyering  <jim@meyering.net>
33400
33401         Sync from coreutils.
33402         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
33403         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
33404         `#if HAVE_CONFIG_H'.
33405         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
33406         Remove AT_FDCWD test.
33407         Do not consume the fd unless successful.
33408         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
33409         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
33410         block, so that we don't even try to compile it if settimeofday is
33411         available.  This works around a compilation failure on OSF1 V5.1,
33412         due to stime requiring a `long int*' while tv_sec is `int'.
33413
33414 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
33415
33416         Sync from coreutils.
33417         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
33418         against `yes', rather than just testing for nonempty.
33419
33420 2005-10-01  Simon Josefsson  <jas@extundo.com>
33421
33422         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
33423         and Darwin.
33424
33425         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
33426         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
33427         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
33428         freeaddrinfo and gai_strerror are declared by the POSIX headers.
33429         Check if struct addrinfo is declared.
33430
33431 2005-10-01  Simon Josefsson  <jas@extundo.com>
33432
33433         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
33434         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
33435         AI_* and EAI_* definitions.  Protect function declarations.
33436
33437 2005-10-01  Jim Meyering  <jim@meyering.net>
33438
33439         Sync from coreutils.
33440
33441         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
33442         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
33443         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
33444         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33445         in the inet and nsl libraries.  Required on Solaris 5.7.
33446
33447 2005-10-01  Jim Meyering  <jim@meyering.net>
33448
33449         Sync from coreutils.
33450         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
33451         in the inet and nsl libraries.  Required on Solaris 5.7.
33452
33453 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
33454
33455         * lib/getdelim.c (getdelim): Remove unused variables.
33456
33457 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
33458
33459         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
33460         so that the code works even with ancient cpp.  Portability problem
33461         with GCC 2.7.2.1 reported by Thomas M.Ott.
33462
33463 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
33464
33465         * modules/regex (Depends-on): Add strcase.
33466
33467         * modules/gethostname (Licence): Change from GPL to LGPL, since
33468         gethostname.c is a trivial implementation of a standard library
33469         function.
33470         * modules/poll (License): Change from GPL to LGPL, since it's
33471         derived from LGPL code.
33472
33473 2005-09-27  Jim Meyering  <jim@meyering.net>
33474
33475         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
33476         HAVE_CONFIG_H.
33477
33478         * lib/intprops.h (signed_type_or_expr__): Define.
33479         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
33480         for unsigned types.
33481
33482 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
33483
33484         * lib/verify.h (verify_expr): Remove, replacing with:
33485         (verify_true): New macro that returns true instead of void.
33486         (verify_type__): Remove.
33487         (verify): Use verify_true rather than verify_type__.
33488
33489 2005-09-26  Bruno Haible  <bruno@clisp.org>
33490
33491         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
33492         is necessary.
33493         (lib_SOURCES): Remove mbchar.c.
33494         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
33495         (Files): Add m4/mbrtowc.m4.
33496         * modules/mbiter: Likewise.
33497         * modules/mbuiter: Likewise.
33498
33499 2005-09-26  Bruno Haible  <bruno@clisp.org>
33500
33501         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
33502         compile mbchar.c if they are not both present.
33503         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
33504         * m4/mbiter.m4 (gl_MBITER): Likewise.
33505         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
33506         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
33507         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
33508
33509 2005-09-25  Jim Meyering  <jim@meyering.net>
33510
33511         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
33512         also uses socklen_t.
33513
33514 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
33515
33516         * lib/utimens.c (ENOSYS): Define if not already defined.
33517         (futimens): Support having a null PATH if the file descriptor
33518         is nonnegative.
33519
33520         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
33521         Remove.
33522         (__attribute): Define to empty unless GCC 3.1 or later.
33523         This works around a core dump on OpenBSD 3.4, which has GCC
33524         2.95.3, which dumps core when given __attribute__(()).  It also
33525         simplifies other tests, since we really don't want to bother with
33526         worrying about which ancient version of GCC supported what.
33527         Original problem reported by Yoann Vandoorselaere, with part of
33528         the fix suggested by Derek Price.
33529
33530 2005-09-24  Jim Meyering  <jim@meyering.net>
33531
33532         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
33533         so we can once again use a positive bitfield width of 1 -- now we
33534         don't have to explain why we were using a bitfield width of 2.
33535
33536 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
33537
33538         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
33539         and similarly for the other external symbols.  Problem reported
33540         by James Gallager.
33541
33542         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
33543         bug reported by Jim Meyering.
33544
33545         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
33546         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
33547         not needed, since socklen is a prerequisite module.
33548
33549 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
33550
33551         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
33552         Problem reported by Eric Blake.
33553         (getaddrinfo): Initialize se so that it's not garbage.
33554         Redo internal storage allocation so that it doesn't make unportable
33555         assumptions about alignment.
33556         Fix a memory leak.
33557
33558         * lib/utimens.c (futimens): Use futimesat if available.
33559         Prefer it to futimes since it doesn't have the futimes bug.
33560
33561         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
33562         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
33563         Instead, declare a function that returns a pointer to an array,
33564         and use verify_type__ to declare the size of the array.
33565         Problem and germ of a solution reported by Bruno Haible.
33566         (verify_type__): Use 2, not 1, for bitfield size, to avoid
33567         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
33568
33569 2005-09-23  Jim Meyering  <jim@meyering.net>
33570
33571         Sync from coreutils.
33572         Correct build failure (socklen_t not defined) on at least
33573         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
33574         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
33575
33576 2005-09-23  Jim Meyering  <jim@meyering.net>
33577
33578         * modules/getaddrinfo (Depends-on): Add socklen.
33579
33580 2005-09-23  Bruno Haible  <bruno@clisp.org>
33581
33582         * tests/test-verify.c: New file.
33583
33584 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33585
33586         Sync from coreutils.
33587
33588         * modules/argmatch (Depends-on): Add verify.
33589         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
33590         unistd-safer.
33591         * modules/save-cwd (Depends-on): Likewise.
33592
33593         * modules/openat (Files): Add lib/openat-die.c.
33594         (Depends-on): Remove error, exitfail.
33595         Add dirname.
33596
33597         * modules/verify: New file.
33598         * MODULES.html.sh (Diagnostics <assert.h>): New section,
33599         with "verify" module.
33600
33601 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33602
33603         Sync from coreutils.
33604
33605         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
33606         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
33607         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
33608         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
33609         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
33610         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
33611         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
33612         Don't bother checking for string.h, stdlib.h, unistd.h.
33613         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
33614         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
33615         module's job.
33616         * m4/jm-macros.m4 (gl_MACROS): Likewise.
33617         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
33618
33619         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
33620         (gl_GETDATE): Use it.
33621
33622         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
33623
33624 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33625
33626         Sync from coreutils.
33627
33628         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
33629         stat-time.h.
33630         * lib/argmatch.h: Include verify.h
33631         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
33632         (ARGMATCH_ASSERT): Remove; unused.
33633         * lib/canonicalize.c: Assume STDC_HEADERS.
33634         * lib/exclude.c: Include "strcase.h".
33635         * lib/regex_internal.h [!defined _LIBC]: Likewise.
33636         * lib/getusershell.c: Include stdio--.h rather than stdio.h
33637         and stdio-safer.h.
33638         (getusershell): Call fopen, not fopen_safer.
33639         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
33640         Do not include unistd-safer.h.
33641         (save_cwd): Don't call fd_safer; no longer needed
33642         now that we include fcntl--.h.
33643
33644         * lib/getdate.y (relative_time): New type.
33645         (RELATIVE_TIME_0): New constant.
33646         (parser_control): Use relative_time instead of doing it ourselves.
33647         (%union): Add new relative_time rel member.
33648         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
33649         Now typeless.
33650         (relunit, relunit_snumber): Now of type rel.
33651         (zone, rel, relunit, get_date): Adjust to above changes.
33652
33653         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
33654         Do not include unistd-safer.h.
33655         (getloadavg): Don't call fd_safer; no longer needed
33656         now that we include fcntl--.h.
33657
33658         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
33659         (make_dir_parents): Treat ENOSYS like EEXIST.
33660
33661         Improve quality of diagnostics on restore_cwd failure.
33662         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
33663         (make_dir_parents): Last arg is now int * (for errno), not bool *.
33664         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
33665         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
33666         each time through the loop.  Do not diagnose restore_cwd failure;
33667         that is the caller's job (and perhaps the caller does not care).
33668
33669         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
33670         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
33671         If the file already exists but is not a directory, don't bother
33672         to try to make its parents.
33673         Close potential file descriptor leak if we can't chdir("/") (!).
33674         Don't always return true if chdir($PWD) fails; return true only
33675         if the requested action was done successfully (except for the
33676         chdir($PWD)).
33677         Don't log final directory unless we actually made it.
33678         Refactor to avoid duplicate code to fix up permissions.
33679         Don't attempt to fix up parent permissions if chdir($PWD) fails.
33680
33681         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
33682         to make it a bit faster and (I hope) clearer.
33683         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
33684         Fix bug in formats like %2N.
33685
33686         * lib/verify.h: New file.
33687
33688 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
33689
33690         Sync from coreutils.
33691         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
33692
33693 2005-09-22  Jim Meyering  <jim@meyering.net>
33694
33695         Sync from coreutils.
33696
33697         * m4/lstat.m4 (gl_FUNC_LSTAT):
33698         Use AC_LIBSOURCES to require lstat.c and lstat.h.
33699         Remove obsolete comment.
33700         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
33701         * m4/xstrtod.m4: Likewise.
33702
33703         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
33704
33705 2005-09-22  Jim Meyering  <jim@meyering.net>
33706
33707         Sync from coreutils.
33708
33709         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
33710
33711         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
33712         the .tm_year member, since otherwise gcc-4.0 would now warn about
33713         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
33714
33715         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
33716         order to avoid an unsuppressible warning from gcc on 64-bit systems.
33717
33718         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
33719         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
33720         when run in a time zone for which daylight savings time is in effect
33721         for the starting date.
33722
33723         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
33724         stop us from restricting permissions of just-created absolute-named
33725         directories.
33726         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
33727         to restore initial working directory.
33728         * lib/mkdir-p.c (make_dir_parents): New parameter:
33729         different_working_dir, to tell caller if/when we change the working
33730         directory and are unable to return to the initial one.
33731         * lib/mkdir-p.h (make_dir_parents): Update prototype.
33732         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
33733         `return false'.  This fixes a bug introduced on 2004-07-30.
33734
33735         * lib/openat.c (fdopendir): Be sure to close the supplied
33736         file descriptor before returning.  This makes our replacement
33737         implementation a little closer to Solaris's, where fdopendir
33738         ties the file descriptor to the returned DIR* pointer.
33739         * lib/openat.c (unlinkat): New function.
33740         * lib/openat.h (unlinkat): Add prototype.
33741         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
33742         (openat_restore_fail): Rename from openat_restore_die.
33743         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
33744
33745         Provide an alternative to exiting immediately upon save_cwd or
33746         restore_cwd failure.  Now, an application can arrange e.g.,
33747         to perform a longjump in that case.
33748         * lib/openat.c: Include dirname.h.
33749         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
33750         (rpl_openat, fdopendir, fstatat): Call openat_save_die
33751         and openat_restore_die rather than calling error directly.
33752         Don't include "error.h" or "exitfail.h"; they're no longer needed.
33753
33754         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
33755         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
33756         define.
33757
33758         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
33759         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
33760                             int utc, int nanoseconds);
33761         Background:
33762         date should not have to allocate a megabyte of virtual memory to
33763         handle a format argument like +%1048575T.  When implemented with
33764         strftime, it must allocate such a buffer, use strftime to fill it
33765         in, print it, then free it.
33766         With fprintftime, it simply prints everything and exits.
33767         With no need for memory allocation, that's one fewer way to fail.
33768         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
33769         optional field width, not before, so we accept %9:z, not %:9z.
33770         (my_strftime): Be sure to use L_('x') for literals.
33771
33772         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
33773         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
33774         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
33775         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
33776         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
33777         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
33778         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
33779         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
33780         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
33781         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
33782         * lib/xgethostname.c, lib/xreadlink.c:
33783         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
33784
33785         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
33786         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
33787         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
33788         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
33789         and don't include <sys/file.h>).
33790
33791 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
33792
33793         Sync from coreutils.
33794
33795         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
33796         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
33797         [!LDAV_DONE]: Avoid unused variable warning.
33798
33799 2005-09-21  Bruno Haible  <bruno@clisp.org>
33800
33801         * lib/unicodeio.h (unicode_to_mb): New declaration.
33802
33803 2005-09-20  Derek Price  <derek@ximbiot.com>
33804
33805         * lib/getaddrinfo.c: Don't include <netdb.h> included from
33806         getaddrinfo.h.
33807
33808 2005-09-20  Bruno Haible  <bruno@clisp.org>
33809
33810         * gnulib-tool: Remove trailing slashes from the values specified for
33811         --source-base, --m4-base, --tests-base, --aux-dir.
33812         Suggested by Simon Josefsson <jas@extundo.com>.
33813
33814 2005-09-20  Bruno Haible  <bruno@clisp.org>
33815
33816         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
33817         func_modules_to_filelist, func_import, func_create_testdir): Make all
33818         sorting results locale-independent, so that gnulib-cache.m4 doesn't
33819         change when gnulib-tool is invoked in a different locale.
33820
33821 2005-09-19  Simon Josefsson  <jas@extundo.com>
33822
33823         * m4/socklen.m4: Fix typo.
33824
33825 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33826
33827         Use a consistent style for including <config.h>.
33828         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
33829         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
33830         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
33831         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
33832         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
33833         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
33834         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
33835         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
33836         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
33837         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
33838         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
33839         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
33840         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
33841         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
33842         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
33843         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
33844         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
33845         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
33846         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
33847         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
33848         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
33849         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
33850         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
33851         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
33852         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
33853         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
33854         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
33855         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
33856         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
33857         lib/xstrtoumax.c, lib/yesno.c:
33858         Standardize inclusion of config.h.
33859         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
33860         lib/inttostr.h:  Removed inclusion of config.h from header files.
33861         * lib/inttostr.c:  Adjusted in-tree users.
33862         * lib/timespec.h: Remove superfluous warning to include config.h.
33863         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
33864         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
33865         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
33866         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
33867         config.h with HAVE_CONFIG_H.
33868
33869 2005-09-19  Jim Meyering  <jim@meyering.net>
33870
33871         * modules/pathmax (License): Change to LGPL.
33872
33873 2005-09-19  Derek Price  <derek@ximbiot.com>
33874
33875         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
33876
33877 2005-09-19  Bruno Haible  <bruno@clisp.org>
33878
33879         * gnulib-tool (import): Provide default for --tests-base.
33880
33881 2005-09-19  Bruno Haible  <bruno@clisp.org>
33882
33883         * doc/quote.texi: New file, extracted from gnulib.texi.
33884         * doc/ctime.texi: New file, extracted from gnulib.texi.
33885         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
33886         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
33887         * doc/gnulib.texi: Include them.
33888
33889 2005-09-18  Bruno Haible  <bruno@clisp.org>
33890
33891         Portability fix.
33892         * gnulib-tool (func_readlink): New function.
33893         (func_ln_if_changed): Use it.
33894
33895 2005-09-18  Bruno Haible  <bruno@clisp.org>
33896
33897         * gnulib-tool: Support --with-tests also with --import.
33898         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
33899         (func_import): Use variables $testsbase and $inctests. Emit a
33900         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
33901         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
33902         SUBDIRS += $testsdir.
33903         (func_create_testdir): Update.
33904
33905 2005-09-18  Bruno Haible  <bruno@clisp.org>
33906
33907         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
33908         instead of $dry_run.
33909         (func_cp_if_changed, func_mv_if_changed): Remove functions.
33910         (func_ln_if_changed): Don't handle dry-run here.
33911         (func_import): In dry-run mode, detect more precisely which actions
33912         would be performed, and don't use "...ing" verbs.
33913
33914 2005-09-18  Bruno Haible  <bruno@clisp.org>
33915
33916         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
33917         (func_import): Use join on two temporary files instead of three nested
33918         loops, in order to determine which files are new or old.
33919
33920 2005-09-18  Bruno Haible  <bruno@clisp.org>
33921
33922         * gnulib-tool (func_import): Comment out code that spits out the
33923         new files with --dry-run.
33924
33925 2005-09-18  Bruno Haible  <bruno@clisp.org>
33926
33927         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
33928
33929 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33930
33931         * lib/stat-time.h: New file.
33932         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
33933         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
33934         in a different way.
33935         (timespec_cmp): New function.
33936         * lib/utimecmp.c: Include stat-time.h.
33937         (SYSCALL_RESOLUTION): Depend on whether various struct stat
33938         members exist, not on the obsolescent ST_MTIM_NSEC.
33939         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
33940
33941 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33942
33943         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
33944
33945 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
33946
33947         * MODULES.html.sh (File system functions): Add stat-time.
33948         * modules/stat-time: New file.
33949         * modules/timespec (Files): Remove m4/st_mtim.m4; this
33950         is now done in a different way, by the stat-time module.
33951         * modules/utimecmp (Depends-on): Add stat-time.
33952
33953 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
33954
33955         * m4/st_mtim.m4: Remove.  Superseded by...
33956         * m4/stat-time.m4: New file.
33957         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
33958         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
33959
33960 2005-09-15  Derek Price  <derek@ximbiot.com>
33961
33962         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
33963
33964 2005-09-15  Derek Price  <derek@ximbiot.com>
33965
33966         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
33967         * lib/regex_internal.c: Ditto, using this...
33968         (__GNUC_PREREQ): ...new macro.
33969         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
33970         using...
33971         (__GNUC_PREREQ): ...this new macro.
33972
33973         * lib/strstr.h: Include string.h. Define strstr as a macro here.
33974
33975 2005-09-15  Derek Price  <derek@ximbiot.com>
33976             Paul Eggert  <eggert@cs.ucla.edu>
33977
33978         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
33979         changes, consolidating in...
33980         * lib/regex_internal.h: ...this file.
33981
33982 2005-09-13  Jim Meyering  <jim@meyering.net>
33983
33984         * lib/canon-host.c: Filter through gnu indent and reword comments
33985         slightly.
33986         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
33987
33988 2005-09-13  Derek Price  <derek@ximbiot.com>
33989
33990         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
33991         failure.
33992         Reported by Jim Meyering  <jim@meyering.net>.
33993
33994 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
33995
33996         * lib/base64.c: Typo.
33997         (base64_encode): Put b64str in initialized data section.
33998
33999 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
34000
34001         Merge glibc and coreutils changes into gnulib, plus a few
34002         extra fixes.
34003         * lib/md5.c: Use #error rather than a string.
34004         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
34005         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
34006         (__attribute__): Define to empty for non recent-GCC.
34007         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
34008         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
34009         Renamed from their non-__ counterparts, with new macros replacing
34010         them if not _LIBC.  Add __THROW attribute.
34011         (rol): Remove.
34012         (struct md5_ctx): Align buffer if using GCC.
34013         * lib/sha1.h (struct sha1_ctx): Likewise.
34014         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
34015         The old name was backwards.
34016         (NOTSWAP): Remove; not used.
34017         (rol): New macro, moved here from md5.h.
34018         (sha1_process_block): Remove a FIXME that doesn't make sense.
34019
34020 2005-09-12  Derek Price  <derek@ximbiot.com>
34021
34022         Return usable errors from canon-host.
34023         * lib/canon-host.h: New file.
34024         * lib/canon-host.c (canon_host): Wrap...
34025         (canon_host_r): ...this new function, which now relies exclusively on
34026         getaddrinfo.
34027         (ch_strerror): New function.
34028         (last_cherror): New global.
34029         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
34030         interface.
34031         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
34032         void *.
34033         (freeaddrinfo): Free ai->ai_canonname when set.
34034
34035 2005-09-12  Derek Price  <derek@ximbiot.com>
34036
34037         Make canon-host require getaddrinfo.
34038         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
34039         AC_LIBSOURCE canon-host.h.  Call...
34040         (gl_PREREQ_CANON_HOST): ...this new function, which requires
34041         gl_GETADDRINFO.
34042         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
34043
34044 2005-09-12  Derek Price  <derek@ximbiot.com>
34045
34046         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
34047         LGPL.
34048         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
34049
34050 2005-09-12  Derek Price  <derek@ximbiot.com>
34051
34052         * lib/gai_strerror.c: Include config.h when available.  Include
34053         getaddrinfo.h before other headers to test interface.
34054         Reported by Larry Jones <lawrence.jones@ugs.com>.
34055
34056 2005-09-12  Derek Price  <derek@ximbiot.com>
34057             Paul Eggert  <eggert@cs.ucla.edu>
34058
34059         * modules/glob (Files): Add glob-libc.h.
34060
34061 2005-09-12  Derek Price  <derek@ximbiot.com>
34062             Paul Eggert  <eggert@cs.ucla.edu>
34063
34064         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
34065         glob_.h, glob-libc.h.
34066         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
34067
34068 2005-09-12  Derek Price  <derek@ximbiot.com>
34069             Paul Eggert  <eggert@cs.ucla.edu>
34070
34071         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
34072         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
34073         protecting things that should be done only in gnulib contexts.
34074         * lib/glob_.h: New file, containing only the glob things needed for
34075         gnulib.
34076         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
34077         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
34078         (glob, globfree, glob_pattern_p): Now defined simply in terms of
34079         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
34080         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
34081         and to respect the namespace rules better.
34082
34083 2005-09-08  Simon Josefsson  <jas@extundo.com>
34084
34085         * modules/socklen: New file.
34086
34087 2005-09-08  Simon Josefsson  <jas@extundo.com>
34088
34089         * m4/socklen.m4: New file.
34090
34091 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34092
34093         * modules/utimens (Files): Add m4/utimbuf.m4, since
34094         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
34095         Reported by Sergey Poznyakoff.
34096
34097 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34098
34099         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
34100         definitions, since that's the preferred style in glibc.
34101         Fix a minor spacing issue, and update copyright notice to match
34102         glibc's.
34103
34104 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
34105
34106         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
34107
34108 2005-09-06  Simon Josefsson  <jas@extundo.com>
34109
34110         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
34111         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
34112
34113 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34114
34115         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
34116         warning.
34117
34118 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34119
34120         * config/srclist.txt: Add glibc bug 1302.
34121
34122 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
34123
34124         Change bitset word type from unsigned int to unsigned long int,
34125         as this has better performance on typical 64-bit hosts.
34126         Port bitset code to hosts with unusual word sizes.
34127         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
34128         (build_collating_symbol):
34129         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
34130         argument is a bitset.  This is merely a style issue, but it makes
34131         it clearer that an entire array is expected.
34132         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
34133         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
34134         Port to the case where bitset_word is not the same as unsigned int.
34135         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34136         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
34137         Likewise.
34138         * lib/regexec.c (check_dst_limits_calc_pos_1,
34139         check_subexp_matching_top):
34140         (build_trtable, group_nodes_into_DFAstates):
34141         Likewise.
34142         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
34143         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
34144         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
34145         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
34146         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
34147         * lib/regcomp.c (optimize_subexps, lower_subexp):
34148         Work even if bitset_word has holes in its bitwise representation.
34149         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
34150         * lib/regexec.c (check_dst_limits_calc_pos_1,
34151         check_subexp_matching_top):
34152         Likewise.
34153         * lib/regex_internal.c (re_string_reconstruct):
34154         Don't assume UCHAR_MAX == 255.
34155         * lib/regex_internal.h (bitset_set_all): Likewise.
34156         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
34157         All uses changed.
34158         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
34159         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
34160         All uses changed.
34161         (BITSET_WORD_MAX): New macro.
34162         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
34163         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
34164         (bitset_empty, bitset_copy):
34165         Prefer sizeof (bitset) to multiplying it out ourselves.
34166         (bitset_not_merge): Remove; unused.
34167         (bitset_contain): Return bool, not unsigned int with one bit on.
34168         All callers changed.
34169         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
34170         alignment than re_node_set; do this by defining a new internal
34171         type struct dests_alloc and using it to allocate memory.
34172
34173 2005-09-05  Bruno Haible  <bruno@clisp.org>
34174
34175         * gnulib-tool (func_import): Fix comparison in handling of symbolic
34176         links.
34177
34178 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
34179
34180         * modules/size_max (Makefile.am): Add size_max.h
34181
34182 2005-09-04  Derek Price  <derek@ximbiot.com>
34183
34184         * gnulib-tool (func_import): Fix reversed $symbolic logic.
34185
34186 2005-09-03  Simon Josefsson  <jas@extundo.com>
34187
34188         * gnulib-tool: Fix typo.
34189
34190 2005-09-03  Simon Josefsson  <jas@extundo.com>
34191
34192         * config/srclist.txt: Add glibc bug 1293.
34193
34194 2005-09-03  Derek Price  <derek@ximbiot.com>
34195
34196         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
34197         From Larry Jones <lawrence.jones@ugs.com>.
34198
34199 2005-09-02  Simon Josefsson  <jas@extundo.com>
34200
34201         * modules/socklen: New file.
34202
34203 2005-09-02  Simon Josefsson  <jas@extundo.com>
34204
34205         * modules/havelib: New module.
34206
34207         * modules/gettext, modules/iconv, modules/lock, modules/readline:
34208         Use havelib.
34209
34210 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34211
34212         Check for arithmetic overflow when calculating sizes, to prevent
34213         some buffer-overflow issues.  These patches are conservative, in the
34214         sense that when I couldn't determine whether an overflow was possible,
34215         I inserted a run-time check.
34216         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
34217         macros.
34218         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
34219         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
34220         (re_xnrealloc, re_x2nrealloc): New inline functions.
34221         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
34222         parse_bracket_exp):
34223         (build_equiv_class, build_charclass): Check for arithmetic overflow
34224         in size expression calculations.
34225         * lib/regex_internal.c (re_string_realloc_buffers):
34226         (build_wcs_upper_buffer, re_node_set_add_intersect):
34227         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
34228         (re_dfa_add_node, register_state): Likewise.
34229         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
34230         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
34231         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
34232         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
34233
34234 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
34235
34236         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
34237         m4/ulonglong.m4.  Problem reported by Martin Lambers.
34238
34239 2005-09-02  Bruno Haible  <bruno@clisp.org>
34240
34241         Support for lib vs. lib64 distinction on biarch platforms.
34242         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
34243         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
34244         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
34245
34246 2005-09-02  Bruno Haible  <bruno@clisp.org>
34247
34248         * gnulib-tool (import): In the other first-use case, provide defaults
34249         as well.
34250
34251 2005-09-02  Bruno Haible  <bruno@clisp.org>
34252
34253         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
34254         patches not yet found in the latest gettext release.
34255
34256 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34257
34258         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
34259         to avoid a collision with bits/local_lim.h in glibc.
34260         All uses changed.  Problem reported by Dmitry V. Levin in
34261         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
34262
34263         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
34264         bugs in int versus size_t comparisons.
34265         (re_string_context_at): Fix bug where the code assumed that
34266         Idx is signed.
34267
34268         Use bool where appropriate.
34269         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
34270         All callers changed.
34271         (calc_eclosure_iter): Likewise, for ROOT arg.
34272         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
34273         (build_charclass_op): Likewise, for NON_MATCH arg.
34274         * lib/regex_internal.c (re_string_allocate, re_string_construct):
34275         (re_string_construct_common): Likewise, for ICASE arg.
34276         * lib/regexec.c (re_search_2_stub, re_search_stub):
34277         Likewise, for RET_LEN arg.
34278         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
34279         (set_regs): Likewise, for FL_BACKTRACK arg.
34280         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
34281         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
34282         (calc_eclosure_iter, parse_bracket_exp):
34283         Use bool for internal variables that are booleans.
34284         * lib/regexec.c (re_search_internal, check_matching,
34285         proceed_next_node):
34286         (set_regs, build_sifted_states, sift_states_bkref):
34287         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
34288         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
34289         (find_collation_sequence_value):
34290         Likewise.
34291         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
34292         (re_node_set_compare):
34293         Return bool, not int. All callers changed.
34294         * lib/regexec.c (check_halt_node_context, check_dst_limits):
34295         (build_trtable, check_node_accept): Likewise.
34296         * lib/regex_internal.h: Include stdbool.h.
34297
34298         Fix bugs uncovered when converting to bool.
34299         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
34300         failure instead of charging ahead blindly.
34301         * lib/regex_internal.c (register_state): Likewise.
34302         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
34303         for freeing internal storage.
34304         (group_nodes_into_DFA_states): Use unsigned int, not int, for
34305         bitset pieces used as boolean, to avoid undefined behavior
34306         on hosts that do int overflow checking.
34307
34308 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
34309
34310         * config/srclist.txt: Add glibc bugs 1285-1287.
34311
34312 2005-09-01  Jim Meyering  <jim@meyering.net>
34313
34314         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
34315         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
34316         Require gl_STAT_MACROS, too.
34317
34318 2005-09-01  Bruno Haible  <bruno@clisp.org>
34319
34320         * gnulib-tool (import): In the first-use case, provide defaults.
34321
34322 2005-09-01  Bruno Haible  <bruno@clisp.org>
34323
34324         * gnulib-tool (func_import): Remove the .tmp files.
34325
34326 2005-09-01  Bruno Haible  <bruno@clisp.org>
34327
34328         * gnulib-tool (func_import): Fix handling of symbolic links.
34329
34330 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34331
34332         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
34333         old glibc regex code mishandles strings longer than 2**31 bytes.
34334         This patch fixes this when the regex code is used in gnulib
34335         (i.e., outside glibc).
34336
34337         This patch should not affect the use of the regex code inside
34338         glibc.  No doubt this problem also needs to be handled for glibc
34339         as well, but the result will be an incompatible change to the
34340         glibc ABI, and the old ABI will have to be supported too.  That
34341         can be the the subject for another patch.
34342
34343         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
34344         governing whether the rest of this patch is active.  By default,
34345         the macro is disabled and the patch has no effect.
34346         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
34347         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
34348         (struct re_pattern_buffer, re_search, re_search_2, re_match):
34349         (re_match_2, re_set_registers): Use the new types.
34350         * lib/regex_internal.h (Idx, re_hashval_t): New types.
34351         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
34352         New macros.
34353         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
34354         (re_string_context_at, bin_tree_t, re_dfastate_t):
34355         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
34356         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
34357         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
34358         (re_string_char_size_at, re_string_wchar_at):
34359         (re_string_elem_size_at):
34360         Use the new types and macros to port to 64-bit hosts.
34361         Use unsigned types for internal values, so that the code
34362         mostly works even for arrays larger than SSIZE_MAX.
34363         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
34364         (search_duplicated_node, calc_eclosure_iter, fetch_number):
34365         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
34366         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
34367         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
34368         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
34369         (calc_inveclosure, parse_dup_op, build_range_exp):
34370         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
34371         (fetch_number, create_token_tree, mark_opt_subexp):
34372         Likewise.
34373         * lib/regex_internal.c (re_string_construct_common,
34374         create_ci_newstate):
34375         (create_cd_newstate, re_string_allocate, re_string_construct):
34376         (re_string_realloc_buffers, build_wcs_upper_buffer):
34377         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
34378         (re_string_reconstruct, re_string_peek_byte_case):
34379         (re_string_fetch_byte_case, re_string_context_at):
34380         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
34381         (re_node_set_init_copy, re_node_set_add_intersect):
34382         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34383         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34384         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
34385         (re_acquire_state, re_acquire_state_context, register_state):
34386         Likewise.
34387         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
34388         search_cur_bkref_entry):
34389         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
34390         (re_search_internal, re_search_2_stub, re_search_stub)
34391         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
34392         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
34393         (update_cur_sifted_state, check_dst_limits):
34394         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34395         (check_subexp_limits, sift_states_bkref, merge_state_array):
34396         (check_subexp_matching_top, get_subexp, get_subexp_sub):
34397         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
34398         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
34399         (expand_bkref_cache, check_node_accept_bytes):
34400         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
34401         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
34402         (acquire_init_state_context, check_halt_node_context):
34403         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
34404         (sift_states_backward, clean_state_log_if_needed):
34405         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
34406         (find_recover_state, transit_state_sb, transit_state_mb):
34407         (transit_state_bkref, build_trtable, match_ctx_clean):
34408         Likewise.
34409         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
34410         to work around an assumption that REG_MISSING is negative.
34411
34412         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
34413         (seek_collating_symbol_entry) [defined _LIBC]:
34414         (lookup_collation_sequence_value) [defined _LIBC]:
34415         (build_range_exp, build_collating_symbol) [defined _LIBC]:
34416         Use prototypes rather than old-style function definitions.
34417         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
34418         (transit_state_sb) [0]:
34419         (find_collation_sequence_value) [defined _LIBC]: Likewise.
34420
34421         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
34422         rm_eo.
34423
34424         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
34425         (optimize_subexps, lower_subexp):
34426         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
34427         since the signed shift might overflow.  Use 1u<<31 instead.
34428         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
34429         Likewise.
34430         * lib/regexec.c (check_dst_limits_calc_pos_1,
34431         check_subexp_matching_top): Likewise.
34432
34433         * lib/regcomp.c (optimize_subexps, lower_subexp):
34434         Use CHAR_BIT rather than 8, for clarity.
34435         * lib/regexec.c (check_dst_limits_calc_pos_1):
34436         (check_subexp_matching_top): Likewise.
34437         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
34438         have to worry about portability issues when shifting it left.
34439         Remove no-longer-needed test for table_size > 0.
34440         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
34441         in a word, as the resulting behavior is undefined.
34442         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
34443         in one case, a <= should have been an <, and in another case the
34444         whole test was missing.
34445         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
34446         the standard name CHAR_BIT.
34447         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
34448         this is not true on one's complement and signed-magnitude hosts.
34449
34450         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
34451         next_last_offset.
34452         (struct re_dfa_t): Remove unused member states_alloc.
34453         * lib/regcomp.c (init_dfa): Don't initialize unused members.
34454
34455 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34456
34457         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
34458         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
34459         and large-file glibc and in 32-bit large-file Solaris.
34460
34461 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34462
34463         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
34464         lengths fit in regoff_t; this isn't true if regoff_t is the same
34465         width as size_t.
34466         * lib/regex.c (re_search_internal): 5th arg is LAST_START
34467         (= START + RANGE) instead of RANGE.  This avoids overflow
34468         problems when regoff_t is the same width as size_t.
34469         All callers changed.
34470         (re_search_2_stub): Check for overflow when adding the
34471         sizes of the two strings.
34472         (re_search_stub): Check for overflow when adding START
34473         to RANGE; if it occurs, substitute the extreme value.
34474
34475 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
34476
34477         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
34478
34479 2005-08-31  Jim Meyering  <jim@meyering.net>
34480
34481         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
34482         a pointer-to-const.
34483         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
34484         (register_state): Likewise.
34485         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
34486         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
34487         (group_nodes_into_DFAstates): Likewise.
34488
34489 2005-08-31  Jim Meyering  <jim@meyering.net>
34490
34491         * check-module: Add a FIXME comment.
34492
34493 2005-08-31  Eric Blake  <ebb9@byu.net>
34494
34495         * modules/unistd-safer (Files): Add unistd--.h.
34496         * modules/stdio-safer (Files): Add stdio--.h.
34497
34498 2005-08-31  Derek Price  <derek@ximbiot.com>
34499
34500         * lib/getdelim.c (getdelim): Return EOF on EOF.
34501         Reported by Larry Jones <lawrence.jones@ugs.com>.
34502
34503 2005-08-31  Bruno Haible  <bruno@clisp.org>
34504
34505         Avoid unnecessary diffs in the generated lib/Makefile.am.
34506         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
34507         the generated files.
34508         (func_import): Don't set cmd.
34509
34510 2005-08-31  Bruno Haible  <bruno@clisp.org>
34511
34512         * lib/strstr.c: Include <stddef.h>, for NULL.
34513         * lib/strcasestr.c: Likewise.
34514         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34515
34516 2005-08-31  Bruno Haible  <bruno@clisp.org>
34517
34518         * gnulib-tool: New option --macro-prefix.
34519         (func_import): Use macro_prefix.
34520         (import): Handle option --macro-prefix.
34521
34522 2005-08-31  Bruno Haible  <bruno@clisp.org>
34523
34524         * gnulib-tool (import): Rename most ac_* variables to cached_*.
34525         Also use new variables cached_lgpl, cached_libtool.
34526
34527 2005-08-31  Bruno Haible  <bruno@clisp.org>
34528
34529         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
34530         always instantiating them.
34531
34532 2005-08-31  Bruno Haible  <bruno@clisp.org>
34533
34534         * gnulib-tool (func_import): Read the previous cached settings
34535         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
34536         earlier added by gnulib but are now dropped. Warn when a gnulib file
34537         overwrites a non-gnulib file.
34538
34539 2005-08-31  Bruno Haible  <bruno@clisp.org>
34540
34541         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
34542         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
34543         projects that don't keep autogenerated files in CVS. Put into
34544         actioncmd only the specified modules, not the transitive closure.
34545
34546 2005-08-31  Bruno Haible  <bruno@clisp.org>
34547
34548         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
34549         Create directories that shall be filled.
34550         (import): Don't look for gl_* macros in configure.ac. Recurse across
34551         all directories containing a gnulib-cache.m4 files, if meaningful.
34552
34553 2005-08-31  Bruno Haible  <bruno@clisp.org>
34554
34555         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
34556         (import): Set seen_libtool when we see gl_LIBTOOL.
34557
34558 2005-08-31  Bruno Haible  <bruno@clisp.org>
34559
34560         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
34561         declaration macro definitions from generated gnulib.m4.
34562
34563 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
34564
34565         * lib/iconvme.h: Add prototype for iconv_alloc.
34566
34567 2005-08-29  Simon Josefsson  <jas@extundo.com>
34568
34569         * lib/iconvme.c: Fix errno.
34570
34571 2005-08-29  Bruno Haible  <bruno@clisp.org>
34572
34573         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
34574         that it works when the directory contains spaces.
34575
34576 2005-08-29  Bruno Haible  <bruno@clisp.org>
34577
34578         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
34579
34580 2005-08-29  Bruno Haible  <bruno@clisp.org>
34581
34582         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
34583         Emit more advice.
34584
34585 2005-08-29  Bruno Haible  <bruno@clisp.org>
34586         and Stepan Kasal  <kasal@ucw.cz>
34587
34588         * check-module: If more parameters are given, check each of them
34589         separately; add more exceptions, as noted by Jim Meyering.
34590         (check_module): New procedure.
34591         (%exempt_header): Now contains all exceptions.
34592
34593 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
34594
34595         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
34596
34597 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
34598
34599         * lib/iconvme.c: Split iconv_string into iconv_alloc.
34600
34601 2005-08-28  Bruno Haible  <bruno@clisp.org>
34602
34603         * m4/gnulib-tool.m4: New file.
34604
34605 2005-08-27  Jim Meyering  <jim@meyering.net>
34606
34607         * modules/unistd-safer (Files): Add pipe-safer.c.
34608         * modules/fcntl-safer (Files): Add creat-safer.c.
34609
34610 2005-08-27  Jim Meyering  <jim@meyering.net>
34611
34612         * m4/stdlib-safer.m4: New file.  From coreutils.
34613         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
34614         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
34615         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
34616         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
34617         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
34618
34619 2005-08-27  Jim Meyering  <jim@meyering.net>
34620
34621         * lib/fopen-safer.c: Merge minor changes from coreutils.
34622         * lib/dup-safer.c: Likewise.
34623         * lib/fd-safer.c: Likewise.
34624
34625         Merge from coreutils.
34626         * lib/stdio--.h: New file.
34627         * lib/stdlib--.h: New file.
34628         * lib/mkstemp-safer.c: New file.
34629
34630         GNU tar needs these.
34631         * lib/pipe-safer.c: New file.
34632         * lib/creat-safer.c: New file.
34633         * lib/fcntl--.h (creat): Define to creat_safer.
34634         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
34635         * lib/unistd--.h (pipe): Define to pipe_safer.
34636         * lib/unistd-safer.h: Declare pipe_safer.
34637
34638 2005-08-26  Simon Josefsson  <jas@extundo.com>
34639
34640         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
34641         Haible <bruno@clisp.org>.
34642
34643 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
34644
34645         * lib/regex_internal.h: Remove all references to
34646         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
34647         or better.
34648         (bitset_not, bitset_merge, bitset_not_merge):
34649         (bitset_mask, re_string_allocate, re_string_construct):
34650         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
34651         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
34652         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
34653         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
34654         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
34655         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
34656         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
34657         (re_acquire_state_context):
34658         Remove unnecessary forward decls.
34659         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
34660         Put __attribute at function definition,
34661         now that the function decl has been removed.
34662         * lib/regex_internal.c (re_string_peek_byte_case):
34663         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
34664         Likewise.
34665
34666 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
34667
34668         * m4/regex.m4: Add AC_PREREQ(2.50).
34669         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
34670
34671 2005-08-25  Simon Josefsson  <jas@extundo.com>
34672
34673         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
34674         __fsetlocking.
34675
34676 2005-08-25  Simon Josefsson  <jas@extundo.com>
34677
34678         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
34679         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
34680         GLIBC specific code.
34681
34682 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
34683
34684         Make regex safe for g++.  This fixes one real bug (an "err"
34685         that should have been "*err").  g++ problem reported by
34686         Sam Steingold.
34687         * lib/regex_internal.h (re_calloc): New macro, consistent with
34688         re_malloc etc.  All callers of calloc changed to use re_calloc.
34689         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
34690         not int.  All callers changed.
34691         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
34692         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
34693         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
34694         (find_recover_state): Change "err" to "*err"; this fixes what
34695         appears to be a real bug.
34696         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
34697         versus int.
34698
34699 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
34700
34701         * modules/regex (Depends-on): Add malloc, since the code
34702         assumes that !malloc(0) means failure.
34703
34704 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
34705
34706         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
34707
34708         alloca modernization/simplification for regex.
34709         * lib/regex.c: Remove portability cruft for alloca.  This no longer
34710         needs to be at the start of the file, and can be moved into
34711         regex_internal.h and simplified.
34712         * lib/regex_internal.h: Include <alloca.h>.
34713         (__libc_use_alloca) [!defined _LIBC]: New macro.
34714         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
34715         now works outside glibc.
34716
34717 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
34718
34719         * config/srclist.txt: Add glibc bugs 1241, 1245.
34720
34721 2005-08-25  Jim Meyering  <jim@meyering.net>
34722
34723         * lib/open-safer.c: Include <config.h>.
34724         Otherwise, we'd lose LARGEFILE support in any file using
34725         e.g. "fcntl--.h"
34726
34727 2005-08-25  Bruno Haible  <bruno@clisp.org>
34728
34729         * m4/minmax.m4: Require autoconf 2.52.
34730         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
34731         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
34732         alternatives of translit over the alphabet.
34733         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
34734
34735 2005-08-24  Simon Josefsson  <jas@extundo.com>
34736
34737         * tests/test-getpass.c: New file.
34738
34739 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
34740
34741         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
34742         for GNU regex features.
34743
34744 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
34745
34746         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
34747         * lib/regex.h (regerror): Likewise.
34748
34749         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
34750         requires this.  (The code never needed it.)
34751
34752         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
34753         All uses of recently-renamed identifiers changed to use the new,
34754         POSIX-compliant names.  The code will build and run just fine
34755         without these changes, but it's better to eat our own dog food
34756         and use the standard-conforming names.
34757
34758         * lib/regex.h: Fix a multitude of POSIX name space violations.
34759         These changes have an effect only for programs that define
34760         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
34761         do not change anything for programs compiled in the normal way.
34762         Also, there is no effect on the ABI.
34763
34764         (_REGEX_SOURCE): New macro.
34765         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
34766         defined and _GNU_SOURCE is not; this fixes a name space violation.
34767
34768         Rename the following macros to obey POSIX requirements.
34769         The old names are still visible as macros if _REGEX_SOURCE is defined.
34770         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
34771         RE_BACKSLASH_ESCAPE_IN_LISTS.
34772         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
34773         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
34774         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
34775         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
34776         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
34777         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
34778         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
34779         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
34780         (REG_INTERVALS): renamed from RE_INTERVALS.
34781         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
34782         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
34783         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
34784         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
34785         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
34786         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
34787         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
34788         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
34789         RE_UNMATCHED_RIGHT_PAREN_ORD.
34790         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
34791         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
34792         (REG_DEBUG): renamed from RE_DEBUG.
34793         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
34794         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
34795         unusual, since we can't clash with the POSIX REG_ICASE.
34796         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
34797         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
34798         (REG_NO_SUB): renamed from RE_NO_SUB.
34799         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
34800         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
34801         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
34802         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
34803         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
34804         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
34805         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
34806         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
34807         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
34808         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
34809         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
34810         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
34811         RE_SYNTAX_POSIX_MINIMAL_BASIC.
34812         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
34813         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
34814         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
34815         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
34816         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
34817         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
34818         (REG_FIXED): Renamed from REGS_FIXED.
34819         (REG_NREGS): Renamed from RE_NREGS.
34820
34821         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
34822         of other REG_* macros, since POSIX says the user is allowed to
34823         #undef these macros selectively.
34824
34825         (reg_errcode_t): Update comment stating what other tables need
34826         to be consistent.
34827
34828         Rename the following enum values to obey POSIX requirements.
34829         The old names are still visible as macros.
34830         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
34831         is not defined, since GNU is supposed to be a superset of POSIX as
34832         much as possible, and since we want reg_errcode_t to be a signed
34833         type for implementation consistency.
34834         (_REG_NOERROR): Renamed from REG_NOERROR.
34835         (_REG_NOMATCH): Renamed from REG_NOMATCH.
34836         (_REG_BADPAT): Renamed from REG_BADPAT.
34837         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
34838         (_REG_ECTYPE): Renamed from REG_ECTYPE.
34839         (_REG_EESCAPE): Renamed from REG_EESCAPE.
34840         (_REG_ESUBREG): Renamed from REG_ESUBREG.
34841         (_REG_EBRACK): Renamed from REG_EBRACK.
34842         (_REG_EPAREN): Renamed from REG_EPAREN.
34843         (_REG_EBRACE): Renamed from REG_EBRACE.
34844         (_REG_BADBR): Renamed from REG_BADBR.
34845         (_REG_ERANGE): Renamed from REG_ERANGE.
34846         (_REG_ESPACE): Renamed from REG_ESPACE.
34847         (_REG_BADRPT): Renamed from REG_BADRPT.
34848         (_REG_EEND): Renamed from REG_EEND.
34849         (_REG_ESIZE): Renamed from REG_ESIZE.
34850         (_REG_ERPAREN): Renamed from REG_ERPAREN.
34851         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
34852         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
34853         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
34854         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
34855
34856         (_REG_RE_NAME, _REG_RM_NAME): New macros.
34857         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
34858         changed.  But support the old name if the new one is not defined
34859         and if _REGEX_SOURCE.
34860
34861         Change the following member names in struct re_pattern_buffer.
34862         The old names are still supported if !_REGEX_SOURCE.
34863         The new names are always supported, regardless of _REGEX_SOURCE.
34864         (re_buffer): Renamed from buffer.
34865         (re_allocated): Renamed from allocated.
34866         (re_used): Renamed from used.
34867         (re_syntax): Renamed from syntax.
34868         (re_fastmap): Renamed from fastmap.
34869         (re_translate): Renamed from translate.
34870         (re_can_be_null): Renamed from can_be_null.
34871         (re_regs_allocated): Renamed from regs_allocated.
34872         (re_fastmap_accurate): Renamed from fastmap_accurate.
34873         (re_no_sub): Renamed from no_sub.
34874         (re_not_bol): Renamed from not_bol.
34875         (re_not_eol): Renamed from not_eol.
34876         (re_newline_anchor): Renamed from newline_anchor.
34877
34878         Change the following member names in struct re_registers.
34879         The old names are still supported if !_REGEX_SOURCE.
34880         The new names are always supported, regardless of _REGEX_SOURCE.
34881         (rm_num_regs): Renamed from num_regs.
34882         (rm_start): Renamed from start.
34883         (rm_end): Renamed from end.
34884
34885         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
34886         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
34887         Prepend __ to parameter names.
34888
34889         Undo yesterday's changes.
34890
34891 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
34892
34893         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
34894         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
34895         lib/regex.c.
34896
34897 2005-08-24  Jim Meyering  <jim@meyering.net>
34898
34899         Sync from coreutils.
34900         * m4/fcntl-safer.m4: New file.
34901
34902         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
34903         and object files for this module.
34904
34905 2005-08-24  Jim Meyering  <jim@meyering.net>
34906
34907         Sync from coreutils.
34908         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
34909
34910 2005-08-24  Jim Meyering  <jim@meyering.net>
34911
34912         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
34913         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
34914
34915 2005-08-24  Jim Meyering  <jim@meyering.net>
34916
34917         * modules/fcntl-safer: New module.
34918         * modules/fts (Depends-on): Add fcntl-safer.
34919         * MODULES.html.sh (File descriptor based Input/Output):
34920         Add fcntl-safer.
34921
34922 2005-08-24  Bruno Haible  <bruno@clisp.org>
34923
34924         Support for unit test modules.
34925         * modules/README: Mention tests modules.
34926         * modules/TEMPLATE-TESTS: New file.
34927         * gnulib-tool: New options --extract-tests-module, --with-tests and
34928         --tests-base (unused for the moment).
34929         (testsbase, inctests): New variables.
34930         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
34931         (func_verify_module): Exclude TEMPLATE-TESTS.
34932         (func_verify_nontests_module, func_verify_tests_module): New functions.
34933         (func_get_dependencies): Add implicit dependency for tests modules.
34934         (func_get_tests_module): New function.
34935         (func_modules_transitive_closure): When --with-tests was specified,
34936         include the unit tests as well, unless explicitly avoided.
34937         (func_emit_lib_Makefile_am): Ignore the tests modules here.
34938         (func_emit_tests_Makefile_am): New function.
34939         (func_create_testdir): When --with-tests was specified, emit a
34940         tests/ directory.
34941         * MODULES.html.sh (Future developments): Update.
34942
34943 2005-08-24  Bruno Haible  <bruno@clisp.org>
34944
34945         * modules/tls-tests: New file.
34946         * tests/test-tls.c: New file, from GNU gettext.
34947
34948 2005-08-24  Bruno Haible  <bruno@clisp.org>
34949
34950         * modules/lock-tests: New file.
34951         * tests/test-lock.c: New file, from GNU gettext.
34952
34953 2005-08-24  Bruno Haible  <bruno@clisp.org>
34954
34955         * lib/lock.h: Add multiple inclusion guard.
34956         * lib/tls.h: Add multiple inclusion guard.
34957
34958 2005-08-24  Bruno Haible  <bruno@clisp.org>
34959
34960         * gnulib-tool: Add support for the --aux-dir option to
34961         --create-testdir, --create-megatestdir, --test, --megatest.
34962         (func_create_testdir, func_create_megatestdir): Optionally emit a
34963         AC_CONFIG_AUX_DIR directive.
34964         (create-testdir, create-megatestdir, test, megatest): Provide a
34965         default value for $auxdir.
34966
34967 2005-08-24  Bruno Haible  <bruno@clisp.org>
34968
34969         * gnulib-tool (import): Use compound statement instead of subshell
34970         where possible.
34971
34972 2005-08-24  Bruno Haible  <bruno@clisp.org>
34973
34974         * gnulib-tool (import): Change --aux-dir default to "build-aux".
34975
34976 2005-08-24  Bruno Haible  <bruno@clisp.org>
34977
34978         * gnulib-tool (func_version): Update.
34979
34980 2005-08-24  Bruno Haible  <bruno@clisp.org>
34981
34982         * gnulib-tool (func_import, func_create_testdir,
34983         func_create_megatestdir): Quote all autoconf macro arguments.
34984
34985 2005-08-24  Bruno Haible  <bruno@clisp.org>
34986
34987         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
34988         option --force, because --force causes the aclocal.m4 of each
34989         subdirectory to be newer than the corresponding config.h.in.
34990
34991 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
34992
34993         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
34994         All contents moved to gl_REGEX.
34995         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
34996         assume that it does.
34997
34998 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
34999
35000         * lib/regex.h (REG_NOSYS)
35001         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
35002         Define, since POSIX requires it as of 2001.
35003         (_REG_ENOSYS)
35004         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
35005         New private symbol, used to keep the enum signed in all cases.
35006         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
35007         Youngman in
35008         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
35009
35010         * lib/regex_internal.c (re_string_skip_chars, register_state):
35011         (calc_state_hash):
35012         Remove forward decls; no longer needed now that we use prototypes.
35013         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
35014         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
35015         (clean_state_log_if_needed): Likewise.
35016
35017 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
35018
35019         * config/srclist.txt: Add glibc bugs 1231-1233.
35020
35021 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35022
35023         Fix problems reported by Sam Steingold in
35024         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
35025         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
35026         assumed that reg_errcode_t is a signed type, which is not
35027         necessarily true if _XOPEN_SOURCE is not defined.
35028         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
35029         since some compilers warn about it otherwise.
35030
35031 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35032
35033         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
35034         (init_word_char, create_initial_state, duplicate_node_closure):
35035         (fetch_token, peek_token_bracket, build_range_exp):
35036         (build_collating_symbol): Remove forward decls; no longer needed
35037         now that we use prototypes.
35038
35039         * lib/regcomp.c:
35040         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
35041         (re_compile_fastmap_iter, regcomp, regerror, regfree):
35042         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
35043         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
35044         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
35045         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
35046         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
35047         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
35048         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
35049         (build_range_exp, build_collating_symbol, parse_bracket_exp):
35050         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
35051         (build_charclass, build_charclass_op, fetch_number, create_tree):
35052         (create_token_tree, mark_opt_subexp, duplicate_tree):
35053         Use prototypes rather than old-style definitions.
35054
35055         * lib/regex_internal.c:
35056         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
35057         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
35058         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
35059         (re_string_reconstruct, re_string_peek_byte_case):
35060         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
35061         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
35062         (re_node_set_init_copy, re_node_set_add_intersect):
35063         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
35064         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
35065         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
35066         (re_acquire_state, re_acquire_state_context, register_state):
35067         (create_ci_newstate, create_cd_newstate, free_state):
35068         Likewise.
35069         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
35070         re_search_2):
35071         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
35072         (re_search_internal, prune_impossible_nodes):
35073         (acquire_init_state_context, check_matching, static):
35074         (check_halt_node_context, check_halt_state_context, proceed_next_node):
35075         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
35076         (update_regs, sift_states_backward, build_sifted_states):
35077         (clean_state_log_if_needed, merge_state_array):
35078         (update_cur_sifted_state, add_epsilon_src_nodes):
35079         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
35080         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
35081         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
35082         (find_recover_state, check_subexp_matching_top, transit_state_mb):
35083         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
35084         (check_arrival, check_arrival_add_next_nodes):
35085         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
35086         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
35087         (check_node_accept_bytes, check_node_accept, extend_buffers):
35088         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
35089         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
35090         (sift_ctx_init):
35091         Likewise.
35092
35093         * lib/regex_internal.h:
35094         (re_string_allocate, re_string_construct, re_string_reconstruct):
35095         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
35096         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
35097         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
35098         (re_string_context_at, re_string_peek_byte_case):
35099         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
35100         is defined, since we now use prototypes always.
35101
35102         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
35103         C89 or better.  All uses removed.
35104
35105 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
35106
35107         * config/srclist.txt: Add glibc bugs 1220-1227.
35108
35109 2005-08-20  Jim Meyering  <jim@meyering.net>
35110
35111         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
35112         of unused local, dfa.
35113
35114 2005-08-20  Bruno Haible  <bruno@clisp.org>
35115
35116         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
35117
35118 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35119
35120         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
35121         (re_node_set_insert_last, re_dfa_add_node):
35122         Rename local variables to avoid GCC shadowing warnings.
35123
35124 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35125
35126         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
35127         [defined lint]: Suppress bogus uninitialized-variable warnings.
35128
35129         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
35130         and let the caller return REG_ESPACE if out of space.  This
35131         removes an uninitialied-variable warning with GCC 4.0.1, and also
35132         avoids taking the address of a local variable.  All callers
35133         changed.
35134
35135 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
35136
35137         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
35138         $LIBCSRC/posix/regexec.c.
35139         Add glibc bug 1217 for regcomp.c.
35140
35141 2005-08-19  Jim Meyering  <jim@meyering.net>
35142
35143         * lib/regexec.c (proceed_next_node): Redo local variables to
35144         avoid GCC shadowing warnings.
35145
35146 2005-08-18  Bruno Haible  <bruno@clisp.org>
35147
35148         * lib/strstr.c (strstr): Fix return value in multibyte case.
35149         * lib/strcasestr.c (strcasestr): Likewise.
35150
35151 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
35152
35153         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
35154
35155 2005-08-17  Jim Meyering  <jim@meyering.net>
35156
35157         Make the %s format (seconds since the epoch) work for a negative
35158         number and when used with a zero-padded field width, e.g. %015s.
35159
35160         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
35161         label so that it precedes the code to set `digits'.  Otherwise,
35162         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
35163         print `00-22'.  Now, it prints `-0022', as it should.
35164
35165 2005-08-17  Bruno Haible  <bruno@clisp.org>
35166
35167         * modules/strstr (Files): Add m4/mbrtowc.m4.
35168         (Depends-on): Add mbuiter.
35169
35170 2005-08-17  Bruno Haible  <bruno@clisp.org>
35171
35172         * modules/strcasestr: New file.
35173         * MODULES.html.sh (String handling, based on ANSI C 89): Add
35174         strcasestr.
35175
35176 2005-08-17  Bruno Haible  <bruno@clisp.org>
35177
35178         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
35179
35180 2005-08-17  Bruno Haible  <bruno@clisp.org>
35181
35182         * modules/mbuiter: New file.
35183         * MODULES.html.sh (Extended multibyte and wide character utilities):
35184         Add mbuiter.
35185
35186 2005-08-17  Bruno Haible  <bruno@clisp.org>
35187
35188         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
35189         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
35190
35191 2005-08-17  Bruno Haible  <bruno@clisp.org>
35192
35193         * m4/strcasestr.m4: New file.
35194
35195 2005-08-17  Bruno Haible  <bruno@clisp.org>
35196
35197         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
35198         * lib/strstr.c: Completely rewritten, with multibyte locale support.
35199
35200 2005-08-17  Bruno Haible  <bruno@clisp.org>
35201
35202         * lib/strcasestr.h: New file.
35203         * lib/strcasestr.c: New file.
35204
35205 2005-08-17  Bruno Haible  <bruno@clisp.org>
35206
35207         * lib/strcasecmp.c: Use mbuiter.h.
35208
35209 2005-08-17  Bruno Haible  <bruno@clisp.org>
35210
35211         * lib/mbuiter.h: New file.
35212
35213 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
35214
35215         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
35216         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
35217         and gl_GETOPT are both invoked via different paths (as happens
35218         with GNU tar CVS because it uses both argp and getopt), the former
35219         wins.
35220
35221 2005-08-16  Bruno Haible  <bruno@clisp.org>
35222
35223         * modules/tls: New file.
35224         * MODULES.html.sh (Multithreading): Add tls.
35225
35226 2005-08-16  Bruno Haible  <bruno@clisp.org>
35227
35228         * modules/strnlen1: New file.
35229         * MODULES.html.sh (String handling): Add strnlen1.
35230
35231 2005-08-16  Bruno Haible  <bruno@clisp.org>
35232
35233         * modules/strcase (Files): Add m4/mbrtowc.m4.
35234         (Depends-on): Add strnlen1, mbchar.
35235
35236 2005-08-16  Bruno Haible  <bruno@clisp.org>
35237
35238         * modules/mbiter: New file.
35239         * MODULES.html.sh (Extended multibyte and wide character utilities):
35240         Add mbiter.
35241
35242 2005-08-16  Bruno Haible  <bruno@clisp.org>
35243
35244         * modules/mbfile: New file.
35245         * MODULES.html.sh (Extended multibyte and wide character utilities):
35246         Add mbfile.
35247
35248 2005-08-16  Bruno Haible  <bruno@clisp.org>
35249
35250         * modules/mbchar: New file.
35251         * MODULES.html.sh (Extended multibyte and wide character utilities):
35252         New section.
35253
35254 2005-08-16  Bruno Haible  <bruno@clisp.org>
35255
35256         * m4/tls.m4: New file, from GNU gettext.
35257
35258 2005-08-16  Bruno Haible  <bruno@clisp.org>
35259
35260         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
35261         always.
35262         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
35263
35264 2005-08-16  Bruno Haible  <bruno@clisp.org>
35265
35266         * m4/mbiter.m4: New file.
35267
35268 2005-08-16  Bruno Haible  <bruno@clisp.org>
35269
35270         * m4/mbfile.m4: New file.
35271
35272 2005-08-16  Bruno Haible  <bruno@clisp.org>
35273
35274         * m4/mbchar.m4: New file.
35275
35276 2005-08-16  Bruno Haible  <bruno@clisp.org>
35277
35278         * lib/tls.h: New file, from GNU gettext.
35279         * lib/tls.c: New file, from GNU gettext.
35280
35281 2005-08-16  Bruno Haible  <bruno@clisp.org>
35282
35283         * lib/strnlen1.h: New file.
35284         * lib/strnlen1.c: New file.
35285
35286 2005-08-16  Bruno Haible  <bruno@clisp.org>
35287
35288         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
35289         (mbi_init): Update.
35290         (mbi_avail, mbi_advance): Let the iteration end before the terminating
35291         NUL byte, not after it.
35292
35293 2005-08-16  Bruno Haible  <bruno@clisp.org>
35294
35295         * lib/strcase.h (strcasecmp): Add note in comments.
35296         * lib/strncasecmp.c: Use code from strcasecmp.c.
35297         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
35298         (strcasecmp): Work correctly in multibyte locales.
35299
35300 2005-08-16  Bruno Haible  <bruno@clisp.org>
35301
35302         * lib/mbiter.h: New file.
35303
35304 2005-08-16  Bruno Haible  <bruno@clisp.org>
35305
35306         * lib/mbfile.h: New file.
35307
35308 2005-08-16  Bruno Haible  <bruno@clisp.org>
35309
35310         * lib/mbchar.h: New file.
35311         * lib/mbchar.c: New file.
35312
35313 2005-08-16  Bruno Haible  <bruno@clisp.org>
35314
35315         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
35316         the valid ones. Makes the comparison operations transitive:
35317         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
35318         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
35319
35320 2005-08-15  Simon Josefsson  <jas@extundo.com>
35321
35322         * modules/ssize_t (License): Change to 'unlimited'.
35323
35324         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
35325
35326 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
35327
35328         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
35329         Add comments for each pending glibc patch.
35330
35331 2005-08-15  Bruno Haible  <bruno@clisp.org>
35332
35333         * lib/regex.h (__restrict_arr): Don't define to __restrict if
35334         __cplusplus is defined.
35335
35336 2005-08-14  Jim Meyering  <jim@meyering.net>
35337
35338         Sync from coreutils.
35339
35340         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
35341         Use the hash-table-based cycle-detection code not just when
35342         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
35343         Reported by James Youngman in
35344         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
35345         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
35346         FTS_TIGHT_CYCLE_CHECK.
35347         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
35348         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
35349         once again.
35350         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
35351         * lib/fts.c (fd_safer): Remove decl.
35352         Include fcntl--.h rather than unistd-safer.h
35353         (fts_safe_changedir): Don't call fd_safer; no longer needed
35354         now that we include fcntl--.h.
35355
35356 2005-08-12  Simon Josefsson  <jas@extundo.com>
35357
35358         * modules/getndelim2: Use ssize_t module.
35359         * modules/getnline: Likewise.
35360         * modules/safe-read: Likewise.
35361         * modules/xreadlink: Likewise.
35362
35363         * modules/ssize_t: New file.
35364
35365 2005-08-12  Simon Josefsson  <jas@extundo.com>
35366
35367         * m4/readline.m4: Look for termcap, curses or ncurses if required.
35368
35369 2005-08-12  Simon Josefsson  <jas@extundo.com>
35370
35371         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
35372         ssize_t.
35373
35374 2005-08-12  Simon Josefsson  <jas@extundo.com>
35375
35376         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
35377         readline, getdelim and check_version.
35378         (Support for systems lacking ISO C 99: Sizes of integer types):
35379         Add size_max.
35380
35381 2005-08-12  Bruno Haible  <bruno@clisp.org>
35382
35383         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
35384
35385 2005-08-11  Simon Josefsson  <jas@extundo.com>
35386
35387         * modules/readline: New file.
35388
35389         * modules/strnlen (Files): Add strnlen.h.
35390
35391 2005-08-11  Simon Josefsson  <jas@extundo.com>
35392
35393         * m4/readline.m4: New file.
35394
35395 2005-08-11  Simon Josefsson  <jas@extundo.com>
35396
35397         * lib/readline.h, readline.c: New file.
35398
35399 2005-08-11  Simon Josefsson  <jas@extundo.com>
35400
35401         * doc/gnulib.texi (Initial import, Finishing touches): Mention
35402         gl_AVOID.
35403
35404 2005-08-11  Bruno Haible  <bruno@clisp.org>
35405
35406         * lib/strnlen.h (strnlen): Change parameter name to match comment.
35407
35408 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
35409
35410         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
35411
35412 2005-08-10  Simon Josefsson  <jas@extundo.com>
35413
35414         * tests/test-iconvme.c: New file.
35415
35416 2005-08-10  Simon Josefsson  <jas@extundo.com>
35417
35418         * m4/strnlen.m4: New file.
35419
35420         * m4/strndup.m4: Don't check for strnlen declaration, done in
35421         strnlen.m4.
35422
35423 2005-08-10  Simon Josefsson  <jas@extundo.com>
35424
35425         * lib/strndup.c: Use strnlen.h.
35426
35427         * lib/strnlen.h: New file.
35428
35429 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35430
35431         * README: Typos.
35432
35433 2005-08-02  Simon Josefsson  <jas@extundo.com>
35434
35435         * modules/readline: New file.
35436
35437 2005-08-02  Simon Josefsson  <jas@extundo.com>
35438
35439         * modules/getdelim: New file.
35440
35441         * modules/getline: Rewrite, don't use getndelim2.
35442
35443 2005-08-02  Simon Josefsson  <jas@extundo.com>
35444
35445         * m4/getline.m4: Separate out getdelim stuff into separate module.
35446
35447         * m4/getdelim.m4: New file.
35448
35449 2005-08-02  Simon Josefsson  <jas@extundo.com>
35450
35451         * lib/getline.h, getline.c: Rewrite.
35452
35453         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
35454
35455 2005-07-31  Bruno Haible  <bruno@clisp.org>
35456
35457         * lib/lock.h (gl_lock_initializer): New macro.
35458         (gl_lock_define_initialized): Use it.
35459         (gl_rwlock_initializer): New macro.
35460         (gl_rwlock_define_initialized): Use it.
35461         (gl_recursive_lock_initializer): New macro.
35462         (gl_recursive_lock_define_initialized): Use it.
35463
35464 2005-07-30  Karl Berry  <karl@gnu.org>
35465
35466         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
35467         Report from Ben Pfaff, regarding getopt.
35468
35469 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
35470
35471         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
35472         normal way.
35473         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
35474         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
35475         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
35476         (gl_GETOPT): Use the new macros.  Most of the implementation
35477         is moved to the new macros.  This is for programs like Emacs
35478         that don't want all the functionality of gl_GETOPT.
35479
35480 2005-07-26  Bruno Haible  <bruno@clisp.org>
35481
35482         * m4/lock.m4: Update from GNU gettext.
35483
35484 2005-07-26  Bruno Haible  <bruno@clisp.org>
35485
35486         * lib/lock.h: Update from GNU gettext.
35487         * lib/lock.c: Update from GNU gettext.
35488
35489 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
35490
35491         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
35492         obsolescent AC_TRY_RUN.  Include the default includes files, for
35493         'exit'.
35494
35495 2005-07-24  Bruno Haible  <bruno@clisp.org>
35496
35497         * modules/visibility: New file.
35498         * MODULES.html.sh (Misc): Add visibility.
35499
35500 2005-07-24  Bruno Haible  <bruno@clisp.org>
35501
35502         * m4/visibility.m4: New file.
35503
35504 2005-07-24  Bruno Haible  <bruno@clisp.org>
35505
35506         * doc/visibility.texi: New file.
35507
35508 2005-07-22  Bruno Haible  <bruno@clisp.org>
35509
35510         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
35511         $(ALLOCA_H), redundant through BUILT_SOURCES.
35512         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
35513         redundant through BUILT_SOURCES.
35514         * modules/byteswap (Makefile.am): Remove explicit dependency on
35515         $(BYTESWAP_H), redundant through BUILT_SOURCES.
35516         * modules/fnmatch (Makefile.am): Remove explicit dependency on
35517         $(FNMATCH_H), redundant through BUILT_SOURCES.
35518         * modules/getopt (Makefile.am): Remove explicit dependency on
35519         $(GETOPT_H), redundant through BUILT_SOURCES.
35520         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
35521         redundant through BUILT_SOURCES.
35522         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
35523         redundant through BUILT_SOURCES.
35524         * modules/stdbool (Makefile.am): Remove explicit dependency on
35525         $(STDBOOL_H), redundant through BUILT_SOURCES.
35526         * modules/stdint (Makefile.am): Remove explicit dependency on
35527         $(STDINT_H), redundant through BUILT_SOURCES.
35528         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
35529         Remove explicit dependency on $(SYSEXITS_H).
35530         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
35531
35532 2005-07-18  Simon Josefsson  <jas@extundo.com>
35533
35534         * lib/check-version.c (check_version): Accept identical versions too.
35535
35536 2005-07-18  Bruno Haible  <bruno@clisp.org>
35537
35538         * modules/lock: New file.
35539         * MODULES.html.sh (Multithreading): New section.
35540
35541 2005-07-18  Bruno Haible  <bruno@clisp.org>
35542
35543         * m4/lock.m4: New file, from GNU gettext.
35544
35545 2005-07-18  Bruno Haible  <bruno@clisp.org>
35546
35547         * lib/lock.h: New file, from GNU gettext.
35548         * lib/lock.c: New file, from GNU gettext.
35549
35550 2005-07-18  Bruno Haible  <bruno@clisp.org>
35551
35552         * lib/lock.h (gl_once_t): New type.
35553         (gl_once_define, gl_once): New macros.
35554         * lib/lock.c (fresh_once): New variable.
35555         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
35556         functions.
35557
35558 2005-07-16  Simon Josefsson  <jas@extundo.com>
35559
35560         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
35561         workaround, suggested by Bruno.
35562
35563 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
35564
35565         * modules/xalloc (Depends-on): Add xalloc-die.
35566         * modules/xvasprintf (Depends-on): Add xalloc-die.
35567
35568 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
35569
35570         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
35571         with a minor change.
35572
35573 2005-07-15  Bruno Haible  <bruno@clisp.org>
35574
35575         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
35576         When using lib/poll.c, define poll as rpl_poll.
35577
35578 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
35579
35580         * modules/argp (Depends-on): Remove unlocked-io.
35581
35582 2005-07-14  Derek Price  <derek@ximbiot.com>
35583
35584         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
35585         for glob symlink bug.
35586
35587 2005-07-14  Bruno Haible  <bruno@clisp.org>
35588
35589         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
35590         Instead, test for *_unlocked function declarations directly.
35591
35592 2005-07-11  Simon Josefsson  <jas@extundo.com>
35593
35594         * modules/size_max: New file.
35595
35596         * modules/xsize: Depend on size_max module for size_max.m4.
35597
35598 2005-07-11  Simon Josefsson  <jas@extundo.com>
35599
35600         * lib/size_max.h: New file.
35601
35602 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
35603
35604         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
35605         copyright symbol and the year.
35606         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
35607         (version_etc_va): Use parameterized copyright notice.
35608         Reword to conform to the current GNU coding standards.
35609
35610 2005-07-11  Karl Berry  <karl@gnu.org>
35611
35612         * doc/gnulib.texi (Quoting): new node.
35613         (Initial import): more info, from Patrice.
35614
35615 2005-07-11  Bruno Haible  <bruno@clisp.org>
35616
35617         * gnulib-tool (func_usage): Document option --avoid.
35618         (Command line options): Handle --avoid.
35619         (func_acceptable): New function.
35620         (func_modules_transitive_closure): Use it.
35621
35622 2005-07-11  Bruno Haible  <bruno@clisp.org>
35623
35624         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
35625         Reported by Jim Meyering.
35626
35627 2005-07-10  Bruno Haible  <bruno@clisp.org>
35628
35629         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
35630         Needed when size_t is smaller than 'unsigned int'.
35631         Reported by Paul Eggert.
35632
35633 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
35634
35635         * modules/argp (Depends-on): Add unlocked-io
35636
35637 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
35638
35639         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
35640         block of defines.
35641
35642 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
35643
35644         * config/srclist.txt: Comment out regcomp.c, since we have a porting
35645         fix now.
35646
35647 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
35648         and Paul Eggert  <eggert@cs.ucla.edu>
35649
35650         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
35651         in wint_t, not wchar_t.  Remove now-unnecessary cast.
35652
35653 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35654
35655         * modules/regex (Files): Add lib/regex_internal.c,
35656         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
35657         (Depends-on): Add extensions.
35658         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
35659
35660 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35661
35662         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
35663         pathconf.
35664         * m4/same.m4 (gl_SAME): Likewise.
35665         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
35666
35667         * m4/regex.m4: Adjust to new libc regex implementation.
35668         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
35669         all the .c and .h parts of (the new) regex.
35670         Quote the m4 stuff better.
35671         Check for RE_ICASE bug of old gnulib.
35672         Check for REG_STARTEND of recent libc.
35673         Rename local variables from jm_* to gl_*.
35674         Quote operand of "test -f".
35675         Say "recent enough" version of libc, not "version 2".
35676         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
35677         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
35678         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
35679         Remove check for btowc, isascii.
35680         Require AM_LANGINFO_CODESET.
35681
35682 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35683
35684         * lib/regex.c, regex.h: Sync from libc.
35685         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
35686         * lib/regexec.c:
35687         New files, synced from libc, except that regex_internal.h
35688         currently has a small porting fix.
35689
35690 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
35691
35692         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
35693         regex_internal.c, regexec.c.
35694         Add regex_internal.h too, but as a comment, since the libc version
35695         is currently broken in gnulib mode.
35696
35697 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
35698
35699         Support programs like Emacs that use gnulib but not gettext.
35700         * MODULES.html.sh (Internationalization functions): Add gettext-h.
35701         * modules/gettext-h: New file.
35702         * modules/gettext (Files): Remove lib/gettext.h.
35703         (Depends-on): Add gettext-h.
35704         (Makefile.am): Remove lib_SOURCES.
35705         * modules/argmatch, modules/c-stack, modules/closeout:
35706         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
35707         * modules/execute, modules/file-type, modules/getaddrinfo:
35708         * modules/getopt, modules/human, modules/javacomp:
35709         * modules/javaexec, modules/mkdir-p, modules/obstack:
35710         * modules/openat, modules/pagealign_alloc, modules/pipe:
35711         * modules/quotearg, modules/regex, modules/rpmatch:
35712         * modules/unicodeio, modules/userspec, modules/version-etc:
35713         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
35714         * modules/xsetenv:
35715         Depend on gettext-h, not gettext.
35716
35717 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
35718
35719         * gnulib-tool (func_import): Add support for 'public domain' license.
35720         * modules/alloca, modules/atexit, modules/memmove:
35721         Now public domain, not GPL.
35722         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
35723         * modules/realloc, modules/strerror, modules/strtod:
35724         Now LGPL, not GPL.
35725
35726 2005-07-05  Bruno Haible  <bruno@clisp.org>
35727
35728         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
35729         autoconf CVS. Needed for mingw.
35730
35731 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35732
35733         Remove the dependency of the strftime module on the tzset module.
35734         * modules/strftime (Depends-on): Remove dependency on tzset.
35735
35736 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35737
35738         Remove the dependency of the strftime module on the tzset module.
35739         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
35740         gl_FUNC_TZSET_CLOBBER.
35741
35742 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
35743
35744         Remove the dependency of the strftime module on the tzset module.
35745         * lib/strftime.c (my_strftime)
35746         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
35747         Copy the input structure, to work around some of the bug with
35748         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
35749         Solaris releases, you should also use the tzset module, but we won't
35750         require it as a dependency any more since we don't want LGPLed code
35751         to depend on GPLed code.
35752
35753 2005-07-02  Jim Meyering  <jim@meyering.net>
35754
35755         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
35756         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
35757         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
35758         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
35759
35760 2005-07-02  Jim Meyering  <jim@meyering.net>
35761
35762         * lib/backupfile.c (backup_args): Change a `0' to NULL.
35763
35764 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35765
35766         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
35767         declares only 'struct timespec;' (!).
35768
35769 2005-07-01  Jim Meyering  <jim@meyering.net>
35770
35771         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
35772         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
35773         * lib/save-cwd.c, tempname.c:
35774         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
35775         and don't include <sys/file.h>).
35776
35777 2005-06-29  Jim Meyering  <jim@meyering.net>
35778
35779         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
35780         type name.  Use the variable name instead.
35781         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
35782         Likewise.
35783
35784 2005-06-28  Simon Josefsson  <jas@extundo.com>
35785
35786         * modules/check-version (Files): Add check-version.m4.
35787
35788 2005-06-28  Simon Josefsson  <jas@extundo.com>
35789
35790         * m4/check-version.m4: New file, suggested by Jim Meyering
35791         <jim@meyering.net>.
35792
35793 2005-06-28  Simon Josefsson  <jas@extundo.com>
35794
35795         * lib/check-version.h, lib/check-version.c: New files.
35796
35797 2005-06-28  Simon Josefsson  <jas@extundo.com>
35798
35799         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
35800         collision with global variable.  Better indentation.  Don't
35801         increment buffer pointer beyond buffer end.  Based on comments
35802         from Paul Eggert <eggert@cs.ucla.edu>.
35803
35804         * lib/base64.h: Indent.
35805
35806 2005-06-28  Simon Josefsson  <jas@extundo.com>
35807
35808         * doc/gnulib.texi (Library version handling): New section.
35809
35810 2005-06-28  Jim Meyering  <jim@meyering.net>
35811
35812         * check-module (find_included_lib_files): Hard-code another
35813         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
35814         but modules/fts-lgpl (correctly) does not list those files.
35815
35816         * modules/canonicalize (Files): Add lib/pathmax.h.
35817
35818 2005-06-25  Simon Josefsson  <jas@extundo.com>
35819
35820         * modules/check-version: New file.
35821
35822 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
35823
35824         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
35825         initializer of struct addrinfo, as an indication that we don't
35826         care how many members the structure has.
35827
35828 2005-06-24  Derek Price  <derek@ximbiot.com>
35829         and Bruno Haible  <bruno@clisp.org>
35830
35831         Remove stat module & update lstat.
35832         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
35833         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
35834         * m4/stat.m4: Remove this file.
35835
35836 2005-06-24  Derek Price  <derek@ximbiot.com>
35837         and Bruno Haible  <bruno@clisp.org>
35838
35839         Remove stat module & update lstat.
35840         * lib/stat.c: Remove this file...
35841         (slash_aware_lstat): ...moving this content and its support...
35842         * lib/lstat.c (rpl_lstat): ...into here.
35843         * lib/lstat.h: New file.
35844
35845 2005-06-24  Derek Price  <derek@ximbiot.com>
35846         and Bruno Haible  <bruno@clisp.org>
35847
35848         Remove stat module & update lstat.
35849         * config/srclist.txt (libc sources): Remove stat.
35850
35851 2005-06-24  Derek Price  <derek@ximbiot.com>
35852         and Bruno Haible  <bruno@clisp.org>
35853
35854         Remove stat module & update lstat.
35855         * MODULES.html.sh (stat): Remove.
35856         * MODULES.html: Regenerated.
35857         * modules/lstat (Description): Correct function name.
35858         (Files): Add "lstat.h".
35859         (Depends-on): Remove stat, add xalloc, stat-macros.
35860         * modules/stat: Remove this file.
35861         (Include): Add "lstat.h", remove <sys/stat.h>.
35862
35863 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
35864
35865         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
35866         (ranged_convert): Don't save conversion in a temporary struct.
35867         This causes a warning with GCC 4.0.0, and anyway in the typical
35868         case it's not worth the extra 100 bytes or so of code.
35869         (ranged_convert, __mktime_internal): When calling a function via a
35870         pointer P, use P () rather than (*P) (), as we now assume C89 or
35871         better.
35872
35873 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
35874
35875         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
35876         "who -r" failed to give output.  Problem reported by Tim Waugh.
35877
35878         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
35879         (xcalloc): Use it to avoid needless tests.
35880         Problem reported by Jim Meyering.
35881
35882 2005-06-20  Derek Price  <derek@ximbiot.com>
35883
35884         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
35885         unnecessary for Autoconfs > 2.59c.
35886
35887 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35888
35889         * lib/argp.h (__option_is_short): Check upper limit of
35890         __key. Isprint() requires its argument to have the value
35891         of an unsigned char or EOF.
35892
35893 2005-06-16  Jim Meyering  <jim@meyering.net>
35894
35895         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
35896         when either N or S is zero.
35897
35898 2005-06-16  Derek Price  <derek@ximbiot.com>
35899
35900         * m4/bison.m4: Declare YACC & YFLAGS precious.
35901
35902 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
35903
35904         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
35905         multibyte string or pattern, fall back on unibyte matching.
35906         Problem reported by James Youngman.
35907
35908 2005-06-08  Bruno Haible  <bruno@clisp.org>
35909
35910         * modules/csharpcomp: New file.
35911         * MODULES.html.sh (C#): Add csharpcomp.
35912
35913 2005-06-08  Bruno Haible  <bruno@clisp.org>
35914
35915         * m4/csharpcomp.m4: New file, from GNU gettext.
35916
35917 2005-06-08  Bruno Haible  <bruno@clisp.org>
35918
35919         * lib/csharpcomp.h: New file, from GNU gettext.
35920         * lib/csharpcomp.c: New file, from GNU gettext.
35921         * lib/csharpcomp.sh.in: New file, from GNU gettext.
35922
35923 2005-06-08  Bruno Haible  <bruno@clisp.org>
35924
35925         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
35926         warning on mingw.
35927
35928 2005-06-07  Derek Price  <derek@ximbiot.com>
35929
35930         Sync from CVS.
35931         * lib/glob_.h: Indent nested #ifdef.
35932
35933 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
35934
35935         Sync from coreutils.
35936         Use "file name" when talking about file names, instead of "filename"
35937         or "path", as per the GNU coding standards.
35938         * lib/mkdir-p.c: Renamed from makepath.c.
35939         (make_dir_parents): Renamed from make_path.  All callers changed.
35940         * lib/mkdir-p.h: Likewise.  All includers changed.
35941         * lib/filenamecat.c: Renamed from path-concat.c.
35942         (file_name_concat): Renamed from path_concat.  All callers changed.
35943         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
35944         * lib/filenamecat.h: Likewise.  All includers changed.
35945         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
35946         in comments or local variable names.
35947         * lib/basename.c: Likewise.
35948         * lib/canonicalize.c, canonicalize.h: Likewise.
35949         * lib/dirname.c, dirname.h: Likewise.
35950         * lib/euidaccess.c: Likewise.
35951         * lib/exclude.c: Likewise
35952         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
35953         * lib/fsusage.c, fsuage.h: Likewise.
35954         * lib/fts.c, fts_.h: Likewise.
35955         * lib/getcwd.c: Likewise.
35956         * lib/getloadavg.c: Likewise.
35957         * lib/mkstemp.c: Likewise.
35958         * lib/mountlist.c, mountlist.h: Likewise.
35959         * lib/openat.c, openat.h: Likewise.
35960         * lib/readlink-stub.c: Likewise.
35961         * lib/readutmp.c, readutmp.h: Likewise.
35962         * lib/rename.c: Likewise.
35963         * lib/rmdir.c: Likewise.
35964         * lib/same.c: Likewise.
35965         * lib/savedir.c: Likewise.
35966         * lib/stripslash.c: Likewise.
35967         * lib/tempname.c: Likewise.
35968         * lib/xreadlink.c: Likewise.
35969         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
35970         All uses changed.
35971         * lib/exclude.h: Likewise.
35972
35973         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
35974         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35975         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
35976         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35977         * lib/pathmax.h: Include <limits.h> unconditionally, since other
35978         files have been getting away with it for years (MORE/BSD 4.3
35979         is extinct now).
35980         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
35981         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
35982
35983         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
35984         Define to 256, not 255, as per modern POSIX.
35985
35986 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
35987
35988         Sync from coreutils.
35989         Use "file name" when talking about file names, instead of "filename"
35990         or "path", as per the GNU coding standards.
35991         * MODULES.html.sh: mkdir-p renamed from makepath.
35992         filenamecat renamed from path-concat.
35993         * modules/filenamecat: Renamed from modules/path-concat.
35994         (Files): filenamecat.h and filenamecat.c renamed from
35995         path-concat.h and path-concat.c.
35996         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
35997         (Include): filenamecat.h, not path-concat.h.
35998         * modules/mkdir-p: Renamed from modules/makepath.
35999         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
36000         makepath.c.
36001         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
36002         (Include): mkdir-p.h, not makepath.h.
36003
36004 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
36005
36006         Sync from coreutils.
36007         * m4/mkdir-p.m4: Renamed from makepath.m4.
36008         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
36009         Rename files from makepath.c to mkdir-p.c, and from
36010         makepath.h to mkdir-p.h.
36011         * m4/filenamecat.m4: Renamed from path-concat.m4.
36012         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
36013         Rename files from path-concat.c to filenamecat.c,
36014         and from path-concat.h to filenamecat.h.
36015         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
36016         "file name" in local variables or comments.
36017         * m4/rename.m4: Likewise.
36018
36019 2005-06-01  Bruno Haible  <bruno@clisp.org>
36020
36021         * modules/csharpexec: New file.
36022         * MODULES.html.sh (C#): New section.
36023
36024 2005-06-01  Bruno Haible  <bruno@clisp.org>
36025
36026         * m4/csharp.m4: New file, from GNU gettext.
36027         * m4/csharpexec.m4: New file, from GNU gettext.
36028
36029 2005-06-01  Bruno Haible  <bruno@clisp.org>
36030
36031         * lib/csharpexec.h: New file, from GNU gettext.
36032         * lib/csharpexec.c: New file, from GNU gettext.
36033         * lib/csharpexec.sh.in: New file, from GNU gettext.
36034
36035 2005-05-31  Derek Price  <derek@ximbiot.com>
36036             Paul Eggert  <eggert@cs.ucla.edu>
36037
36038         Sync from cvs.
36039         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36040
36041 2005-05-31  Derek Price  <derek@ximbiot.com>
36042             Paul Eggert  <eggert@cs.ucla.edu>
36043
36044         Sync from cvs.
36045         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
36046
36047 2005-05-29  Derek Price  <derek@ximbiot.com>
36048
36049         * config/srclist.txt (glob_.h, glob.c): Add these files.
36050
36051 2005-05-29  Derek Price  <derek@ximbiot.com>
36052
36053         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
36054         * modules/glob: New file.
36055         * modules/getlogin_r: Add link to POSIX spec in description.
36056
36057 2005-05-29  Derek Price  <derek@ximbiot.com>
36058             Paul Eggert  <eggert@cs.ucla.edu>
36059
36060         * m4/glob.m4: New file.
36061
36062 2005-05-29  Derek Price  <derek@ximbiot.com>
36063             Paul Eggert  <eggert@cs.ucla.edu>
36064
36065         * lib/glob_.h, lib/glob.c: New files.
36066
36067 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36068
36069         * modules/fts (Files): Remove m4/inttypes-pri.m4.
36070         * modules/fts-lgpl (Depends-on): Remove gettext.
36071
36072 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36073
36074         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
36075         and don't require gt_INTTYPES_PRI.
36076
36077 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
36078
36079         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
36080
36081         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
36082         the configuration hassle isn't worth it.
36083         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
36084         (LONGEST_MODIFIER, PRIuMAX): Remove.
36085
36086 2005-05-27  Bruno Haible  <bruno@clisp.org>
36087
36088         * lib/getlogin_r.h: Remove second include of <stddef.h>.
36089
36090 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
36091
36092         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
36093         _POSIX_PTHREAD_SEMANTICS for Solaris.
36094
36095 2005-05-25  Derek Price  <derek@ximbiot.com>
36096
36097         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
36098
36099 2005-05-25  Derek Price  <derek@ximbiot.com>
36100             Paul Eggert  <eggert@cs.ucla.edu>
36101
36102         * modules/getlogin_r, m4/getlogin_r.m4: New files.
36103         * lib/getlogin_r.c, getlogin_r.h: New files.
36104
36105 2005-05-25  Bruno Haible  <bruno@clisp.org>
36106             Derek Price  <derek@ximbiot.com>
36107
36108         * lib/getlogin_r.h: Simplify API documentation.
36109
36110 2005-05-23  Derek Price  <derek@ximbiot.com>
36111
36112         * modules/minmax (Files): Add m4/minmax.m4.
36113         (configure.ac): Add gl_MINMAX.
36114
36115 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
36116
36117         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
36118         so that unistd-safer.h (GPL'ed code) need not be included.
36119
36120 2005-05-22  Bruno Haible  <bruno@clisp.org>
36121
36122         * m4/minmax.m4: New file.
36123         Based on a patch by Derek Price <derek@ximbiot.com>.
36124
36125 2005-05-22  Bruno Haible  <bruno@clisp.org>
36126
36127         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
36128         (INT64_MIN): Fix definition.
36129         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
36130
36131         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
36132         NEED_SIGNED_INT_TYPES.
36133
36134         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
36135         HAVE_SYSTEM_INTTYPES.
36136
36137 2005-05-22  Bruno Haible  <bruno@clisp.org>
36138
36139         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
36140         Also include <sys/param.h> if it defines MIN, MAX.
36141         Based on a patch by Derek Price <derek@ximbiot.com>.
36142
36143 2005-05-21  Jim Meyering  <jim@meyering.net>
36144
36145         * modules/fts (Files): Add m4/inttypes-pri.m4.
36146         (Depends-on): Add lstat and remove gettext.  Alphabetize.
36147
36148 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36149
36150         New fts module.
36151         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
36152         (setup_dir, free_dir): New functions.
36153         (enter_dir, leave_dir): Define trivial
36154         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
36155         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
36156         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
36157         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
36158         Move to fts-cycle.c.
36159         (fts_open): Use setup_dir.
36160         (fts_close): Use free_dir.
36161         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
36162         This adds a label and some gotos, but the alternatives were messier.
36163         Check for memory allocation failure when entering a dir.
36164         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
36165         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
36166         (FTS): New member fts_cycle, that is a union that contains the
36167         old active_dir_ht and cycle_state.  All uses changed to mention
36168         fts_cycle.ht and fts_cycle.state.
36169         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
36170         fts.c, with the following changes:
36171         (setup_dir, free_dir): New functions.
36172         (enter_dir): Now returns bool.  Return true if successful, false
36173         if memory exhausted.  All callers changed.
36174         Do not bother partly cleaning up on
36175         memory allocation failure; that is free_dir's job.
36176         However, free ad if hash_insert fails, to avoid memory leak.
36177         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
36178         fts->fts_options to see which union member to use.
36179
36180 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36181
36182         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
36183         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
36184
36185 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
36186
36187         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
36188
36189 2005-05-20  Jim Meyering  <jim@meyering.net>
36190
36191         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
36192         Now a macro, to pacify GCC.
36193
36194 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36195
36196         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
36197         of -1.
36198
36199 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
36200
36201         * lib/chown.c (rpl_chown): Return -1 on failure.
36202
36203 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36204
36205         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
36206         Don't check for stddef.h.
36207         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
36208         don't use its results.
36209         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
36210         since we include them unconditionally.  Don't require
36211         AM_STDBOOL_H, since stdbool is a prerequisite.
36212         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
36213         since we assume C89 or better.
36214         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
36215         as we don't use their results.
36216         Don't check for fchdir, memmove, memset, strrchr, as we use
36217         them unconditionally.
36218         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
36219         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
36220
36221 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
36222
36223         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
36224         Include <stddef.h> unconditionally, since we assume C89 now.
36225         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
36226         * lib/fts.c: Include fts_.h first, to check interface.
36227         Do not include intprops.h; no longer needed.
36228         Include cycle-check.h and hash.h, since fts_.h no longer does.
36229         Remove unnecessary casts of closedir to void.
36230         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
36231         decide whether to decrement nlinks.
36232         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
36233         (FTS): Use struct hash_table * instead of Hash_table, so that
36234         we no longer need to include hash.h here.
36235
36236 2005-05-18  Jim Meyering  <jim@meyering.net>
36237
36238         * modules/dirfd (License): Change to LGPL.  Most of the code
36239         is already in the public domain.
36240
36241 2005-05-18  Jim Meyering  <jim@meyering.net>
36242
36243         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
36244         Reported by Yoann Vandoorselaere.
36245
36246 2005-05-17  Jim Meyering  <jim@meyering.net>
36247
36248         * m4/fts.m4: New file, from coreutils.
36249
36250 2005-05-17  Jim Meyering  <jim@meyering.net>
36251
36252         * lib/fts.c, lib/fts_.h: New files, from coreutils.
36253
36254 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36255
36256         Sync from coreutils.
36257         * m4/unlinkdir.m4: New file.
36258
36259 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36260
36261         Sync from coreutils.
36262         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
36263         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
36264         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
36265         White space changes only.
36266         * lib/makepath.c (make_path): Port to hosts where leading "//" is
36267         special.
36268         * lib/yesno.c: Include getline.h, not ctype.h.
36269         (yesno): Don't remove leading white space; POSIX doesn't allow it.
36270         Use getline to remove arbitrary restriction on response length.
36271
36272 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
36273
36274         * config/srclist-update: Spell out "Street" in FSF postal
36275         mail address; this is the style the FSF seems to prefer.
36276
36277         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
36278         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
36279         this updates FSF postal mail address.
36280
36281         Sync from coreutils.
36282         * modules/unlinkdir: New file.
36283         * modules/yesno (Depends-on): Add getline.
36284         * MODULES.html.sh (File system functions): Add unlinkdir.
36285
36286 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36287
36288         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
36289         lib/strsep.h:
36290         Change the initial comment to refer to GPL, not LGPL.
36291         gnulib-tool will change it to LGPL as needed.
36292
36293         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
36294         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
36295         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
36296         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
36297         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
36298         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
36299         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
36300         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
36301         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
36302         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
36303         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
36304         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
36305         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
36306         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
36307         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
36308         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
36309         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
36310         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
36311         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
36312         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
36313         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
36314         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
36315         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
36316         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
36317         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
36318         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
36319         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
36320         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
36321         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
36322         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
36323         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
36324         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
36325         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
36326         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
36327         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
36328         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
36329         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
36330         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
36331         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
36332         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
36333         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
36334         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
36335         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
36336         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
36337         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
36338         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
36339         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
36340         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
36341         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
36342         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
36343         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
36344         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
36345         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
36346         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
36347         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
36348         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
36349         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
36350         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
36351         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
36352         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
36353         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
36354         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
36355         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
36356         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
36357         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
36358         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
36359         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
36360         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
36361         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
36362         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
36363         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
36364         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
36365         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
36366         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
36367         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
36368         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
36369         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
36370         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
36371         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
36372         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
36373         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
36374         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
36375         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
36376         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
36377         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
36378         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
36379         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
36380         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
36381         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
36382         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
36383         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
36384         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
36385         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
36386         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
36387         lib/yesno.c, lib/yesno.h:
36388         Update FSF postal mail address.
36389
36390 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
36391
36392         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
36393         tests/test-memmem.c, tests/test-stpncpy.c:
36394         Update FSF postal mail address.
36395
36396 2005-05-13  Bruno Haible  <bruno@clisp.org>
36397
36398         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
36399         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
36400         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
36401         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
36402         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
36403         Add support for 64-bit integers in the MSVC compiler.
36404
36405 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36406
36407         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
36408
36409 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
36410
36411         * gnulib-tool (func_import): Sort and uniquify recommended includes.
36412
36413 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
36414
36415         * doc/getdate.texi (General date syntax): Don't say that date
36416         date --iso-8601=ns generates acceptable dates; it doesn't yet.
36417         Problem reported by Nic Ferrier.
36418
36419 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36420
36421         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
36422         specified in ai_socktype. Fix invalid ai_protocol
36423         check. ai_protocol is usually set to 0 or depending on
36424         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
36425         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
36426         ai_socktype / ai_protocol in the returned addrinfo structure.
36427
36428 2005-05-10  Simon Josefsson  <jas@extundo.com>
36429
36430         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
36431         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
36432
36433 2005-05-10  Karl Berry  <karl@gnu.org>
36434
36435         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
36436         (from http://www.gnu.org/licenses).
36437         * doc/COPYING.LIB: also rename to COPYING.LESSER.
36438         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
36439         fdl.texi suffices.
36440
36441 2005-05-10  Karl Berry  <karl@gnu.org>
36442
36443         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
36444         (COPYING.DOC): remove.
36445
36446         * config/srclist-update: new FSF address.
36447
36448 2005-05-10  Derek Price  <derek@ximbiot.com>
36449
36450         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
36451         possible.
36452
36453 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36454             Bruno Haible  <bruno@clisp.org>
36455
36456         * modules/inet_ntop: New file.
36457         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36458         inet_ntop.
36459
36460 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36461             Bruno Haible  <bruno@clisp.org>
36462
36463         * m4/inet_ntop.m4: New file.
36464
36465 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
36466             Bruno Haible  <bruno@clisp.org>
36467
36468         * lib/inet_ntop.h: New file.
36469         * lib/inet_ntop.c: New file, from glibc with modifications.
36470
36471 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
36472
36473         * modules/time_r (License): Change to LGPL.
36474         * modules/extensions (License): Change to LGPL.  Actually,
36475         the license is more permissive than that, but currently gnulib-tool
36476         doesn't know how to handle more-permissive licenses.
36477
36478         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
36479         Problem reported by Dave Love.
36480
36481 2005-05-08  Jim Meyering  <jim@meyering.net>
36482
36483         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
36484         blank.
36485
36486 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
36487
36488         * modules/argmatch (Depends-on): Add stdbool.
36489         * modules/backupfile (Depends-on): Likewise.
36490         * modules/chdir-long (Depends-on): Likewise.
36491         * modules/closeout (Depends-on): Likewise.
36492         * modules/cycle-check (Depends-on): Likewise.
36493         * modules/dirname (Depends-on): Likewise.
36494         * modules/fnmatch (Depends-on): Likewise.
36495         * modules/fsusage (Depends-on): Likewise.
36496         * modules/fwriteerror (Depends-on): Likewise.
36497         * modules/getcwd (Depends-on): Likewise.
36498         * modules/getloadavg (Depends-on): Likewise.
36499         * modules/hard-locale (Depends-on): Likewise.
36500         * modules/makepath (Depends-on): Likewise.
36501         * modules/mountlist (Depends-on): Likewise.
36502         * modules/nanosleep (Depends-on): Likewise.
36503         * modules/posixtm (Depends-on): Likewise.
36504         * modules/quotearg (Depends-on): Likewise.
36505         * modules/readtokens (Depends-on): Likewise.
36506         * modules/readtokens0 (Depends-on): Likewise.
36507         * modules/readutmp (Depends-on): Likewise.
36508         * modules/save-cwd (Depends-on): Likewise.
36509         * modules/strftime (Depends-on): Likewise.
36510         * modules/userspec (Depends-on): Likewise.
36511         * modules/utimecmp (Depends-on): Likewise.
36512         * modules/xgetcwd (Depends-on): Likewise.
36513         * modules/xnanosleep (Depends-on): Likewise.
36514         * modules/xstrtod (Depends-on): Likewise.
36515         * modules/yesno (Depends-on): Likewise.
36516
36517 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
36518
36519         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
36520         needless checks.
36521
36522 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36523
36524         Merge from coreutils.  Among other things,
36525         add bulletproofing for cases where stdin, stdout, or stderr are closed.
36526         * lib/fd-safer.c: New file.
36527         * lib/fcntl-safer.h, open-safer.c: Remove.
36528         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
36529         * lib/dup-safer.c: Include unistd-safer.h first.
36530         Don't include errno.h.
36531         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
36532         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
36533         * lib/file-type.c: Rely on file-type.h change.
36534         * lib/getloadavg.c: Include unistd-safer.h.
36535         (getloadavg): Use safer open.
36536         * lib/getusershell.c: Include "stdio-safer.h".
36537         (getusershell): Use safer fopen.
36538         * lib/long-options.c (long_options): Use NULL rather than 0.
36539         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
36540         'free'.
36541         * lib/modechange.c: Likewise.
36542         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
36543         (MODE_DONE): New constant.
36544         (struct mode_change): Remove 'next' member.
36545         (make_node_op_equals): New function; like the old one of the
36546         same name, except it allocates an array.
36547         (mode_compile, mode_create_from_ref): Use it.
36548         (mode_compile): Allocate result as an array, not a linked list.
36549         Parse octal string ourself, so that we catch mistakes like "+0".
36550         (mode_adjust): Arg is an array, not a linked list.
36551         * lib/modechange.c: Include stat-macros.h, xalloc.h.
36552         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
36553         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
36554         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
36555         Remove.  This is now stat-macros.h's job.
36556         (talloc): Remove.  All callers replaced by xalloc, so that
36557         our invokers don't have to worry about reporting memory failures.
36558         (make_node_op_equals): Remove.
36559         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
36560         New constants.
36561         (struct mode_change): Moved here from modechange.h.
36562         (mode_append_entry): Remove.
36563         (mode_compile): Remove MASKED_OPS arg, since it encouraged
36564         apps to have incorrect behavior.  Use simpler algorithm for head
36565         and tail.  Don't futz with umask; that's now the job of mode_adjust.
36566         Detect more invalid usages rather than having somewhat-random behavior.
36567         Don't insert an "a=" action, as that leads to incorrect behavior.
36568         (mode_compile, mode_create_from_ref): Return NULL on error instead
36569         of an enum, since now there's only one way to have an error.  All
36570         callers changed.
36571         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
36572         at the correct time.  Simplify calculation of "+u" and its ilk.
36573         Don't mishandle "+X".
36574         (mode_free): Remove "register" and localize decls.
36575         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
36576         (struct mode_change): Move to modechange.c; callers don't
36577         need to see this stuff.
36578         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
36579         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
36580         (mode_change, mode_adjust): Reflect the new signatures noted above.
36581         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
36582         that might redefine system include files.
36583         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
36584         (my_usleep): Use NULL rather than (void *) 0.
36585         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
36586         Use siginterrupt to specify that system calls should be interrupted.
36587         (rpl_nanosleep): Move initialization of suspended closer to call of
36588         my_usleep.
36589         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
36590         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
36591         (desirable_utmp_entry): New function.
36592         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
36593         using x2nrealloc, to simplify logic.
36594         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
36595         size calculation.  Do not assume utmp file is a regular file.
36596         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
36597         (READ_UTMP_CHECK_PIDS): New constant.
36598         * lib/save-cwd.c: Include unistd-safer.h.
36599         (save_cwd): Use fd_safer.
36600         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
36601         [!_LIBC] Include "stat-macros.h" instead.
36602         * lib/unistd-safer.h (fd_safer): New decl.
36603
36604 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36605
36606         * modules/getloadavg (Depends-on): Add unistd-safer.
36607         * modules/getusershell (Depends-on): Add stdio-safer.
36608         * modules/lstat (Depends-on): Remove xalloc.
36609         * modules/mkstemp (Depends-on): Add stat-macros.
36610         * modules/modechange (Depends-on): Remove xstrtol.
36611         Add stat-macros, xalloc.
36612         * modules/save-cwd (Depends-on): Add unistd-safer.
36613         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
36614         * modules/unistd-safer (Files): Add lib/fd-safer.c
36615         (Makefile.am): Remove lib_SOURCES.
36616
36617         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
36618         Remove fcntl-safer; unistd-safer supersedes it.
36619
36620 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36621
36622         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
36623         AC_HEADER_STAT.
36624         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
36625         (gl_PREREQ_CHOWN): Remove.
36626         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
36627         it.  Don't require AC_HEADER_STAT.
36628         (gl_PREREQ_LSTAT): Remove.
36629         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
36630         Don't require AC_HEADER_STAT.
36631         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
36632         (gl_PREREQ_RMDIR): Remove.
36633         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
36634         mention stat-macros.h or AC_HEADER_STAT, since we'll make
36635         the stat-macros module a prerequisite.
36636         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
36637         * m4/filemode.m4 (gl_FILEMODE): Likewise.
36638         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
36639         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
36640         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
36641         variable names.
36642         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
36643         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
36644         variable prefixes.
36645         * m4/fcntl-safer.m4: Remove.
36646         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
36647         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
36648         Invoke gl_PREREQ_FD_SAFER.
36649         (gl_PREREQ_FD_SAFER): New macro.
36650         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
36651         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
36652         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
36653         Remove duplicate call to AC_LIBOBJ(readutmp).
36654         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
36655
36656         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
36657         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
36658
36659 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
36660
36661         * MODULES.html.sh (Misc): Add byteswap.
36662
36663 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36664
36665         * modules/getcwd (Depends-on): Add extensions.
36666         * modules/openat (Depends-on): Likewise.
36667
36668 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36669
36670         * modules/byteswap: New file.
36671
36672 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36673
36674         * m4/byteswap.m4: New file.
36675
36676 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
36677
36678         * lib/byteswap_.h: New file.
36679
36680 2005-04-25  Karl Berry  <karl@gnu.org>
36681
36682         * m4/gettext.m4: Update from GNU gettext 0.14.4.
36683
36684 2005-04-25  Albert Chin  <china@thewrittenword.com>
36685
36686         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
36687         Toolkit C bug.
36688
36689 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
36690
36691         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
36692         (func_ln_if_changed) Remove forcibly for no error message
36693         in case file does not exist.
36694
36695 2005-04-19  Simon Josefsson  <jas@extundo.com>
36696
36697         * gnulib-tool (Options): Make --symlink mean --symbolic.
36698
36699 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
36700
36701         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
36702
36703 2005-04-16  Simon Josefsson  <jas@extundo.com>
36704
36705         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
36706
36707 2005-04-15  Simon Josefsson  <jas@extundo.com>
36708
36709         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
36710
36711 2005-04-15  Simon Josefsson  <jas@extundo.com>
36712
36713         * gnulib-tool: Rename --symlink to --symbolic.
36714
36715 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
36716
36717         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
36718         symbolic links to files instead of copying/moving.  Add --aux-dir,
36719         specifying directory relative --dir where auxiliary build tools
36720         are placed.
36721
36722 2005-04-14  Bruno Haible  <bruno@clisp.org>
36723
36724         * modules/allocsa (License): Change to LGPL.
36725         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
36726
36727 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36728
36729         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
36730         that "UTC +1 second" continues to work.  Problem reported
36731         by Dmitry V. Levin.
36732         (relunit_snumber): New rule.
36733         (relunit): Use it.
36734
36735 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
36736
36737         * lib/getdate.y (universal_time_zone_table): New constant.
36738         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
36739         universal_time_zone_table.
36740         (lookup_zone): Prefer universal_time_zone_table to
36741         local_time_zone_table, so that "GMT" time stamps are allowed in
36742         London during the summer.  Problem reported by Ian Abbott.
36743
36744 2005-04-12  Jim Meyering  <jim@meyering.net>
36745
36746         * lib/human.c (humblock): Set *options even when returning due to
36747         xstrtoumax conversion failure.  Thanks to a used-uninitialized
36748         warning from gcc-4.
36749
36750 2005-04-09  Jim Meyering  <jim@meyering.net>
36751
36752         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
36753         -Wuninitialized: initialize tm0.tm_year.
36754
36755 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
36756
36757         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
36758         count, since there's no maximum.  All uses changed.
36759         Add member dsts_seen.
36760         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
36761         not being INT_MAX.
36762         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
36763         Use pc_rels_seen to decide whther a date is absolute.
36764
36765         * lib/getdate.y (number): Don't overwrite year.
36766         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
36767         check.
36768
36769 2005-04-02  Simon Josefsson  <jas@extundo.com>
36770
36771         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
36772         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
36773
36774 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
36775
36776         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
36777         where no absolute path name can be longer than PATH_MAX.
36778
36779 2005-03-27  Jim Meyering  <jim@meyering.net>
36780
36781         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
36782
36783 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
36784
36785         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
36786         "one's complement" -> "ones' complement" in comment, as per Knuth.
36787         "value of type" -> "type or expression" in comment.
36788         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
36789
36790 2005-03-26  Jim Meyering  <jim@meyering.net>
36791
36792         Comment nits.
36793         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
36794         Correct typos: s/or/of/.
36795
36796 2005-03-26  Jim Meyering  <jim@meyering.net>
36797
36798         * modules/check-include-files: Move to ../ and rename to...
36799         * check-module: ...this.
36800
36801 2005-03-25  Jim Meyering  <jim@meyering.net>
36802
36803         * modules/xvasprintf (Files): Add xalloc.h.
36804
36805 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
36806
36807         * modules/gettext (Files): config/config.rpath ->
36808         build-aux/config.rpath
36809         * modules/iconv (Files): Likewise.
36810         Problem reported by Oskar Liljeblad.
36811
36812 2005-03-23  Jim Meyering  <jim@meyering.net>
36813
36814         * modules/check-include-files: New script to check for
36815         missing dependencies, multiple includes, etc.
36816
36817         * modules/c-strtold (Depends-on): Add xalloc.
36818         * modules/c-strtod (Depends-on): Add xalloc.
36819         * modules/hash (Depends-on): Add xalloc.
36820         (Files): Remove lib/xalloc.h.
36821
36822         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
36823         * modules/userspec (Files): Add lib/inttostr.h.
36824
36825 2005-03-23  Jim Meyering  <jim@meyering.net>
36826
36827         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
36828
36829 2005-03-22  Jim Meyering  <jim@meyering.net>
36830
36831         * modules/stat-macros: New module.
36832         * modules/canonicalize, modules/euidaccess, modules/file-type,
36833         * modules/filemode, modules/lchown, modules/makepath,
36834         * modules/rmdir, modules/stat: Depend on new stat-macros module
36835         rather than listing lib/stat-macros.h manually.
36836         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
36837
36838 2005-03-22  Jim Meyering  <jim@meyering.net>
36839
36840         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
36841
36842 2005-03-22  Bruno Haible  <bruno@clisp.org>
36843
36844         * config/srclist.txt: Replace target directory 'config' with
36845         'build-aux'.
36846         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
36847         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
36848         ../build-aux/.
36849
36850 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
36851
36852         * modules/chdir-long (Depends-on): Add mempcpy.
36853
36854         * modules/acl, modules/backupfile, modules/c-strtod,
36855         modules/c-strtold, modules/canon-host, modules/canonicalize,
36856         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
36857         modules/exclude, modules/exitfail, modules/file-type,
36858         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
36859         modules/getdate, modules/getline, modules/getpagesize,
36860         modules/getpass, modules/getugroups, modules/group-member,
36861         modules/hard-locale, modules/hash, modules/human, modules/idcache,
36862         modules/inttostr, modules/long-options, modules/makepath,
36863         modules/md5, modules/memcasecmp, modules/memcoll,
36864         modules/modechange, modules/mountlist, modules/path-concat,
36865         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
36866         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
36867         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
36868         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
36869         modules/strftime, modules/strndup, modules/strverscmp,
36870         modules/timespec, modules/unlocked-io, modules/userspec,
36871         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
36872         modules/yesno:
36873         Remove lib_SOURCES line from Makefile.am section, as this is now
36874         done automatically by the corresponding Autoconf macro.
36875
36876 2005-03-21  Jim Meyering  <jim@meyering.net>
36877
36878         Changes imported from coreutils.
36879
36880         * lib/cycle-check.c: Don't include xalloc.h.
36881
36882         * lib/path-concat.c: Don't include assert.h.
36883         (path_concat): Remove assertion that would have triggered
36884         for ABASE starting with more than one slash.
36885         Reported by Andreas Schwab.
36886
36887         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
36888         properly when ABASE is an absolute file name.
36889         Correct the description of this function.
36890         Include <assert.h>.
36891         Add an assertion and a test driver.
36892         This fixes a bug introduced on 2004-07-02.
36893         Andreas Schwab reported the resulting failure of cp --parents:
36894         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
36895
36896 2005-03-21  Jim Meyering  <jim@meyering.net>
36897
36898         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
36899         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
36900
36901 2005-03-21  Jim Meyering  <jim@meyering.net>
36902         and  Paul Eggert  <eggert@cs.ucla.edu>
36903
36904         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
36905         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
36906         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
36907         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
36908         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
36909         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
36910         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
36911         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
36912         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
36913         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
36914         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
36915         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
36916         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
36917         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
36918         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
36919         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
36920         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
36921         for these modules.
36922
36923 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
36924
36925         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
36926         (which shouldn't happen), generate nothing instead of returning 0
36927         immediately, so that nstrftime (NULL, ...) doesn't return 0.
36928
36929 2005-03-16  Bruno Haible  <bruno@clisp.org>
36930
36931         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
36932         HAVE_LONGLONG_64BIT.
36933
36934 2005-03-16  Bruno Haible  <bruno@clisp.org>
36935
36936         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
36937         HAVE_LONGLONG_64BIT.
36938
36939 2005-03-16  Bruno Haible  <bruno@clisp.org>
36940
36941         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
36942         HAVE_LONGLONG_64BIT.
36943
36944 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
36945
36946         * lib/strftime.c (my_strftime): Prepend space to format so that we can
36947         reliably distinguish strftime failure from empty output on POSIX
36948         hosts.
36949
36950 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
36951
36952         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
36953         (iconv_string): Don't guess a size-zero buffer, as that might cause
36954         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
36955         result would be 'too large', where 'too large' is (heuristically)
36956         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
36957         overflow concerns.  This will prevent some unwanted malloc failures
36958         when the inputs are very large.
36959
36960 2005-03-15  Karl Berry  <karl@gnu.org>
36961
36962         * config/srclist.txt (config.rpath): from gettext.
36963         * config/config.rpath: update.
36964
36965 2005-03-15  Bruno Haible  <bruno@clisp.org>
36966
36967         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
36968         to 'negate'.
36969
36970         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
36971         variable.
36972
36973         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
36974         results.
36975
36976 2005-03-14  Simon Josefsson  <jas@extundo.com>
36977
36978         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
36979         <fx@gnu.org>.
36980
36981 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
36982
36983         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
36984         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
36985         intprops.h.
36986         * lib/strtol.c: Likewise.
36987
36988 2005-03-14  Jim Meyering  <jim@meyering.net>
36989
36990         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
36991         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
36992         to be nonzero so that we (and caller) can detect the difference
36993         between a valid zero-length expansion and an error return, even
36994         when the underlying strftime fails before writing anything into
36995         that location.
36996
36997 2005-03-14  Bruno Haible  <bruno@clisp.org>
36998
36999         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
37000         Update from GNU gettext 0.14.3.
37001
37002 2005-03-10  Jim Meyering  <jim@meyering.net>
37003
37004         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
37005
37006 2005-03-10  Jim Meyering  <jim@meyering.net>
37007
37008         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
37009         so that this module works on systems without fchdir.
37010
37011 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
37012
37013         Factor int-properties macros into a single file, except for
37014         glibc-related files.
37015         * lib/intprops.h: New file.
37016         * lib/getloadavg.c: Include it instead of limits.h.
37017         (INT_STRLEN_BOUND): Remove.
37018         * lib/human.c: Include intprops.h.
37019         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
37020         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
37021         302/1000.
37022         * lib/inttostr.h: Include intprops.h instead of limits.h.
37023         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
37024         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
37025         for consistency with intprops.h.
37026         (time_t_is_integer, twos_complement_arithmetic): Use them.
37027         * lib/sig2str.h: Include <signal.h>, intprops.h.
37028         (INT_STRLEN_BOUND): Remove.
37029         * lib/strftime.c (TYPE_SIGNED): Remove.
37030         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
37031         * lib/strtol.c: Adjust comments to match intprops.h.
37032         * lib/userspec.c: Include intprops.h.
37033         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
37034         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
37035         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
37036         instead of rolling our own expressions.
37037         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
37038
37039         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
37040         instead of int.
37041         (my_strftime): Do not mishandle years close to INT_MAX, by doing
37042         the right thing even if adding 1900 would overflow.  Similarly
37043         for tm_mon + 1 and tm_yday + 1.
37044         Make %Y always equivalent to %C%y, and similarly for %G and %g.
37045         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
37046         (DO_SIGNED_NUMBER): New macro.
37047         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
37048
37049 2005-03-07  Bruno Haible  <bruno@clisp.org>
37050
37051         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
37052
37053 2005-03-07  Bruno Haible  <bruno@clisp.org>
37054
37055         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
37056
37057 2005-03-04  Derek R. Price  <derek@ximbiot.com>
37058
37059         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
37060         (func_import): Only replace files via --import when they have actually
37061         changed.
37062
37063 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37064
37065         * m4/mmap-anon.m4: New file.
37066         * m4/pagealign_alloc.m4: New file.
37067
37068 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37069             Bruno Haible  <bruno@clisp.org>
37070
37071         * modules/pagealign_alloc: New file.
37072         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
37073
37074 2005-03-03  Derek R. Price  <derek@ximbiot.com>
37075             Bruno Haible  <bruno@clisp.org>
37076
37077         * lib/pagealign_alloc.h: New file.
37078         * lib/pagealign_alloc.c: New file.
37079
37080 2005-03-03  Bruno Haible  <bruno@clisp.org>
37081
37082         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
37083         Use an all-permissive copyright notice, recommended by RMS.
37084
37085 2005-03-02  Bruno Haible  <bruno@clisp.org>
37086
37087         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
37088         of AIX, the replacement has to be done only after <string.h> is
37089         included, therefore not in config.h. stpncpy.h does the replacement,
37090         and stpncpy.c uses it.
37091
37092 2005-03-02  Bruno Haible  <bruno@clisp.org>
37093
37094         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
37095         stpncpy.c uses it.
37096
37097 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37098
37099         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
37100         The workaround isn't strictly needed for POSIX conformance, and
37101         it's too much of a pain to configure and maintain.  We'll ask
37102         people to fix their kernels instead.
37103         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
37104         (NANOSLEEP_BUG_WORKAROUND): Remove.
37105         (xnanosleep): Remove the workaround.
37106
37107 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37108
37109         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
37110         Reported by Derek Price.
37111         (Include): Add "timespec.h".
37112
37113         * modules/xnanosleep (Depends-on): Remove gethrxtime.
37114
37115 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
37116
37117         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
37118         to detect nanosleep bug.
37119
37120 2005-03-01  Bruno Haible  <bruno@clisp.org>
37121
37122         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
37123
37124 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
37125
37126         * modules/gethrxtime: New file.
37127         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
37128         (Depends-on): Add gethrxtime.
37129         (configure.ac): Add gl_XNANOSLEEP.
37130         (Makefile.am): Remove lib_SOURCES line.
37131
37132 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37133
37134         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
37135         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
37136
37137 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
37138
37139         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
37140         * lib/timespec.h (gettime): Return void, since it always
37141         succeeds now.  All uses changed.
37142         * lib/gettime.c (gettime) Likewise.
37143         [HAVE_NANOTIME]: Prefer nanotime.
37144         Assume gettimeofday succeeds, as POSIX requires.
37145         Assime time () succeeds, since other code already does.
37146         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
37147         (timespec_subtract): Remove.
37148         (NANOSLEEP_BUG_WORKAROUND): New constant.
37149         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
37150         things considerably.  Use it only on GNU/Linux hosts, since the
37151         workaround shouldn't be needed elsewhere.
37152
37153 2005-02-24  Bruno Haible  <bruno@clisp.org>
37154
37155         * modules/gettext (Files): Add m4/glibc2.m4.
37156
37157 2005-02-24  Bruno Haible  <bruno@clisp.org>
37158
37159         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
37160         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
37161         * m4/progtest.m4:
37162         Update from GNU gettext 0.14.2.
37163         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
37164
37165 2005-02-24  Bruno Haible  <bruno@clisp.org>
37166
37167         * lib/localcharset.c: Update from GNU gettext 0.14.2.
37168         * lib/config.charset: Update from GNU gettext 0.14.2.
37169
37170 2005-02-24  Bruno Haible  <bruno@clisp.org>
37171
37172         * lib/gettext.h: Update from GNU gettext 0.14.2.
37173
37174 2005-02-23  Simon Josefsson  <jas@extundo.com>
37175
37176         * m4/iconvme.m4: New file.
37177
37178 2005-02-23  Jim Meyering  <jim@meyering.net>
37179
37180         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
37181         change.
37182         Thanks to Bruno Haible for catching it.
37183
37184 2005-02-22  Simon Josefsson  <jas@extundo.com>
37185
37186         * modules/iconvme: New file.
37187
37188         * MODULES.html.sh: Add iconvme.
37189
37190 2005-02-22  Simon Josefsson  <jas@extundo.com>
37191
37192         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
37193
37194 2005-02-22  Simon Josefsson  <jas@extundo.com>
37195
37196         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
37197
37198 2005-02-22  Jim Meyering  <jim@meyering.net>
37199
37200         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
37201         s/ifndef/ifdef/.
37202
37203 2005-02-20  Neil Conway  <neilc@samurai.com>
37204
37205         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
37206         returned by OSX/Darwin if the specified buffer is not large
37207         enough for the hostname.
37208
37209 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37210
37211         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
37212         pass it to _help, otherwise the latter coredumps trying to
37213         dereference state.root_argp.
37214
37215 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37216
37217         * modules/chdir-long (Depends-on): Add memrchr.
37218         * modules/memrchr (Files): Add lib/memrchr.h.
37219         (Include): "memrchr.h".
37220
37221 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37222
37223         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
37224
37225 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
37226
37227         * lib/memrchr.h: New file.
37228         * lib/chdir-long.c: Include it.
37229         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
37230         Don't bother including stddef.h.
37231
37232 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
37233
37234         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
37235         inclusion.
37236         Include <sys/types.h>, for dev_t.
37237         (ME_DUMMY, ME_REMOTE): Move from here....
37238         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
37239         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
37240         Dmitry V. Levin.
37241         Include mountlist.h first, to test the interface.
37242
37243 2005-01-29  Bruno Haible  <bruno@clisp.org>
37244
37245         * lib/progname.c (program_name): Initialize.
37246         Needed when linking statically on MacOS X.
37247
37248 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37249
37250         Sync from coreutils.
37251         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
37252         (Depends-on): Add c-strtod.
37253         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
37254
37255 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
37256
37257         Sync from coreutils.
37258         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
37259
37260         Remove files that are specific to coreutils.
37261         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
37262
37263 2005-01-28  Bruno Haible  <bruno@clisp.org>
37264
37265         * modules/javacomp: New file.
37266         * MODULES.html.sh (Java): Add javacomp.
37267
37268 2005-01-28  Bruno Haible  <bruno@clisp.org>
37269
37270         * m4/javacomp.m4: New file, from GNU gettext.
37271
37272 2005-01-28  Bruno Haible  <bruno@clisp.org>
37273
37274         * lib/javacomp.sh.in: New file, from GNU gettext.
37275         * lib/javacomp.h: New file, from GNU gettext.
37276         * lib/javacomp.c: New file, from GNU gettext.
37277
37278 2005-01-26  Simon Josefsson  <jas@extundo.com>
37279
37280         * lib/gai_strerror.c: Use GPL in header.
37281
37282 2005-01-26  Bruno Haible  <bruno@clisp.org>
37283
37284         * modules/javaexec: New file.
37285         * MODULES.html.sh (Java): Add javaexec.
37286
37287 2005-01-26  Bruno Haible  <bruno@clisp.org>
37288
37289         * m4/javaexec.m4: New file, from GNU gettext.
37290
37291 2005-01-26  Bruno Haible  <bruno@clisp.org>
37292
37293         * lib/javaexec.sh.in: New file, from GNU gettext.
37294         * lib/javaexec.h: New file, from GNU gettext.
37295         * lib/javaexec.c: New file, from GNU gettext.
37296
37297 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37298
37299         * modules/lchown (Depends-on): Remove lchown.h
37300
37301 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37302
37303         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
37304         must be defined if the header file was not found, in order
37305         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
37306
37307 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37308
37309         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
37310         initializers for struct pentry_state.
37311         (__argp_error): Check return value of __asprintf
37312         (__argp_failure): Translate error message
37313
37314         * lib/argp-parse.c: Removed braces around the expansion of N_()
37315
37316 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
37317
37318         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
37319         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
37320         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
37321         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
37322         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
37323         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
37324         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
37325         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
37326         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
37327         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
37328         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
37329         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
37330         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
37331         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
37332         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
37333         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
37334         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
37335         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
37336         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
37337         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
37338         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
37339         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
37340         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
37341         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
37342         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
37343         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
37344         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
37345         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
37346         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
37347         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
37348         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
37349         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
37350         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
37351         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
37352         xstrtol.m4, xstrtoumax.m4, yesno.m4:
37353         Use an all-permissive copyright notice, recommended by RMS.
37354
37355 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
37356
37357         * modules/chdir-long (Depends-on): Remove mempcpy.
37358
37359 2005-01-21  Jim Meyering  <jim@meyering.net>
37360
37361         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
37362         same value as for Solaris 9.
37363
37364         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
37365         component length.  This included changing the parameter to be
37366         of type `char *' rather than `char const *'.
37367         * lib/chdir-long.h (chdir_long): Update prototype.
37368
37369         * lib/openat.c (fdopendir, fstatat): New functions.
37370         * lib/openat.h: Include headers required for use of DIR and struct
37371         stat.
37372         [AT_SYMLINK_NOFOLLOW]: Define.
37373         (fdopendir, fstatat): Add prototypes.
37374
37375 2005-01-21  Bruno Haible  <bruno@clisp.org>
37376
37377         * modules/classpath: New file.
37378         * MODULES.html.sh (Java): Add classpath.
37379
37380 2005-01-21  Bruno Haible  <bruno@clisp.org>
37381
37382         * lib/classpath.h: New file, from GNU gettext.
37383         * lib/classpath.c: New file, from GNU gettext.
37384
37385 2005-01-20  Simon Josefsson  <jas@extundo.com>
37386
37387         * modules/version-etc-fsf: New file.
37388
37389 2005-01-20  Simon Josefsson  <jas@extundo.com>
37390
37391         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
37392         * lib/version-etc.c: Remove version_etc_copyright.
37393         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
37394         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
37395
37396 2005-01-20  Simon Josefsson  <jas@extundo.com>
37397
37398         * lib/base64.h (isbase64): Add.
37399
37400         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
37401         using a unsigned prototype, don't inline.
37402         (base64_decode): Use it.
37403
37404 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37405
37406         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
37407         it.
37408
37409 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37410
37411         * lib/save-cwd.c (save_cwd): Remove code to support the case
37412         where fchdir is missing or flaky.
37413
37414 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
37415
37416         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
37417
37418 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
37419
37420         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
37421         AC_LIBSOURCES now does this.
37422         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
37423         with new ullong_max module.
37424
37425 2005-01-19  Bruno Haible  <bruno@clisp.org>
37426
37427         * modules/sh-quote: New file.
37428         * MODULES.html.sh (Executing programs): Add sh-quote.
37429
37430 2005-01-19  Bruno Haible  <bruno@clisp.org>
37431
37432         * lib/sh-quote.h: New file, from GNU gettext.
37433         * lib/sh-quote.c: New file, from GNU gettext.
37434
37435 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37436
37437         Merge from coreutils.
37438         * m4/ullong_max.m4: New file.
37439         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
37440         (gl_MACROS): Assume localeconv exists.
37441
37442 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37443
37444         Merge changes from coreutils, as described below in several
37445         changelogs dated today.
37446
37447         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
37448         (O_DIRECTORY): Remove; not needed here, since "." must be
37449         a directory.  All uses removed.
37450         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
37451         universal on Suns, and we also need to test for IRIX.
37452         Revamp code to use 'if' rather than '#if'.
37453         Avoid unnecessary comparison of cwd->desc to 0.
37454
37455         * lib/utimens.c (futimens): Robustify the previous patch, by checking
37456         for known valid error numbers rather than observed invalid ones.
37457
37458 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
37459
37460         * modules/ullong_max: New file.
37461
37462         * modules/chdir-long, modules/openat: New files.
37463         * modules/save-cwd (Depends-on): Depend on chdir-long.
37464         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
37465
37466 2005-01-18  Jim Meyering  <jim@meyering.net>
37467
37468         Merge from coreutils.
37469         * m4/chdir-long.m4, m4/openat.m4: New files.
37470         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
37471         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
37472         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
37473         is sane and DOES follow symlinks.  Besides, testing 20 different
37474         systems found no broken chown implementations.
37475         Prompted by a change in rsync's copy of this macro.
37476         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
37477
37478         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
37479
37480         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
37481         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
37482         NULL-means-set-to-current-time semantics.
37483         Remove temporary file immediately, rather than waiting
37484         for configure's at-exit trap code to do it.
37485
37486 2005-01-18  Jim Meyering  <jim@meyering.net>
37487
37488         * lib/version-etc.c (version_etc_copyright): Update copyright date.
37489
37490         * lib/utimens.c (futimens): Account for the fact that futimes
37491         can also fail with errno == ENOSYS or errno == ENOENT.
37492         Patch from Dmitry V. Levin.
37493
37494         Change the name of the robust chdir function from chdir to chdir_long.
37495         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
37496         (restore_cwd): Use chdir_long, not chdir.
37497         * lib/chdir-long.c: Renamed from chdir.c.
37498         * lib/chdir-long.h: Renamed from chdir.h.
37499         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
37500         Hurd.
37501
37502 2005-01-18  Bruno Haible  <bruno@clisp.org>
37503
37504         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
37505         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
37506         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
37507         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
37508         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
37509         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
37510         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
37511         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
37512         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
37513         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
37514         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
37515         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
37516         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
37517         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
37518         Use an all-permissive copyright notice, recommended by RMS.
37519
37520 2005-01-18  Bob Proulx  <bob@proulx.com>
37521
37522         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
37523         simplify offsetof() macro construct to avoid compile failure with
37524         native HP-UX 11.0 ANSI C compiler.
37525
37526 2005-01-17  Bruno Haible  <bruno@clisp.org>
37527
37528         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
37529         redundant because stpncpy.m4 takes care of it.
37530
37531 2005-01-17  Bruno Haible  <bruno@clisp.org>
37532
37533         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
37534
37535 2005-01-17  Bruno Haible  <bruno@clisp.org>
37536
37537         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
37538         used.
37539
37540 2005-01-17  Bruno Haible  <bruno@clisp.org>
37541
37542         * lib/fwriteerror.h (fwriteerror): Change specification to include
37543         fclose.
37544         * lib/fwriteerror.c: Include <stdbool.h>.
37545         (fwriteerror): At the end, close the file stream. Record whether
37546         stdout was already closed.
37547
37548 2005-01-17  Bruno Haible  <bruno@clisp.org>
37549
37550         * lib/execute.c (environ): Declare if needed.
37551         * lib/pipe.c (environ): Likewise.
37552         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
37553
37554 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37555
37556         * modules/argp: Depend on vsnprintf
37557
37558 2005-01-10  Jim Meyering  <jim@meyering.net>
37559
37560         * modules/closeout (Depends-on): Add atexit.
37561
37562 2005-01-06  Bruno Haible  <bruno@clisp.org>
37563
37564         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
37565
37566 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37567
37568         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
37569         definitions to be after all include files, to avoid collisions.
37570         Problem reported by Bob Proulx.
37571
37572 2005-01-04  Jim Meyering  <jim@meyering.net>
37573
37574         Changes imported from coreutils.
37575         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
37576         as the mkstemp template, use a temporary directory and an
37577         8.3-friendly template to avoid trouble on systems like DJGPP.
37578         Reported by Juan M. Guerrero via Stepan Kasal.
37579         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
37580         close. Remove the temporary directory right away, rather than waiting
37581         for configure's at-exit trap code to do it.
37582         Suggestion from Stepan Kasal.
37583
37584 2005-01-01  Simon Josefsson  <jas@extundo.com>
37585
37586         * gnulib-tool: Print #include directives when --import'ing.
37587
37588 2004-12-28  Simon Josefsson  <jas@extundo.com>
37589
37590         * tests/test-base64.c: Include required header files.  Remove
37591         unused variables.
37592
37593 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
37594
37595         * modules/error (Depends-on): Remove gettext.
37596
37597 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
37598
37599         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
37600         not needed.  This removes a dependency on the gettext module.
37601         [defined _LIBC]: Do not include <libintl.h>; not needed.
37602
37603 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
37604
37605         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
37606         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
37607
37608 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
37609
37610         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
37611         HAVE_DECL_STRTOLD.
37612
37613 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37614
37615         * modules/getdate (Depends-on): Remove alloca-opt.
37616
37617 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37618
37619         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
37620
37621 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
37622
37623         * lib/argp-parse.c: Include <stddef.h>.
37624         (alignof, alignto): New macros.
37625         (parser_init): Don't assume that void * is aligned sufficiently
37626         for struct option.
37627
37628         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
37629         need to extend the stack.
37630         (YYINITDEPTH): New macro, so that the initial stack isn't overly
37631         large.
37632
37633 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37634
37635         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
37636
37637 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
37638
37639         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
37640         (2004-10-24) change.  Apparently this was a false alarm.
37641
37642         * modules/getdate: Depend on alloca-opt, not alloca.
37643
37644 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
37645
37646         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
37647         Remove now-obsolete comment about AIX.
37648         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
37649         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
37650         (YYMAXDEPTH): New macro.
37651
37652 2004-12-18  Simon Josefsson  <jas@extundo.com>
37653
37654         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
37655
37656 2004-12-18  Bruno Haible  <bruno@clisp.org>
37657
37658         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
37659
37660 2004-12-18  Bruno Haible  <bruno@clisp.org>
37661
37662         * lib/fatal-signal.c (fatal_signals): Make non-const.
37663         (init_fatal_signals): New function.
37664         (uninstall_handlers, install_handlers): Ignore signals that were set to
37665         SIG_IGN.
37666         (at_fatal_signal): Call init_fatal_signals.
37667         (init_fatal_signal_set): Likewise. Ignore signals that were set to
37668         SIG_IGN.
37669         Reported by Paul Eggert.
37670
37671 2004-12-18  Bruno Haible  <bruno@clisp.org>
37672
37673         * doc/alloca.texi: New file.
37674         * doc/alloca-opt.texi: New file.
37675
37676 2004-12-17  Jim Meyering  <jim@meyering.net>
37677
37678         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
37679         Otherwise, install-sh could exit with improper exit status when
37680         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
37681
37682 2004-12-16  Simon Josefsson  <jas@extundo.com>
37683
37684         * tests/test-base64.c: Add license.
37685
37686 2004-12-15  Stepan Kasal  <address@hidden>
37687
37688         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
37689
37690 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
37691
37692         * modules/getcwd (Files): Add m4/d-ino.m4.
37693         Suggested by Mark D. Baushke.
37694
37695 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
37696
37697         * lib/getdate.y (textint): New member "negative".
37698         (time_zone_hhmm): New function.
37699         Expect 14 shift-reduce conflicts, not 13.
37700         (o_colon_minutes): New rule.
37701         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
37702         (yylex): Set the "negative" member of signed numbers.
37703
37704 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
37705
37706         * doc/getdate.texi (Time of day items, Time zone items):
37707         Describe new formats +00:00, UTC+00:00.
37708
37709 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37710
37711         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
37712         spurious "-l"s.  Problem reported by Stepan Kasal.
37713
37714 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
37715
37716         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
37717         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
37718
37719 2004-12-04  Simon Josefsson  <jas@extundo.com>
37720
37721         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
37722         Vandoorselaere <yoann@prelude-ids.org>.
37723
37724 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
37725
37726         Changes imported from coreutils.
37727         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
37728         exist.
37729         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
37730
37731 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
37732
37733         Changes imported from coreutils.
37734         * lib/hard-locale.c: Assume <locale.h> exists.
37735         Include "strdup.h".
37736         (GLIBC_VERSION): New macro.
37737         (hard_locale): Assume setlocale exists.
37738         Rewrite to avoid #ifdef.
37739         Use strdup rather than malloc + strcpy.
37740         * lib/human.c: Assume <locale.h> exists.
37741         (human_readable): Assume localeconv exists.
37742
37743 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
37744
37745         * modules/hard-locale (Depends-on): Add strdup.
37746
37747 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
37748
37749         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
37750         convert T2, not T.  (Imported from libc.)
37751
37752 2004-11-30  Simon Josefsson  <jas@extundo.com>
37753
37754         * modules/restrict (License): Change to LGPL.
37755
37756 2004-11-30  Simon Josefsson  <jas@extundo.com>
37757
37758         * m4/restrict.m4: Add copyright and copying conditions.
37759
37760 2004-11-30  Simon Josefsson  <jas@extundo.com>
37761
37762         * m4/base64.m4: New file.
37763
37764 2004-11-30  Simon Josefsson  <jas@extundo.com>
37765
37766         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
37767         base64.
37768
37769         * tests/test-base64.c: New file.
37770
37771         * modules/base64: New file.
37772
37773 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
37774
37775         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
37776         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
37777
37778         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
37779
37780 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
37781
37782         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
37783         (__getcwd.c): Don't restore errno; glibc doesn't.
37784         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
37785         first, falling back to our code only if its results look suspicious.
37786         Ensure that the resulting buffer is only as large as necessary.
37787
37788         * lib/readutmp.c: Include readutmp.h first.
37789         Include <errno.h>, since readutmp.h no longer does that.
37790         * lib/readutmp.h: Don't include <errno.h>,
37791         <sys/param.h>, <time.h>; not needed to establish interface.
37792         (errno): Remove decl.
37793         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
37794         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
37795         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
37796
37797 2004-11-28  Simon Josefsson  <jas@extundo.com>
37798
37799         * lib/base64.h, base64.c: New file.
37800
37801 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
37802
37803         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
37804
37805 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
37806
37807         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
37808         (Depends-on): Remove pathmax, same.  Add mempcpy.
37809         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
37810         (Makefile.am): Append getcwd.h to lib_SOURCES.
37811         (Include): Add getcwd.h.
37812         (Maintainer): Change from Jim Meyering to "all, glibc",
37813         since getdate now uses intended-for-glibc code.
37814         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
37815         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
37816
37817 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37818
37819         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
37820         HP's ANSI C compiler.
37821         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
37822         Declaring int functions causes warnings on some modern systems and
37823         shouldn't be needed to compile on ancient ones.
37824         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
37825         defined.
37826
37827         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
37828         with the following changes.
37829         (__set_errno): Parenthesize properly.
37830         Include <stdbool.h>.
37831         (MIN, MAX, MATCHING_INO): New macros.
37832         (__getcwd): Define with prototype, not K&R form.
37833         Use heuristics to allocate default buffer on stack if possible.
37834         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
37835         behavior, and to avoid the PATH_MAX limit when computing
37836         ../../../../...
37837         Use MATCHING_INO to compare inode number to file.
37838         Check for arithmetic overflow in size calculations.
37839         Fix bug in reallocation of dot array that caused getcwd to fail
37840         on directories nested deeper than 75.
37841         Be more careful about saving errno on error.
37842         Do not use realloc; use only free+malloc, as this is a bit
37843         more flexible and avoids a needless copy operation.
37844         Do not inspect st_dev and st_ino for symbolic links; POSIX
37845         doesn't specify the latter.
37846         Check for closedir errors.
37847         Avoid needless casts.
37848         Use "#ifdef weak_alias" around weak_alias, to be like other
37849         glibc code.
37850         The following changes to getcwd.c have effect only when used in
37851         gnulib; they have no effect inside glibc proper.
37852         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
37853         as alloca isn't used.
37854         (alloca, __alloca): Likewise.
37855         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
37856         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
37857         unconditionally, as gnulib assumes C89 or better.
37858         Do not include <sys/param.h>.
37859         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
37860         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
37861         better.
37862         (NULL) [!defined NULL]: Remove; we assume C89 or better.
37863         Include <dirent.h> in a way that is compatible with modern Autoconf.
37864         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
37865         New macros, if not already defined.
37866         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
37867         Use "_LIBC", not "defined _LIBC", for consistency.
37868         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
37869         a mempcpy module.
37870         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
37871         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
37872         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
37873         credit only to Jim Meyering and adjust the copyright dates.
37874         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
37875         <stdlib.h>, <unistd.h>, "pathmax.h".
37876         Instead, include "xgetcwd.h" (first) and "getcwd.h".
37877         (INITIAL_BUFFER_SIZE): Remove.
37878         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
37879
37880 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37881
37882         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
37883         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
37884         Use the _ONCE methods, for efficiency.
37885         Check for fcntl.h.  In test program, include <errno.h>
37886         and <fcntl.h> if available.  Remove old K&R cruft from
37887         test program.  Check for common errors in GNU/Linux,
37888         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
37889         don't do AC_LIBOBJ, as that's getcwd.m4's job.
37890         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
37891         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
37892         name accordingly.
37893         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
37894         accommodate new getcwd.c.
37895         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
37896         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
37897         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
37898         that's all we need now.
37899
37900 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37901
37902         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
37903         argp-parse.c depends on getopt internals, that means we should
37904         always use our getopt, to be on the safe side.
37905         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
37906         order not to spoil the result of an eventual previous invocation
37907         of gl_GETOPT_SUBSTITUTE.
37908
37909 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
37910
37911         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
37912         redefinition warnings. To avoid them, include the defines
37913         in `#if !defined __need_getopt ... #endif'. The only place
37914         where __getopt_argv_const is used is in definitions
37915         of getopt_long and getopt_long_only below, which are as well
37916         protected by `#ifndef __need_getopt'.
37917         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
37918         __need_getopt after including <stdio.h> and <unistd.h> These
37919         headers might have defined it.
37920
37921 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
37922
37923         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
37924
37925 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
37926
37927         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
37928         (futimens): New function, which uses futimes if available.
37929         (futimens, utimens): Support timespec==NULL, with same semantics
37930         as utime and utimens.
37931         * lib/utimens.h (futimens): New decl.
37932
37933 2004-11-23  Jim Meyering  <jim@meyering.net>
37934
37935         * lib/getopt_.h: Remove trailing blanks.
37936
37937 2004-11-23  Jim Meyering  <jim@meyering.net>
37938
37939         * lib/__fpending.c: Add comment.
37940
37941 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
37942
37943         * modules/canonicalize (Depends-on): Add xreadlink.
37944         Problem reported by James Youngman.
37945
37946 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
37947
37948         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
37949         New macros.
37950         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
37951         optopt): Use them instead of invoking ## directly; otherwise, the
37952         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
37953
37954 2004-11-19  Bruno Haible  <bruno@clisp.org>
37955
37956         * lib/strtok_r.c: Move comments from here...
37957         * lib/strtok_r.h: ... to here.
37958
37959 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
37960
37961         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
37962         implementations that mishandle size_t overflow.
37963
37964 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
37965
37966         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
37967         might fail.  Problem reported by Yoann Vandoorselaere.
37968         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
37969         implementations that mishandle size_t overflow.
37970
37971 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37972
37973         * modules/canon-host (Depends-on): Add strdup.
37974
37975 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37976
37977         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
37978
37979 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
37980
37981         * lib/canon-host.c: Include "strdup.h".
37982         (canon_host): Use getaddrinfo if available, so that IPv6 works.
37983         Use strdup instead of malloc/strcpy to duplicate strings.
37984
37985         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
37986         (human_space_before_unit): New constant.
37987         * lib/human.c (human_readable): Support it.
37988
37989         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
37990         (xgetcwd): Set errno correctly when failing.
37991         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
37992         the failure is actually due to a PATH_MAX problem.
37993
37994         Further getopt changes to make it more likely that glibc will
37995         buy the changes back.
37996         * lib/getopt.c (POSIXLY_CORRECT): New constant.
37997         (getopt): Use it, so to preserve glibc semantic
37998         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
37999         when compiling for libc.
38000         * lib/getopt_.h (__getopt_argv_const): Bring it back.
38001         (getopt_long, getopt_long_only): Use it.
38002
38003         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38004         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
38005         (getopt): Argv is now char * const *, as per standard.
38006         (_getopt_internal_r, _getopt_internal): Argv is now char **,
38007         not char *__getopt_argv_const *.
38008         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38009         _getopt_long_only_r): Likewise.
38010         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
38011         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38012         _getopt_long_r, _getopt_long_only_r): Likewise.
38013         * lib/getopt_.h (__getopt_argv_const): Remove.
38014         (getopt): Argv is now char * const *, as per standard.
38015
38016         * lib/getdate.y (tORDINAL): New token.
38017         (day, relunit): Allow it for relative times.
38018         (relative_time_table): Use tORDINAL for ordinals.
38019
38020 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
38021
38022         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
38023         Document that "second" isn't allowed as an ordinal number.
38024
38025 2004-11-16  Jim Meyering  <jim@meyering.net>
38026
38027         * modules/closeout (Depends-on): Add fpending.
38028
38029 2004-11-15  Jim Meyering  <jim@meyering.net>
38030
38031         * lib/closeout.c: Include "__fpending.h" once again.
38032         Include <stdbool.h>.
38033         (close_stdout): Don't fail just because stdout was closed initially,
38034         since some programs don't write to stdout in the normal course of
38035         operation (other than --version and --help), and we don't want this
38036         function to make e.g. `touch file >&-' fail.
38037         But do fail if it was closed and someone has tried to write to it.
38038         E.g., `printf foo >&-' must fail.
38039
38040 2004-11-13  Jim Meyering  <jim@meyering.net>
38041
38042         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
38043
38044 2004-11-12  Simon Josefsson  <jas@extundo.com>
38045
38046         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
38047         small doc fix is still pending.
38048
38049 2004-11-11  Simon Josefsson  <jas@extundo.com>
38050
38051         * modules/strtok_r: New file.
38052
38053         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38054         strtok_r.
38055
38056 2004-11-11  Simon Josefsson  <jas@extundo.com>
38057
38058         * m4/strtok_r.m4: New file.
38059
38060         * m4/getopt.m4: Replace opterr.
38061
38062 2004-11-11  Simon Josefsson  <jas@extundo.com>
38063
38064         * lib/strtok_r.h, strtok_r.c: New file.
38065
38066 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38067
38068         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
38069         of replacing opterr, getopt, etc.  This should handle the
38070         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
38071
38072 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
38073
38074         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
38075         we can stop lying to compilers about the constness of argv when we
38076         are compiled outside glibc.
38077         (getopt, getopt_long, getopt_long_only): Use it.
38078         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
38079         _getopt_internal, getopt): Likewise.
38080         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
38081         _getopt_long_only_r): Likewise.
38082         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
38083         _getopt_long_r, _getopt_long_only_r): Likewise.
38084
38085         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
38086         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
38087         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
38088         the other external symbols.
38089         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
38090         declaration, since the above renaming now works around collisions.
38091
38092 2004-11-11  Jim Meyering  <jim@meyering.net>
38093
38094         * lib/linebreak.c: Remove trailing blanks.
38095         * lib/alloca_.h: Likewise.
38096         * lib/acosl.c: Likewise.
38097         * lib/euidaccess.c: Likewise.
38098         * lib/allocsa.h: Likewise.
38099
38100 2004-11-10  Simon Josefsson  <jas@extundo.com>
38101
38102         * m4/getaddrinfo.m4: New file.
38103
38104 2004-11-10  Simon Josefsson  <jas@extundo.com>
38105
38106         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
38107
38108 2004-11-10  Simon Josefsson  <jas@extundo.com>
38109
38110         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38111         getaddrinfo.
38112
38113         * modules/getaddrinfo: New file.
38114
38115 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38116
38117         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
38118
38119 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
38120
38121         * lib/mktime.c (SHR): New macro, which is a portable
38122         substitute for >> that should work even on Crays.
38123         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
38124         Problem reported by Mark D. Baushke in
38125         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
38126         * lib/getdate.y (SHR): Likewise.
38127         (tm_diff): Use it.
38128         * lib/strftime.c (SHR): Likewise.
38129         (tm_diff): Use it.
38130         * lib/quotearg.c (struct quoting_options): Use unsigned int for
38131         quote_these_too, so that right shifts are well defined.  All uses
38132         changed.
38133
38134 2004-11-10  Jim Meyering  <jim@meyering.net>
38135
38136         Ensure that no close failure goes unreported.
38137         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
38138         return early when it seems there's nothing to flush.
38139         Don't include __fpending.h.
38140
38141 2004-11-10  Jim Meyering  <jim@meyering.net>
38142
38143         * modules/closeout (Depends-on): Remove fpending.
38144
38145 2004-11-10  Jim Meyering  <jim@meyering.net>
38146
38147         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
38148
38149 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38150
38151         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
38152         gl_FUNC_STRFTIME.
38153         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
38154         and AC_REQUIRE when possible, to avoid duplicate checks.
38155         Check for <wchar.h>.
38156
38157 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
38158
38159         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
38160
38161 2004-11-09  Bruno Haible  <bruno@clisp.org>
38162
38163         * m4/sockpfaf.m4: New file.
38164
38165 2004-11-05  Bruno Haible  <bruno@clisp.org>
38166
38167         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
38168         Reported by Mark D. Baushke <mdb@cvshome.org>.
38169
38170 2004-11-04  Bruno Haible  <bruno@clisp.org>
38171
38172         2004-09-11  Bruno Haible  <bruno@clisp.org>
38173                 * allocsa.valgrind: New file.
38174         2004-02-06  Bruno Haible  <bruno@clisp.org>
38175                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
38176                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
38177                 Reported by Christopher Seip <chris.seip@hp.com>.
38178
38179 2004-11-04  Bruno Haible  <bruno@clisp.org>
38180
38181         * modules/allocsa (Files): Add lib/allocsa.valgrind.
38182         (Makefile.am): Distribute it.
38183
38184 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
38185
38186         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
38187         with errno == ERANGE if the buffer is too small.
38188         Problem reported by Mark D. Baushke.
38189
38190 2004-11-03  Albert Chin  <china@thewrittenword.com>
38191             Paul Eggert  <eggert@cs.ucla.edu>
38192
38193         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
38194         equivalent, substitute $ac_type for equivalent type rather than
38195         blindly using uint32_t *always* which won't work if uint32_t is not
38196         available.  Define _UINT32_T to work around typedef of uint32_t if
38197         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
38198         2.5.1.
38199
38200 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38201
38202         * m4/jm-macros.m4: Sync from coreutils.
38203         (gl_MACROS): Check for mbrlen, for pathchk.
38204         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
38205
38206 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38207
38208         * lib/xreadlink.c (MAXSIZE): New macro.
38209         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
38210         size does not exceed MAXSIZE.  Avoid cast.
38211         As suggested by Mark D. Baushke in
38212         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
38213         if readlink fails with buffer size just under MAXSIZE, try again
38214         with MAXSIZE.
38215
38216 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
38217
38218         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
38219
38220 2004-11-02  Derek R. Price  <derek@ximbiot.com>
38221         and  Paul Eggert  <eggert@cs.ucla.edu>
38222
38223         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
38224         (get_date): Overparenthesize to avoid GCC warning.
38225
38226 2004-11-02  Bruno Haible  <bruno@clisp.org>
38227
38228         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
38229         returns void.
38230
38231 2004-11-02  Bruno Haible  <bruno@clisp.org>
38232
38233         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
38234         function returns void.
38235
38236 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38237
38238         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
38239         fflush_unlocked, flockfile, funlockfile, funlockfile,
38240         fputs_unlocked, putc_unlocked.
38241
38242 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
38243
38244         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38245         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
38246         already declared.
38247
38248 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38249
38250         * modules/getdate (Files): Add doc/getdate.texi.
38251         (Depends-on): Add setenv, xalloc.
38252
38253 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38254
38255         * lib/getdate.y: Add support for TZ="foo" within a date string.
38256         Fix some bugs near time_t boundaries.  Reject dates with
38257         out-of-range components, e.g., "Sept 31".
38258         Include <stdlib.h>, "setenv.h", "xalloc.h".
38259         (ISDIGIT_LOCALE): Remove; unused.
38260         Note that the TZ and time functions used here are not reentrant.
38261         (mktime_ok, get_tz): New functions.
38262         (TZBUFSIZE): New constant.
38263         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
38264         This requires that we sometimes generate our own TZ="XXX..." setting.
38265
38266 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
38267
38268         * doc/getdate.texi: New file, from coreutils with modifications for
38269         the new TZ parsing.
38270
38271 2004-10-27  Derek R. Price  <derek@ximbiot.com>
38272
38273         * lib/mktime.c (not_equal_tm): Remove redundant check.
38274
38275 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38276
38277         * modules/regex (lib_SOURCES): Add regex.c.
38278         Reported by James Youngman in
38279         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
38280
38281 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
38282
38283         * lib/getdate.y: Use Bison 1.875 features, and some minor
38284         code cleanups.  This change does not affect semantics.
38285         Don't include <stdlib.h>; no longer needed.
38286         Don't include unlocked-io.h; only the "#if TEST" code uses
38287         stdio, and performance isn't crucial there.
38288         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
38289         Bison 1.875 features as described below.
38290         All uses of "PC." replaced by "pc->".
38291         (YYSTYPE): Add a forward declaration.
38292         (yylex, yyerror): Use full prototypes in forward decls.
38293         Use "%pure-parser" rather than obsolescent "%pure_parser".
38294         Use %parse-param and %lex-param instead of obsolescent
38295         YYPARSE_PARAM and YYLEX_PARAM.
38296         (meridian_table, month_and_day_table, time_units_table,
38297         relative_time_table, time_zone_table, military_table,
38298         lookup_zone, lookup_word, get_date):
38299         Use NULL instead of 0 where appropriate.
38300         (to_hour): Avoid abort (), to avoid a dependency on
38301         stdlib.h.
38302         (yyerror, yylex): Now accepts parser_control * arg.
38303         (main) [TEST]: Use '\0' rather than 0 for char.
38304
38305 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38306
38307         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
38308
38309 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
38310
38311         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
38312         It's now the caller's responsibility to handle the case where
38313         !HAVE_GETPAGESIZE && !defined getpagesize.
38314
38315         * lib/mktime.c (leapyear): Arg is long int, not int.
38316
38317 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
38318
38319         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
38320
38321 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
38322
38323         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
38324         missing.  Problem reported by James Youngman.
38325
38326 2004-10-16  Simon Josefsson  <jas@extundo.com>
38327
38328         * gnulib-tool: Fix comments.  Fix parse problem.
38329         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
38330
38331 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
38332
38333         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
38334         implementation of getopt_long.  Problem reported by Alexander Taler in:
38335         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
38336
38337 2004-10-15  Bruno Haible  <bruno@clisp.org>
38338
38339         * gnulib-tool: Untabify. Initialize supplied_libname.
38340         (func_usage): More homogenous output.
38341         (func_modules_transitive_closure, func_modules_to_filelist,
38342         func_emit_lib_Makefile_am): New functions.
38343         (func_import): New function, extracted from big case statement. Use
38344         func_get_license, func_modules_transitive_closure,
38345         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
38346         opt_lgpl. Don't use test -a, as it's not portable.
38347         (func_create_testdir): Use func_modules_transitive_closure,
38348         func_modules_to_filelist, func_emit_lib_Makefile_am.
38349
38350 2004-10-15  Bruno Haible  <bruno@clisp.org>
38351
38352         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
38353
38354 2004-10-15  Bruno Haible  <bruno@clisp.org>
38355
38356         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
38357         the portions belonging to each module.
38358         Suggested by Derek Robert Price <derek@ximbiot.com>.
38359
38360 2004-10-12  Simon Josefsson  <jas@extundo.com>
38361
38362         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
38363         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
38364         to real functions.
38365
38366 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38367
38368         * modules/vsnprintf: New file.
38369
38370 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38371
38372         * m4/vsnprintf.m4: New file.
38373
38374 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38375
38376         * lib/vsnprintf.h: New file.
38377         * lib/vsnprintf.c: New file.
38378
38379 2004-10-11  Bruno Haible  <bruno@clisp.org>
38380
38381         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
38382         vsnprintf.
38383
38384 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38385
38386         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
38387
38388 2004-10-07  Bruno Haible  <bruno@clisp.org>
38389
38390         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
38391         fits into the provided buffer.
38392
38393 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38394
38395         * lib/diacrit.c, diacrit.h: Add GPL notice.
38396
38397         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
38398         notice.
38399         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
38400         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
38401         This avoids a potential constant-folding bug.
38402
38403 2004-10-05  Bruno Haible  <bruno@clisp.org>
38404
38405         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
38406         for the declaration of strsep.
38407
38408 2004-10-05  Bruno Haible  <bruno@clisp.org>
38409
38410         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
38411
38412 2004-10-04  Simon Josefsson  <jas@extundo.com>
38413
38414         * modules/memmem: New file.
38415         * tests/test-memmem.c: New file.
38416         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
38417
38418 2004-10-04  Simon Josefsson  <jas@extundo.com>
38419
38420         * m4/memmem.m4: New file.
38421
38422 2004-10-04  Simon Josefsson  <jas@extundo.com>
38423
38424         * lib/memmem.h: New file.
38425         * lib/memmem.c: New file, taken from glibc.
38426
38427 2004-10-04  Simon Josefsson  <jas@extundo.com>
38428
38429         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
38430         '#ifdef USE_UNLOCKED_IO'.
38431
38432 2004-10-04  Simon Josefsson  <jas@extundo.com>
38433
38434         * config/srclist.txt: Add memmem from glibc.
38435
38436 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38437
38438         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
38439
38440         * modules/argmatch, modules/argp, modules/closeout, modules/error,
38441         modules/exclude, modules/getdate, modules/getline,
38442         modules/getndelim2, modules/getpass, modules/getpass-gnu,
38443         modules/getusershell, modules/linebuffer, modules/md5,
38444         modules/mountlist, modules/posixtm, modules/readtokens,
38445         modules/readutmp, modules/regex, modules/sha1,
38446         modules/version-etc, modules/yesno:
38447         Remove dependency on unlocked-io.
38448
38449 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38450
38451         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
38452
38453         * m4/unlocked-io.m4: Add copyright notice.
38454         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
38455
38456 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38457
38458         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
38459         * lib/xmalloc.c (xmemdup): Likewise.
38460         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
38461         XFREE): Remove these long-obsolescent macros.
38462         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
38463         * lib/xstrdup.c: Remove.
38464
38465         * lib/regex.c (re_comp): Cast gettext return value to char *,
38466         Problem reported by Martin Neitzel via Mark D. Baushke.
38467
38468 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
38469
38470         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
38471         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
38472         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
38473         regex.c, sha1.c, version-etc.c, yesno.c:
38474         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
38475         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
38476         the includer's responsibility.
38477
38478         Sync from coreutils.
38479
38480         * lib/modechange.c (mode_compile): Don't decrement a pointer that
38481         points to the start of a string, as the C Standard says the
38482         resulting behavior is undefined.
38483
38484         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
38485         simple -> simple_backups, numbered_existing ->
38486         numbered_existing_backups, numbered -> numbered_backups
38487         to avoid shadowing problems.  All uses changed.
38488         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
38489         * lib/backupfile.c (check_extension, numbered_backup):
38490         Rename locals to avoid shadowing 'basename'.
38491         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
38492         once.
38493
38494         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
38495         * lib/.cvsignore: Add getopt.h.
38496
38497 2004-10-04  Bruno Haible  <bruno@clisp.org>
38498
38499         * modules/README: New file.
38500         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
38501         not a module.
38502
38503 2004-10-02  Jim Meyering  <jim@meyering.net>
38504
38505         * lib/dirfd.h, getpagesize.h: Add copyright notice.
38506
38507 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38508
38509         * modules/strsep: New file.
38510
38511 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38512
38513         * m4/strsep.m4: New file.
38514
38515 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
38516
38517         * lib/strsep.h: New file.
38518         * lib/strsep.c: New file.
38519
38520 2004-10-01  Simon Josefsson  <jas@extundo.com>
38521
38522         * lib/snprintf.c (snprintf): Handle size==0.
38523
38524 2004-10-01  Simon Josefsson  <jas@extundo.com>
38525             Bruno Haible  <bruno@clisp.org>
38526
38527         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
38528         (snprintf): Declare 'args'.
38529
38530 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
38531
38532         * lib/snprintf.c: Remove comments as to why each header is needed.
38533
38534 2004-10-01  Bruno Haible  <bruno@clisp.org>
38535
38536         * MODULES.html.sh: Add strsep.
38537
38538 2004-09-30  Simon Josefsson  <jas@extundo.com>
38539
38540         * modules/snprintf: New file.
38541
38542 2004-09-30  Simon Josefsson  <jas@extundo.com>
38543
38544         * m4/snprintf.m4: New file.
38545
38546 2004-09-30  Simon Josefsson  <jas@extundo.com>
38547
38548         * lib/snprintf.h, lib/snprintf.c: New files.
38549
38550 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
38551
38552         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
38553         (hol_entry_help): Never translate an empty string.
38554         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
38555         * lib/argp.h (OPTION_NO_TRANS): New option.
38556
38557 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38558
38559         * modules/argp (Maintainer): Replace Simon Josefsson
38560         by Sergey Poznyakoff.
38561
38562 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38563
38564         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
38565         changes merged back into glibc.
38566
38567 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
38568
38569         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
38570
38571 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
38572
38573         * lib/xvasprintf.c: Include xalloc.h.
38574         (xvasprintf): Use xalloc_die, not xmalloc_die.
38575
38576 2004-09-29  Bruno Haible  <bruno@clisp.org>
38577
38578         * modules/alloca-opt: New file, derived from modules/alloca.
38579         * modules/allocsa: Depend on alloca-opt instead of alloca.
38580         * modules/setenv: Likewise.
38581         * modules/vasnprintf: Likewise.
38582         * MODULES.html.sh: Add alloca-opt.
38583
38584 2004-09-28  Simon Josefsson  <jas@extundo.com>
38585
38586         * gnulib-tool: New parameter --lgpl, to asseert that modules are
38587         LGPL, and to replace license template from GPL to LGPL.
38588
38589 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
38590
38591         * modules/dummy: Change license to LGPL.
38592
38593 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
38594
38595         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
38596
38597 2004-09-24  Simon Josefsson  <jas@extundo.com>
38598
38599         * modules/minmax (License): Change from GPL to LGPL.
38600
38601 2004-09-23  Simon Josefsson  <jas@extundo.com>
38602
38603         * gnulib-tool (--import): Typo.
38604
38605 2004-09-23  Simon Josefsson  <jas@extundo.com>
38606
38607         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
38608
38609 2004-09-22  Bruno Haible  <bruno@clisp.org>
38610
38611         * modules/*: Add 'License' field.
38612         * gnulib-tool: Accept --extract-license option.
38613         (func_get_license): New function.
38614
38615 2004-09-21  Bruno Haible  <bruno@clisp.org>
38616
38617         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
38618         Reported by Simon Josefsson.
38619
38620 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
38621
38622         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
38623         gl_AC_TYPE_LONG_LONG.
38624
38625 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
38626
38627         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
38628
38629 2004-09-18  Simon Josefsson  <jas@extundo.com>
38630         and  Paul Eggert  <eggert@cs.ucla.edu>
38631
38632         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
38633         calls with autoreconf.  Define GL_LIB.
38634
38635 2004-09-14  Karl Berry  <karl@gnu.org>
38636
38637         * config/srclist.txt: unsync setenv.c, sigh.
38638
38639 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
38640
38641         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
38642         Problem reported by Bruno Haible in:
38643         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
38644
38645 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
38646
38647         * config/srclist.txt: Comment out argp-pvh.c.
38648
38649 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
38650
38651         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
38652         in case some system header has #define'd it.  Problem reported by
38653         Soeren D. Schulze in
38654         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
38655
38656 2004-09-09  Karl Berry  <karl@gnu.org>
38657
38658         * regex.[ch]: delete from the root.  These were supposed to be
38659                 synced with emacs cvs, but this has not happened for about
38660                 a year, and anyway nothing else uses emacs regex.[ch].
38661                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
38662                 lib/regex[.ch] is untouched.
38663
38664 2004-09-09  Bruno Haible  <bruno@clisp.org>
38665
38666         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
38667
38668 2004-09-09  Bruno Haible  <bruno@clisp.org>
38669
38670         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
38671         modifications.
38672         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
38673
38674 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
38675
38676         * modules/xvasprintf: New file.
38677         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
38678
38679 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
38680
38681         * lib/xvasprintf.h: New file.
38682         * lib/xvasprintf.c: New file.
38683         * lib/xasprintf.c: New file.
38684
38685 2004-09-08  Bruno Haible  <bruno@clisp.org>
38686
38687         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
38688
38689 2004-09-08  Bruno Haible  <bruno@clisp.org>
38690
38691         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
38692         length is > INT_MAX.
38693         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
38694         more.
38695
38696 2004-09-08  Bruno Haible  <bruno@clisp.org>
38697
38698         * lib/stdint_.h: New file, taken from GNU clisp.
38699
38700 2004-09-08  Bruno Haible  <bruno@clisp.org>
38701             Oskar Liljeblad  <oskar@osk.mine.nu>
38702
38703         * modules/stdint: New file.
38704         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
38705
38706 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38707
38708         Import from coreutils.
38709         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
38710         strings on unbounded length.  alloca's performance benefits aren't
38711         that important here.
38712         (V_STRDUP): Remove.
38713         (parse_with_separator): New function, with most of the internals
38714         of the old parse_user_spec.  Allow user to omit both user and group,
38715         for compatibility with FreeBSD.
38716         Clone only the user name, not the entire spec.
38717         Do not set *uid, *gid unless entirely successful.
38718         Avoid memory leak in some failing cases.
38719         Fix regression for USER.GROUP reported by Dmitry V. Levin in
38720         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
38721         (parse_user_spec): Rewrite to use parse_with_separator.
38722
38723 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38724
38725         * modules/userspec: Don't depend on alloca.
38726
38727 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38728
38729         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
38730
38731 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
38732
38733         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
38734         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
38735         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
38736
38737 2004-08-16  Simon Josefsson  <jas@extundo.com>
38738
38739         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
38740         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
38741         Add --dry-run for --import.
38742         Let user provided command line parameters override configure.ac
38743         settings.
38744
38745 2004-08-12  Simon Josefsson  <jas@extundo.com>
38746
38747         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
38748         as discussed with Paul Eggert in threads rooted at
38749         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
38750         and
38751         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
38752         Before, the test was empty, and relied on ELIDE_CODE in source
38753         code.)
38754         (gl_PREREQ_GETOPT): New macro.
38755         (gl_GETOPT): Use them.
38756
38757 2004-08-12  Simon Josefsson  <jas@extundo.com>
38758
38759         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
38760         * lib/getopt_.h: Renamed from getopt.h.
38761
38762 2004-08-12  Simon Josefsson  <jas@extundo.com>
38763
38764         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
38765         Change default library name from libfoo to libgnu.
38766         Now, if you have a configure.ac that says:
38767                 gl_SOURCE_BASE(gl)
38768                 gl_M4_BASE(gl/m4)
38769                 gl_MODULES(error getopt etcetera)
38770                 gl_INIT
38771         you can import all you need by running:
38772                 ../gnulib/gnulib-tool --import
38773
38774         * modules/getopt (Files): Rename getopt.h to getopt_.h.
38775         (Makefile.am): Rewrite, use logic from argz.
38776         (Include): Use <getopt.h> instead of "getopt.h".
38777
38778 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
38779
38780         * modules/argp (Files): Add m4/unlocked-io.m4.
38781         (Depends-on): Add extensions.
38782
38783 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
38784
38785         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
38786         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
38787         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
38788         Check for program_invocation_name, program_invocation_short_name,
38789         flockfile, funlockfile, features.h, _getopt_long_only_r.
38790
38791 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
38792
38793         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
38794         its complicated substitute.
38795         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
38796         and program_invocation_name.
38797         (__argp_basename) [!_LIBC]: Remove; the only use was
38798         replaced by its body.
38799         (__argp_short_program_name): Change condition from
38800         !defined __argp_short_program_name to
38801         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
38802         to match argp-namefrob.h.
38803         (__argp_failure): Don't assume strerror_r returns char *.
38804         * lib/argp-parse.c (N_): Define unconditionally.
38805         (argp_default_options): Fill out initializers with 0 to avoid
38806         gcc warnings.
38807
38808 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
38809
38810         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
38811         getopt1.c.
38812
38813 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
38814
38815         Merge from coreutils.
38816
38817         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
38818
38819         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
38820         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
38821
38822 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
38823
38824         Merge from coreutils.
38825
38826         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
38827         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
38828         for Reliant Unix 5.43.
38829
38830         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
38831         (union fooround): Use uintmax_t, not long int.
38832         The rest is a merge from libc:
38833         [defined _LIBC]: Include <shlib-compat.h>.
38834         (_obstack) [defined _LIBC]: Remove after 2.3.4.
38835
38836         * lib/settime.c (settime): Recode to avoid warning with
38837         Sun Forte C 6U2.
38838
38839         * lib/strverscmp.c: Convert to UTF-8.
38840
38841 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
38842
38843         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
38844         m4/uintmax_t.m4.
38845
38846 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38847
38848         * modules/xalloc-die: New file.
38849         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
38850
38851         * modules/md5 (Files): Add m4/uint32_t.m4.
38852         * modules/sha1: Renamed from modules/sha.
38853         (Files):
38854         Rename lib/sha.h to lib/sha1.h.
38855         Rename lib/sha.c to lib/sha1.c.
38856         Rename m4/sha.m4 to m4/sha1.m4.
38857         (lib_SOURCES): Likewise.
38858         (configure.ac): Rename gl_SHA to gl_SHA1.
38859         (Include): sha.h -> sha1.h.
38860
38861 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38862
38863         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
38864         * m4/sha1.m4: Renamed from sha.m4.
38865         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
38866
38867 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
38868
38869         * lib/obstack.h (obstack_empty_p):
38870         Don't assume that chunk->contents is suitably aligned.
38871         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
38872         Likewise. Problem reported by Benno in
38873         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
38874
38875         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
38876         readable.  This could be improved further but it'd take some work.
38877
38878 2004-08-08  Simon Josefsson  <jas@extundo.com>
38879
38880         * modules/xgethostname (Depends-on): Remove exit and error (not
38881         used).
38882
38883         * modules/getpass-gnu: Add getpass.h.
38884         (Depends-on): Add stdbool.
38885         * modules/getpass: Add getpass.h.
38886
38887 2004-08-08  Simon Josefsson  <jas@extundo.com>
38888
38889         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
38890         Check getpass declaration.
38891
38892 2004-08-08  Simon Josefsson  <jas@extundo.com>
38893
38894         * lib/xgethostname.c: Don't include error.h (not used).
38895
38896         * lib/getpass.h: Add.
38897         * lib/getpass.c: Include getpass.h first.
38898
38899 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
38900
38901         * lib/xalloc-die.c: New file.
38902         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
38903         All uses removed.
38904         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
38905         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
38906         xalloc-die.c.
38907         (_, N_, xalloc_die): Move to xalloc-die.c.
38908         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
38909         so that we needn't mess with xalloc_msg_memory_exhausted.
38910
38911         * lib/sha1.h: Renamed from sha.h.
38912         (SHA1_H): Renamed from _SHA_H.
38913         (sha1_ctx): Renamed from sha_ctx.
38914         (sha1_init_ctx): Renamed from sha_init_ctx.
38915         (sha1_process_block): Renamed from sha_process_block.
38916         (sha1_process_bytes): Renamed from sha_process_bytes.
38917         (sha1_finish_ctx): Renamed from sha_finish_ctx.
38918         (sha1_read_ctx): Renamed from sha_read_ctx.
38919         (sha1_stream): Renamed from sha_stream.
38920         (sha1_buffer): Renamed from sha_buffer.
38921         * lib/sha1.c: Likewise; renamed from sha.c.
38922         Do not include <sys/types.h>.
38923         Include <stddef.h> rather than <stdlib.h>.
38924
38925 2004-08-08  Bruno Haible  <bruno@clisp.org>
38926
38927         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
38928         FILESYSTEM_PREFIX_LEN.
38929         * lib/progreloc.c: Likewise.
38930         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
38931
38932 2004-08-06  Simon Josefsson  <jas@extundo.com>
38933
38934         * modules/progname (Depends-on): Don't depend on stdbool.
38935
38936 2004-08-06  Simon Josefsson  <jas@extundo.com>
38937
38938         * modules/getsubopt: New file.
38939         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38940         getsubopt.
38941
38942 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38943
38944         More merge from coreutils.
38945
38946         * m4/utimens.m4, m4/utimecmp.m4: New files.
38947         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
38948         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
38949         prereq.m4, sha.m4: Import changes from coreutils.
38950
38951 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38952
38953         More merge from coreutils.
38954         * modules/raise, modules/readtokens0, modules/utimens:
38955         * modules/utimecmp, module/xnanosleep: New files.
38956         * modules/strftime: Add lib/strftime.h.
38957         Change include from <time.h> to "strftime.h".
38958         * modules/yesno: Add lib/yesno.h.
38959         * modules/backupfile: Remove lib/addext.c.
38960         * modules/euidaccess: Add stat-macros.h.
38961         * modules/canonicalize, modules/euidaccess,
38962         modules/filemode, modules/lchown, modules/makepath,
38963         modules/rmdir, modules/stat: Likewise.
38964
38965 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
38966
38967         Merge from tar.
38968         * lib/argp-help.c (make_hol, hol_append): Don't assume that
38969         SIZE_MAX is a valid preprocessor constant.
38970         (__argp_basename): Change from "#ifndef _LIBC"
38971         to "#ifndef __argp_short_program_name", so that
38972         we don't compile these functions for tar.
38973
38974         More merges from coreutils.
38975         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
38976         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
38977         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
38978         * lib/addext.c: Remove; no longer needed.
38979         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
38980         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
38981         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
38982         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
38983         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
38984         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
38985         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
38986         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
38987         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
38988         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
38989         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
38990         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
38991         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
38992         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
38993         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
38994         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
38995         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
38996         Import changes from coreutils.
38997
38998 2004-08-05  Simon Josefsson  <jas@extundo.com>
38999
39000         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
39001
39002 2004-08-05  Simon Josefsson  <jas@extundo.com>
39003
39004         * m4/getsubopt.m4: New file.
39005
39006 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39007
39008         Merge from coreutils.
39009
39010         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
39011         * m4/getcwd-path-max.m4: New files.
39012
39013         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
39014         FILESYSTEM_PREFIX_LEN ->
39015         FILE_SYSTEM_PREFIX_LEN.
39016         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
39017         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
39018         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
39019         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
39020
39021         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
39022         prerequisite modules now handle the DOS stuff.
39023         Don't check for unistd.h.
39024
39025 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39026
39027         Merge from coreutils.
39028
39029         * lib/.gdb-history: Remove; this doesn't belong here.
39030
39031         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
39032         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
39033         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
39034         * lib/getcwd.c: New files.
39035
39036         * lib/dirname.h: Include <stdbool.h>.
39037         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
39038         for consistency with POSIX terminology.  All uses changed.
39039         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
39040         (strip_trailing_slashes): Use bool for booleans.
39041         * lib/stripslash.c (strip_trailing_slashes): Likewise.
39042
39043         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
39044         sometimes returns a positive errno value even when it succeeds.
39045         (print_errno_message) [!LIBC]: Fall back on strerror if
39046         __strerror_r fails.
39047
39048         * lib/path-concat.c (mempcpy): Don't define if a system header defines
39049         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
39050         (longest_relative_suffix): New function.
39051         (path_concat): Use it.  Assume first argument is not NULL.
39052         Port to DOS.  Omit redundant separators.
39053         Report an error instead of returning NULL.
39054         Use mempcpy instead of memcpy.
39055         (xpath_concat): Remove: not declared or used.
39056
39057         * lib/same.h: Include <stdbool.h>
39058         (same_name): Return bool, not int.
39059         * lib/same.c (same_name): Likewise.
39060         (errno): Don't declare; we assume C89 or better now.
39061
39062         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
39063         if not already defined.
39064
39065         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
39066         * lib/dup-safer.c (errno): Likewise.
39067
39068 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
39069
39070         Merge from coreutils.
39071         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
39072         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
39073         * modules/path-concat: Don't depend on strdup.
39074
39075 2004-08-03  Simon Josefsson  <jas@extundo.com>
39076
39077         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
39078         * lib/progname.h: Don't include stdbool.h.
39079
39080 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39081
39082         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
39083         * MODULES.html.sh (func_all_modules): Remove fatal.
39084
39085 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39086
39087         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
39088
39089 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
39090
39091         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
39092         working.
39093
39094 2004-08-02  Simon Josefsson  <jas@extundo.com>
39095
39096         * lib/getsubopt.h: New file, with comments from Bruno Haible.
39097         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
39098         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
39099
39100 2004-08-01  Simon Josefsson  <jas@extundo.com>
39101
39102         * lib/xgetdomainname.c: Include stdlib.h, for free().
39103
39104 2004-07-19  Bruno Haible  <bruno@clisp.org>
39105
39106         * MODULES.html.sh (func_all_modules): Add dummy.
39107
39108 2004-07-16  Simon Josefsson  <jas@extundo.com>
39109
39110         * modules/dummy: New file.
39111
39112 2004-07-16  Simon Josefsson  <jas@extundo.com>
39113
39114         * lib/dummy.c: New file.
39115
39116 2004-07-16  Bruno Haible  <bruno@clisp.org>
39117
39118         * lib/backupfile.h: Add extern "C" for C++.
39119         * lib/closeout.h: Likewise.
39120         * lib/copy-file.h: Likewise.
39121         * lib/findprog.h: Likewise.
39122         * lib/full-write.h: Likewise.
39123         * lib/pathname.h: Likewise.
39124         * lib/progname.h: Likewise.
39125         * lib/stpcpy.h: Likewise.
39126         * lib/stpncpy.h: Likewise.
39127         * lib/strcase.h: Likewise.
39128         * lib/strstr.h: Likewise.
39129         * lib/xalloc.h: Likewise.
39130
39131         * lib/mbswidth.h: Add extern "C" for C++.
39132         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
39133
39134 2004-07-13  Robert Millan  <robertmh@gnu.org>
39135
39136         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
39137
39138 2004-07-09  Simon Josefsson  <jas@extundo.com>
39139
39140         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
39141         failed without this.)
39142
39143 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39144
39145         * modules/chown (Files): Add lib/fchown-stub.c, since
39146         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
39147
39148 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
39149
39150         * lib/fchown-stub.c: New file.
39151
39152 2004-06-24  Jim Meyering  <jim@meyering.net>
39153
39154         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
39155
39156 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39157
39158         * modules/argz: Omit "#include".
39159
39160         * MODULES.html.sh (func_all_modules): Add calloc, to match
39161         2004-06-01 addition of calloc module.
39162
39163 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39164
39165         * m4/argz.m4: New file, which is autoupdated from libtool.
39166
39167 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39168
39169         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
39170         libtool.
39171
39172 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39173
39174         * config/srclist-update: Don't insist on "USA." before the
39175         close-comment, as libtool omits the period and puts the */ on a
39176         separate line.
39177         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
39178         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
39179
39180 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
39181
39182         * modules/argz: New file.
39183         * MODULES.html.sh (func_all_modules): Add argz.
39184
39185 2004-06-12  Jim Meyering  <jim@meyering.net>
39186         and  Paul Eggert  <eggert@cs.ucla.edu>
39187
39188         * modules/hash (Files): Add lib/xalloc.h.
39189         * modules/pipe (Depends-on): Add wait-process.
39190         * modules/stat (Depends-on): Add xalloc.
39191         * modules/userspec (Files): Add lib/userspec.h.
39192         * modules/xstrto
39193
39194         Upgrade from gettext-0.13.
39195         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
39196         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
39197         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
39198
39199 2004-06-10  Jim Meyering  <jim@meyering.net>
39200
39201         * lib/calloc.c: New file.
39202
39203 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
39204
39205         * lib/getdate.y (yylex): Allow space between sign and number.
39206         Problem reported by Dan Jacobson.
39207
39208 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39209
39210         Merge from coreutils CVS.
39211
39212         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
39213         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
39214         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
39215         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
39216         xstrtol.m4: Fix copyright date and/or serial number.
39217
39218         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
39219         See if we need an fchown replacement.
39220         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
39221         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
39222         and use the replacement function if we detect either defect.
39223
39224         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
39225         gl_UTIMECMP.
39226
39227 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
39228         and  Jim Meyering  <jim@meyering.net>
39229
39230         Merge from coreutils CVS.
39231
39232         * lib/stat-macros.h: New file, with contents from file-type.h
39233         and coreutils' system.h.
39234         * lib/file-type.c: Include "stat-macros.h".
39235         * lib/file-type.h (file_type): Move all macro definitions to new file,
39236         stat-macros.h.
39237
39238         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
39239         Wrap old code with this conditional.
39240         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
39241         function that does not dereference symlinks.
39242         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
39243
39244         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
39245         dependency problems.
39246         (xreadlink): Accept new arg SIZE, for efficiency.
39247         All decls and uses changed.
39248         * lib/xreadlink.h: Include <stddef.h>, for size_t.
39249
39250         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
39251         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
39252
39253         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
39254         sysexits.h.
39255
39256 2004-06-01  Jim Meyering  <jim@meyering.net>
39257
39258         * m4/calloc.m4: New file.
39259
39260 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
39261
39262         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
39263         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
39264         Also, fix a typo in a diagnostic.
39265
39266 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39267
39268         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
39269         or AC_FUNC_REALLOC.
39270
39271 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
39272
39273         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
39274         macros to be defined.
39275         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
39276         the allocator returns NULL because the requested size is zero.
39277
39278 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39279
39280         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
39281         var.  Add comment explaining why libc still defines it.  This
39282         merges the following patch from glibc:
39283         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
39284
39285 2004-05-20  Andreas Schwab  <schwab@suse.de>
39286
39287         * m4/free.m4: Replace free if it not known to work, not the other
39288         way round.
39289
39290 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
39291
39292         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
39293         present in glibc since revision 1.1 of this file.
39294         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
39295         obstack_alignment_mask, obstack_alloc, obstack_base,
39296         obstack_blank, obstack_blank_fast, obstack_chunk_size,
39297         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
39298         obstack_grow0, obstack_init, obstack_int_grow,
39299         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
39300         obstack_next_free, obstack_object_size, obstack_ptr_grow,
39301         obstack_ptr_grow_fast, obstack_room): Remove declarations of
39302         nonexistent functions.
39303
39304 2004-05-18  Karl Berry  <karl@gnu.org>
39305
39306         * config/srclist.txt: break link for vasnprintf.c.
39307
39308 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39309
39310         Port obstack to the AS/400, where pointers are 16 bytes wide and
39311         you cannot cast an integer to a valid pointer.  This patch is
39312         currently waiting to be integrated into glibc; see
39313         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
39314
39315         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
39316         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
39317         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
39318         (struct obstack): temp member is now a union of a pointer and
39319         an integer, instead of an integer.  All integer uses changed.
39320         This does not affect the physical layout of struct obstack,
39321         except on hosts (like the AS/400) where the size or alignment of
39322         void * is greater than that of ptrdiff_t.
39323         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
39324         __STDC__)]: Store temporary in pointer member of union, not
39325         integer member.
39326         * lib/obstack.c: Include <stddef.h>, for offsetof.
39327         (struct fooalign): Remove; it doesn't need a name.
39328         (union fooround): Change double to long double, and add void *.
39329         (DEFAULT_ALIGNMENT): Use offsetof to compute.
39330         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
39331         not a macro.  Hence the values are always int; so remove all
39332         casts-to-int in uses.
39333
39334 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
39335
39336         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
39337         we can get this patch merged into glibc.
39338
39339 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39340             Paul Eggert  <eggert@cs.ucla.edu>
39341
39342         * m4/argp: Depend on alloca.
39343
39344 2004-05-17  Derek R. Price  <derek@ximbiot.com>
39345             Paul Eggert  <eggert@cs.ucla.edu>
39346
39347         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
39348         freecoding.
39349
39350 2004-05-17  Bruno Haible  <bruno@clisp.org>
39351
39352         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
39353         precision that consists of a '.' followed by an empty digit string.
39354         Patch by Tor Lillqvist <tml@iki.fi>.
39355
39356 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39357
39358         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
39359         for backward compatibility with older code.  We need our own
39360         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
39361         it under some other name, and our alloca.h will define it.
39362
39363 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
39364             Derek Price  <derek@ximbiot.com>
39365
39366         * lib/alloca.c: Include <alloca.h>, to get our interface.
39367         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
39368         include <alloca.h> first.  Use C89 prototype for alloca; this
39369         requires including <stddef.h> for size_t.  Use extern "C" if C++.
39370         Use #elif for simplicity, since we can assume C89 now.
39371         Don't try to source the system alloca.h since it will not be found
39372         and to prevent recursively including its replacement.
39373         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
39374         * lib/regex.c: Likewise.
39375
39376 2004-05-16  Derek Price  <derek@ximbiot.com>
39377             Paul Eggert  <eggert@cs.ucla.edu>
39378
39379         getline cleanup.  This changes the getndelim2 API: both order of
39380         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
39381         no delimiter).
39382
39383         * lib/getline.c: Don't include stddef.h or stdio.h, since our
39384         interface does that.
39385         (getline): Always use getdelim, so that we don't have two
39386         copies of this code.
39387         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
39388         if available.
39389         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
39390         (GETNDELIM2_MAXIMUM): New macro.
39391         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
39392         instead of the old practice of delim2==0.  All callers changed.
39393         Return -1 on overflow, instead of returning junk.
39394         Do not set *linesize unless allocation succeeds.
39395         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
39396         that we include sys/types.h.
39397         * lib/getnline.h: Likewise.
39398         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
39399         (getndelim2): Reorder arguments.
39400         * lib/getnline.c (getnline, getndelim):
39401         Don't discard the NMAX argument.
39402         (getnline): Invoke getndelim, to avoid code duplication.
39403         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
39404         of (size_t) -1 by callers of the getnline family.
39405
39406 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39407
39408         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
39409         Check for gettimeofday.
39410         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
39411         Check for settimeofday, stime.
39412
39413 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39414
39415         * lib/nanosleep.c (suspended): Change its type from int to
39416         sig_atomic_t volatile.
39417         (first_call): Make it private to rpl_nanosleep, and have it
39418         be zero initially as that's a bit faster.
39419         (my_usleep): Round up fractional times instead of truncating them,
39420         as this is the usual meaning for 'sleep'.
39421
39422         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
39423         doesn't work.
39424         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
39425         (ENOSYS): Define if not defined.
39426         (settime): Fall back on stime if it exists and settimeofday fails.
39427         But don't bother with fallbacks if a method fails with errno == EPERM.
39428
39429 2004-05-11  Jim Meyering  <jim@meyering.net>
39430
39431         Prior to this change, the save_cwd caller required read access to the
39432         current directory on most systems (ones with the fchdir function).
39433
39434         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
39435         fails, try write-only, and finally, resort to using xgetcwd.
39436
39437 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
39438
39439         * lib/obstack.c, obstack.h: Import changes from libc.
39440
39441 2004-04-28  Bruno Haible  <bruno@clisp.org>
39442
39443         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
39444         also implicitly appends .exe to executables.
39445         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
39446         accepts Windows pathnames.
39447         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39448         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39449         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
39450         Treat Cygwin like Windows, since it now accepts Windows pathnames.
39451         Reported by Derek Robert Price <derek@ximbiot.com>.
39452
39453 2004-04-21  Karl Berry  <karl@gnu.org>
39454
39455         * config/srclist.txt (localcharset.c): break sync.
39456
39457 2004-04-20  Paul Eggert  <eggert@twinsun.com>
39458
39459         * m4/host-os.m4: Add a copyright notice.
39460
39461 2004-04-20  Jim Meyering  <jim@meyering.net>
39462
39463         Change UTILS_ to gl_ in AC_DEFINE'd names.
39464         Change utils_- and jm_-prefixed variables, too.
39465         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
39466         UTILS_FUNC_MKDIR_TRAILING_SLASH.
39467         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
39468
39469         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
39470         Don't emit trailing blanks.
39471         Also rename jm_-prefixed variables to have gl_ prefix.
39472
39473         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
39474         Also rename jm_-prefixed variables to have gl_ prefix.
39475
39476         * m4/jm-macros.m4: Reflect the renamings.
39477         * m4/prereq.m4: Likewise.
39478
39479 2004-04-20  Jim Meyering  <jim@meyering.net>
39480
39481         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
39482         memory.
39483
39484 2004-04-20  Jim Meyering  <jim@meyering.net>
39485             Bruno Haible  <bruno@clisp.org>
39486
39487         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
39488         memory when realloc fails.
39489
39490 2004-04-19  Jim Meyering  <jim@meyering.net>
39491
39492         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
39493         now that readutmp.c may call `free (0)'.
39494
39495 2004-04-19  Bruno Haible  <bruno@clisp.org>
39496
39497         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
39498         * m4/inttypes_h.m4: Likewise.
39499         * m4/stdint_h.m4: Likewise.
39500         * m4/intmax_t.m4: Likewise.
39501         * m4/uintmax_t.m4: Likewise.
39502
39503 2004-04-18  Jim Meyering  <jim@meyering.net>
39504
39505         * m4/prereq.m4: Don't forbid jm_ prefix.
39506
39507         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
39508         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
39509         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
39510         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
39511         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
39512         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
39513         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
39514         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
39515         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
39516         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
39517         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
39518         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
39519         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
39520         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
39521         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
39522         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
39523         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
39524         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
39525         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
39526
39527 2004-04-18  Jim Meyering  <jim@meyering.net>
39528
39529         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
39530         failure, don't leak memory and do call END_UTMP_ENT.
39531
39532 2004-04-16  Jim Meyering  <jim@meyering.net>
39533
39534         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
39535         coreutils' stat program.
39536         (gl_PREREQ): Don't require jm_PREREQ_STAT.
39537
39538 2004-04-11  Paul Eggert  <eggert@twinsun.com>
39539
39540         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
39541         C89.
39542         (CHAR_BIT): Remove, since we assume C89.
39543         Include <stdint.h> if available, as per current Autoconf CVS advice.
39544
39545 2004-03-31  Jim Meyering  <jim@meyering.net>
39546
39547         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
39548         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
39549         * m4/xalloc.m4: Likewise.
39550
39551 2004-03-30  Paul Eggert  <eggert@twinsun.com>
39552
39553         Merge from coreutils.
39554
39555         * m4/inttostr.m4: New file.
39556         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
39557         Require AM_STDBOOL_H and gl_TIMESPEC instead.
39558         Require gl_CLOCK_TIME.
39559         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
39560
39561 2004-03-30  Paul Eggert  <eggert@twinsun.com>
39562
39563         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
39564         not bool, to be more consistent with Unix conventions.
39565         Suggested by Bruno Haible.
39566
39567         Merge from coreutils.
39568
39569         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
39570         * lib/umaxtostr.c: New files.
39571
39572         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
39573         the usual <time.h> dance.
39574         (get_date): Change signature to support fractional time stamps.
39575         All callers changed.
39576         * lib/getdate.y: Include "getdate.h" first, as we can now
39577         assume C89 and don't need to worry about 'const'.
39578         Similarly, include "unlocked-io.h" near start, not in middle.
39579         Include <limits.h>.
39580         (textint.value): Use long int rather than int.
39581         (textint.digits): Use size_t rather than int.
39582         (BILLION, LOG10_BILLION): New constants.
39583         (parser_control): New member rel_ns.  Members day_ordinal,
39584         time_zone, month, day, hour, minutes, rel_year, rel_month,
39585         rel_day, rel_hour, rel_minutes, rel_seconds
39586         are now long int, not int.  Member seconds is now struct timespec,
39587         not int.  New member timespec_seen.  Members dates_seen, days_seen,
39588         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
39589         not int.
39590         (%union.intval): Now long int, not int.
39591         New member timespec.
39592         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
39593         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
39594         (spec): Now is a timespec or an item list.
39595         (timespec, items): New nonterminals.
39596         (time, rel, relunit, number, get_date):
39597         Add support for fractional seconds.
39598         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
39599         (gmtime, localtime, mktime): Remove decls; not needed with C89.
39600         (to_hour): First arg is now long int, not int.
39601         (to_year): Returns long int, not int.
39602         Don't treat year -70 like 70.
39603         (tm_diff): Returns long int, not int.
39604         (lookup_word): Use bool instead of int when appropriate.
39605         (yylex): Use size_t for count, not int.
39606         Detect overflow when parsing large integer constants.
39607         Add support for fractions.
39608         (get_date): Make pointers 'const' if possible.
39609         Use more-portable code to detect integer overflow.
39610         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
39611         Don't use ctime; it's not reliable if the year has >4 digits.
39612
39613         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
39614         This is for compatibility with BSD.
39615
39616         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
39617         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
39618         From coreutils' system.h.
39619
39620         * lib/userspec.c: Don't include "posixver.h".
39621         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
39622         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
39623         compatible extension.  Simplify code by removing a boolean int
39624         that was always nonzero if a string was nonnull.
39625
39626 2004-03-30  Jim Meyering  <jim@meyering.net>
39627
39628         Merge from coreutils.
39629
39630         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
39631         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
39632         on some systems one must include <grp.h> before it.
39633         Reported by Christian Krackowizer.
39634
39635 2004-03-30  Jim Meyering  <jim@meyering.net>
39636
39637         Merge from coreutils.
39638
39639         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
39640
39641         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
39642         an empty input stream.
39643
39644         * lib/readtokens.c: Include <stdbool.h>.
39645         (readtoken): Use `size_t' rather than int/long.
39646         All callers adjusted.
39647         Use `bool' rather than `int' where appropriate.
39648         Use memset rather than an explicit loop.
39649         Use x2nrealloc rather than xrealloc.
39650         Allow the use of `\0' as a delimiter.
39651         (readtokens): Likewise.
39652         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
39653
39654 2004-03-30  Jim Meyering  <jim@meyering.net>
39655
39656         * m4/realloc.m4: Remove file, since now it does no more than
39657         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
39658         the `configure.ac' section of module/realloc.
39659         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
39660
39661 2004-03-30  Bruno Haible  <bruno@clisp.org>
39662
39663         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
39664         nonnull.
39665
39666 2004-03-29  Paul Eggert  <eggert@twinsun.com>
39667
39668         Merge changes to getloadavg.c from coreutils and Emacs.
39669
39670         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
39671         Define to an expression, not to the empty string.
39672         Include cloexec.h and xalloc.h.
39673         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
39674         Use set_cloexec_flag rather than rolling our own.
39675         * lib/cloexec.c, lib/cloexec.h: New files.
39676
39677 2004-03-29  Paul Eggert  <eggert@twinsun.com>
39678
39679         * m4/cloexec.m4: New file.
39680
39681 2004-03-18  Paul Eggert  <eggert@twinsun.com>
39682
39683         * lib/getopt.h: Sync with libc CVS.
39684
39685 2004-03-18  Paul Eggert  <eggert@twinsun.com>
39686             Bruno Haible  <bruno@clisp.org>
39687
39688         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
39689         mbswidth.
39690
39691 2004-03-18  Paul Eggert  <eggert@twinsun.com>
39692             Bruno Haible  <bruno@clisp.org>
39693
39694         * lib/mbswidth.h: Include <wchar.h> only if
39695         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
39696         <wchar.h>.
39697         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
39698
39699 2004-03-09  Paul Eggert  <eggert@twinsun.com>
39700
39701         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
39702         Sync with libc CVS.
39703         * lib/getopt_int.h: New file, also synced from libc.
39704
39705 2004-03-09  Paul Eggert  <eggert@twinsun.com>
39706
39707         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
39708         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
39709         Bring back getopt.c, getopt.h, getopt1.c.
39710
39711 2004-03-07  Paul Eggert  <eggert@twinsun.com>
39712
39713         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
39714         All uses changed.  Check for sa_sigaction member; this fixes
39715         a bug first reported by Jason Andrade in
39716         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
39717
39718 2004-03-07  Paul Eggert  <eggert@twinsun.com>
39719
39720         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
39721         '#if' expressions.  Unlike the code it replaces, it does not
39722         depend on (defined _SC_PAGESIZE).  However, it does depend on
39723         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
39724         first reported by Jason Andrade in
39725         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
39726
39727 2004-02-25  Simon Josefsson  <jas@extundo.com>
39728
39729         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
39730
39731 2004-02-25  Simon Josefsson  <jas@extundo.com>
39732
39733         * lib/strdup.h: New file.
39734         * lib/strdup.c: Include it.
39735         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
39736         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
39737
39738 2004-02-23  Karl Berry  <karl@gnu.org>
39739
39740         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
39741         (from fencepost.gnu.org:/gd/gnuorg).
39742
39743 2004-02-23  Karl Berry  <karl@gnu.org>
39744
39745         * config/srclistvars.sh (GNUORG) [karl]: redefine.
39746         * config/srclist.txt: add maintain/standards documents.
39747
39748 2004-02-18  Bruno Haible  <bruno@clisp.org>
39749
39750         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
39751         Reported by Derek Robert Price <derek@ximbiot.com>.
39752
39753 2004-02-16  Karl Berry  <karl@gnu.org>
39754
39755         * config/mkinstalldirs, install-sh: update from automake.
39756
39757 2004-02-06  Karl Berry  <karl@gnu.org>
39758
39759         * m4/po.m4: update from gettext 0.14.1.
39760
39761 2004-02-06  Karl Berry  <karl@gnu.org>
39762
39763         * lib/config.charset: update from gettext 0.14.1.
39764
39765 2004-02-05  Paul Eggert  <eggert@twinsun.com>
39766
39767         Add comments and code, prompted by suggestions from Bruno Haible
39768         for sh-quote.
39769         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
39770         describing the enum quoting_style values.
39771         * lib/quotearg.c (quotearg_alloc): New function.
39772         (quotearg_buffer_restyled): Treat lone { and } as special.
39773         Treat = as special.  Work around bug with older shells
39774         that "see" a '\' that is really the 2nd byte of a multibyte char.
39775         Quote empty string with shell_quoting_style.
39776
39777 2004-02-03  Bruno Haible  <bruno@clisp.org>
39778
39779         * m4/pipe.m4: New file, from GNU gettext.
39780
39781 2004-02-03  Bruno Haible  <bruno@clisp.org>
39782
39783         * lib/pipe.h: New file, from GNU gettext.
39784         * lib/pipe.c: New file, from GNU gettext.
39785
39786 2004-01-27  Bruno Haible  <bruno@clisp.org>
39787
39788         * m4/execute.m4: New file, from GNU gettext.
39789
39790 2004-01-27  Bruno Haible  <bruno@clisp.org>
39791
39792         * lib/execute.h: New file, from GNU gettext.
39793         * lib/execute.c: New file, from GNU gettext.
39794         * lib/w32spawn.h: New file, from GNU gettext.
39795
39796 2004-01-24  Paul Eggert  <eggert@twinsun.com>
39797
39798         Merge from diffutils.
39799
39800         * lib/file-type.c (file_type): Add typed memory objects.
39801         * lib/file-type.h (S_TYPEISTMO): New macro.
39802
39803         * lib/c-stack.h (c_stack_action): Remove argv argument.
39804         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
39805         (die): Don't calculate message unless segv_action returns.
39806         (get_stack_location, min_address_from_argv, max_address_from_argv,
39807         volatile stack_base, volatile_stack_size): Remove.
39808         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
39809         that every segmentation violation is a stack overflow.  (Ouch!)
39810         See Debian bug 136249 (still outstanding) for more info about why
39811         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
39812
39813 2004-01-24  Paul Eggert  <eggert@twinsun.com>
39814
39815         Exit-status fix from coreutils.
39816
39817         Use exit_failure consistently in place of EXIT_FAILURE,
39818         so that program exit statuses are consistent on failure.
39819
39820         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
39821         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
39822         * lib/argmatch.h: Comment fix to match the above.
39823         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
39824         Now a macro referring to exit_failure, instead of a separate
39825         variable.  Include "exitfail.h" to get it.
39826         * lib/xstrtol.h: Include "exitfail.h".
39827         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
39828
39829         * lib/long-options.c (parse_long_options): Use prototype
39830         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
39831         for clarity.
39832
39833 2004-01-21  Jim Meyering  <jim@meyering.net>
39834
39835         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
39836         so as not to conflict with a different-sized __mktime_internal
39837         function in GNU libc.
39838         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
39839         Problem building statically-linked `ls' reported by Michael Brunnbauer.
39840
39841 2004-01-20  Karl Berry  <karl@gnu.org>
39842
39843         * config/config.guess: update from config.
39844
39845         * config/srclistvars.sh: GNUWWWLICENSES for karl.
39846
39847 2004-01-20  Bruno Haible  <bruno@clisp.org>
39848
39849         Safer stack allocation.
39850         * lib/setenv.c: Include allocsa.h.
39851         (alloca): Remove fallback definition.
39852         (freea): Remove macro.
39853         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
39854         instead of freea.
39855
39856 2004-01-20  Bruno Haible  <bruno@clisp.org>
39857
39858         * m4/eealloc.m4: New file, from GNU gettext.
39859
39860 2004-01-20  Bruno Haible  <bruno@clisp.org>
39861
39862         * m4/allocsa.m4: New file, from GNU gettext.
39863
39864 2004-01-20  Bruno Haible  <bruno@clisp.org>
39865
39866         * lib/xallocsa.h: New file, from GNU gettext.
39867         * lib/xallocsa.c: New file, from GNU gettext.
39868
39869 2004-01-20  Bruno Haible  <bruno@clisp.org>
39870
39871         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
39872
39873 2004-01-20  Bruno Haible  <bruno@clisp.org>
39874
39875         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
39876         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
39877         specially.
39878
39879 2004-01-20  Bruno Haible  <bruno@clisp.org>
39880
39881         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
39882         patch.
39883
39884 2004-01-20  Bruno Haible  <bruno@clisp.org>
39885
39886         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
39887
39888 2004-01-20  Bruno Haible  <bruno@clisp.org>
39889
39890         * lib/eealloc.h: New file.
39891
39892 2004-01-20  Bruno Haible  <bruno@clisp.org>
39893
39894         * lib/binary-io.h: Avoid warnings on Cygwin.
39895
39896 2004-01-20  Bruno Haible  <bruno@clisp.org>
39897
39898         * lib/allocsa.h: New file, from GNU gettext.
39899         * lib/allocsa.c: New file, from GNU gettext.
39900
39901 2004-01-18  Karl Berry  <karl@gnu.org>
39902
39903         * doc/gpl.texi, doc/lgpl.texi: new files.
39904
39905 2004-01-18  Karl Berry  <karl@gnu.org>
39906
39907         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
39908         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
39909
39910 2004-01-15  Paul Eggert  <eggert@twinsun.com>
39911
39912         Merge from coreutils.
39913
39914         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
39915         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
39916         (gl_DEFAULT_POSIX2_VERSION): Move
39917         the documentation from 'configure' into 'config.hin',
39918         so that 'configure --help' isn't burdened by it and
39919         we don't have to worry about its formatting there.
39920         Reword the documentation so that it's more succinct
39921         and can be run together into a single paragraph.
39922         * m4/same.m4 (gl_SAME): Check for pathconf.
39923
39924 2004-01-15  Paul Eggert  <eggert@twinsun.com>
39925
39926         Merge from coreutils.
39927
39928         * lib/posixver.c: Include posixver.h.
39929
39930         * lib/same.c: Include <stdbool.h>, <limits.h>.
39931         (_POSIX_NAME_MAX): Define if not defined.
39932         (MIN): New macro.
39933         (same_name): If file names are silently truncated, report
39934         that the file names are the same if they are the same after
39935         the silent truncation.
39936
39937         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
39938         conversion function.
39939         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
39940         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
39941         longer needed.
39942
39943 2004-01-15  Jim Meyering  <jim@meyering.net>
39944
39945         Merge from coreutils.
39946
39947         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
39948         if no library is required.
39949         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
39950         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
39951         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
39952         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
39953         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
39954         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
39955         value, $ac_cv_search_crypt, if it's "none required".
39956         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
39957         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
39958         not gl_FUNC_GETLOADAVG.
39959         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
39960         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
39961
39962 2004-01-15  Jim Meyering  <jim@meyering.net>
39963
39964         Merge from coreutils.
39965
39966         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
39967         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
39968         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
39969
39970         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
39971         optional configure-time default.
39972
39973         * lib/version-etc.c (version_etc_copyright): Update copyright date.
39974
39975         * lib/xreadlink.c (xreadlink): Correct outdated comment.
39976
39977 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
39978
39979         Merge from coreutils.
39980
39981         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
39982         value, $ac_cv_search_nanosleep, if it's "none required".
39983
39984 2004-01-14  Paul Eggert  <eggert@twinsun.com>
39985
39986         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
39987         with like-named macro in fnmatch.c.
39988         (EXT): Use an internal constant instead.
39989
39990         Merge fnmatch patches from glibc.
39991         * lib/fnmatch.c (mbsinit): Remove define.
39992         Add libc_hidden_ver (__fnmatch, fnmatch).
39993         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
39994         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
39995
39996 2004-01-14  Karl Berry  <karl@gnu.org>
39997
39998         * config/install-sh: update from automake.
39999
40000 2004-01-13  Karl Berry  <karl@gnu.org>
40001
40002         * config/install-sh: update from automake.
40003
40004 2004-01-09  Karl Berry  <karl@gnu.org>
40005
40006         * config/install-sh: update from automake.
40007
40008 2004-01-05  Karl Berry  <karl@gnu.org>
40009
40010         * config/config.{sub,guess}: update from config.
40011
40012 2003-12-31  Karl Berry  <karl@gnu.org>
40013
40014         * config/depcomp: update from automake.
40015
40016 2003-12-14  Karl Berry  <karl@gnu.org>
40017
40018         * lib/config.charset: update from gettext-runtime.
40019
40020 2003-12-03  Paul Eggert  <eggert@twinsun.com>
40021
40022         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
40023         Bug reported by Alfred M. Szmidt.
40024
40025 2003-12-03  Bruno Haible  <bruno@clisp.org>
40026
40027         * m4/gettext.m4: Upgrade from gettext-0.13.
40028         * m4/po.m4: Upgrade from gettext-0.13.
40029         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
40030         * m4/intmax.m4: New file, from gettext-0.13.
40031         * m4/printf-posix.m4: New file, from gettext-0.13.
40032
40033 2003-11-29  Karl Berry  <karl@gnu.org>
40034
40035         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
40036
40037 2003-11-25  Paul Eggert  <eggert@twinsun.com>
40038             Bruno Haible  <bruno@clisp.org>
40039
40040         * lib/printf-parse.h: Don't include sys/types.h.
40041         (ARG_NONE): New macro.
40042         (char_directive): Change type of *arg_index fields to size_t.
40043         * lib/printf-parse.c: Don't include sys/types.h.
40044         (SSIZE_MAX): Remove macro.
40045         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
40046         Remove unnecessary overflow check.
40047         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
40048         fields.
40049
40050 2003-11-25  Bruno Haible  <bruno@clisp.org>
40051
40052         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
40053
40054 2003-11-25  Bruno Haible  <bruno@clisp.org>
40055
40056         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
40057         gt_TYPE_SSIZE_T.
40058
40059 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40060
40061         * modules/alloca: Remove dependency on xalloc.
40062
40063 2003-11-24  Paul Eggert  <eggert@twinsun.com>
40064
40065         * lib/alloca.c: Remove dependency on xalloc module.
40066         (xalloc_die): Remove.
40067         (memory_full) [!defined emacs]: New macro.
40068         [!defined emacs]: Don't include xalloc.h.
40069         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
40070         address arithmetic overflows.  Change datatypes a bit to avoid
40071         unnecessary casts.
40072
40073 2003-11-22  Jim Meyering  <jim@meyering.net>
40074
40075         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
40076         s/size/size_t/.
40077
40078 2003-11-21  Karl Berry  <karl@gnu.org>
40079
40080         * config/config.{sub,guess}: update from config.
40081
40082 2003-11-18  Karl Berry  <karl@gnu.org>
40083
40084         * config/config.{sub,guess}: update from config.
40085
40086         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
40087
40088 2003-11-17  Paul Eggert  <eggert@twinsun.com>
40089
40090         * README: Mention that S+T cannot overflow if S is the size of
40091         an existing object and T is sufficiently small.
40092
40093 2003-11-17  Jim Meyering  <jim@meyering.net>
40094
40095         On systems without utime and without a utimes function capable of
40096         dealing with a NULL struct utimbuf* argument, this utime replacement
40097         could -- in unusual circumstances -- leak a file descriptor.
40098         * lib/utime.c: Include <unistd.h> and <errno.h>.
40099         (utime_null): Be sure to close `fd' and to preserve errno.
40100         Reported by Geoff Collyer via Arnold Robbins.
40101
40102 2003-11-17  Bruno Haible  <bruno@clisp.org>
40103
40104         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
40105         (Depends-on): Add xsize.
40106
40107 2003-11-17  Bruno Haible  <bruno@clisp.org>
40108
40109         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
40110
40111 2003-11-17  Bruno Haible  <bruno@clisp.org>
40112
40113         * lib/vasnprintf.c (alloca): Remove fallback definition.
40114         (freea): Remove definition.
40115         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
40116         Reported by Paul Eggert.
40117
40118 2003-11-16  Paul Eggert  <eggert@twinsun.com>
40119             Bruno Haible  <bruno@clisp.org>
40120
40121         Protect against address arithmetic overflow.
40122         * lib/printf-args.h: Include stddef.h.
40123         (arguments): Change type of field 'count' to size_t.
40124         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
40125         'unsigned int' where appropriate.
40126         * lib/printf-parse.h: Include sys/types.h.
40127         (char_directive): Change type of *arg_index fields to ssize_t.
40128         (char_directives): Change type of fields 'count', max_*_length to
40129         size_t.
40130         * lib/printf-parse.c: Include sys/types.h and xsize.h.
40131         (SSIZE_MAX): Define fallback value.
40132         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
40133         instead of 'int' where appropriate. Check a_allocated, d_allocated
40134         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
40135         * lib/vasnprintf.c: Include xsize.h.
40136         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
40137         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
40138         overflow. Avoid wraparound when converting a width or precision from
40139         decimal to binary.
40140
40141 2003-11-16  Bruno Haible  <bruno@clisp.org>
40142
40143         Update from GNU gettext.
40144         * lib/printf-parse.c: Generalize to it can be compiled for wide
40145         strings.
40146         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
40147         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
40148         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
40149         SNPRINTF): New macros.
40150         Don't include <alloca.h> if the file is used inside libintl.
40151         (local_wcslen): New function, for Solaris 2.5.1.
40152         (VASNPRINTF): Use it instead of wcslen.
40153
40154 2003-11-16  Bruno Haible  <bruno@clisp.org>
40155
40156         * lib/xsize.h (xmax): New function.
40157         (xsum, xsum3, xsum4): Declare as "pure" functions.
40158
40159 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40160
40161         * modules/xalloc (Files): Undo latest change, since xalloc.h
40162         no longer needs SIZE_MAX or PTRDIFF_MAX.
40163
40164 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40165
40166         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
40167         gl_PTRDIFF_MAX.
40168
40169 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40170
40171         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
40172         "return", to pacify some unknown compiler.  Problem reported
40173         by Joerg Schilling.
40174
40175 2003-11-12  Paul Eggert  <eggert@twinsun.com>
40176
40177         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
40178         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
40179         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
40180         heuristic is just as accurate as far as we know, and it removes a
40181         dependency on size_max.m4 and ptrdiff_max.m4.
40182
40183 2003-11-11  Bruno Haible  <bruno@clisp.org>
40184
40185         * modules/xsize (Files): Add m4/size_max.m4.
40186         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
40187
40188 2003-11-11  Bruno Haible  <bruno@clisp.org>
40189
40190         * m4/size_max.m4: New file.
40191         * m4/ptrdiff_max.m4: New file.
40192         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
40193         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
40194         (gl_XALLOC): Invoke it.
40195
40196 2003-11-11  Bruno Haible  <bruno@clisp.org>
40197
40198         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
40199         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
40200         defined.
40201
40202 2003-11-10  Paul Eggert  <eggert@twinsun.com>
40203
40204         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
40205         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
40206         rejected some allocations of exactly SIZE_MAX - 2 bytes.
40207         From Bruno Haible.
40208         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
40209         not (size_t) -1, since it's defined here.
40210
40211 2003-11-09  Karl Berry  <karl@gnu.org>
40212
40213         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
40214
40215 2003-11-06  Paul Eggert  <eggert@twinsun.com>
40216
40217         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
40218         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
40219         Reject sizes of exactly SIZE_MAX bytes.
40220         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
40221         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
40222
40223 2003-11-05  Bruno Haible  <bruno@clisp.org>
40224
40225         * lib/xsize.h: Include limits.h, to avoid a possible collision with
40226         SIZE_MAX defined in <limits.h> on Solaris.
40227
40228 2003-11-04  Jim Meyering  <jim@meyering.net>
40229
40230         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
40231         variable names, rather than @VAR@.
40232         * modules/poll: Likewise.
40233
40234 2003-11-04  Bruno Haible  <bruno@clisp.org>
40235
40236         * modules/xsize: New file.
40237         * modules/linebreak: Depend on xsize.
40238         * MODULES.html.sh (func_all_modules): Add xsize.
40239
40240 2003-11-04  Bruno Haible  <bruno@clisp.org>
40241
40242         * m4/xsize.m4: New file.
40243
40244 2003-11-04  Bruno Haible  <bruno@clisp.org>
40245
40246         * lib/xsize.h: New file.
40247         * lib/linebreak.c: Include xsize.h.
40248         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
40249         argument for overflow.
40250         Suggested by Paul Eggert.
40251
40252 2003-11-03  Karl Berry  <karl@gnu.org>
40253
40254         * config/config.{guess,sub}: update from config.
40255
40256 2003-11-03  Jim Meyering  <jim@meyering.net>
40257
40258         * modules/userspec (lib_SOURCES): Add userspec.h.
40259         (Include): Add "userspec.h".
40260         Improve description.
40261
40262 2003-11-03  Jim Meyering  <jim@meyering.net>
40263
40264         * lib/userspec.c: Include "userspec.h".
40265         * lib/userspec.h: New file.
40266
40267 2003-11-03  Bruno Haible  <bruno@clisp.org>
40268
40269         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
40270
40271 2003-11-03  Bruno Haible  <bruno@clisp.org>
40272
40273         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
40274         available, to avoid (extremely rare) race condition.
40275         Suggested by Paul Eggert.
40276
40277 2003-11-02  Karl Berry  <karl@gnu.org>
40278
40279         * config/srclist.txt (vasprintf.c): sync broken, sigh.
40280
40281 2003-10-31  Paul Eggert  <eggert@twinsun.com>
40282
40283         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
40284         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
40285         (read_filesystem_list): Set and use me_type_malloced.
40286         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
40287         whatever the type happens to be), for brevity and consistency.
40288         Check for size calculation overflow on Alphas running OSF/1.
40289
40290 2003-10-31  Jim Meyering  <jim@meyering.net>
40291
40292         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
40293
40294         * lib/linebuffer.c: Include <string.h> for declaration of memset.
40295
40296 2003-10-30  Paul Eggert  <eggert@twinsun.com>
40297             Bruno Haible  <bruno@clisp.org>
40298
40299         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
40300         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
40301
40302 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
40303
40304         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
40305         netbsd*-gnu*.  Suggested by Robert Millan.
40306
40307 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40308
40309         * modules/group-member: Depend on stdbool.
40310
40311 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40312
40313         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
40314
40315 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40316
40317         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
40318         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
40319         after the 'gnu' in these cases.  This fixes some bugs in the
40320         previous change, and is based on suggestions by Robert Millan.
40321
40322 2003-10-29  Paul Eggert  <eggert@twinsun.com>
40323
40324         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
40325         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
40326         no longer needed.
40327         * lib/quotearg.c (quotearg_n_options): Use it.
40328         * lib/group-member.c: Include <stdbool.h>.
40329         (free_group_info): Arg is now const *; don't free arg.
40330         (get_group_info): Now returns bool and accepts struct group_info *,
40331         rather than returning a malloc'ed struct group_info *.
40332         All uses changed.  Check for overflow in internal size calculation.
40333
40334         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
40335         rather than xmalloc/xrealloc.
40336         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
40337         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
40338         conformance bug: the old code used a pointer after freeing the
40339         storage that it addressed.
40340         * lib/hash.c (hash_initialize): Simplify the code by using
40341         xalloc_oversized rather than doing it by hand.
40342         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
40343         the buffer preserved.  Use free and xmalloc instead.
40344         * lib/quotearg.c (quotearg_n_options): Likewise.
40345         Use a simpler test for size overflow.  Don't use xalloc_oversized
40346         because unsigned int might be wider than size_t (!); this suggests
40347         that we should switch from unsigned int to size_t for slot numbers.
40348
40349 2003-10-28  Paul Eggert  <eggert@twinsun.com>
40350
40351         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
40352         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
40353         NetBSD kernels.  Requested by Richard Stallman.
40354
40355 2003-10-27  Paul Eggert  <eggert@twinsun.com>
40356
40357         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
40358         to allocate the returned structure.  Do not allocate a subarray,
40359         as x2nrealloc will do that.
40360         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
40361         instead of xnrealloc.
40362         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
40363
40364 2003-10-27  Bruno Haible  <bruno@clisp.org>
40365
40366         * lib/stdbool_.h: Better support for BeOS.
40367
40368 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40369
40370         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
40371         now uses inline.
40372
40373 2003-10-26  Paul Eggert  <eggert@twinsun.com>
40374
40375         * lib/xalloc.h (xalloc_oversized): New static inline function, for
40376         callers that want to do their own size-overflow checking.  Include
40377         <stdbool.h>, since xalloc_oversized returns bool.
40378         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
40379         to use xalloc_oversized.
40380
40381         Add two functions x2realloc, x2nrealloc, for programs that grow
40382         arrays dynamically by doubling their sizes.
40383         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
40384         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
40385         New functions.
40386
40387         Port to C99 semantics for 'inline' of external functions.
40388         Bug reported by Bruno Haible.
40389         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
40390         with the old contents of xnmalloc.
40391         (xnmalloc, xmalloc): Use it.
40392         (xnrealloc_inline): New static inline function,
40393         with the old contents of xnrealloc.
40394         (xnrealloc, xrealloc): Use it.
40395
40396         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
40397         that.
40398
40399 2003-10-26  Karl Berry  <karl@gnu.org>
40400
40401         * config/srclist.txt (COPYING.DOC): no longer available from
40402         /gd/gnuorg; don't know where the ultimate source is.
40403
40404 2003-10-25  Paul Eggert  <eggert@twinsun.com>
40405
40406         Fix several address-calculation bugs in the hash modules,
40407         plus some minor code cleanup.
40408
40409         * lib/hash.h: Include <stdbool.h>, for bool.
40410         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
40411         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
40412         hash_get_n_entries, hash_get_max_bucket_length,
40413         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
40414         hash_rehash): Use size_t rather than unsigned.
40415         * lib/hash.c (struct hash_table, hash_get_n_buckets,
40416         hash_get_n_buckets_used, hash_get_n_entries,
40417         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
40418         hash_get_entries, hash_do_for_each, hash_string, is_prime,
40419         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
40420         Likewise.
40421         (SIZE_MAX): Define if not defined.
40422         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
40423         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
40424         hash_print):
40425         Use const * when possible.
40426         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
40427         (check_tuning): Fix bug: if tuning parameters were very close to
40428         0 or 1, rounding errors could have caused subscript violations.
40429         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
40430         (hash_initialize): Add 'fail:' label
40431         to free table and return NULL, and use it to simplify code.
40432         Use calloc rather than clearing the storage ourself.
40433         (hash_initialize, hash_rehash): Check for arithmetic overflow in
40434         buffer size calculations.
40435         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
40436         Include <stddef.h>, for size_t.
40437         * lib/hash-pjw.c (hash_pjw): Likewise.
40438         Switch to method described by Bruno Haible.
40439         Include <limits.h>, for CHAR_BIT.
40440         (SIZE_BITS): New macro.
40441
40442 2003-10-23  Paul Eggert  <eggert@twinsun.com>
40443
40444         * m4/getline.m4 (AM_FUNC_GETLINE):
40445         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
40446         hosts.  Problem reported by Derek Robert Price in
40447         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
40448         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
40449         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
40450
40451 2003-10-21  Paul Eggert  <eggert@twinsun.com>
40452
40453         * lib/getndelim2.c (getndelim2): When size calculation overflows,
40454         ceiling the allocation at NMAX bytes rather than silently
40455         discarding input bytes before NMAX is reached.  This makes
40456         a difference only if NMAX exceeds SIZE_MAX / 2.
40457
40458         * lib/obstack.c: Merge from glibc.
40459         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
40460         Add libc_hidden_def (_obstack_newchunk).
40461         (_obstack_free) [! defined _LIBC]: Remove.
40462         [defined _LIBC]: Make a strong alias from obstack_free, rather than
40463         a clone of the function body.
40464         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
40465         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
40466
40467         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
40468         glibc.
40469         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
40470         arg to memcpy.
40471
40472         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
40473         (obstack_ptr_grow_fast, obstack_int_grow_fast):
40474         Don't use lvalue casts, as GCC plans to remove support for them
40475         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
40476         was also present in the non-GCC version, indicating that this
40477         code had always been buggy and had never been widely used.
40478         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
40479         Use the fast variant of each macro, rather than copying the
40480         definiens of the fast variant; that way, we'll be more likely to
40481         catch future bugs in the fast variants.
40482
40483 2003-10-20  Bruno Haible  <bruno@clisp.org>
40484
40485         * modules/wait-process: New file.
40486         * MODULES.html.sh (func_all_modules): Add wait-process.
40487
40488 2003-10-20  Bruno Haible  <bruno@clisp.org>
40489
40490         * m4/wait-process.m4: New file.
40491
40492 2003-10-20  Bruno Haible  <bruno@clisp.org>
40493
40494         * lib/wait-process.h: New file, from GNU gettext.
40495         * lib/wait-process.c: New file, from GNU gettext.
40496
40497 2003-10-19  Jim Meyering  <jim@meyering.net>
40498
40499         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
40500         HPUX 10.20.
40501
40502 2003-10-18  Karl Berry  <karl@gnu.org>
40503
40504         * config/config.guess: update from config.
40505
40506 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40507
40508         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
40509         (getgroups): First arg is int, not size_t.
40510         Don't let 'free' mangle errno.
40511
40512 2003-10-16  Paul Eggert  <eggert@twinsun.com>
40513
40514         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
40515
40516 2003-10-16  Karl Berry  <karl@gnu.org>
40517
40518         * config/config.{guess,sub}: update from config.
40519
40520 2003-10-16  Jim Meyering  <jim@meyering.net>
40521
40522         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
40523         memcpy.
40524
40525 2003-10-15  Paul Eggert  <eggert@twinsun.com>
40526
40527         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
40528         (SIZE_MAX): Remove.
40529         (new_exclude, add_exclude_file): Initial size no longer needs to
40530         be a power of 2.
40531         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
40532         our own address arithmetic overflow checking.
40533
40534         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
40535         (fnmatch): Do not alloca more than 2000 wide characters;
40536         instead, use malloc for large buffers.
40537         Check for address arithmetic overflow, and return -1
40538         with errno set to ENOMEM in that case.
40539         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
40540         (NEW_PATTERN): Do not alloca more than 8000 bytes;
40541         instead, return -1.  Check for address arithmetic overflow.
40542
40543 2003-10-14  Paul Eggert  <eggert@twinsun.com>
40544
40545         Handle invalid suffixes and overflow independently, so that
40546         callers can treat them independently as needed.  Fix some bugs in
40547         suffix handling, e.g., "100k@" was not diagnosed as an invalid
40548         suffix for a human-readable blocksize.  The major caller-visible
40549         change is the addition of a new
40550         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
40551         that both overflow and suffix chars were found.
40552
40553         * lib/human.c (humblock): Don't check separately for invalid suffix
40554         char; that is xstrtoumax's job (now that its bug is fixed).
40555         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
40556         INTMAX_MAX]: New macros.
40557         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
40558         TYPE_MAXIMUM): New macros.
40559         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
40560         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
40561         if overflow occurs, as it's what __strtol does and it's more useful
40562         in practice.
40563         (__xstrtol): If __strtol reports some error other than ERANGE,
40564         reflect it to the caller as LONGINT_INVALID.  If it reports
40565         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
40566         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
40567         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
40568         value.
40569         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
40570         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
40571         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
40572         [defined UINTMAX_MAX]: New macros.
40573
40574 2003-10-14  Bruno Haible  <bruno@clisp.org>
40575
40576         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
40577
40578 2003-10-14  Bruno Haible  <bruno@clisp.org>
40579
40580         * m4/sig_atomic_t: New file, from GNU gettext.
40581         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
40582
40583 2003-10-14  Bruno Haible  <bruno@clisp.org>
40584
40585         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
40586         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
40587         Also use volatile where needed.
40588
40589 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40590
40591         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
40592         Change maintainer from Bruno Haible to 'all'.
40593
40594 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40595
40596         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
40597
40598 2003-10-12  Paul Eggert  <eggert@twinsun.com>
40599
40600         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
40601         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
40602         and define in terms of the other primitives.
40603         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
40604         (SIZE_MAX): Define if not already defined.
40605         (array_size_overflow): New function.
40606         (xalloc_die): Abort instead of exiting if 'error' returns.
40607         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
40608         (xmalloc, xrealloc): Use them.
40609         (xcalloc): Check for address arithmetic overflow.
40610         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
40611         a bit faster than strcpy.
40612
40613 2003-10-10  Simon Josefsson  <jas@extundo.com>
40614
40615         * modules/argp (Depends-on): Add restrict and strcase.
40616
40617 2003-10-10  Simon Josefsson  <jas@extundo.com>
40618
40619         * m4/argp.m4: Add AC_C_INLINE.
40620
40621 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40622
40623         Merge getpass from libc, plus a few fixes.
40624
40625         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
40626         Include <stdbool.h>.
40627         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
40628         __fsetlocking to empty.
40629         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
40630         do include <bits/libc-lock.h>.
40631         Do not include <fcntl.h>; not needed.
40632         [_LIBC]: Include <wchar.h>.
40633         (NOTCANCEL_MODE): New macro.
40634         (flockfile, funlockfile) [_LIBC]: New macros.
40635         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
40636         [!_LIBC]: New macros.
40637         (call_fclose): New function.
40638         (getpass): Use it.  Save tty stream separately; this simplifies the
40639         code and makes it more reliable if stdin happens to equal stdout.
40640         Invoke __fsetlocking on tty.
40641         Handle thread cancellation if needed.
40642         Namespace cleanup (use __tcgetattr, __getline).
40643         Use bool for Booleans.
40644         [USE_IN_LIBIO]: Handle wide streams.
40645         [!_LIBC]: Unconditionally do the fseek, since we don't know what
40646         stream might go where.
40647
40648         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
40649         doesn't have to include <stdio.h> before us.
40650         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
40651         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
40652         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
40653         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
40654         if not declared, so that we can use getpass.c code from libc without
40655         rewriting it.
40656         (flockfile, ftrylockfile, funlockfile): New macros.
40657
40658 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40659
40660         * modules/getpass: Depend on stdbool.
40661
40662 2003-10-08  Paul Eggert  <eggert@twinsun.com>
40663
40664         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
40665
40666 2003-10-07  Karl Berry  <karl@gnu.org>
40667
40668         * config/config.{guess,sub}: update from config.
40669
40670 2003-10-06  Jim Meyering  <jim@meyering.net>
40671             Bruno Haible  <bruno@clisp.org>
40672
40673         This lets translators provide better translations for the
40674         "Written by ..." part of --version output.
40675         * lib/version-etc.h: Include stdarg.h.
40676         (version_etc_copyright): Declare as readonly.
40677         (version_etc): Make this function variadic with a NULL-terminated list
40678         of author name strings.
40679         (version_etc_va): New declaration.
40680         * lib/version-etc.c: Include stdarg.h, stdlib.h.
40681         (version_etc_copyright): Declare as readonly.
40682         (version_etc_va): New function. Provide a different translatable string
40683         for each possible number of authors < 10. Abbreviate when there are 10
40684         authors or more.
40685         (version_etc): Make this function variadic. Call version_etc_va.
40686         Suggestion from Gary V. Vaughan.
40687
40688         * lib/long-options.h (parse_long_options): Change prototype: the
40689         authors string is moved to the end and becomes variadic.
40690         * lib/long-options.c: Include stdarg.h.
40691         (parse_long_options): Make this function variadic, too.
40692         Call version_etc_va, not version_etc.
40693
40694 2003-10-06  Bruno Haible  <bruno@clisp.org>
40695
40696         * modules/version-etc-2: Remove file.
40697         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
40698
40699 2003-10-06  Bruno Haible  <bruno@clisp.org>
40700
40701         * modules/fatal-signal: New file.
40702         * MODULES.html.sh (func_all_modules): Add fatal-signal.
40703
40704 2003-10-06  Bruno Haible  <bruno@clisp.org>
40705
40706         * m4/fatal-signal.m4: New file.
40707         * m4/signalblocking.m4: New file, from GNU gettext.
40708
40709 2003-10-06  Bruno Haible  <bruno@clisp.org>
40710
40711         * lib/version-etc-2.h: Remove file.
40712         * lib/version-etc-2.c: Remove file.
40713
40714 2003-10-06  Bruno Haible  <bruno@clisp.org>
40715
40716         * lib/fatal-signal.h: New file, from GNU gettext.
40717         * lib/fatal-signal.c: New file, from GNU gettext.
40718
40719 2003-10-05  Paul Eggert  <eggert@twinsun.com>
40720
40721         * README: Rework advice for preventing empty .o files.
40722         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
40723         not <sys/types.h>.
40724
40725 2003-10-04  Karl Berry  <karl@gnu.org>
40726
40727         * lib/argp*: update from libc.
40728
40729 2003-10-04  Karl Berry  <karl@gnu.org>
40730
40731         * config/config.{guess,sub}: update from config.
40732
40733 2003-10-02  Bruno Haible  <bruno@clisp.org>
40734
40735         * modules/lchown (Include): Add lchown.h.
40736         * modules/time_r (Include): Use "..." syntax.
40737         * modules/xgetdomainname (Include): Add xgetdomainname.h.
40738
40739 2003-10-01  Simon Josefsson  <jas@extundo.com>
40740
40741         * MODULES.html.sh (func_all_modules): Move gethostname from section
40742         'based on' to section 'lacking' POSIX:2001.
40743
40744 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
40745
40746         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
40747         to output mode on the same stream.
40748
40749 2003-09-29  Paul Eggert  <eggert@twinsun.com>
40750
40751         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
40752         Fix arg typo in previous patch.
40753
40754 2003-09-28  Jim Meyering  <jim@meyering.net>
40755
40756         * lib/error.c: Correct cpp indentation.
40757
40758 2003-09-27  Paul Eggert  <eggert@twinsun.com>
40759
40760         * modules/free: New file.
40761
40762 2003-09-27  Paul Eggert  <eggert@twinsun.com>
40763
40764         * m4/free.m4: New file.
40765
40766 2003-09-27  Paul Eggert  <eggert@twinsun.com>
40767
40768         * lib/minmax.h (MIN, MAX)
40769         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
40770         Omit the special code that used __typeof__, since we worry that
40771         it could be more trouble than it's worth.  See:
40772         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
40773         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
40774
40775         * lib/free.c: New file.
40776
40777 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
40778
40779         Trivial fixes to Makefile.am parts of module listings.
40780         * modules/strstr: Append strstr.h to lib_SOURCES.
40781         * modules/strcase: Likewise, for strcase.h.
40782
40783 2003-09-27  Karl Berry  <karl@gnu.org>
40784
40785         * config/mkinstalldirs: update from automake.
40786
40787 2003-09-26  Paul Eggert  <eggert@twinsun.com>
40788
40789         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
40790         (error_tail): Do not loop, reallocating temporary buffer, since
40791         the output cannot contain more wide characters than the input
40792         contains bytes, the size must be big enough already.  This avoids
40793         one potential size overflow calculation.  Check for size overflow
40794         when calculating temporary buffer size.  Free temporary buffer
40795         when done, if it was allocated with malloc; this plugs a memory
40796         leak.  Remove casts from void * to pointers, that are no longer
40797         needed now that we're assuming C89 or better.
40798
40799         Merge error changes from glibc.
40800
40801         * lib/error.c, error.h: Update copyright notice header to match glibc.
40802         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
40803         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
40804         Disable cancellation while printing error.
40805         * lib/error.h: Prepend __ to parameter names.
40806
40807 2003-09-26  Jim Meyering  <jim@meyering.net>
40808
40809         * lib/error.c (error_tail): Move some declarations
40810         into inner scope where the local variables are used.
40811
40812 2003-09-26  Bruno Haible  <bruno@clisp.org>
40813
40814         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
40815         stpncpy().
40816         Don't define stpncpy through config.h; it's now done through stpncpy.h.
40817
40818 2003-09-26  Bruno Haible  <bruno@clisp.org>
40819
40820         * lib/stpncpy.h (gnu_stpncpy): New declaration.
40821         (stpncpy): Define as alias for gnu_stpncpy.
40822         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
40823
40824 2003-09-25  Simon Josefsson  <jas@extundo.com>
40825
40826         * lib/xgetdomainname.h: New file.
40827         * lib/xgetdomainname.c: New file.
40828
40829 2003-09-25  Simon Josefsson  <jas@extundo.com>
40830             Bruno Haible  <bruno@clisp.org>
40831
40832         * modules/getdomainname: New file.
40833         * modules/xgetdomainname: New file.
40834         * MODULES.html.sh (func_all_modules): Add getdomainname,
40835         xgetdomainname.
40836
40837 2003-09-25  Simon Josefsson  <jas@extundo.com>
40838             Bruno Haible  <bruno@clisp.org>
40839
40840         * m4/getdomainname.m4: New file.
40841
40842 2003-09-25  Simon Josefsson  <jas@extundo.com>
40843             Bruno Haible  <bruno@clisp.org>
40844
40845         * lib/getdomainname.h: New file.
40846         * lib/getdomainname.c: New file.
40847
40848 2003-09-25  Karl Berry  <karl@gnu.org>
40849
40850         * lib/argp-fmtstream.c, argp-help.c: update from libc.
40851
40852 2003-09-25  Karl Berry  <karl@gnu.org>
40853
40854         * config/install-sh: update from automake.
40855
40856 2003-09-25  Bruno Haible  <bruno@clisp.org>
40857
40858         * modules/version-etc-2: New file, from modules/version-etc with
40859         modifications.
40860         * MODULES.html.sh (func_all_modules): Add version-etc-2.
40861
40862 2003-09-25  Bruno Haible  <bruno@clisp.org>
40863
40864         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
40865         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
40866
40867 2003-09-24  Simon Josefsson  <jas@extundo.com>
40868
40869         * modules/xgethostname: Add xgethostname.h.
40870
40871 2003-09-24  Paul Eggert  <eggert@twinsun.com>
40872
40873         * lib/linebuffer.c (freebuffer): Don't free the argument, just
40874         the buffer associated with the argument.  Bug reported by
40875         Simon Josefsson.
40876
40877 2003-09-24  Paul Eggert  <eggert@twinsun.com>
40878
40879         * README: Document assumptions that 'int' is at least 32 bits
40880         wide, that integer arithmetic is 2's complement without overflow,
40881         that there are no holes in integer values, that adding sizes of
40882         two nonoverlapping objects can't overflow, and that all-bits-zero
40883         yields scalar zero.  Fix spelling and capitalization typos.
40884
40885 2003-09-19  Karl Berry  <karl@gnu.org>
40886
40887         * lib/argp.h: update from libc.
40888
40889 2003-09-17  Paul Eggert  <eggert@twinsun.com>
40890
40891         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
40892         to avoid spurious warnings like "AC_RUN_IFELSE was called before
40893         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
40894
40895 2003-09-17  Paul Eggert  <eggert@twinsun.com>
40896
40897         * gnulib-tool: Use "test -h", not "test -L", for portability
40898         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
40899         (tags_regexp): Remove, since \| doesn't conform to POSIX.
40900         (sed_extract_prog): Issue s commands one-by-one, rather than
40901         using \| in one s command.
40902
40903 2003-09-16  Paul Eggert  <eggert@twinsun.com>
40904
40905         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
40906         input error, instead of returning NULL the next time we are called
40907         (and therefore losing track of errno).
40908
40909 2003-09-16  Bruno Haible  <bruno@clisp.org>
40910
40911         * gnulib-tool (func_create_testdir): Warn about duplicated
40912         dependencies.
40913
40914 2003-09-15  Paul Eggert  <eggert@twinsun.com>
40915
40916         * modules/argmatch, modules/fatal, modules/obstack,
40917         modules/xalloc, modules/xgethostname: Sort dependencies by
40918         importance, not alphabetically.
40919
40920 2003-09-15  Paul Eggert  <eggert@twinsun.com>
40921
40922         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
40923         fails, so that the caller gets the proper errno.
40924
40925         * lib/readutmp.c (read_utmp): Likewise.
40926         Check for fstat error.  Close stream and free storage
40927         when failing.
40928
40929 2003-09-14  Karl Berry  <karl@gnu.org>
40930
40931         * config/srclist.txt (strdup.c): disable for c89 changes.
40932
40933 2003-09-14  Jim Meyering  <jim@meyering.net>
40934
40935         * lib/getloadavg.c: Correct cpp indentation.
40936         * lib/strdup.c: Likewise.
40937         * lib/vasnprintf.c: Likewise.
40938
40939 2003-09-14  Bruno Haible  <bruno@clisp.org>
40940
40941         * modules/fwriteerror: New file.
40942         * MODULES.html.sh (func_all_modules): Add fwriteerror.
40943
40944 2003-09-14  Bruno Haible  <bruno@clisp.org>
40945
40946         * lib/fwriteerror.h: New file.
40947         * lib/fwriteerror.c: New file.
40948
40949 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40950
40951         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
40952         modules/xgethostname, modules/xalloc: Depend on exit.
40953
40954 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40955
40956         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
40957
40958         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
40959         and AC_MINIX, too, so that their extensions are available.
40960
40961         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
40962         This macro has been superseded by gl_BACKUPFILE.
40963
40964         More patches to assume C89 or better.
40965
40966         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
40967
40968         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
40969         unconditionally.
40970         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
40971         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
40972         Include <string.h>, <stdlib.h> unconditionally.
40973         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
40974         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
40975         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
40976         headers or for string.h.
40977         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
40978         or strtoul.
40979
40980         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
40981         headers.
40982         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
40983         * m4/userspec.m4 (gl_USERSPEC): Likewise.
40984         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
40985         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
40986         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
40987         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
40988         memcpy, memset.
40989         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
40990         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
40991         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
40992         strtol.
40993         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
40994         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
40995         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
40996         strtoul.
40997
40998 2003-09-12  Paul Eggert  <eggert@twinsun.com>
40999
41000         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
41001         * lib/obstack.c [!defined _LIBC]: Likewise.
41002         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
41003         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
41004         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
41005
41006         More changes to assume C89 or better.
41007
41008         * lib/error.c (error_tail): Assume vprintf.
41009
41010         * lib/argmatch.c (getenv): Remove decl.
41011         * lib/progreloc.c (get_full_program_name): Define via prototype.
41012         * lib/setenv.c (clearenv): Likewise.
41013         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
41014         needed.
41015         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
41016         (malloc, memcpy): Remove decls.
41017         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
41018         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
41019         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41020         (memcpy): Remove macro.
41021         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
41022         (__P): Remove.  All uses removed.
41023         (PTR): Remove.  All uses changed to void *.
41024         (CHAR_BIT, NULL): Remove.
41025         (spaces, zeros, memset_space, memset_zero)
41026         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
41027         Remove.
41028         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
41029         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
41030         Define with prototype.
41031         Remove now-unnecessary prototype decl.
41032         (extra_args_spec): Assume ANSI C.  All uses changed.
41033         (extra_args_spec_iso): Remove.
41034         (my_strftime, emacs_strftimeu): Define via prototype.
41035         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
41036         unconditionally.
41037         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
41038         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
41039         (strtoul, strtol): Remove decls.
41040         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
41041         LONG_MAX): Remove.
41042         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
41043         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
41044         (LOCALE_PARAM_PROTO): New macro.
41045         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
41046         (INTERNAL (strtol), strtol): Define with a prototype.
41047         (PARAMS): Remove.  All uses removed.
41048         * lib/tempname.c: Include <string.h> unconditionally.
41049         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
41050         * lib/xgethostname.c (main): Define with a prototype.
41051         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
41052         Include <stdlib.h> unconditionally.
41053         (calloc, malloc, realloc, free): Remove decls.
41054         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
41055         Include <stdlib.h> unconditionally.  Sort include file names.
41056         (strtod): Remove.
41057         (xstrtod): Define with a prototype.
41058         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
41059         (strtol, strtoul): Remove decls.
41060
41061 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41062
41063         More patches to assume C89 or better.
41064         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
41065         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
41066         string.h, memchr, STDC_HEADERS.
41067
41068 2003-09-11  Paul Eggert  <eggert@twinsun.com>
41069
41070         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
41071         Include <stdlib.h>, <string.h> unconditionally.
41072         Remove now-unnecessary cast to char *.
41073         * lib/strnlen.c: Include <string.h> unconditionally.
41074         * lib/yesno.c (yesno): Define with a prototype.
41075
41076 2003-09-11  Bruno Haible  <bruno@clisp.org>
41077
41078         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
41079
41080 2003-09-10  Jim Meyering  <jim@meyering.net>
41081
41082         * lib/error.c: Correct indentation of cpp directives.
41083
41084 2003-09-10  Bruno Haible  <bruno@clisp.org>
41085
41086         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
41087         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
41088         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
41089         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
41090         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
41091         <stdlib.h> and <string.h> checks.
41092         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
41093         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
41094
41095 2003-09-10  Bruno Haible  <bruno@clisp.org>
41096
41097         * lib/strcspn.c: Include <string.h> unconditionally.
41098         * lib/strpbrk.c: Include <string.h> unconditionally.
41099         * lib/strstr.c: Include <string.h> unconditionally.
41100         * lib/unicodeio.c: Include <string.h> unconditionally.
41101         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
41102         * lib/unsetenv.c: Likewise.
41103         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
41104         * lib/yesno.c: Include <stdlib.h> unconditionally.
41105         (rpmatch): Add prototype.
41106
41107 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41108
41109         More patches to assume C89 or better.
41110         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
41111         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
41112         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
41113         or for string.h.
41114         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
41115         stdlib.h.
41116         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
41117         C headers.
41118         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
41119         string.h.
41120         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
41121         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
41122         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
41123         or for string.h.
41124         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
41125         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
41126         C headers.
41127         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
41128         memcpy.
41129         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
41130         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
41131         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
41132         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
41133         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
41134         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
41135         string.h, free.
41136         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
41137         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
41138         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
41139         C headers, or for string.h.
41140         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
41141         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
41142         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
41143         headers, memory.h, stdlib.h, string.h, strings.h.
41144         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
41145         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
41146         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
41147         strchr.
41148         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
41149         headers, memory.h, string.h.
41150         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
41151         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
41152         free.
41153         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
41154         headers.
41155         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
41156         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
41157         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
41158         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
41159         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
41160
41161 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41162
41163         More K&R removal.
41164
41165         * lib/acosl.c (main): Use a prototype.
41166         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
41167         tanl.c: Likewise.
41168
41169         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
41170
41171         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
41172         (getopt, etopt_long, getopt_long_only, _getopt_internal)
41173         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
41174         with a prototype.
41175         * lib/getopt.c (const): Remove macro.
41176         Include <string.h> unconditionally.
41177         (my_index): Remove; all uses changed to strchr.
41178         (strlen): Remove decl.
41179         (exchange): Remove forward decl; no longer needed.
41180         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
41181         Define with prototype.
41182         * lib/getopt1.c (const): Remove macro.
41183         (getopt_long, getopt_long_only, main): Define with prototype.
41184
41185         * lib/getugroups.c: Include <string.h> unconditionally.
41186
41187         * lib/getusershell.c: Include <stdlib.h> unconditionally.
41188         (getusershell, setusershell, endusershell, readname, main):
41189         Define with prototypes.
41190
41191         * lib/group-member.c: Include group-member.h first.
41192         Include <stdlib.h> unconditionally.
41193
41194         * lib/hard-locale.c: Include hard-locale.h first.
41195         Include <stdlib.h>, <string.h> unconditionally.
41196
41197         * lib/hash.c (free, malloc): Remove decls.
41198         Include <stdlib.h> unconditionally.
41199
41200         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
41201         (getenv): Do not declare.
41202
41203         * lib/idcache.c: Include <string.h> unconditionally.
41204
41205         * lib/long-options.c: Include long-options.h first, to test interface.
41206         Include <stdlib.h> unconditionally.
41207
41208         * lib/makepath.c: Include makepath.h first, to test interface.
41209         Include <stdlib.h> and <string.h> unconditionally.
41210
41211         * lib/linebuffer.c: Include <stdlib.h>.
41212         (free): Remove decl.
41213
41214         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
41215         stddef.h. rpl_malloc returns void *, not char *.
41216         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
41217         prototype.
41218
41219         * lib/md5.h: Include <limits.h> unconditionally.
41220         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
41221         (__P): Remove; all uses removed.
41222         * lib/md5.c: Include "md5.h" first.
41223         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
41224         md5_buffer, md5_process_bytes, md5_process_block):
41225         Define with prototypes.
41226         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
41227         * lib/sha.c: Include "sha.h" first.
41228         Include <stdlib.h>, <string.h> unconditionally.
41229
41230         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
41231         * lib/memcmp.c (__ptr_t): Likewise.
41232         * lib/memrchr.c (__ptr_t): Likewise.
41233         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
41234         Include <string.h> unconditionally.
41235         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
41236         * lib/memchr.c: Include <stdlib.h> unconditionally.
41237         * lib/memchr.c (LONG_MAX): Remove.
41238         * lib/memrchr.c (LONG_MAX): Likewise.
41239         * lib/memchr.c (__memchr): Define via a prototype.
41240         * lib/memrchr.c (__memrchr): Likewise.
41241         * lib/memcmp.c (__P): Remove, and remove all uses.
41242         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
41243         Remove forward decls; no longer needed.
41244         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
41245         Use types required by C89 in prototype.
41246
41247         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
41248         * lib/savedir.c: Likewise.
41249         * lib/mkdir.c (free): Remove decl.
41250         * lib/rmdir.c (rmdir): Define with a prototype.
41251         * lib/savedir.c: Include savedir.h first, to test interface.
41252
41253         * lib/mktime.c (STDC_HEADERS): Remove.
41254         Include <stdlib.h>, <string.h> unconditionally.
41255
41256         * lib/modechange.c: Include <stdlib.h> unconditionally.
41257         (malloc): Remove decl.
41258
41259         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
41260         (free): Remove decl.
41261
41262         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
41263         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
41264         (This type really should be intptr_t, but that's a C99ism.)
41265         (_obstack_memcpy): Remove: all uses changed to memcpy.
41266         Include <string.h> unconditionally.
41267         (struct obstack): Assume __STDC__ for types of members
41268         chunkfun, freefun, extra_arg.
41269         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
41270         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
41271         obstack_begin, obstack_specify_allocation,
41272         obstack_specify_allocation_with_arg, obstack_chunkfun,
41273         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
41274         Remove unprototyped decls and the macros that use them.
41275         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
41276         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
41277         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
41278         (defined __STDC__ && __STDC__)]:
41279         Remove nonprototyped code.
41280         Include <stdlib.h> unconditionally.
41281         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
41282         _obstack_allocated_p, _obstack_free, obstack_free,
41283         _obstack_memory_used, print_and_abort):
41284         Define using prototypes.
41285         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
41286         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
41287         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
41288         obstack_next_free, obstack_object_size, obstack_room) [0]:
41289         Remove unused, unprototyped code.
41290
41291         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
41292
41293         * lib/physmem.c (physmem_total, physmem_available, main): Define
41294         with prototypes.
41295
41296         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
41297         (main): Define with a prototype.
41298
41299         * lib/posixver.c (getenv): Remove decl.
41300
41301         * lib/putenv.c (malloc): Returns void *, not char *.
41302         Include <string.h> unconditionally.
41303         (strchr, memcpy, NULL): Do not define.
41304
41305         * lib/readtokens.c: Include readtokens.h first, to test interface.
41306         Include <stdlib.h>, <string.h> unconditionally.
41307         (init_tokenbuffer): Define with a prototype.
41308
41309         * lib/regex.c (PARAMS): Remove.  All uses removed.
41310         All uses of _RE_ARGS removed, too.
41311         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
41312         unconditionally.
41313         (bzero): Assume memset exists.
41314         (memcmp, memcpy, NULL): Remove.
41315         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
41316         char, or assignments to local vars of type signed char.
41317         (init_syntax_once, PREFIX(extract_number_and_incr),
41318         PREFIX(print_partial_compiled_pattern),
41319         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
41320         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
41321         PREFIX(regex_grow_registers), PREFIX(regex_compile),
41322         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
41323         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
41324         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
41325         wcs_compile_range, byte_compile_range, truncate_wchar,
41326         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
41327         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
41328         count_mbs_length, wcs_re_match_2_internal,
41329         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
41330         PREFIX(alt_match_null_string_p),
41331         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
41332         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
41333         regfree, PREFIX(extract_number)): Define with prototype.  Remove
41334         now-unnecessary declaration, if any.
41335         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
41336         regcomp, regexec):
41337         Remove now-unnecessary casts among pointer types.
41338         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
41339
41340         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
41341         (free): Remove decl.
41342
41343         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
41344
41345         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
41346         (free): Remove decl.
41347
41348         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
41349         * lib/xgetcwd.c: Likewise.
41350
41351         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
41352         (free): Remove decl.
41353
41354         * lib/strchrnul.c (strchrnul): Define with a prototype.
41355         Fix bug: c_in was not converted to char before searching.
41356
41357         The following changes are not K&R related:
41358
41359         * lib/group-member.h: Include <sys/types.h>, so that this file is
41360         self-contained.
41361         * lib/makepath.h: Likewise.
41362
41363         * lib/getusershell.c (readname, default_index, line_size, readname):
41364         Use size_t, not int, for sizes.
41365         (readname): If the size overflows, report an error instead of
41366         looping forever.
41367
41368 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41369
41370         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
41371         libc.
41372
41373 2003-09-09  Paul Eggert  <eggert@twinsun.com>
41374
41375         * README: New section: portability guidelines.
41376
41377 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41378
41379         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
41380         C89 spec.
41381
41382 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
41383
41384         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
41385
41386 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41387
41388         Assume C89 or better; remove K&R cruft.
41389         A few of these changes were first proposed by Derek Robert Price
41390         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
41391
41392         * lib/addext.c: Include <string.h> unconditionally.
41393         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
41394         Don't declare getenv or malloc.
41395
41396         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
41397         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
41398         (NULL): Remove.
41399         (find_stack_direction, alloca): Use prototypes.
41400
41401         * lib/atexit.c (atexit): Define using a prototype.
41402
41403         * lib/basename.c, dirname.c, stripslash.c:
41404         Include <string.h> unconditionally.
41405
41406         * lib/bcopy.c: Include <stddef.h>.
41407         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
41408
41409         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
41410
41411         * lib/error.h (error, error_at_line, error_print_progname)
41412         [! (defined (__STDC__) && __STDC__)]: Remove decls.
41413         * lib/error.c: Include error.h first, to check interface.
41414         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41415         (VA_START): Remove; all uses changeed to va_start.
41416         (exit, strerror): Remove decls.
41417         (error_print_progname): Prototype uncondionally.
41418         Don't include <errno.h>; no longer needed.
41419         (private_strerror): Remove.
41420         (error_tail): Always define.
41421         (error, error_at_line): Assume C89 or better; always use prototypes.
41422         * lib/fatal.c: Include "fatal.h" first, to test interface.
41423         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
41424         (VA_START): Remove; all uses changed to va_start.
41425         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
41426         this case.
41427         (exit): Remove decl.
41428         (fatal): Prototype unconditionally.  Assume va_start works.
41429         Abort at end, to pacify gcc.
41430
41431         * lib/euidaccess.c (main): Define with a prototype.
41432
41433         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
41434
41435         * lib/exitfail.c: Include <stdlib.h> unconditionally.
41436
41437         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
41438         prototypes.
41439         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
41440         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
41441         (getenv): Remove decl.
41442         (fnmatch): Define using a prototype.
41443         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
41444         (FCT): Define using a prototype.
41445
41446         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
41447
41448         * lib/gethostname.c: Include <stddef.h>.
41449         (gethostname): Define with prototype.  Length is size_t, not int.
41450
41451 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41452
41453         Assume C89 or better; remove K&R cruft.
41454         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
41455         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
41456         string.h, getenv, malloc.
41457         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
41458         headers.
41459         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
41460         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
41461         do not check for strerror.
41462         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
41463         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
41464         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
41465         do not check for doprnt or vprintf.
41466         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
41467         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
41468
41469 2003-09-08  Paul Eggert  <eggert@twinsun.com>
41470
41471         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
41472         getversion.c should have been removed then, but was accidentally
41473         preserved.
41474
41475         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
41476         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
41477
41478 2003-09-08  Karl Berry  <karl@gnu.org>
41479
41480         * config/config.sub, config.guess, srclistvars.sh: update from savannah
41481                 config, forget about prep.
41482
41483         * config/depcomp, missing: update from automake.
41484
41485 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41486
41487         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
41488         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41489
41490 2003-09-07  Paul Eggert  <eggert@twinsun.com>
41491
41492         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
41493         copy_tm_result.  Bug reported by Simon Josefsson in
41494         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
41495
41496 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41497
41498         * m4/time_r.m4: New file.
41499         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
41500         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
41501         is. Check for timegm declaration.
41502         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
41503         Do not check for gmtime_r.
41504         Replace mktime if __mktime_internal does not exist and if mktime
41505         hasn't been replaced already.
41506
41507 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41508
41509         * lib/time_r.c, lib/time_r.h: New files.
41510
41511         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
41512         __localtime_r.
41513         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
41514         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
41515
41516         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
41517         __gmtime_r.
41518         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
41519         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
41520         Include <time_r.h>.
41521
41522         * lib/timegm.c: Switch to glibc implementation, with the following
41523         changes:
41524         [defined HAVE_CONFIG_H]: Include <config.h>.
41525         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
41526         (__mktime_internal) [!defined _LIBC]: New decl.
41527         (__gmtime_r) [!defined _LIBC]: New macro and function.
41528         (timegm): Use a prototype, since gnulib assumes C89.
41529         Do not bother declaring tmp to be const, as it's not really usefu.
41530         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
41531         (timegm): Declare only if HAVE_DECL_TIMEGM.
41532
41533 2003-09-06  Paul Eggert  <eggert@twinsun.com>
41534
41535         * MODULES.html.sh (func_all_modules): Add time_r.
41536         * modules/time_r: New file.
41537         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
41538         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
41539
41540 2003-09-03  Paul Eggert  <eggert@twinsun.com>
41541
41542         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
41543         Bug reported by Lute Kamstra in
41544         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
41545
41546         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
41547         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
41548         course with correspondingly smaller numbers for tomorrow and
41549         yesterday.  From Tadayoshi Funaba.  Originally installed into
41550         sh-utils on 1999-08-07, but the patch got lost (I guess during the
41551         coreutils merge?).
41552
41553 2003-08-31  Simon Josefsson  <jas@extundo.com>
41554
41555         * modules/timegm: New file.
41556         * MODULES.html.sh (func_all_modules): Add timegm.
41557
41558 2003-08-31  Simon Josefsson  <jas@extundo.com>
41559
41560         * m4/timegm.m4: New file.
41561
41562 2003-08-31  Simon Josefsson  <jas@extundo.com>
41563
41564         * lib/timegm.h: New file.
41565         * lib/timegm.c: New file.  Based on
41566         wget-1.8.2/src/http.c:mktime_from_utc.
41567
41568 2003-08-31  Karl Berry  <karl@gnu.org>
41569
41570         * lib/argp.h: update from libc.
41571
41572 2003-08-28  Bruno Haible  <bruno@clisp.org>
41573
41574         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
41575         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
41576         followed by '#define fnmatch fnmatch_posix' gives an error.
41577
41578 2003-08-28  Bruno Haible  <bruno@clisp.org>
41579
41580         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
41581         warning on QNX, which defines O_BINARY to 000000.
41582
41583 2003-08-27  Jim Meyering  <jim@meyering.net>
41584
41585         * m4/mkstemp.m4: Require that the system mkstemp be able to create
41586         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
41587         would fail after 32.  Reported by Danny Levinson.  Details here:
41588         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
41589
41590 2003-08-24  Bruno Haible  <bruno@clisp.org>
41591
41592         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
41593         MSVC7 <stdio.h> is included later.
41594
41595 2003-08-22  Simon Josefsson  <jas@extundo.com>
41596
41597         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
41598
41599 2003-08-20  Karl Berry  <karl@gnu.org>
41600
41601         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
41602
41603 2003-08-20  Bruno Haible  <bruno@clisp.org>
41604
41605         * modules/progname: New file.
41606         * MODULES.html.sh (func_all_modules): Add progname.
41607
41608 2003-08-20  Bruno Haible  <bruno@clisp.org>
41609
41610         * lib/progname.h: New file, from GNU gettext.
41611         * lib/progname.c: New file, from GNU gettext.
41612         * lib/progreloc.c: New file, from GNU gettext.
41613
41614 2003-08-19  Jim Meyering  <jim@meyering.net>
41615
41616         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
41617         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
41618
41619 2003-08-19  Bruno Haible  <bruno@clisp.org>
41620
41621         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
41622         more.
41623
41624 2003-08-19  Bruno Haible  <bruno@clisp.org>
41625
41626         * lib/xstrdup.c: Assume <string.h> exists.
41627
41628 2003-08-18  Paul Eggert  <eggert@twinsun.com>
41629
41630         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
41631         in makefile rules.
41632
41633 2003-08-18  Jim Meyering  <jim@meyering.net>
41634
41635         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
41636         * m4/lib-ld.m4: Likewise.
41637
41638 2003-08-18  Jim Meyering  <jim@meyering.net>
41639
41640         * lib/setenv.h: Indent nested cpp directive.
41641         * lib/vasnprintf.c: Remove trailing blanks.
41642
41643 2003-08-17  Simon Josefsson  <jas@extundo.com>
41644
41645         * modules/xstrndup: New file.
41646         * MODULES.html.sh (func_all_modules): Add xstrndup.
41647
41648 2003-08-17  Simon Josefsson  <jas@extundo.com>
41649
41650         * modules/argp: Fix autoconf macro name. Add more dependencies.
41651
41652 2003-08-17  Simon Josefsson  <jas@extundo.com>
41653
41654         * m4/xstrndup.m4: New file.
41655
41656 2003-08-17  Simon Josefsson  <jas@extundo.com>
41657
41658         * m4/argp.m4: New file.
41659
41660 2003-08-17  Simon Josefsson  <jas@extundo.com>
41661             Bruno Haible  <bruno@clisp.org>
41662
41663         * lib/xstrndup.h: New file.
41664         * lib/xstrndup.c: New file.
41665
41666 2003-08-17  Bruno Haible  <bruno@clisp.org>
41667
41668         * modules/strndup (Files, Include): Add lib/strndup.h.
41669
41670 2003-08-17  Bruno Haible  <bruno@clisp.org>
41671
41672         * modules/euidaccess (Files): Add lib/euidaccess.h.
41673
41674 2003-08-17  Bruno Haible  <bruno@clisp.org>
41675
41676         * lib/strndup.h: New file.
41677
41678 2003-08-17  Bruno Haible  <bruno@clisp.org>
41679
41680         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
41681         like AC_GNU_SOURCE.
41682         * modules/extensions (configure.ac): Comment out the invocation of
41683         gl_USE_SYSTEM_EXTENSIONS.
41684
41685 2003-08-16  Paul Eggert  <eggert@twinsun.com>
41686
41687         Merges from coreutils, etc.
41688         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
41689         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
41690         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
41691         fixing a typo.
41692         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
41693         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
41694
41695 2003-08-16  Paul Eggert  <eggert@twinsun.com>
41696
41697         Document merge from coreutils.
41698         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
41699         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
41700         * modules/utime: Add m4/utimes-null.m4.
41701
41702 2003-08-16  Paul Eggert  <eggert@twinsun.com>
41703
41704         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
41705         space, undoing this 2003-08-12 change:
41706         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
41707
41708 2003-08-16  Paul Eggert  <eggert@twinsun.com>
41709
41710         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
41711         strtoul.c from libc, undoing this 2003-08-12 change:
41712         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
41713
41714 2003-08-16  Jim Meyering  <jim@meyering.net>
41715
41716         Merges from coreutils.
41717         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
41718         prefix.  Adjust cache variables similarly.  Create 500 rather than
41719         just 300 files, to exercise bug on Darwin6.5, too.
41720         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
41721         $missing_dir.
41722         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
41723         AM_SYS_POSIX_TERMIOS.
41724         Reported by mkc@mathdogs.com.
41725         Also change use of $am_cv_sys_posix_termios
41726         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
41727         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
41728         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
41729         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
41730         in /proc/mounts until it finds one with matching device number.  This
41731         is unnecessary when the FILE argument *is* a mount point.  No stat call
41732         is necessary in that case.  So, disable the statvfs-testing code on
41733         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
41734         as RedHat bug# 84846.
41735         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
41736         to 1MB, so as not to render systems with no stack size limit (e.g.,
41737         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
41738         Include <unistd.h>.  On some systems,
41739         it is required for the definition of _SC_PAGESIZE.
41740
41741 2003-08-16  Jim Meyering  <jim@meyering.net>
41742
41743         Merge from coreutils.
41744         * lib/xstrtoimax.c: #else #if -> #elif.
41745         * lib/xstrtoumax.c: Likewise.
41746
41747 2003-08-16  Jim Meyering  <jim@meyering.net>
41748
41749         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
41750         * m4/utimes.m4: Removed.
41751         * m4/utimes-null.m4: Renamed from utimes.m4.
41752
41753         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
41754         to 1MB, so as not to render systems with no stack size limit (e.g.,
41755         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
41756         Include <unistd.h>.  On some systems,
41757         it is required for the definition of _SC_PAGESIZE.
41758
41759 2003-08-16  Jim Meyering  <jim@meyering.net>
41760         and Paul Eggert  <eggert@cs.ucla.edu>
41761
41762         Merges from coreutils, etc.
41763
41764         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
41765         using the latest version from cvs.  This avoids problems with #line
41766         directives using a vendor (Sun) compiler.
41767         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
41768         Don't set GETGROUPS_LIB here; now it's
41769         done via getgroups.m4's wrapper function.
41770         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
41771         rather than just in sh-util/configure.in, so that the
41772         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
41773         same.
41774         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
41775         AC_FUNC_GETLOADAVG where to find getloadavg.c.
41776         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
41777         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
41778         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
41779         Remove code that is now done by the newly-required macros.
41780         Append $(EXEEXT) to DF_PROG.
41781         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
41782         Do not invoke or require the following here,
41783         since prereq.m4 or some gnulib .m4 now does this for us:
41784         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
41785         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
41786         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
41787         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
41788         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
41789         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
41790         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
41791         AC_FUNC_OBSTACK.
41792         Do not replace the following functions, as this is now the job
41793         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
41794         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
41795         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
41796         atexit getpass, strdup, getpagesize.
41797         Replace 'raise'.
41798         Do not check for the following functions, as this is now the job
41799         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
41800         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
41801         setregid.
41802         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
41803         Check for sys/sysctl.h.
41804         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
41805         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
41806         of checking for ssize_t ourselves.
41807
41808         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
41809         Require every macro that gnulib/modules/* suggests for us.
41810         (jm_PREREQ_ADDEXT): New macro.
41811         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
41812         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
41813
41814         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
41815         (gl_PHYSMEM): Use it.
41816         Also check for `table' function.
41817         Check for new headers and functions.
41818         Add check for sys/sysmp.h.
41819         With suggestions from Kaveh Ghazi.
41820         Ignore headers that are present but cannot be compiled.  This
41821         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
41822         C 5.4.
41823
41824 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41825
41826         Document merge from coreutils.
41827         * modules/userspec: Depend on posixver.
41828         * modules/strftime: Depend on tzset.
41829
41830 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41831
41832         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
41833         rather than tab, after '#' in shell-script copyright notices.
41834         Suggested by Bruno Haible.
41835
41836 2003-08-15  Paul Eggert  <eggert@twinsun.com>
41837
41838         * config/srclist-update: Use three spaces, rather than tab, after '#'
41839         in shell-script copyright notices.  Suggested by Bruno Haible.
41840         Remove unnecessary parenthesization in regular expression.
41841
41842 2003-08-15  Jim Meyering  <jim@meyering.net>
41843
41844         Merge from coreutils.
41845         * lib/xgethostname.c: Include <stdlib.h>.
41846         (xghostname): Don't exit for anything other than memory-related
41847         failure; just return NULL.
41848         * lib/userspec.c: Include "posixver.h".
41849         (parse_user_spec): Accept `.' as a separator only
41850         in pre-POSIX-200112 mode.
41851         * lib/strtoimax.c: Use #elif rather than #else #if.
41852         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
41853         Remove function, now that we can rely on a working tzset function.
41854         [!_LIBC]: Ensure that the required autoconf test has been run.
41855         [!defined _NL_CURRENT && HAVE_STRFTIME]:
41856         Use underlying_strftime for %r.
41857         * lib/sha.c: Merge in some clean-up and optimization changes from
41858         glibc.
41859         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
41860         Ensure that it is a multiple of 64.
41861         Rearrange loop exit tests so as to avoid performing an
41862         additional fread after encountering an error or EOF.
41863         * lib/realloc.c: Update copyright date.
41864
41865 2003-08-15  Jim Meyering  <jim@meyering.net>
41866         and Paul Eggert  <eggert@twinsun.com>
41867
41868         Merge from coreutils.
41869         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
41870         member but strut utmpx does not.  Needed for AIX 4.3.3.
41871         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
41872
41873 2003-08-15  Jim Meyering  <jim@meyering.net>
41874         and Paul Eggert  <eggert@cs.ucla.edu>
41875
41876         Merges from coreutils, etc.
41877         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
41878         Require gl_FUNC_TZSET_CLOBBER.
41879         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
41880         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
41881         members.
41882
41883 2003-08-14  Paul Eggert  <eggert@twinsun.com>
41884
41885         Help the merge from coreutils.
41886         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
41887         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
41888         * m4/tzset.m4: Use it too.
41889
41890 2003-08-14  Paul Eggert  <eggert@twinsun.com>
41891
41892         * modules/tzset: New file.
41893
41894 2003-08-14  Jim Meyering  <jim@meyering.net>
41895
41896         Merges from coreutils.
41897         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
41898         variable names, rather than @FNMATCH_H@.
41899         * modules/alloca: Likewise for $(ALLOCA_H).
41900
41901         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
41902         the three copies of the literal target, `fnmatch.h'.
41903         * modules/alloca (alloca.h): Likewise.
41904
41905 2003-08-14  Jim Meyering  <jim@meyering.net>
41906
41907         Merge from coreutils.
41908         * m4/tzset.m4: New file.
41909         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
41910         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
41911         otherwise, AIX 5.1 systems would end up using the latter.
41912         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
41913         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
41914         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
41915         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
41916
41917 2003-08-14  Jim Meyering  <jim@meyering.net>
41918
41919         Merge from coreutils.
41920         * lib/obstack.h: Whitespace changes.
41921         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
41922         and xcalloc return values.
41923         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
41924         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
41925         hang on OSF/1 5.1 for DIR on both local and remote file systems.
41926         Reported by (and fix confirmed by) Nelson H. F. Beebe.
41927         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
41928         error from mntctl.
41929         Use mntctl's return value to drive the entry-processing loop, since
41930         we can't rely on the value of the vmt_length member in the last
41931         entry.  On some systems doing so could result in exhausting
41932         virtual memory.  Based in part on a patch from Mike Jetzer.
41933
41934 2003-08-14  Jim Meyering  <jim@meyering.net>
41935         and Paul Eggert  <eggert@twinsun.com>
41936
41937         Merges from coreutils, plus other fixes.
41938         * lib/physmem.c: Merge in portability changes from gcc/libiberty
41939         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
41940         for credits and details.  Thanks to Kaveh Ghazi for helping
41941         to keep these files in sync.
41942         (ARRAY_SIZE): Define it.
41943         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
41944         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
41945         (memcasecmp): Don't assume size_t fits in unsigned int.
41946         Remove casts and duplicate code.
41947         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
41948         (memcpy): Remove definition.
41949         Merge in some clean-up and optimization changes from glibc.
41950         [BLOCKSIZE]: Move definition to top of file.
41951         Ensure that it is a multiple of 64.
41952         Rearrange loop exit tests so as to avoid performing an
41953         additional fread after encountering an error or EOF.
41954         * lib/md5.h (md5_uintptr): Define.
41955         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
41956         return to the initial working directory.  Preserve errno
41957         for caller.
41958         * lib/idcache.c: Include "xalloc.h".
41959         (xmalloc, xrealloc): Remove decls.
41960         (getuser): Remove casts no longer required in C89.
41961         * lib/human.c: Include stdio.h, for sprintf.
41962         * lib/group-member.c: Include "xalloc.h".
41963         (xmalloc, xrealloc): Remove decls.
41964         (get_group_info): Remove casts no longer required in C89.
41965         * lib/getusershell.c (readname): Remove casts no longer required in
41966         C89.
41967         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
41968         * lib/getline.c: Whitespace fix, from coreutils.
41969
41970 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41971
41972         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
41973         Check for isascii.
41974
41975         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
41976         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
41977         Undo previous (whitespace-only) change.
41978
41979 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41980
41981         * lib/exclude.c: Include <ctype.h>
41982         (IN_CTYPE_DOMAIN): New macro.
41983         (is_space): New fn.
41984         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
41985         and empty lines.
41986
41987         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
41988         Undo previous (whitespace-only) change.
41989
41990 2003-08-13  Paul Eggert  <eggert@twinsun.com>
41991
41992         * config/srclist-update: Change update back to the old behavior,
41993         leaving whitespace alone.  Use one 'sed' command rather than a
41994         pipeline.
41995         (fixlicense): Now a variable, not a function.
41996         (remove_trailing_blanks): Remove.
41997         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
41998         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
41999         Undo previous (whitespace-only) change.
42000
42001 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42002
42003         Merge from coreutils.
42004         * modules/euidaccess: Add lib_SOURCES, include for new
42005         file euidaccess.h
42006
42007 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42008
42009         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
42010         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
42011         Normalize leading white space and remove trailing white space.
42012
42013         Merge from coreutils
42014         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
42015
42016         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
42017         0.12.1.  These files are now being upgraded automatically by
42018         ../config/srclist-update.
42019
42020 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42021
42022         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
42023         Normalize leading white space and remove trailing white space.
42024         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
42025         notice, as per ../config/srclist-update.
42026
42027         Merge from coreutils.
42028         * lib/euidaccess.h: New file.
42029         * lib/euidaccess.c: Include it.
42030         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
42031         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
42032         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
42033
42034 2003-08-12  Paul Eggert  <eggert@twinsun.com>
42035
42036         * config/srclist-update: Add copyright notice.
42037         (remove_id_lines, remove_trailing_blanks): New constants.
42038         (fixfile): Use them to normalize spacing a bit in copied files.
42039         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
42040         Normalize leading white space and remove trailing white space.
42041
42042         * config/texinfo.tex: Sync with texinfo.
42043
42044         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
42045         strtoul.c from libc, to merge coreutils whitespace changes.
42046
42047         * config/srclist.txt: Get the following m4 files from gettext:
42048         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
42049         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
42050         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
42051         wint_t.m4.
42052
42053 2003-08-12  Karl Berry  <karl@gnu.org>
42054
42055         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
42056         been made.
42057
42058 2003-08-11  Paul Eggert  <eggert@twinsun.com>
42059
42060         * modules/gnu-source, m4/gnu-source.m4:
42061         Remove; we're assuming Autoconf 2.54 or later now.
42062         Suggested by Bruno Haible.
42063         * MODULES.html.sh (func_all_modules): Remove gnu-source.
42064
42065 2003-08-11  Bruno Haible  <bruno@clisp.org>
42066
42067         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
42068
42069 2003-08-11  Bruno Haible  <bruno@clisp.org>
42070
42071         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
42072         (vasnprintf): Use it instead of wcslen.
42073
42074 2003-08-11  Bruno Haible  <bruno@clisp.org>
42075
42076         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
42077         value to ensure that _Bool promotes to int. Use #define for _Bool when
42078         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
42079
42080 2003-08-10  Karl Berry  <karl@gnu.org>
42081
42082         * lib/regex.h: update from libc (whitespace fix).
42083
42084 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42085
42086         Merge some files from coreutils.  These changes were
42087         originally made by Jim Meyering.
42088         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
42089         many older Unixes require this.
42090         * lib/alloca.c (alloca): Remove cast to argument of free;
42091         no longer needed in C89.
42092         * lib/alloca_.h, regex.h: Fix white space to match
42093         what GNU indent does.
42094
42095 2003-08-09  Paul Eggert  <eggert@twinsun.com>
42096
42097         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
42098         apparently Emacs's Unicode mode got confused before my 2003-08-05
42099         checkin.
42100
42101 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42102
42103         * m4/extensions.m4: New file.
42104         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
42105         Require gl_USE_SYSTEM_EXTENSIONS.
42106         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
42107         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
42108
42109 2003-08-08  Paul Eggert  <eggert@twinsun.com>
42110
42111         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
42112         * modules/extensions, modules/gnu-source: New files.
42113         * modules/timespec, modules/unlocked-io: Depend on extensions.
42114
42115 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42116
42117         * modules/restrict: New file.
42118         * MODULES.html.sh (func_all_modules): Add restrict.
42119         * modules/regex: Depend on restrict.
42120
42121 2003-08-07  Paul Eggert  <eggert@twinsun.com>
42122
42123         * m4/restrict.m4: New file.
42124         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
42125
42126 2003-08-07  Bruno Haible  <bruno@clisp.org>
42127
42128         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
42129         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
42130
42131 2003-08-07  Bruno Haible  <bruno@clisp.org>
42132
42133         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
42134         makes the module 'getndelim2' compatible with the module 'getline'.
42135
42136 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42137
42138         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
42139         byte with "\201" to avoid glitches when editing that source file
42140         with multi-gnome-terminal.
42141
42142 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42143
42144         * lib/bumpalloc.h: Remove.
42145
42146 2003-08-05  Paul Eggert  <eggert@twinsun.com>
42147
42148         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
42149         * modules/bumpalloc: Remove.
42150
42151 2003-08-04  Paul Eggert  <eggert@twinsun.com>
42152
42153         * lib/getloadavg.c: Change copyright notice and spacing to conform to
42154         GNU coding style.
42155
42156         Merge from coreutils.
42157         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
42158         1. From glibc.
42159         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
42160         from Karl Berry, implemented by Jim Meyering.
42161         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
42162         from Dmitry V. Levin.
42163         Remove anachronistic cast of xrealloc.
42164         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
42165         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
42166         type. Otherwise, it wouldn't compile with at least /bin/cc on
42167         ymp-cray-unicos9.0.2.X.
42168         Combine two mostly-identical uses of alloca into one.
42169         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
42170
42171 2003-08-04  Dave Love  <d.love@dl.ac.uk>
42172
42173         [From Emacs.]
42174
42175         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
42176         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
42177         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
42178         obsolete NLIST_NAME_UNION.
42179         [__GNU__]: Undef BSD and FSCALE.
42180         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
42181
42182 2003-08-03  Paul Eggert  <eggert@twinsun.com>
42183
42184         * lib/stdbool_.h (_Bool): Make it signed char, instead of
42185         an enum type, so that it's guaranteed to promote to int.  See:
42186         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
42187
42188 2003-08-03  Karl Berry  <karl@gnu.org>
42189
42190         * config/depcomp: update from automake.
42191
42192 2003-07-31  Paul Eggert  <eggert@twinsun.com>
42193
42194         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
42195         (strerror): Don't assume that a printable int fits in 14 bytes.
42196
42197 2003-07-31  Bruno Haible  <bruno@clisp.org>
42198
42199         * modules/getpass-gnu: New file.
42200         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
42201
42202 2003-07-31  Bruno Haible  <bruno@clisp.org>
42203
42204         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
42205
42206 2003-07-24  Karl Berry  <karl@gnu.org>
42207
42208         * config/missing: update from automake.
42209
42210 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
42211             Bruno Haible  <bruno@clisp.org>
42212
42213         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
42214         * lib/getline.c (getline, getdelim): Likewise.
42215         Remove _GNU_SOURCE define; now it's defined in config.h through
42216         m4/getline.m4.
42217
42218 2003-07-23  Karl Berry  <karl@gnu.org>
42219
42220         * config/config.sub: update from prep.
42221
42222 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42223
42224         * modules/xalloc (Depends-on): Add exitfail.
42225         * modules/xmemcoll: Likewise.
42226
42227 2003-07-22  Paul Eggert  <eggert@twinsun.com>
42228
42229         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
42230         over-parenthesization in macros.
42231
42232         Sync with coreutils.
42233
42234         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
42235         required by C99.
42236
42237         Use `exit_failure' for xalloc and xmemcoll instead of their own
42238         private exit-failure variables.
42239         * lib/xalloc.h (xalloc_exit_failure): Remove.
42240         * lib/xmalloc.c: Likewise.  Include exitfail.h.
42241         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
42242         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
42243         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
42244         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
42245
42246 2003-07-20  Jim Meyering  <jim@meyering.net>
42247
42248         * modules/closeout (Depends-on): Add exitfail.
42249         Suggestion from Bruno Haible.
42250
42251 2003-07-19  Karl Berry  <karl@gnu.org>
42252
42253         * config/config.sub: update from prep.
42254
42255 2003-07-18  Paul Eggert  <eggert@twinsun.com>
42256
42257         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
42258         Remove.
42259         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
42260         to test that it can stand by itself.  Include "exitfail.h".
42261         Clients should set exit_failure instead.
42262         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
42263
42264 2003-07-18  Bruno Haible  <bruno@clisp.org>
42265
42266         * modules/getndelim2: New file.
42267         * modules/getline: Share files with module getndelim2.
42268         * modules/getnline: Depend on getndelim2 instead of sharing files with
42269         it. Add getnline.c to lib_SOURCES.
42270         * MODULES.html.sh (func_all_modules): Add getndelim2.
42271
42272 2003-07-18  Bruno Haible  <bruno@clisp.org>
42273
42274         * m4/getndelim2.m4: New file.
42275         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
42276         invoke gl_PREREQ_GETNDELIM2.
42277         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
42278         gl_PREREQ_GETNDELIM2.
42279         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
42280         gl_GETNDELIM2.
42281
42282 2003-07-18  Bruno Haible  <bruno@clisp.org>
42283
42284         * lib/getndelim2.h: New file.
42285         * lib/getndelim2.c: Make into a module of its own. Include config.h,
42286         getndelim2.h.
42287         (getndelim2): Make non-static. Change return type to ssize_t.
42288         * lib/getline.h: Change argument names.
42289         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
42290         * lib/getnline.c: Include getndelim2.h.
42291
42292 2003-07-18  Andreas Schwab  <schwab@suse.de>
42293
42294         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
42295
42296 2003-07-17  Karl Berry  <karl@gnu.org>
42297
42298         * config/config.sub: update from prep.
42299
42300 2003-07-17  Bruno Haible  <bruno@clisp.org>
42301
42302         * modules/getnline: New file.
42303         * modules/getline: Add lib/getndelim2.c to source file list.
42304         * MODULES.html.sh (func_all_modules): Add getnline.
42305
42306 2003-07-17  Bruno Haible  <bruno@clisp.org>
42307
42308         * m4/getnline.m4: New file.
42309
42310 2003-07-17  Bruno Haible  <bruno@clisp.org>
42311
42312         * m4/Makefile.am.in: Remove file.
42313         * m4/Makefile.am: Remove file.
42314         * m4/Makefile.in: Remove file.
42315
42316 2003-07-17  Bruno Haible  <bruno@clisp.org>
42317
42318         * lib/getnline.h: New file.
42319         * lib/getnline.c: New file.
42320         * lib/getndelim2.c: New file, extracted from getline.c.
42321         (getndelim2): Renamed from getdelim2, with added nmax argument.
42322         * lib/getline.c: Include getndelim2.c.
42323         (getdelim2): Moved out to getndelim2.c.
42324         (getline, getdelim): Update.
42325
42326 2003-07-17  Bruno Haible  <bruno@clisp.org>
42327
42328         * lib/Makefile.am: Remove file.
42329         * lib/Makefile.in: Remove file.
42330
42331 2003-07-17  Bruno Haible  <bruno@clisp.org>
42332
42333         * configure.in: Remove file.
42334         * Makefile.in: Remove file.
42335
42336 2003-07-17  Bruno Haible  <bruno@clisp.org>
42337
42338         * MODULES.html.sh: Put the </BODY> right before </HTML>.
42339
42340 2003-07-16  Karl Berry  <karl@gnu.org>
42341
42342         * config/srclist-update: was running fixlicense twice, which caused
42343                 texinfo.tex to be nullified for some reason.  Simplify,
42344                 $gplsrc is no longer needed as far as I can see?
42345
42346 2003-07-16  Jim Meyering  <jim@meyering.net>
42347
42348         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
42349
42350 2003-07-15  Paul Eggert  <eggert@twinsun.com>
42351
42352         * config/srclist.txt: Get the following files from gettext-runtime/intl
42353         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
42354         ref-del.sin.  From Bruno Haible.
42355         * config/srclist-update (fixfile): Change grep pattern again, since the
42356         previous fix didn't work (there was another trailing $).  Use
42357         '[$]' to escape the $s.
42358
42359 2003-07-15  Karl Berry  <karl@gnu.org>
42360
42361         * lib/vasnprintf.c: update from gettext.
42362
42363 2003-07-15  Karl Berry  <karl@gnu.org>
42364
42365         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
42366         gets expanded when surrounded by '$'.
42367
42368 2003-07-15  Jim Meyering  <jim@meyering.net>
42369
42370         * modules/save-cwd: Don't depend on error.  From Derek Price.
42371
42372 2003-07-15  Jim Meyering  <jim@meyering.net>
42373
42374         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
42375
42376 2003-07-14  Simon Josefsson  <jas@extundo.com>
42377
42378         * modules/mempcpy: New file.
42379         * MODULES.html.sh (func_all_modules): Add mempcpy.
42380
42381 2003-07-14  Simon Josefsson  <jas@extundo.com>
42382
42383         * m4/mempcpy.m4: New file.
42384
42385 2003-07-14  Simon Josefsson  <jas@extundo.com>
42386
42387         * lib/mempcpy.h: New file.
42388         * lib/mempcpy.c: New file.
42389
42390 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42391
42392         * modules/getdate, modules/posixtm: Depend on mktime.
42393
42394 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42395
42396         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
42397         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
42398         unicodeio.c, unicodeio.h, unlocked-io.h:
42399         Switch from LGPL to GPL.
42400
42401 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42402
42403         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
42404         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
42405         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
42406         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
42407         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
42408         updated automatically by ../config/srclist-update.  This changes
42409         their license from LPGL to GPL.
42410
42411 2003-07-14  Paul Eggert  <eggert@twinsun.com>
42412
42413         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
42414         assumed to refer to the root of the most recent stable gettext version.
42415         * config/srclistvars.sh: Add defaults for eggert.
42416         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
42417         Match "This program" as well as "The program".  This is needed
42418         for gettext.
42419
42420 2003-07-14  Jim Meyering  <jim@meyering.net>
42421
42422         Don't emit diagnostics.  Let callers do that.
42423         * lib/save-cwd.c: Don't include "error.h".
42424         (save_cwd): Don't call error.  Ensure that errno is valid
42425         when returning nonzero.
42426
42427         * lib/save-cwd.h (restore_cwd): Update prototype.
42428         * lib/save-cwd.c (restore_cwd): Remove two parameters.
42429         Simplify.  Don't call error upon failure.  Let callers do that.
42430         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
42431         when auditing is enabled.  But don't bother updating the #if.
42432
42433 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
42434
42435         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
42436         it breaks C++ compilation.
42437         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
42438
42439 2003-07-10  Simon Josefsson  <jas@extundo.com>
42440
42441         * modules/strchrnul (Makefile.am): Add strchrnul.h.
42442
42443 2003-07-10  Jim Meyering  <jim@meyering.net>
42444
42445         * m4/clock_time.m4: Remove trailing blank.
42446         * m4/intmax_t.m4: Likewise.
42447
42448 2003-07-10  Jim Meyering  <jim@meyering.net>
42449
42450         * lib/vasnprintf.c: Remove trailing blanks.
42451         Make cpp indentation consistent.
42452
42453 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42454
42455         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
42456         posixver.c, strftime.c, strnlen.c, strverscmp.c:
42457         Switch from LGPL to GPL.
42458
42459 2003-07-09  Paul Eggert  <eggert@twinsun.com>
42460
42461         * config/srclist.txt: Sort sublists.  Add
42462         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
42463         that differ from gnulib for one reason or another; we'd like this list
42464         to be smaller but for now let's document what we have.
42465
42466 2003-07-08  Paul Eggert  <eggert@twinsun.com>
42467
42468         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
42469         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
42470         and sweeter "eval x=$x".
42471         * config/srclist.txt: Get lib/argp* from glibc.
42472
42473 2003-07-07  Paul Eggert  <eggert@twinsun.com>
42474
42475         * lib/mktime.c: Fix some boundary cases and remove need for floating
42476         point.
42477
42478         Issue a compile-time diagnostic if time_t is floating point, or if
42479         two's complement arithmetic is not in effect, or if arithmetic
42480         right shift does not propagate the sign.  These assumptions were
42481         all in the original code but they weren't checked.
42482
42483         (TIME_T_MIDPOINT, verify): New macros.
42484         (__isleap): Remove; it has integer overflow problems.
42485         (leapyear): New function, without those problems.
42486         (ydhms_tm_diff): Remove; splitting into two parts.
42487         (ydhms_diff): New function, containing the arithmetic part of
42488         the old ydhms_tm_diff function.  Issue a compile-time
42489         diagnostic if we are not using C99 integer division.
42490         Avoid casts when possible.
42491         (guess_time_tm): New function, containing the checking part of
42492         the old ydhms_tm_diff function.  Return the new value, rather than
42493         the difference between it and the old.  Accept a new argument T
42494         so that *T specifies the old value.  Check for overflow in the result.
42495
42496         (__mktime_internal): Use a time_t offset, not a long int offset.
42497         This undoes the 2003-06-04 change, which is no longer needed now
42498         that we have better overflow checking.
42499         (localtime_offset): Likewise.
42500
42501         (__mktime_internal): Avoid harmful overflow on hosts where time_t
42502         and long are 64-bit but int is only 32-bit.
42503         (ydhms_diff): Use long int to store year1 and yday1.
42504         Issue a compile-time diagnostic if long int is not wide enough.
42505
42506         (__mktime_internal): Use long int to store adjusted year and yday.
42507         Use plain C rather than preprocessor commands, if that doesn't
42508         affect efficiency.
42509         Check for overflow (and try to repair) after each probe
42510         rather than checking only at the very end.  This avoids some bugs
42511         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
42512         does not equal GMT offset at maximum time).
42513         Use integer to check for overflow rather than floating point; this
42514         is more portable to non-IEEE hosts, and is a tad faster.
42515         When we detect that we are oscillating between two values,
42516         don't check whether tm_isdst has the requested value, since
42517         we already know the answer.  When tm_isdst has the wrong value,
42518         use a different heuristic to find the right one, based on the
42519         extreme values actually observed in practice in tz2003a,
42520         rather than the (overly optimistic) "previous 3 calendar quarters".
42521
42522         (not_equal_tm, print_tm, check_result): Use "const T" rather than
42523         "T const" to accommodate glibc style.
42524         (check_result): Use less-confusing report format.  "long" -> "long int.
42525         (main): Likewise.
42526         Don't loop if the iteration overflows time_t.
42527         Allow a negative step in the iteration.
42528
42529 2003-07-06  Karl Berry  <karl@gnu.org>
42530
42531         * config/depcomp: update from automake.
42532         * config/config.sub: update from prep.
42533
42534 2003-07-03  Karl Berry  <karl@gnu.org>
42535
42536         * config/config.guess: update from prep.
42537
42538 2003-07-01  Paul Eggert  <eggert@twinsun.com>
42539
42540         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
42541         xreadlink.c now includes it unconditionally.
42542
42543 2003-07-01  Paul Eggert  <eggert@twinsun.com>
42544
42545         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
42546         having it depend on HAVE_SYS_TYPES_H.
42547
42548 2003-07-01  Bruno Haible  <bruno@clisp.org>
42549
42550         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
42551         <sys/types.h> should be sufficient.
42552         Reported by Paul Eggert.
42553
42554 2003-06-26  Karl Berry  <karl@gnu.org>
42555
42556         * config/depcomp: update from automake.
42557
42558 2003-06-26  Bruno Haible  <bruno@clisp.org>
42559
42560         * modules/human: Depend on module stdbool.
42561
42562 2003-06-25  Bruno Haible  <bruno@clisp.org>
42563
42564         * modules/readlink: New file.
42565         * modules/xreadlink: Depend on it.
42566         * MODULES.html.sh (func_all_modules): Add readlink.
42567
42568 2003-06-25  Bruno Haible  <bruno@clisp.org>
42569
42570         * m4/readlink.m4: New file.
42571
42572 2003-06-25  Bruno Haible  <bruno@clisp.org>
42573
42574         * lib/readlink.c: New file.
42575
42576 2003-06-22  Karl Berry  <karl@gnu.org>
42577
42578         * config/srclist.txt: update mkinstalldirs from automake.
42579         * config/mkinstalldirs: update.
42580
42581 2003-06-22  Bruno Haible  <bruno@clisp.org>
42582
42583         Portability to mingw32.
42584         * m4/ssize_t.m4: New file, from GNU gettext.
42585         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
42586         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
42587
42588 2003-06-22  Bruno Haible  <bruno@clisp.org>
42589
42590         * modules/safe-read: Add m4/ssize_t.m4.
42591         * modules/xreadlink: Add m4/ssize_t.m4.
42592
42593 2003-06-20  Bruno Haible  <bruno@clisp.org>
42594
42595         Assume C89, so PARAMS isn't needed.
42596         * lib/unicodeio.h (PARAMS): Remove.
42597         * lib/unicodeio.c: Don't use PARAMS.
42598
42599 2003-06-18  Karl Berry  <karl@gnu.org>
42600
42601         * config/config.{guess,sub}: update from prep.
42602
42603 2003-06-18  Jim Meyering  <jim@meyering.net>
42604
42605         Merge changes from coreutils.
42606         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
42607         Remove explicit declarations of xmalloc and realloc.
42608         Include xalloc.h.
42609         (read_utmp): Remove anachronistic cast of xmalloc.
42610
42611 2003-06-17  Paul Eggert  <eggert@twinsun.com>
42612
42613         Assume C89, so PARAMS isn't needed.
42614         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
42615         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
42616         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
42617         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
42618         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
42619         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
42620         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
42621         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
42622         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
42623         lib/xstrtod.h, lib/xstrtol.h: Likewise.
42624         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
42625         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
42626         no longer needed. Anyway, config.h should always be included before any
42627         other file.
42628
42629 2003-06-11  Simon Josefsson  <jas@extundo.com>
42630
42631         * modules/sysexits: New file.
42632         * MODULES.html.sh (func_all_modules): Add sysexits.
42633
42634 2003-06-11  Simon Josefsson  <jas@extundo.com>
42635
42636         * lib/sysexit_.h: New file.
42637
42638 2003-06-11  Derek Price  <derek@ximbiot.com>
42639
42640         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
42641         necessary.
42642
42643 2003-06-11  Bruno Haible  <bruno@clisp.org>
42644
42645         * m4/sysexits.m4: New file.
42646
42647 2003-06-10  Simon Josefsson  <jas@extundo.com>
42648
42649         * lib/argp.h: New file, from glibc.
42650         * lib/argp-ba.c: New file, from glibc.
42651         * lib/argp-eexst.c: New file, from glibc.
42652         * lib/argp-fmtstream.c: New file, from glibc.
42653         * lib/argp-fmtstream.h: New file, from glibc.
42654         * lib/argp-fs-xinl.c: New file, from glibc.
42655         * lib/argp-help.c: New file, from glibc.
42656         * lib/argp-namefrob.h: New file, from glibc.
42657         * lib/argp-parse.c: New file, from glibc.
42658         * lib/argp-pv.c: New file, from glibc.
42659         * lib/argp-pvh.c: New file, from glibc.
42660         * lib/argp-xinl.c: New file, from glibc.
42661
42662 2003-06-10  Simon Josefsson  <jas@extundo.com>
42663
42664         * modules/strchrnul: New file.
42665
42666 2003-06-10  Simon Josefsson  <jas@extundo.com>
42667
42668         * modules/argp: New file.
42669
42670 2003-06-10  Simon Josefsson  <jas@extundo.com>
42671
42672         * m4/strchrnul.m4: New file.
42673
42674 2003-06-10  Simon Josefsson  <jas@extundo.com>
42675
42676         * lib/strchrnul.h: New file.
42677         * lib/strchrnul.c: New file.
42678
42679 2003-06-10  Bruno Haible  <bruno@clisp.org>
42680
42681         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
42682
42683 2003-06-07  Karl Berry  <karl@gnu.org>
42684
42685         * config/config.{guess,sub}: update from prep.
42686
42687 2003-06-07  Jim Meyering  <jim@meyering.net>
42688
42689         * modules/strtod: Use $(...) notation, not @...@ for
42690         AC_REPLACE'd variables.
42691         * modules/localcharset: Likewise.
42692
42693 2003-06-07  Jim Meyering  <jim@meyering.net>
42694
42695         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
42696         in place of my name in the copyright comment.
42697         Remove definition and uses of __P.
42698
42699         From coreutils.
42700         * lib/stat.c: Don't declare xmalloc explicitly.
42701         Instead, include "xalloc.h".
42702         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
42703         xrealloc, and xcalloc return values.
42704         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
42705         Improve comment.
42706         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
42707
42708 2003-06-07  Bruno Haible  <bruno@clisp.org>
42709
42710         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
42711         avoid AC_CONFIG_LINKS.
42712         * modules/fnmatch (Makefile.am): Use explicit creation rule for
42713         fnmatch.h, to avoid AC_CONFIG_LINKS.
42714         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
42715
42716 2003-06-07  Bruno Haible  <bruno@clisp.org>
42717
42718         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
42719         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
42720         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
42721         directory.
42722         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
42723         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
42724         directory.
42725
42726 2003-06-06  Jim Meyering  <jim@meyering.net>
42727
42728         Merge from coreutils.
42729         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
42730         Consolidate declarations and initializations of *_base* locals.
42731
42732         Merge from coreutils.
42733         This avoids a core dump on systems without GNU putenv,
42734         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
42735         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
42736         (unsetenv): New static function, from GNU libc.
42737         (rpl_putenv): Use it.
42738
42739         * lib/modechange.c: Remove trailing blanks.
42740
42741         Merge from coreutils.
42742         * lib/fsusage.c: Remove declaration of statfs.
42743         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
42744
42745         * lib/posixtm.c: Include <stdbool.h> unconditionally.
42746
42747 2003-06-06  Jim Meyering  <jim@meyering.net>
42748
42749         * lib/stdbool_.h: Renamed from stdbool.h.in.
42750
42751 2003-06-06  Jim Meyering  <jim@meyering.net>
42752             Bruno Haible  <bruno@clisp.org>
42753
42754         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
42755         Adjust Makefile.am snippet not to redirect directly to target.
42756         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
42757
42758 2003-06-05  Paul Eggert  <eggert@twinsun.com>
42759
42760         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
42761         mismatch, look in future quarters as well as past.  This fixes a
42762         bug when processing fall-backwards gaps immediately after a long
42763         period of daylight-saving time.
42764
42765         * lib/mktime.c: Assume freestanding C89 or better.
42766         (HAVE_LIMITS_H): Remove.  Assume it's 1.
42767         (__P): Remove; not used.
42768         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
42769         (mktime, not_equal_tm, print_tm, check_result,
42770         main): Use prototypes.  Use const * where appropriate.
42771         (main): Fix typo in testing code that uncovered by above changes.
42772         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
42773
42774 2003-06-04  Paul Eggert  <eggert@twinsun.com>
42775
42776         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
42777         locale.h, localeconv.  This merges changes from coreutils.
42778
42779         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
42780         It can be removed after the next Autoconf is released.
42781         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
42782         needed.
42783
42784 2003-06-04  Paul Eggert  <eggert@twinsun.com>
42785
42786         * lib/mktime.c: Fix Debian bug 177940
42787         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
42788         (localtime_offset): Now long int, not time_t, because we want it
42789         to be guaranteed to be signed.  All uses changed.
42790         (__mktime_internal): If overflow would occur when adding offset,
42791         don't add it.
42792
42793         Merge 'human' changes from coreutils.  Rewrite to support
42794         locale-specific notations like thousands separators.
42795         * lib/human.c: Simplify authorship notice.
42796         Include human.h immediately after config.h.
42797         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
42798         <limits.h>: Do not include, since human.h does.
42799         (SIZE_MAX, UINTMAX_MAX): New macros.
42800         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
42801         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
42802         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
42803         (power_letter): Renamed from suffixes.
42804         (generate_suffix_backwards): Remove.
42805         (adjust_value): Now takes int style (because of human.h changes)
42806         and long double value (for greater precision on some platforms).
42807         (group_number): New function.
42808         (human_readable): Use it.  Use integer options, not enum.
42809         Put the options before the sizes in the arg list.
42810         Support all the new options.
42811         The old human_readable function has been removed;
42812         use inttostr.h instead.
42813         (human_readable, default_block_size, humblock):
42814         Use uintmax_t, not int, for block sizes.
42815         (human_readable_inexact, block_size_types): Remove.
42816         (block_size_opts): New constant.
42817         (human_options): Renamed from human_block_size, with new signature
42818         that allows block sizes up to UINTMAX_MAX.  All callers changed.
42819         * lib/human.h: Add copyright and authorship notice.
42820         Include <limits.h> and <stdbool.h> unconditionally.
42821         (PARAMS): Remove.  All uses removed.
42822         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
42823         (enum human_inexact_style): Remove tag; now a nameless enum.
42824         (human_floor, human_ceiling, human_round_to_even): Now have
42825         values 2, 0, 1 rather than -1, 1, 0.
42826         (human_group_digits, human_suppress_point_zero, human_autoscale,
42827         human_base_1024, human_SI, human_B): New constants.
42828         (human_readable_inexact, human_block_size): Remove.
42829         (human_readable): Size args are now uintmax_t, not int.
42830         (human_options): New decl.
42831
42832         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
42833         unnecessary now that we assume C89 or better.  This change
42834         imported from coreutils.
42835
42836         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
42837         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
42838         in the 2003-05-30 sync from glibc.
42839
42840         .h files should stand alone, but we shouldn't include <sys/types.h>
42841         if we can get away with just <stddef.h>.
42842
42843         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
42844         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
42845         rather than <sys/types.h>, as we merely need size_t.
42846         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
42847         to get size_t.
42848         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
42849         Include <stdio.h>, to get FILE.
42850         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
42851         memcasecmp.h has included <stddef.h> and all we need is size_t.
42852         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
42853         our interface, instead of including <sys/types.h>
42854
42855 2003-06-04  Paul Eggert  <eggert@twinsun.com>
42856
42857         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
42858         now, as glibc mktime is buggy on non-glibc systems.
42859
42860 2003-06-03  Karl Berry  <karl@gnu.org>
42861
42862         * config/config.sub: update from prep.
42863
42864 2003-06-02  Paul Eggert  <eggert@twinsun.com>
42865
42866         [from coreutils]
42867         Fix some minor time-related bugs with POSIX time arguments.
42868         Some valid time stamps were being rejected (notably -1, and
42869         time stamps before 1900 on 64-bit hosts).  And some invalid
42870         time stamps were being accepted, e.g. September 31.
42871
42872         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
42873         that we can return (time_t) -1 successfully.
42874         * lib/posixtm.c: Likewise.
42875         [HAVE_STDBOOL_H]: Include <stdbool.h>.
42876         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
42877         (t): Remove static var.
42878         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
42879         of static var.  All uses changed.
42880         (year): Do not reject years before 1900; they can occur with
42881         64-bit time_t.
42882         (posix_time_parse): Do not check for out-of-range components;
42883         that is now the caller's responsibility, since our checks were
42884         only approximations.
42885         (posixtime): Use mktime to check for out-of-range components,
42886         since it knows them exactly.
42887         If mktime returns (time_t) -1, check whether an error actually occurred
42888         by invoking localtime on -1.
42889         (main) [TEST_POSIXTIME]: Check for input data errors, and report
42890         posixtime failures better.
42891         Improve the test data (in comments only).
42892
42893 2003-06-02  Karl Berry  <karl@gnu.org>
42894
42895         * config/mkinstalldirs (version): new variable.
42896         (--version): new option.
42897         (usage): improve message.
42898
42899 2003-05-30  Karl Berry  <karl@gnu.org>
42900
42901         * lib/mktime.c: update from libc.
42902
42903 2003-05-30  Bruno Haible  <bruno@clisp.org>
42904
42905         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
42906         * config/config.rpath: Upgrade to gettext-0.12.1.
42907
42908 2003-05-30  Bruno Haible  <bruno@clisp.org>
42909
42910         * m4/gettext.m4: Upgrade to gettext-0.12.1.
42911         * m4/nls.m4: New file, from gettext-0.12.1.
42912         * m4/po.m4: New file, from gettext-0.12.1.
42913         * m4/progtest.m4: Upgrade to gettext-0.12.1.
42914
42915 2003-05-30  Bruno Haible  <bruno@clisp.org>
42916
42917         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
42918         * lib/localcharset.h: Likewise.
42919         * lib/localcharset.c: Likewise.
42920
42921 2003-05-29  Karl Berry  <karl@gnu.org>
42922
42923         * config/config.rpath: update from gettext.
42924
42925 2003-05-28  Paul Eggert  <eggert@twinsun.com>
42926
42927         Assume the headers required for C89 freestanding compilers.
42928         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
42929         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
42930         * m4/human.m4 (gl_HUMAN): Likewise.
42931         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
42932         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
42933         * m4/userspec.m4 (gl_USERSPEC): Likewise.
42934         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
42935         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
42936         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
42937
42938 2003-05-28  Paul Eggert  <eggert@twinsun.com>
42939
42940         Assume the headers required for C89 freestanding compilers.
42941         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
42942         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
42943         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
42944         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
42945         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
42946         define, since <limits.h> is guaranteed to do that.
42947         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
42948         * lib/exclude.c: Include <stdbool.h> unconditionally.
42949         * lib/tempname.c: Include <stddef.h> unconditionally.
42950         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
42951         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
42952         <stddef.h> does that.
42953         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
42954         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
42955         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
42956         needed.
42957         * lib/xstrtol.c: Likewise.
42958         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
42959         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
42960
42961         * lib/addext.c (addext): Use assignment rather than cast, to avoid
42962         warnings on some platforms.
42963
42964         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
42965         arbitrarily.
42966
42967 2003-05-26  Jim Meyering  <jim@meyering.net>
42968
42969         Merge in a change from coreutils:
42970         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
42971         that is guaranteed to be `no'.  Use `no_such_member' to indicate
42972         that condition, rather than `-1' which is slightly misleading.
42973         Change the name of the cache variable to have the gl_ prefix.
42974         Prompted by a patch from Richard Dawe for DJGPP.
42975
42976 2003-05-24  Karl Berry  <karl@gnu.org>
42977
42978         * config/config.guess: update from prep.
42979
42980 2003-05-22  Karl Berry  <karl@gnu.org>
42981
42982         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
42983
42984 2003-05-20  Karl Berry  <karl@gnu.org>
42985
42986         * config/config.guess: update from prep.
42987
42988 2003-05-18  Karl Berry  <karl@gnu.org>
42989
42990         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
42991         might actually be set by the user.
42992
42993         * config/depcomp, install-sh, mdate-sh: update from automake.
42994
42995 2003-05-17  Bruno Haible  <bruno@clisp.org>
42996
42997         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
42998         invalid expansion for AC_EGREP_CPP.
42999         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
43000         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
43001         Suggested by Akim Demaille <akim@epita.fr> in
43002         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
43003
43004 2003-05-12  Jim Meyering  <jim@meyering.net>
43005
43006         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
43007         the space-padded-by-default conversion specifiers, %e, %k, %l.
43008
43009 2003-05-12  Bruno Haible  <bruno@clisp.org>
43010
43011         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
43012         the string is longer than 4 KB.
43013
43014 2003-05-11  Karl Berry  <karl@gnu.org>
43015
43016         * config/config.{guess,sub}: update from prep.
43017
43018 2003-05-09  Bruno Haible  <bruno@clisp.org>
43019
43020         * modules/error: Add m4/strerror_r.m4 to file list.
43021
43022 2003-05-03  Bruno Haible  <bruno@clisp.org>
43023
43024         Upgrade to Unicode-4.0.
43025         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
43026         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
43027         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
43028         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
43029         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
43030         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
43031         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
43032         Change width of U+E0100..U+E01EF from 1 to 0.
43033
43034 2003-04-25  Jim Meyering  <jim@meyering.net>
43035
43036         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
43037         of type size_t, not int.
43038
43039 2003-04-25  Bruno Haible  <bruno@clisp.org>
43040
43041         * lib/copy-file.c: Include <stddef.h>, for size_t.
43042
43043 2003-04-21  Paul Eggert  <eggert@twinsun.com>
43044
43045         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
43046         code which expansion is under static control.  Patch imported from
43047         Akim Demaille's patch to Bison; see
43048         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
43049
43050 2003-04-14  Bruno Haible  <bruno@clisp.org>
43051
43052         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
43053
43054 2003-04-11  Jim Meyering  <jim@meyering.net>
43055
43056         Merge changes from Coreutils.
43057
43058         2003-03-22  Jim Meyering  <jim@meyering.net>
43059
43060         * lib/strftime.c (widen): Cast alloca return value to proper type.
43061
43062         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
43063
43064         From GNU libc.
43065         * lib/strftime.c (my_strftime): Handle very large width
43066         specifications for numeric values correctly.  Improve checks for
43067         overflow.
43068
43069         2003-01-19  Jim Meyering  <jim@meyering.net>
43070
43071         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
43072         definitions.
43073         (nl_get_alt_digit) [! defined my_strftime]: Define.
43074         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
43075         _nl_get_alt_digit and _nl_get_walt_digit.
43076
43077         * lib/strftime.c (my_strftime): Merge in locale-related changes from
43078         libc. These changes have no effect outside of _LIBC.
43079
43080 2003-04-10  Bruno Haible  <bruno@clisp.org>
43081
43082         * modules/findprog: New file.
43083         * MODULES.html.sh (func_all_modules): Add it.
43084
43085 2003-04-10  Bruno Haible  <bruno@clisp.org>
43086
43087         * m4/findprog.m4: New file.
43088         * m4/eaccess.m4: New file.
43089
43090 2003-04-10  Bruno Haible  <bruno@clisp.org>
43091
43092         * lib/findprog.h: New file, from GNU gettext.
43093         * lib/findprog.c: New file, from GNU gettext.
43094
43095 2003-04-05  Jim Meyering  <jim@meyering.net>
43096
43097         Merge changes from Coreutils.
43098
43099         * lib/exclude.h (PARAMS): Remove definition and uses.
43100         * lib/exclude.c: Remove uses of `PARAMS'.
43101
43102         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
43103         Add test-cases for DOS filenames. Declare program_name.
43104         (main): Set up program_name.  Patch by Rich Dawe.
43105
43106         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
43107         error from mntctl.
43108         Use mntctl's return value to drive the entry-processing loop, since
43109         we can't rely on the value of the vmt_length member in the last
43110         entry.  On some systems doing so could result in exhausting
43111         virtual memory.  Based in part on a patch from Mike Jetzer.
43112
43113 2003-04-04  Bruno Haible  <bruno@clisp.org>
43114
43115         * modules/linebreak: New file.
43116         * MODULES.html.sh (func_all_modules): Add it.
43117
43118 2003-04-04  Bruno Haible  <bruno@clisp.org>
43119
43120         * m4/linebreak.m4: New file.
43121
43122 2003-04-04  Bruno Haible  <bruno@clisp.org>
43123
43124         * lib/linebreak.h: New file, from GNU gettext.
43125         * lib/linebreak.c: New file, from GNU gettext with slight
43126         modifications.
43127         * lib/lbrkprop.h: New file, from GNU gettext.
43128
43129 2003-04-03  Bruno Haible  <bruno@clisp.org>
43130
43131         * modules/utf8-ucs4: New file.
43132         * modules/utf16-ucs4: New file.
43133         * modules/ucs4-utf8: New file.
43134         * modules/ucs4-utf16: New file.
43135         * MODULES.html.sh (func_all_modules): Add them.
43136
43137 2003-04-03  Bruno Haible  <bruno@clisp.org>
43138
43139         * m4/utf-ucs4.m4: New file.
43140         * m4/ucs4-utf.m4: New file.
43141
43142 2003-04-03  Bruno Haible  <bruno@clisp.org>
43143
43144         * lib/utf8-ucs4.h: New file, from GNU gettext.
43145         * lib/utf16-ucs4.h: New file, from GNU gettext.
43146         * lib/ucs4-utf8.h: New file, from GNU gettext.
43147         * lib/ucs4-utf16.h: New file, from GNU gettext.
43148
43149 2003-04-02  Bruno Haible  <bruno@clisp.org>
43150
43151         * modules/binary-io: New file.
43152         * MODULES.html.sh (func_all_modules): Add it.
43153
43154 2003-04-02  Bruno Haible  <bruno@clisp.org>
43155
43156         * lib/binary-io.h: New file, from GNU gettext.
43157
43158 2003-04-01  Bruno Haible  <bruno@clisp.org>
43159
43160         * modules/pathname: New file.
43161         * MODULES.html.sh (func_all_modules): Add it.
43162
43163 2003-04-01  Bruno Haible  <bruno@clisp.org>
43164
43165         * lib/pathname.h: New file, from GNU gettext.
43166         * lib/concatpath.c: New file, from GNU gettext.
43167
43168 2003-03-30  Bruno Haible  <bruno@clisp.org>
43169
43170         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
43171
43172 2003-03-30  Bruno Haible  <bruno@clisp.org>
43173
43174         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
43175         function chown() doesn't exist.
43176
43177 2003-03-28  Bruno Haible  <bruno@clisp.org>
43178
43179         * modules/copy-file: New file.
43180         * MODULES.html.sh (func_all_modules): Add it.
43181
43182 2003-03-28  Bruno Haible  <bruno@clisp.org>
43183
43184         * m4/copy-file.m4: New file.
43185
43186 2003-03-28  Bruno Haible  <bruno@clisp.org>
43187
43188         * lib/copy-file.h: New file, from GNU gettext.
43189         * lib/copy-file.c: New file, from GNU gettext.
43190
43191 2003-03-18  Jim Meyering  <jim@meyering.net>
43192
43193         * lib/quote.c (quote_n): Fix typo in comment.
43194
43195 2003-03-18  Bruno Haible  <bruno@clisp.org>
43196
43197         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
43198         checking.
43199         * m4/onceonly_2_57.m4: Likewise.
43200
43201 2003-03-17  Bruno Haible  <bruno@clisp.org>
43202
43203         * m4/onceonly.m4: Require autoconf 2.54 or newer.
43204         (m4_quote): Remove macro.
43205         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
43206
43207 2003-03-14  Jim Meyering  <jim@meyering.net>
43208
43209         Merge changes from Coreutils.
43210         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
43211         to be const, in order to avoid warnings.
43212         (obstack_room): Likewise.
43213         (obstack_empty_p): Likewise.
43214
43215 2003-03-14  Bruno Haible  <bruno@clisp.org>
43216
43217         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
43218         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
43219
43220 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43221
43222         Merge changes from Bison.
43223         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
43224         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
43225         when compiling Bison 1.875's `bitset bset = obstack_alloc
43226         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
43227         * lib/hash.c: Include <stdbool.h> unconditionally.
43228
43229 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43230
43231         * m4/onceonly.m4 (m4_quote): New macro.
43232         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
43233         Quote AC_FOREACH variable-expansions properly.
43234
43235 2003-03-13  Paul Eggert  <eggert@twinsun.com>
43236
43237         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
43238
43239 2003-03-09  Paul Eggert  <eggert@twinsun.com>
43240
43241         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
43242         Reported by Bruce Becker; see:
43243         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
43244
43245 2003-03-03  Paul Eggert  <eggert@twinsun.com>
43246             Bruno Haible  <bruno@clisp.org>
43247
43248         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
43249         Reported by John Hughes, see
43250         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
43251
43252 2003-02-20  Bruno Haible  <bruno@clisp.org>
43253
43254         * MODULES.html.sh (func_all_modules): Add poll.
43255
43256 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43257
43258         * modules/poll: New file.
43259
43260 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43261
43262         * lib/poll_.h: New file.
43263         * lib/poll.c: New file.
43264
43265 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
43266
43267         * m4/poll.m4: New file.
43268
43269 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43270
43271         * modules/mathl: New file.
43272
43273 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43274
43275         * lib/mathl.h: New file.
43276         * lib/acosl.c: New file.
43277         * lib/asinl.c: New file.
43278         * lib/atanl.c: New file.
43279         * lib/ceill.c: New file.
43280         * lib/cosl.c: New file.
43281         * lib/expl.c: New file.
43282         * lib/floorl.c: New file.
43283         * lib/frexpl.c: New file.
43284         * lib/ldexpl.c: New file.
43285         * lib/logl.c: New file.
43286         * lib/sincosl.c: New file.
43287         * lib/sinl.c: New file.
43288         * lib/sqrtl.c: New file.
43289         * lib/tanl.c: New file.
43290         * lib/trigl.c: New file.
43291         * lib/trigl.h: New file.
43292
43293 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
43294
43295         * m4/mathl.m4: New file.
43296
43297 2003-02-18  Bruno Haible  <bruno@clisp.org>
43298
43299         * MODULES.html.sh (func_all_modules): Add mathl.
43300
43301 2003-02-17  Bruno Haible  <bruno@clisp.org>
43302
43303         * modules/mkdtemp: New module.
43304         * MODULES.html.sh (func_all_modules): Add it.
43305
43306 2003-02-17  Bruno Haible  <bruno@clisp.org>
43307
43308         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
43309
43310 2003-02-17  Bruno Haible  <bruno@clisp.org>
43311
43312         * lib/mkdtemp.h: New file, from GNU gettext.
43313         * lib/mkdtemp.c: New file, from GNU gettext.
43314
43315 2003-02-02  Jim Meyering  <jim@meyering.net>
43316
43317         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
43318         e.g. glibc-2.2.93.
43319
43320 2003-01-31  Bruno Haible  <bruno@clisp.org>
43321
43322         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
43323         'rpl_rename'.
43324         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
43325         'rpl_strnlen'.
43326         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
43327         'rpl_strtod'.
43328         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
43329         'rpl_utime'.
43330
43331 2003-01-31  Bruno Haible  <bruno@clisp.org>
43332
43333         * lib/rename.c: #undef rename before defining rpl_rename.
43334         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
43335
43336 2003-01-30  Bruno Haible  <bruno@clisp.org>
43337
43338         * modules/vasnprintf, modules/vasprintf: New modules.
43339         * MODULES.html.sh (func_all_modules): Add them.
43340
43341 2003-01-30  Bruno Haible  <bruno@clisp.org>
43342
43343         * m4/signed.m4: New file, from GNU gettext.
43344         * m4/longdouble.m4: New file, from GNU gettext.
43345         * m4/wchar_t.m4: New file, from GNU gettext.
43346         * m4/wint_t.m4: New file, from GNU gettext.
43347         * m4/vasnprintf.m4: New file.
43348         * m4/vasprintf.m4: New file.
43349
43350 2003-01-30  Bruno Haible  <bruno@clisp.org>
43351
43352         * lib/printf-args.h: New file, from GNU gettext.
43353         * lib/printf-args.c: New file, from GNU gettext.
43354         * lib/printf-parse.h: New file, from GNU gettext.
43355         * lib/printf-parse.c: New file, from GNU gettext.
43356         * lib/vasnprintf.h: New file, from GNU gettext.
43357         * lib/vasnprintf.c: New file, from GNU gettext.
43358         * lib/asnprintf.c: New file, from GNU gettext.
43359         * lib/vasprintf.h: New file, from GNU gettext with modifications.
43360         * lib/vasprintf.c: New file, from GNU gettext.
43361         * lib/asprintf.c: New file, from GNU gettext.
43362
43363 2003-01-29  Bruno Haible  <bruno@clisp.org>
43364
43365         * modules/stpncpy: New module.
43366         * MODULES.html.sh (func_all_modules): Add it.
43367
43368 2003-01-29  Bruno Haible  <bruno@clisp.org>
43369
43370         * m4/stpncpy.m4: New file.
43371
43372 2003-01-29  Bruno Haible  <bruno@clisp.org>
43373
43374         * lib/stpncpy.h: New file, from GNU gettext with modifications.
43375         * lib/stpncpy.c: New file, from GNU gettext with modifications.
43376
43377 2003-01-28  Bruno Haible  <bruno@clisp.org>
43378
43379         * modules/c-ctype: New module.
43380         * MODULES.html.sh (func_all_modules): Add it.
43381
43382 2003-01-28  Bruno Haible  <bruno@clisp.org>
43383
43384         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
43385         Paul Eggert.
43386         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
43387         Paul Eggert.
43388
43389 2003-01-27  Bruno Haible  <bruno@clisp.org>
43390
43391         * modules/xsetenv: New module.
43392         * MODULES.html.sh (func_all_modules): Add it.
43393
43394 2003-01-27  Bruno Haible  <bruno@clisp.org>
43395
43396         * lib/xsetenv.h: New file, from GNU gettext.
43397         * lib/xsetenv.c: New file, from GNU gettext.
43398
43399 2003-01-23  Jim Meyering  <jim@meyering.net>
43400
43401         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
43402         from working on systems without dirfd (at least Irix and OSF1/Tru64).
43403
43404 2003-01-23  Bruno Haible  <bruno@clisp.org>
43405
43406         * modules/minmax: New module.
43407         * MODULES.html.sh (func_all_modules): Add it.
43408
43409 2003-01-23  Bruno Haible  <bruno@clisp.org>
43410
43411         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
43412         Eggert.
43413
43414 2003-01-22  Bruno Haible  <bruno@clisp.org>
43415
43416         * modules/exit: New module.
43417         * MODULES.html.sh (func_all_modules): Add it.
43418
43419 2003-01-22  Bruno Haible  <bruno@clisp.org>
43420
43421         * lib/exit.h: New file, from GNU gettext.
43422
43423 2003-01-19  Bruno Haible  <bruno@clisp.org>
43424
43425         * gnulib-tool: Recognize option --extract-maintainer.
43426         (func_get_maintainer): New function.
43427         * modules/*: Add Maintainer entry.
43428
43429 2003-01-16  Jim Meyering  <jim@meyering.net>
43430
43431         * m4/regex.m4: The `regex' struct is both input and output.
43432         Initialize it before each use.  Patch by Tim Waugh.
43433
43434 2003-01-16  Bruno Haible  <bruno@clisp.org>
43435
43436         * MODULES.html.sh: Add a table of contents. Add the module name as
43437         leftmost column. Add hyperlinks.
43438
43439 2003-01-15  Bruno Haible  <bruno@clisp.org>
43440
43441         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
43442
43443 2003-01-15  Bruno Haible  <bruno@clisp.org>
43444
43445         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
43446         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
43447         suffix.
43448
43449 2003-01-15  Bruno Haible  <bruno@clisp.org>
43450
43451         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
43452
43453 2003-01-15  Bruno Haible  <bruno@clisp.org>
43454
43455         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
43456         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
43457
43458 2003-01-14  Jim Meyering  <jim@meyering.net>
43459
43460         * lib/same.c (same_name): Tweak a comment.
43461
43462 2003-01-14  Bruno Haible  <bruno@clisp.org>
43463
43464         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
43465         when a string comparison is sufficient.
43466
43467 2003-01-14  Bruno Haible  <bruno@clisp.org>
43468
43469         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
43470         'unsigned int'.
43471
43472 2003-01-14  Bruno Haible  <bruno@clisp.org>
43473
43474         * lib/hash-pjw.c: Add comment about low quality of this function.
43475
43476 2003-01-13  Bruno Haible  <bruno@clisp.org>
43477
43478         * modules/stpcpy: Distribute lib/stpcpy.h.
43479         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
43480
43481 2003-01-13  Bruno Haible  <bruno@clisp.org>
43482
43483         * modules/*: Add a description.
43484         * modules/strpbrk: Fix Makefile.am snippet.
43485         * modules/strtoimax: Fix dependencies.
43486         * modules/strtoumax: Likewise.
43487
43488 2003-01-13  Bruno Haible  <bruno@clisp.org>
43489
43490         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
43491         * modules/alloca (Makefile.am): All object files depend on alloca.h.
43492         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
43493
43494 2003-01-13  Bruno Haible  <bruno@clisp.org>
43495
43496         * gnulib-tool (func_create_testdir): Store config/* files in the main
43497         directory.
43498         * config.rpath: Move to ...
43499         * config/config.rpath: ... here.
43500         * modules/gettext: Contains config/config.rpath, not config.rpath.
43501         * modules/iconv: Likewise.
43502
43503 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43504
43505         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43506         to avoid collisions with libcurses and libreadline.
43507
43508         * m4/getstr.m4: Remove.
43509         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
43510
43511 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43512
43513         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43514         to avoid collisions with libcurses and libreadline.
43515
43516         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
43517         * lib/getstr.h, getstr.c: Remove.
43518         * lib/getline.c: Include "getline.h", to check interface.
43519         Move body of old getstr.c here: this defines MIN_CHUNK and
43520         declares getdelim2, which is renamed from getstr.
43521         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
43522
43523         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
43524         All uses changed.
43525         * lib/linebuffer.h: Likewise.
43526         (readline): Remove backward-compatibility macro.
43527
43528 2003-01-12  Paul Eggert  <eggert@twinsun.com>
43529
43530         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
43531         to avoid collisions with libcurses and libreadline.
43532         * getstr: Remove.
43533         * MODULES.html.sh: Remove getstr.
43534         * modules/getline: Depend on unlocked-io, not getstr.
43535
43536 2003-01-12  Jim Meyering  <jim@meyering.net>
43537
43538         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
43539
43540 2003-01-10  Bruno Haible  <bruno@clisp.org>
43541
43542         * modules/alloca: Change Makefile.am requirements. Simplify Include
43543         requirements. Add lib/alloca_.h to file list.
43544
43545 2003-01-10  Bruno Haible  <bruno@clisp.org>
43546
43547         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
43548
43549 2003-01-10  Bruno Haible  <bruno@clisp.org>
43550
43551         * lib/alloca_.h: New file.
43552         * lib/getdate.y: Unconditionally include alloca.h.
43553         * lib/makepath.c: Likewise.
43554         * lib/setenv.c: Likewise.
43555         * lib/userspec.c: Likewise.
43556
43557 2003-01-09  Karl Berry  <karl@gnu.org>
43558
43559         * MODULES.html.sh: include `dirname $0` in PATH, to find
43560         gnulib-tool.
43561
43562 2003-01-09  Bruno Haible  <bruno@clisp.org>
43563
43564         * modules/stdbool: Change configure.ac, Makefile.am requirements.
43565         Simplify Include requirements. Add lib/stdbool.h.in to file list.
43566
43567 2003-01-09  Bruno Haible  <bruno@clisp.org>
43568
43569         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
43570
43571 2003-01-09  Bruno Haible  <bruno@clisp.org>
43572
43573         * lib/stdbool.h.in: New file.
43574
43575 2003-01-09  Bruno Haible  <bruno@clisp.org>
43576
43577         * gnulib-tool (func_all_modules): Ignore files ending in ~.
43578         * MODULES.html.sh: Likewise.
43579
43580 2003-01-08  Jim Meyering  <jim@meyering.net>
43581
43582         * lib/full-write.c: Undefine and define-away `const' after inclusion
43583         of errno.h, not before.  Suggestion from Bruno Haible.
43584
43585 2003-01-08  Bruno Haible  <bruno@clisp.org>
43586
43587         * modules/full-read: Depend on full-write.
43588
43589 2003-01-08  Bruno Haible  <bruno@clisp.org>
43590
43591         * lib/safe-read.c: Include specification header first, to ensure its
43592         selfcontainedness.
43593         * lib/full-write.c: Likewise.
43594
43595 2003-01-07  Jim Meyering  <jim@meyering.net>
43596
43597         * lib/full-write.c: Rework so that it may serve to define full_read,
43598         too.
43599         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
43600
43601 2003-01-07  Bruno Haible  <bruno@clisp.org>
43602
43603         * lib/strtoimax.c: Include <stdint.h> as an alternative to
43604         <inttypes.h>.
43605         * lib/xstrtol.h: Likewise.
43606         * lib/xstrtoimax.c: Likewise.
43607         * lib/xstrtoumax.c: Likewise.
43608         * lib/human.h: Likewise.
43609
43610         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
43611         on systems that have <inttypes.h> but not <stdint.h>.
43612
43613 2003-01-07  Bruno Haible  <bruno@clisp.org>
43614
43615         * MODULES.html.sh: Add copyright notice.
43616         (missed_files): Omit CVS directory entries.
43617         (func_module): Make it work with sed-3.02.
43618         * MODULES.txt: Remove file.
43619
43620 2003-01-06  Jim Meyering  <jim@meyering.net>
43621
43622         * lib/version-etc.c: Update year in translatable copyright string.
43623
43624 2003-01-03  Karl Berry  <karl@gnu.org>
43625
43626         * config/config.{guess,sub}: update from prep.
43627
43628 2003-01-02  Karl Berry  <karl@gnu.org>
43629
43630         * doc/COPYING.DOC: belatedly updated to 1.2.
43631
43632 2003-01-01  Karl Berry  <karl@gnu.org>
43633
43634         * gnulib-tool (func_verify_module): report module name $module in
43635         error message, not $1.
43636         * gnulib-tool (create-testdir): don't complain if destdir couldn't
43637         be created, only if it doesn't exist.
43638         * gnulib-tool (last_checkin_date): don't expand the $Date here.
43639
43640 2002-12-31  Paul Eggert  <eggert@twinsun.com>
43641
43642         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
43643
43644 2002-12-31  Paul Eggert  <eggert@twinsun.com>
43645
43646         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
43647         memcmp if strcoll doesn't work.
43648
43649 2002-12-31  Bruno Haible  <bruno@clisp.org>
43650
43651         * lib/utime.c (utime_null): No need to call ftruncate if the file was
43652         nonempty.
43653
43654 2002-12-31  Bruno Haible  <bruno@clisp.org>
43655
43656         * lib/memcoll.c (STRCOLL): New macro.
43657         (memcoll): Use it.
43658
43659 2002-12-31  Bruno Haible  <bruno@clisp.org>
43660
43661         * lib/localcharset.h: New file.
43662         * lib/localcharset.c: Include it.
43663         * lib/unicodeio.c: Likewise.
43664
43665 2002-12-31  Bruno Haible  <bruno@clisp.org>
43666
43667         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
43668         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
43669
43670 2002-12-31  Bruno Haible  <bruno@clisp.org>
43671
43672         * lib/getline.h: Include <stddef.h>, for size_t.
43673
43674         * lib/unicodeio.h: Include <stddef.h>, for size_t.
43675         * lib/unicodeio.c: Don't include <stddef.h>.
43676
43677 2002-12-31  Bruno Haible  <bruno@clisp.org>
43678
43679         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
43680         HAVE_TM_ZONE.
43681
43682 2002-12-24  Karl Berry  <karl@gnu.org>
43683
43684         * config/config.guess: update from prep.
43685
43686 2002-12-24  Bruno Haible  <bruno@clisp.org>
43687
43688         General infrasructure.
43689         * m4/README: Rewritten.
43690         * m4/onceonly.m4: New file.
43691         * m4/onceonly_2_57.m4: New file.
43692
43693         Module atexit.
43694         * m4/atexit.m4: New file.
43695
43696         Module strtod.
43697         * m4/strtod.m4: New file.
43698
43699         Module strtol.
43700         * m4/strtol.m4: New file.
43701
43702         Module strtoul.
43703         * m4/strtoul.m4: New file.
43704
43705         Module memchr.
43706         * m4/memchr.m4: New file.
43707
43708         Module memcmp.
43709         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
43710         (jm_FUNC_MEMCMP): Invoke it.
43711
43712         Module memcpy.
43713         * m4/memcpy.m4: New file.
43714
43715         Module memmove.
43716         * m4/memmove.m4: New file.
43717
43718         Module memset.
43719         * m4/memset.m4: New file.
43720
43721         Module strcspn.
43722         * m4/strcspn.m4: New file.
43723
43724         Module strpbrk.
43725         * m4/strpbrk.m4: New file.
43726
43727         Module strstr.
43728         * m4/strstr.m4: New file.
43729
43730         Module strerror.
43731         * m4/strerror.m4: New file.
43732
43733         Module mktime.
43734         * m4/mktime.m4: Renamed from jm-mktime.m4.
43735         (gl_PREREQ_MKTIME): New macro.
43736         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
43737
43738         Module malloc.
43739         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
43740         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
43741         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
43742
43743         Module realloc.
43744         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
43745         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
43746         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
43747
43748         Module strftime.
43749         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
43750         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
43751         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
43752         gl_TM_GMTOFF.
43753         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
43754
43755         Module xalloc.
43756         * m4/xalloc.m4: New file.
43757
43758         Module alloca.
43759         * m4/alloca.m4: New file.
43760
43761         Module putenv.
43762         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
43763         (jm_FUNC_PUTENV): Invoke it.
43764
43765         Module setenv.
43766         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
43767         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
43768         when invoked twice.
43769         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
43770         gt_FUNC_SETENV.
43771
43772         Module memrchr.
43773         * m4/memrchr.m4: New file.
43774
43775         Module stpcpy.
43776         * m4/stpcpy.m4: New file.
43777
43778         Module strcase.
43779         * m4/strcase.m4: New file.
43780
43781         Module strdup.
43782         * m4/strdup.m4: New file.
43783
43784         Module strnlen.
43785         * m4/strnlen.m4: New file.
43786
43787         Module strndup.
43788         * m4/strndup.m4: New file.
43789
43790         Module xstrtod.
43791         * m4/xstrtod.m4: New file.
43792
43793         Module xstrtol.
43794         * m4/xstrtol.m4: New file.
43795
43796         Module getdate.
43797         * m4/getdate.m4: New file.
43798
43799         Module unlocked-io.
43800         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
43801         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
43802         * m4/jm-glibc-io.m4n: Remove file.
43803
43804         Module long-options.
43805         * m4/long-options.m4: New file.
43806
43807         Module md5.
43808         * m4/md5.m4: New file.
43809
43810         Module sha.
43811         * m4/sha.m4: New file.
43812
43813         Module getstr.
43814         * m4/getstr.m4: New file.
43815
43816         Module getline.
43817         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
43818         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
43819         <sys/types.h>, for size_t. Use the function name gnu_getline, not
43820         simply getline. Infoke gl_PREREQ_GETLINE.
43821
43822         Module obstack.
43823         * m4/obstack.m4: New file.
43824
43825         Module hash.
43826         * m4/hash.m4: New file.
43827
43828         Module readtokens.
43829         * m4/readtokens.m4: New file.
43830
43831         Module strverscmp.
43832         * m4/strverscmp.m4: New file.
43833
43834         Module stdbool.
43835         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
43836         OSF/1.
43837
43838         Module strtoll.
43839         * m4/strtoll.m4: New file.
43840
43841         Module strtoull.
43842         * m4/strtoull.m4: New file.
43843
43844         Module strtoimax.
43845         * m4/strtoimax.m4: New file.
43846
43847         Module strtoumax.
43848         * m4/strtoumax.m4: New file.
43849
43850         Module xstrtoimax.
43851         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
43852         jm_AC_PREREQ_XSTRTOIMAX.
43853         Moved the strtol prerequisites to strtol.m4.
43854         Moved the strtoll prerequisites to strtoll.m4.
43855         Moved the strtoimax prerequisites to strtoimax.m4.
43856
43857         Module xstrtoumax.
43858         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
43859         jm_AC_PREREQ_XSTRTOUMAX.
43860         Moved the strtoul prerequisites to strtoul.m4.
43861         Moved the strtoull prerequisites to strtoull.m4.
43862         Moved the strtoumax prerequisites to strtoumax.m4.
43863
43864         Module chown.
43865         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
43866         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
43867
43868         Module dup2.
43869         * m4/dup2.m4: New file.
43870
43871         Module ftruncate.
43872         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
43873         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
43874
43875         Module getgroups.
43876         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
43877         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
43878
43879         Module gettimeofday.
43880         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
43881         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
43882         gl_PREREQ_GETTIMEOFDAY.
43883
43884         Module mkdir.
43885         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
43886         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
43887
43888         Module mkstemp.
43889         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
43890         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
43891         jm_AC_TYPE_UINTMAX_T.
43892         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
43893
43894         Module stat.
43895         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
43896         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
43897
43898         Module lstat.
43899         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
43900         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
43901
43902         Module timespec.
43903         * m4/timespec.m4 (gl_TIMESPEC): New macro.
43904         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
43905         * m4/st_mtim.m4: Indentation.
43906
43907         Module nanosleep.
43908         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
43909         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
43910         gl_PREREQ_NANOSLEEP.
43911
43912         Module regex.
43913         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
43914         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
43915         (gl_REGEX): New macro.
43916
43917         Module rename.
43918         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
43919         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
43920
43921         Module rmdir.
43922         * m4/rmdir.m4: New file.
43923
43924         Module utime.
43925         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
43926         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
43927         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
43928
43929         Module dirname.
43930         * m4/dirname.m4: New file.
43931
43932         Module getopt.
43933         * m4/getopt.m4: New file.
43934
43935         Module unistd-safer.
43936         * m4/unistd-safer.m4: New file.
43937
43938         Module fnmatch.
43939         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
43940         declaration.
43941         (gl_PREREQ_FNMATCH_EXTRA): New macro.
43942         (gl_FUNC_FNMATCH_POSIX): New macro.
43943         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
43944         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
43945         simply fnmatch.
43946
43947         Module exclude.
43948         * m4/exclude.m4: New file.
43949
43950         Module human.
43951         * m4/human.m4: New file.
43952
43953         Module acl.
43954         * m4/acl.m4: Nop.
43955
43956         Module backupfile.
43957         * m4/backupfile.m4: New file.
43958         * m4/d-ino.m4: Indentation.
43959
43960         Module fsusage.
43961         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
43962         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
43963         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
43964
43965         Module dirfd.
43966         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
43967         requirements.
43968
43969         Module euidaccess.
43970         * m4/euidaccess.m4: New file.
43971
43972         Module file-type.
43973         * m4/file-type.m4: New file.
43974
43975         Module fileblocks.
43976         * m4/fileblocks.m4: New file.
43977
43978         Module filemode.
43979         * m4/filemode.m4: New file.
43980
43981         Module isdir.
43982         * m4/isdir.m4: New file.
43983
43984         Module lchown.
43985         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
43986         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
43987
43988         Module makepath.
43989         * m4/makepath.m4: New file.
43990
43991         Module modechange.
43992         * m4/modechange.m4: New file.
43993
43994         Module mountlist.
43995         * m4/mountlist.m4: New file.
43996         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
43997         Indentation.
43998
43999         Module path-concat.
44000         * m4/path-concat.m4: New file.
44001
44002         Module pathmax.
44003         * m4/pathmax.m4: New file.
44004
44005         Module same.
44006         * m4/same.m4: New file.
44007
44008         Module save-cwd.
44009         * m4/save-cwd.m4: New file.
44010
44011         Module savedir.
44012         * m4/savedir.m4: New file.
44013
44014         Module xgetcwd.
44015         * m4/xgetcwd.m4: New file.
44016         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
44017
44018         Module xreadlink.
44019         * m4/xreadlink.m4: New file.
44020
44021         Module safe-read.
44022         * m4/safe-read.m4: New file.
44023
44024         Module safe-write.
44025         * m4/safe-write.m4: New file.
44026
44027         Module closeout.
44028         * m4/closeout.m4: New file.
44029
44030         Module stdio-safer.
44031         * m4/stdio-safer.m4: New file.
44032
44033         Module getpass.
44034         * m4/getpass.m4: New file.
44035
44036         Module getugroups.
44037         * m4/getugroups.m4: New file.
44038
44039         Module group-member.
44040         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
44041         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
44042
44043         Module idcache.
44044         * m4/idcache.m4: New file.
44045
44046         Module userspec.
44047         * m4/userspec.m4: New file.
44048
44049         Module gettime.
44050         * m4/clock_time.m4: New file.
44051         * m4/gettime.m4: New file.
44052
44053         Module settime.
44054         * m4/settime.m4: New file.
44055
44056         Module posixtm.
44057         * m4/posixtm.m4: New file.
44058
44059         Module gethostname.
44060         * m4/gethostname.m4: New file.
44061
44062         Module canon-host.
44063         * m4/canon-host.m4: New file.
44064
44065         Module gettext.
44066         * m4/codeset.m4: New file, from gettext-0.11.5.
44067         * m4/gettext.m4: New file, from gettext-0.11.5.
44068         * m4/glibc21.m4: New file, from gettext-0.11.5.
44069         * m4/iconv.m4: New file, from gettext-0.11.5.
44070         * m4/intdiv0.m4: New file, from gettext-0.11.5.
44071         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
44072         * m4/inttypes.m4: New file, from gettext-0.11.5.
44073         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
44074         * m4/isc-posix.m4: New file, from gettext-0.11.5.
44075         * m4/lcmessage.m4: New file, from gettext-0.11.5.
44076         * m4/lib-ld.m4: New file, from gettext-0.11.5.
44077         * m4/lib-link.m4: New file, from gettext-0.11.5.
44078         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
44079         * m4/progtest.m4: New file, from gettext-0.11.5.
44080         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
44081         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
44082         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
44083
44084         Module localcharset.
44085         * m4/localcharset.m4: New file.
44086
44087         Module hard-locale.
44088         * m4/hard-locale.m4: New file.
44089
44090         Module mbswidth.
44091         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
44092         onceonly macros.
44093         * m4/mbrtowc.m4: Add comment.
44094
44095         Module memcasecmp.
44096         * m4/memcasecmp.m4: New file.
44097
44098         Module memcoll.
44099         * m4/memcoll.m4: New file.
44100
44101         Module unicodeio.
44102         * m4/unicodeio.m4: New file.
44103
44104         Module rpmatch.
44105         * m4/rpmatch.m4: New file.
44106
44107         Module yesno.
44108         * m4/yesno.m4: New file.
44109
44110         Module exitfail.
44111         * m4/exitfail.m4: New file.
44112
44113         Module c-stack.
44114         * m4/c-stack.m4 (gl_C_STACK): New macro.
44115         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
44116
44117         Module error.
44118         * m4/error.m4 (gl_ERROR): New macro.
44119         (jm_PREREQ_ERROR): Use onceonly macros.
44120
44121         Module fatal.
44122         * m4/fatal.m4: New file.
44123
44124         Module getloadavg.
44125         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
44126         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
44127
44128         Module getpagesize.
44129         * m4/getpagesize.m4: New file.
44130
44131         Module getusershell.
44132         * m4/getusershell.m4: New file.
44133
44134         Module physmem.
44135         * m4/physmem.m4: New file.
44136
44137         Module posixver.
44138         * m4/posixver.m4: New file.
44139
44140         Module quotearg.
44141         * m4/quotearg.m4: New file.
44142
44143         Module quote.
44144         * m4/quote.m4: New file.
44145
44146         Module readutmp.
44147         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
44148
44149         Module sig2str.
44150         * m4/sig2str.m4: New file.
44151
44152         Other.
44153         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
44154         ulonglong.m4.
44155         * m4/intmax_t.m4: New file.
44156         * m4/d-type.m4: Indentation.
44157         * m4/jm-macros.m4: Update.
44158         * m4/prereq.m4 (jm_PREREQ): Update.
44159         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
44160         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
44161         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
44162         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
44163         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
44164         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
44165         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
44166         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
44167         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
44168         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
44169         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
44170         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
44171         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
44172         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
44173         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
44174         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
44175         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
44176         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
44177         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
44178
44179 2002-12-24  Bruno Haible  <bruno@clisp.org>
44180
44181         * MODULES.txt: Update according to m4/ changes.
44182
44183         Module gettext.
44184         * config.rpath: New file, from gettext-0.11.5.
44185
44186         * modules/*: New module descriptions.
44187         * gnulib-tool: New file.
44188         * MODULES.html.sh: New file.
44189
44190 2002-12-21  Karl Berry  <karl@gnu.org>
44191
44192         * doc/fdl.texi: update to version 1.2.
44193
44194 2002-12-19  Karl Berry  <karl@gnu.org>
44195
44196         * config/config.guess: update from prep.
44197
44198 2002-12-18  Bruno Haible  <bruno@clisp.org>
44199
44200         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
44201         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
44202
44203 2002-12-17  Bruno Haible  <bruno@clisp.org>
44204
44205         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
44206         stdlib.h, string.h.
44207
44208 2002-12-17  Bruno Haible  <bruno@clisp.org>
44209
44210         * lib/canon-host.c (strdup): Remove unused declaration.
44211
44212         * lib/fsusage.c: Include full_read.h.
44213         (get_fs_usage): Use full_read instead of safe_read.
44214
44215         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
44216
44217 2002-12-12  Karl Berry  <karl@gnu.org>
44218
44219         * config/config.guess: update from prep.
44220
44221 2002-12-11  Bruno Haible  <bruno@clisp.org>
44222
44223         * m4/setenv.m4: New file, from gettext-0.11.5.
44224
44225 2002-12-11  Bruno Haible  <bruno@clisp.org>
44226
44227         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
44228         not unsetenv().
44229         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
44230         modifications:
44231
44232         2002-12-11  Bruno Haible  <bruno@clisp.org>
44233
44234                 * setenv.c (alloca): Fall back to malloc.
44235                 (freea): New macro.
44236                 (setenv): Use freea() to free memory allocated with alloca().
44237
44238         2002-11-13  Bruno Haible  <bruno@clisp.org>
44239
44240                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
44241                 function declarations.
44242                 * unsetenv.c (unsetenv): Likewise.
44243
44244         2002-03-04  Bruno Haible  <bruno@clisp.org>
44245
44246                 Portability to AIX 4.3.3.
44247                 * unsetenv.c: New file, extracted from setenv.c.
44248                 * setenv.c: Move the unsetenv() function to unsetenv.c.
44249
44250         2001-12-20  Bruno Haible  <bruno@clisp.org>
44251
44252                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
44253                 use malloc instead. For SunOS 4.
44254
44255         2001-12-11  Bruno Haible  <bruno@clisp.org>
44256
44257                 * setenv.c: Declare alloca.
44258                 (compar_fn_t): New typedef.
44259                 (KNOWN_VALUE, STORE_VALUE): Use it.
44260
44261         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
44262         setenv.h.
44263
44264 2002-12-10  Paul Eggert  <eggert@twinsun.com>
44265
44266         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
44267         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
44268         Choose values that are less likely to collide with system fnmatch
44269         options.
44270         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
44271         defined (e.g., a pure POSIX system).
44272         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
44273         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
44274
44275 2002-12-06  Paul Eggert  <eggert@twinsun.com>
44276
44277         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
44278         a pain in practice to deal with generated m4 files.  This change
44279         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
44280
44281         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
44282         and jm-glibc-io.m4, as they are no longer a special case.
44283         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
44284         kludge and the auto-generation stuff.  Check only whether the
44285         functions are declared, not whether they exist, since older hosts
44286         that don't declare the functions can't use the optimization anyway.
44287
44288 2002-12-06  Jim Meyering  <jim@meyering.net>
44289
44290         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
44291
44292         Merge in changes from libc's misc/error.c, in preparation
44293         for the merge of gnulib's changes back into libc.
44294
44295         * lib/error.c (_): Define only if not already defined.
44296         Move definition to follow all #include directives.
44297         Include unlocked-io.h only if !_LIBC.
44298         [_LIBC]: Include <libio/libioP.h>.
44299         [USE_IN_LIBIO]: Include <libio/iolibio.h>
44300         (fflush): Tweak definition to use INTUSE.
44301         (putc): Define.
44302
44303 2002-12-05  Paul Eggert  <eggert@twinsun.com>
44304
44305         * lib/alloca.c [defined emacs]: Include "lisp.h".
44306         (xalloc_die) [defined emacs]: New macro.
44307         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
44308         [! defined emacs]: Include <xalloc.h>.
44309         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
44310         (pointer): Typedef to POINTER_TYPE *.
44311         (malloc): Remove decl; we now always use xmalloc.
44312         (alloca): Use old-style definition, since Emacs needs this.
44313         Check for arithmetic overflow when computing combined size.
44314
44315 2002-12-04  Paul Eggert  <eggert@twinsun.com>
44316
44317         Do not generate unlocked-io.h automatically, since it's easier to
44318         maintain it by hand.
44319
44320         * lib/unlocked-io.h: New file, from GNU diffutils,
44321         but with proper copyright notice and attribution.
44322         * lib/gen-uio: Remove.
44323         * lib/Makefile.am: Add copyright notice.
44324         (libfetish_a_SOURCES): Add unlocked-io.h.
44325         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
44326         (DISTCLEANFILES, io_functions): Remove macros.
44327         (EXTRA_DIST): Remove gen_uio.
44328         (unlocked-io.h): Remove rule.
44329
44330 2002-12-04  Jim Meyering  <jim@meyering.net>
44331
44332         Reflect the fact that stat.c and lstat.c are no longer generated.
44333         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
44334         (DISTCLEANFILES): Likewise.
44335         (EXTRA_DIST): Likewise.
44336         (all_local): Don't depend on stat.c or lstat.c.
44337         (stat.c, lstat.c): Remove rules.
44338         (EXTRA_DIST): Remove xstat.in.
44339
44340         * lib/xstat.in: Remove file.  Contents moved into stat.c.
44341         * lib/stat.c: New file.  Contents mostly from xstat.in.
44342         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
44343         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
44344
44345         * lib/safe-read.c: Rework so that it may serve to define safe_write,
44346         too.
44347         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
44348
44349 2002-12-03  Jim Meyering  <jim@meyering.net>
44350
44351         * lib/safe-read.c, safe-write.c: Change variable names and comments,
44352         but not semantics, to minimize the differences between these two files.
44353         (safe_read): Change comment to mention SAFE_READ_ERROR.
44354
44355         * lib/safe-read.c (IS_EINTR): Define.
44356         (safe_read): Use IS_EINTR in place of in-function cpp directives.
44357
44358 2002-12-02  Jim Meyering  <jim@meyering.net>
44359
44360         * lib/safe-read.c (EINTR): Define.
44361         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
44362         (INT_MAX): Provide fallback.
44363         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
44364
44365         * lib/safe-read.h (SAFE_READ_ERROR): Define.
44366
44367 2002-12-02  Bruno Haible  <bruno@clisp.org>
44368
44369         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
44370         Define, taken from safe-read.c.
44371         (INT_MAX): Provide fallback.
44372         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
44373         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
44374
44375         * lib/safe-read.c (EINTR): Remove definition.
44376         (safe_read): Don't use EINTR if it is absent.
44377
44378 2002-12-01  Jim Meyering  <jim@meyering.net>
44379
44380         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
44381         zero.
44382         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
44383
44384 2002-11-27  Paul Eggert  <eggert@twinsun.com>
44385
44386         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
44387         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
44388         with `if (! (value < limit)) abort ();', for readability.
44389
44390 2002-11-26  Karl Berry  <karl@gnu.org>
44391
44392         * lib/strdup.c: copy from libc again, with jim's ok.
44393         * lib/.cppi-disable: re-add strdup.c
44394
44395 2002-11-25  Karl Berry  <karl@gnu.org>
44396
44397         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
44398         instead of "strtol.c".
44399
44400 2002-11-25  Karl Berry  <karl@gnu.org>
44401
44402         * config/install-sh: update from automake for variable quoting, $0 in
44403         error msgs, etc.
44404
44405         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
44406         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
44407         entry.
44408
44409 2002-11-25  Jim Meyering  <jim@meyering.net>
44410
44411         * lib/mktime.c: Sync from libc, now that it has the latest fix.
44412
44413 2002-11-24  Karl Berry  <karl@gnu.org>
44414
44415         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
44416         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
44417
44418 2002-11-24  Jim Meyering  <jim@meyering.net>
44419
44420         Update from coreutils:
44421
44422         * lib/mktime.c: Merge in changes from libc.
44423
44424         Avoid a link-time failure on some Linux systems.
44425         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
44426         (otherwise).
44427         (__mon_yday): Declare with the STATIC attribute.
44428         (__mktime_internal): Likewise.
44429         Based on a report from Greg Schafer.
44430
44431 2002-11-23  Jim Meyering  <jim@meyering.net>
44432
44433         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
44434         Use `unsigned', not `int', as type of index.
44435
44436         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
44437
44438         * lib/fsusage.c: Remove unneeded parentheses around operands of
44439         `defined'.
44440
44441 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44442
44443         * lib/quotearg.h: Allow multiple inclusion by surrounding with
44444         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
44445         so that we can be included first.
44446         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
44447         * lib/quotearg.c: Include quotearg.h immediately after config.h.
44448         No need to include stddef.h or sys/types.h any more.
44449         Surround local include files with "", not "<>".
44450         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
44451         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
44452         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
44453         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
44454         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
44455         (ISPRINT): Remove; no longer needed now that we assume C89.
44456
44457         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
44458         Preserve errno.
44459
44460         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
44461         quotearg_char): Use SIZE_MAX rather than
44462         (size_t) -1 when we are talking about "infinity".
44463
44464         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
44465
44466 2002-11-22  Paul Eggert  <eggert@twinsun.com>
44467
44468         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
44469         hint that one should use `if (! x) abort ();' rather than `assert
44470         (x);', and anyway it's one less thing to worry about configuring.
44471         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
44472         hash_rehash, hash_insert): Use abort rather than assert.
44473
44474 2002-11-22  Bruno Haible  <bruno@clisp.org>
44475
44476         * lib/safe-read.h: Assume C89. Add comments.
44477         (safe_read): Change return type to size_t.
44478         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
44479         byte counts > SSIZE_MAX correctly.
44480         * lib/safe-write.h: New file.
44481         * lib/safe-write.c: New file.
44482         * lib/full-read.h: New file.
44483         * lib/full-read.c: New file.
44484         * lib/full-write.h: Assume C89. Add comments.
44485         * lib/full-write.c: Include safe-write.h.
44486         (full_write): Rewritten to use safe_write.
44487         Suggested by Jim Meyering and Paul Eggert.
44488
44489 2002-11-21  Jim Meyering  <jim@meyering.net>
44490
44491         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
44492
44493         Merge in changes from the coreutils.
44494
44495         2002-09-25  Paul Eggert  <eggert@twinsun.com>
44496         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
44497         <stdint.h>.
44498         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
44499         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
44500         int.  Work more efficiently if X is the same width as uintmax_t.
44501         Do not compare X to -1, to avoid bogus compiler warning.
44502         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
44503         Don't assume that f_frsize and f_bsize are the same type.
44504
44505         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
44506         warning on FreeBSD.
44507
44508         * lib/makepath.c (make_path): Restore umask *before* creating the final
44509         component.
44510         (make_path): Minor reformatting.
44511
44512         * lib/xmalloc.c: Adjust to work with new autoconf macros,
44513         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
44514         HAVE_MALLOC/HAVE_REALLOC.
44515
44516         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
44517         dummy ones.  At least on GNU/Linux systems, `auto' means something
44518         else.
44519         From Michael Stone.
44520
44521 2002-11-21  Bruno Haible  <bruno@clisp.org>
44522
44523         Remove case insensitive option matching.
44524         * lib/argmatch.h (argcasematch): Remove declaration.
44525         (ARGCASEMATCH): Remove macro.
44526         (__xargmatch_internal): Remove case_sensitive argument.
44527         (XARGMATCH): Update.
44528         (XARGCASEMATCH): Remove macro.
44529         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
44530         case_sensitive argument.
44531         (argcasematch): Remove function.
44532         (__xargmatch_internal): Remove case_sensitive argument.
44533         (main): Use XARGMATCH instead of XARGCASEMATCH.
44534
44535         * lib/xmalloc.c: Change compile-time error message. Add comment about
44536         required autoconf version.
44537
44538 2002-11-20  Paul Eggert  <eggert@twinsun.com>
44539
44540         Merge argmatch cleanups from Bison.  Assume C89.
44541
44542         * lib/argmatch.c: Include config.h here, not in argmatch.h.
44543         Include stdlib.h, for EXIT_FAILURE.
44544         Always include <string.h>, since we assume C89.
44545         (EXIT_FAILURE): Remove pre-C89 bug workaround.
44546         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
44547         Include <stddef.h> instead, since it's all we need for size_t.
44548         (PARAMS): Remove.  All uses removed.
44549         (ARRAY_CARDINALITY): Do not bother to #undef.
44550         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
44551         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
44552         Remove unnecessary parentheses.
44553         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
44554         Insert necessary parentheses.
44555         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
44556         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
44557
44558 2002-11-19  Bruno Haible  <bruno@clisp.org>
44559
44560         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
44561         * lib/mbswidth.h: Include <stddef.h>, for size_t.
44562
44563         * lib/mbswidth.h (PARAMS): Remove macro.
44564         (mbswidth, mbsnwidth): Use ANSI C function declarations.
44565         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
44566
44567         * lib/gcd.h (PARAMS): Remove macro.
44568         (gcd): Use ANSI C function declarations.
44569         * lib/gcd.c (gcd): Likewise.
44570
44571 2002-11-15  Bruno Haible  <bruno@clisp.org>
44572
44573         * lib/strcspn.c: Include <stddef.h>.
44574         (strcspn): Use ANSI C function declaration. Change return type to
44575         size_t. Use NULL.
44576         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
44577         (strpbrk): Use NULL.
44578         * lib/strpbrk.h (PARAMS): Remove macro.
44579         (strpbrk): Use ANSI C function declaration.
44580         * lib/strstr.c: Don't include <sys/types.h>.
44581         * lib/strstr.h (PARAMS): Remove macro.
44582         (strstr): Use ANSI C function declarations.
44583
44584 2002-11-14  Karl Berry  <karl@gnu.org>
44585
44586         * config/mkinstalldirs: `do' on separate line, instead of
44587         `for var; do'.
44588
44589 2002-11-06  Bruno Haible  <bruno@clisp.org>
44590
44591         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
44592         * lib/gcd.c (gcd): Likewise.
44593
44594 2002-11-05  Bruno Haible  <bruno@clisp.org>
44595
44596         * lib/gcd.h: New file, from gettext-0.11.5.
44597         * lib/gcd.c: New file, from gettext-0.11.5.
44598
44599 2002-11-05  Bruno Haible  <bruno@clisp.org>
44600
44601         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44602         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44603         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44604         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
44605
44606         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
44607         <libintl.h>.
44608         * lib/makepath.c: Include gettext.h instead of <locale.h> and
44609         <libintl.h>.
44610
44611         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
44612         * lib/human.c: Include gettext.h instead of <libintl.h>.
44613         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
44614         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
44615         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
44616         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
44617         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
44618         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
44619         (textdomain): Remove definition.
44620         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
44621
44622         * lib/long-options.c: Remove include of <libintl.h> and definition of
44623         _.
44624         * lib/same.c: Remove include of <libintl.h> and definition of _.
44625
44626 2002-11-04  Owen Taylor  <otaylor@redhat.com>
44627
44628         * lib/config.charset: A few additions for Solaris.
44629
44630 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
44631
44632         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
44633         * lib/localcharset.c (locale_charset): Declare as extern "C".
44634
44635 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
44636
44637         * lib/config.charset: msdos in uk_UA uses CP1125.
44638
44639 2002-11-04  Bruno Haible  <bruno@clisp.org>
44640
44641         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
44642         * lib/strcase.h: New file, from GNU gettext-0.11.5.
44643         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
44644         * lib/strstr.h: New file, from GNU gettext-0.11.5.
44645         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
44646
44647 2002-11-04  Bruno Haible  <bruno@clisp.org>
44648
44649         * lib/localcharset.c (locale_charset): Don't return an empty string.
44650
44651 2002-11-04  Bruno Haible  <bruno@clisp.org>
44652
44653         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
44654         aliases.
44655
44656 2002-11-04  Bruno Haible  <bruno@clisp.org>
44657
44658         * lib/config.charset: Update for newest glibc. Add canonical names
44659         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
44660
44661 2002-11-04  Bruno Haible  <bruno@clisp.org>
44662
44663         * lib/config.charset: Add support for NetBSD.
44664
44665 2002-11-04  Bruno Haible  <bruno@clisp.org>
44666
44667         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
44668
44669 2002-11-01  Bruno Haible  <bruno@clisp.org>
44670
44671         * configure.in: Add AC_CONFIG_AUX_DIR call.
44672         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
44673         test/Makefile.
44674         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
44675
44676 2002-09-28  Karl Berry  <karl@gnu.org>
44677
44678         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
44679         installed automake until the next release, since changes have been
44680         made.
44681
44682 2002-09-25  Karl Berry  <karl@gnu.org>
44683
44684         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
44685         * lib/getopt*: copy from libc/posix.
44686         * lib/gettext.h: copy from gettext.
44687         * lib/.cppi-disable: add strdup.c, gettext.h.
44688
44689 2002-09-25  Karl Berry  <karl@gnu.org>
44690
44691         * config/srclist.txt: enable gettext.h check.
44692         * config/config.{guess,sub}: update from prep.
44693         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
44694                 from automake 1.6.3.
44695         See srclist*.
44696
44697 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
44698
44699         * regex.c (PATFETCH): Remove the translating fetch.
44700         (PATFETCH_RAW): Rename to PATFETCH.
44701         (set_image_of_range): New fun.
44702         (SET_RANGE_TABLE_WORK_AREA): Use it.
44703         (regex_compile): Don't translate the pattern chars so eagerly.
44704         Only do it when inserting an `exactn' bytecode or when handling
44705         a char-range.
44706         (mutually_exclusive_p): Avoid empty statement.
44707
44708 2002-07-06  Jim Meyering  <meyering@lucent.com>
44709
44710         * m4/README: Don't mention Makefile.am.in.
44711         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
44712
44713 2002-07-01  Jim Meyering  <meyering@lucent.com>
44714
44715         * lib/c-stack.c: Include sys/time.h.
44716         From Volker Borchert.
44717
44718 2002-06-26  Paul Eggert  <eggert@twinsun.com>
44719
44720         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
44721
44722 2002-06-26  Paul Eggert  <eggert@twinsun.com>
44723
44724         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
44725         New macro.  Use it uniformly instead of
44726         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
44727         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
44728         reported by Vin Shelton.
44729
44730 2002-06-22  Paul Eggert  <eggert@twinsun.com>
44731
44732         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
44733         Do not assume SA_SIGINFO behavior.
44734         Bug reported by Jim Meyering on NetBSD 1.5.2.
44735
44736 2002-06-22  Jim Meyering  <meyering@lucent.com>
44737
44738         * m4/c-stack.m4: New file, from diffutils-2.8.2.
44739         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
44740
44741         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
44742         now that configure.ac uses AC_GNU_SOURCE.
44743         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
44744         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
44745
44746         Update to latest tools.  Suggestions from Paul Eggert.
44747         * m4/stdbool.m4: New file, from diffutils-2.8.2.
44748         * m4/gnu-source.m4: Update from diffutils-2.8.2.
44749         * m4/fnmatch.m4: Likewise.
44750         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
44751         to AC_HEADER_STDBOOL
44752
44753 2002-06-22  Jim Meyering  <meyering@lucent.com>
44754
44755         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
44756         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
44757
44758 2002-06-22  Jim Meyering  <meyering@lucent.com>
44759
44760         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
44761
44762         * lib/exitfail.c, exitfail.h: Likewise.
44763         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
44764
44765         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
44766         of fnmatch.h.
44767         (EXTRA_DIST): Add fnmatch_loop.c.
44768         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
44769
44770         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
44771         * lib/fnmatch.c: Update from diffutils-2.8.2.
44772         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
44773         * lib/fnmatch.h: Remove file.
44774
44775 2002-06-21  Jim Meyering  <meyering@lucent.com>
44776
44777         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
44778         * m4/mbrtowc.m4: Likewise.
44779
44780         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
44781         * m4/mbswidth.m4: Reflect name change:
44782         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
44783         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
44784
44785         * m4/lib-link.m4: Update from gettext-0.11.2.
44786         * m4/gettext.m4: Likewise.
44787
44788         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
44789         From Alfred M. Szmidt.
44790
44791 2002-06-18  Paul Eggert  <eggert@twinsun.com>
44792
44793         * lib/file-type.h: Report an error if neither S_ISREG nor
44794         S_IFREG is defined, instead of using a test specific to glibc
44795         2.2.  This should be safe, since POSIX requires S_ISREG and
44796         Unix Version 7 had S_IFREG.  We don't need to check for
44797         <sys/types.h> since we don't use any symbols that it defines.
44798
44799 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
44800
44801         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
44802         $@-t, so that each temporary file name is unique and valid in the first
44803         8 characters, for operation under DOS.
44804
44805 2002-06-15  Paul Eggert  <eggert@twinsun.com>
44806
44807         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
44808
44809 2002-06-15  Jim Meyering  <meyering@lucent.com>
44810
44811         Work even with DJGPP 2.03, which lacks support for symlinks.
44812         From Richard Dawe.
44813         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
44814         is defined.
44815         * lib/lchown.c (S_ISLNK): Likewise.
44816
44817 2002-06-15  Jim Meyering  <meyering@lucent.com>
44818
44819         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
44820         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
44821         have been included before this file.
44822
44823 2002-06-14  Jim Meyering  <meyering@lucent.com>
44824
44825         * lib/file-type.h: Use the version from diffutils-2.8.2.
44826         * lib/file-type.c: Likewise.
44827
44828 2002-06-07  Jim Meyering  <meyering@lucent.com>
44829
44830         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
44831         They're needed at least for NetBSD 1.5.2.
44832         ($statxfs_includes): Include those same headers.
44833         ($statxfs_includes): Include sys/vfs.h if available.
44834         ($statxfs_includes): Likewise for sys/statvfs.h.
44835         Check for the following members in both structs statfs and statvfs:
44836         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
44837
44838 2002-06-01  Jim Meyering  <meyering@lucent.com>
44839
44840         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
44841         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
44842
44843 2002-05-28  Jim Meyering  <meyering@lucent.com>
44844
44845         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
44846         Reported by Volker Borchert.
44847
44848 2002-05-27  Jim Meyering  <meyering@lucent.com>
44849
44850         Fix a problem seen only on nonconforming systems whereby ls.c's
44851         use of localtime, and then of gettimeofday would cause trouble:
44852         the localtime call used to initialize rpl_gettimeofday's save
44853         mechanism would clobber ls's current local time information so
44854         that in any long listing the first file would always be listed
44855         with date 1970-01-01.  Analysis by Volker Borchert.
44856
44857         * lib/gettimeofday.c (localtime): Undefine.
44858         (rpl_localtime): New function.
44859
44860 2002-05-27  Jim Meyering  <meyering@lucent.com>
44861
44862         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
44863         localtime.
44864
44865         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
44866         use the replacement function; it wouldn't resolve at link time.
44867         Reported by Volker Borchert.
44868
44869 2002-05-22  Jim Meyering  <meyering@lucent.com>
44870
44871         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
44872         file-type.h.
44873         * lib/file-type.h: New file.
44874         * lib/file-type.c (file_type): New file/function.  Extracted from
44875         diffutils.
44876
44877 2002-04-30  Jim Meyering  <meyering@lucent.com>
44878
44879         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
44880
44881 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44882
44883         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
44884
44885 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44886
44887         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
44888         Do not check for alloca.h (no longer used) or stdbool.h (was never
44889         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
44890
44891 2002-04-29  Paul Eggert  <eggert@twinsun.com>
44892
44893         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
44894
44895 2002-04-29  Jim Meyering  <meyering@lucent.com>
44896
44897         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
44898         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
44899         Use AC_FUNC_STRNLEN here instead.
44900
44901         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
44902         With autoconf-2.53a, it's part of AC_PROG_CC.
44903
44904 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44905
44906         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
44907         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
44908
44909 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44910
44911         * lib/sig2str.h, lib/sig2str.c: New files.
44912         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
44913
44914 2002-04-28  Paul Eggert  <eggert@twinsun.com>
44915
44916         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
44917         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
44918         of 127, since 64 is the largest conceivable number for ancient
44919         nonstandard hosts.
44920         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
44921
44922 2002-04-28  Jim Meyering  <meyering@lucent.com>
44923
44924         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
44925
44926 2002-04-24  Jim Meyering  <meyering@lucent.com>
44927
44928         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
44929         (jm_PREREQ): Use it.
44930
44931         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
44932         mach/mach.h fcntl.h.
44933         Check for this function: setlocale.
44934
44935 2002-04-24  Jim Meyering  <meyering@lucent.com>
44936
44937         * lib/gettext.h: New file, from Gettext.
44938         * lib/Makefile.am (INCLUDES): Remove -I../intl.
44939         (libfetish_a_SOURCES): Add gettext.h.
44940
44941 2002-04-16  Jim Meyering  <meyering@lucent.com>
44942
44943         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
44944         ut_pid, ut_id, ut_exit.
44945
44946 2002-04-16  Jim Meyering  <meyering@lucent.com>
44947
44948         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
44949         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
44950         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
44951
44952 2002-04-12  Jim Meyering  <meyering@lucent.com>
44953
44954         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
44955         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
44956         existence of the getmntinfo function.  Needed for Darwin 5.3.
44957
44958         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
44959         This is necessary at least on Darwin 5.3.
44960
44961         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
44962         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
44963         strnlen.o in the library, and that makes some versions of ranlib
44964         object.
44965
44966 2002-04-12  Jim Meyering  <meyering@lucent.com>
44967
44968         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
44969
44970 2002-04-09  Jim Meyering  <meyering@lucent.com>
44971
44972         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
44973         to be more precise.  Rather than saying we're checking whether the
44974         function `works', say what we're testing.
44975         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
44976         Reported by Bruno Haible.
44977
44978 2002-03-10  Jim Meyering  <meyering@lucent.com>
44979
44980         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
44981         Suggestion from Santiago Vila.
44982
44983 2002-03-08  Jim Meyering  <meyering@lucent.com>
44984
44985         * lib/rename.c: Mention that this wrapper is needed also on
44986         mips-dec-ultrix4.4 systems.
44987
44988 2002-03-02  Jim Meyering  <meyering@lucent.com>
44989
44990         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
44991         not HAVE_CLOCK_SETTIME.
44992
44993 2002-02-27  Paul Eggert  <eggert@twinsun.com>
44994
44995         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
44996         Check for clock_settime.
44997
44998 2002-02-27  Paul Eggert  <eggert@twinsun.com>
44999
45000         * lib/nanosleep.h: Rename to....
45001         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
45002
45003         * lib/gettime.c: New file.
45004         * lib/settime.c: New file.
45005         * lib/stime.c: Remove.
45006
45007         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
45008         timespec.h.  Remove nanosleep.h.
45009
45010 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45011
45012         * m4/acl.m4: New file.
45013         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
45014         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
45015
45016 2002-02-25  Paul Eggert  <eggert@twinsun.com>
45017
45018         * lib/acl.c, lib/acl.h: New files.
45019         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
45020
45021 2002-02-24  Jim Meyering  <meyering@lucent.com>
45022
45023         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
45024         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
45025         cause trouble.  Reported by Nelson Beebe.
45026
45027 2002-02-23  Paul Eggert  <eggert@twinsun.com>
45028
45029         * lib/path-concat.c (xpath_concat): Reorder code to pacify
45030         compilers that don't know that xalloc_die never returns.
45031
45032 2002-02-20  Jim Meyering  <meyering@lucent.com>
45033
45034         * lib/getdate.c: Regenerate using bison-1.33.
45035
45036 2002-02-17  Jim Meyering  <meyering@lucent.com>
45037
45038         * config/config.guess (main): Don't use `head -1'; it's no longer
45039         portable. Use `sed 1q' instead.
45040
45041 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
45042
45043         * m4/codeset.m4: Upgrade to gettext-0.11.
45044         * m4/gettext.m4: Upgrade to gettext-0.11.
45045         * m4/glibc21.m4: Upgrade to gettext-0.11.
45046         * m4/iconv.m4: Upgrade to gettext-0.11.
45047         * m4/isc-posix.m4: Upgrade to gettext-0.11.
45048         * m4/lcmessage.m4: Upgrade to gettext-0.11.
45049         * m4/lib-ld.m4: New file, from gettext-0.11.
45050         * m4/lib-link.m4: New file, from gettext-0.11.
45051         * m4/lib-prefix.m4: New file, from gettext-0.11.
45052         * m4/progtest.m4: Upgrade to gettext-0.11.
45053
45054 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45055
45056         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
45057         (jm_PREREQ): Use it.
45058
45059 2002-02-15  Paul Eggert  <eggert@twinsun.com>
45060
45061         * lib/posixver.c, lib/posixver.h: New files.
45062         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45063
45064 2002-02-02  Paul Eggert  <eggert@twinsun.com>
45065             Bruno Haible  <bruno@clisp.org>
45066
45067         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
45068         (fwrite_success_callback): New declaration.
45069         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
45070         print_unicode_char. Call failure callback instead of error.
45071         (fwrite_success_callback): New function.
45072         (exit_failure_callback): New function.
45073         (fallback_failure_callback): New function.
45074         (print_unicode_char): Call unicode_to_mb.
45075
45076 2002-01-26  Jim Meyering  <meyering@lucent.com>
45077
45078         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
45079         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
45080
45081 2002-01-26  Jim Meyering  <meyering@lucent.com>
45082
45083         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
45084
45085 2002-01-22  Paul Eggert  <eggert@twinsun.com>
45086
45087         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
45088
45089 2002-01-22  Jim Meyering  <meyering@lucent.com>
45090
45091         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
45092         Otherwise, some versions of automake would omit the rule that makes
45093         Makefile from Makefile.in.
45094
45095 2002-01-21  Paul Eggert  <eggert@twinsun.com>
45096
45097         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
45098         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
45099         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
45100         (memcoll): Set errno to zero if there is no error.
45101
45102         * lib/quotearg.c (quotearg_buffer_restyled):
45103         Fix bug with quoting buffers containing NUL when backslashing escapes.
45104         This bug was exposed by the other changes in this patch.
45105         (quotearg_n_options): New arg ARGSIZE.
45106         All callers changed.
45107         (quoting_options_from_style): New function.
45108         (quotearg_n_style): Use it.
45109         (quotearg_n_style_mem): New function.
45110
45111         * lib/quotearg.h (quotearg_n_style_mem): New function.
45112
45113 2002-01-19  Jim Meyering  <meyering@lucent.com>
45114
45115         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
45116         Remove useless quotes: DF_PROG="df".
45117         * m4/strnlen.m4: New file.
45118
45119 2002-01-16  Paul Eggert  <eggert@twinsun.com>
45120
45121         * lib/backupfile.c (ISDIGIT): Comment fix.
45122         * lib/getdate.y (ISDIGIT): Likewise.
45123         * lib/posixtm.c (ISDIGIT, year): Likewise.
45124         * lib/strverscmp.c (ISDIGIT): Likewise.
45125         * lib/userspec.c (ISDIGIT): Likewise.
45126
45127 2002-01-16  Jim Meyering  <meyering@lucent.com>
45128
45129         * lib/getdate.y: Add three semicolons, each just before a closing
45130         brace. Bison (as of version 1.31) no longer papers over that mistake.
45131
45132 2002-01-05  Jim Meyering  <meyering@lucent.com>
45133
45134         * lib/version-etc.c (version_etc_copyright): Update copyright year.
45135
45136 2001-12-19  Paul Eggert  <eggert@twinsun.com>
45137
45138         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
45139         not silently exit merely because the output buffer happens to
45140         have nothing pending.
45141
45142 2001-12-18  Paul Eggert  <eggert@twinsun.com>
45143
45144         See the big note in ../ChangeLog.
45145         * lib/human.c (suffixes): Prefer K to k for 1024.
45146         (generate_suffix_backwards): New function.
45147         (human_readable_inexact): Use it.
45148         * lib/xstrtol.c (__xstrtol): If there is no number but there
45149         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
45150         Accept 'K' as well as 'k'.
45151
45152 2001-12-15  Jim Meyering  <meyering@lucent.com>
45153
45154         * lib/regex.h (__restrict_arr): Update from libc.
45155
45156         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
45157         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
45158         (STREQ): Define.
45159
45160 2001-12-14  Jim Meyering  <meyering@lucent.com>
45161
45162         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
45163         Suggestion from Bruno Haible.
45164
45165 2001-12-10  Jim Meyering  <meyering@lucent.com>
45166
45167         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
45168         xrealloc, Instead, include "xalloc.h".
45169         (initbuffer): Don't cast xmalloc return value to char*.
45170         (readline): Reword comment.
45171         Don't cast xrealloc return value to char*
45172         Return NULL, not 0.
45173
45174 2001-12-09  Jim Meyering  <meyering@lucent.com>
45175
45176         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
45177         about `signed and unsigned type in conditional expression'.
45178         * lib/posixtm.c (posix_time_parse): Likewise.
45179
45180         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
45181
45182         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
45183         to avoid a pedantic warning.
45184
45185         * lib/getstr.c: Don't include assert.h.
45186         (getstr): Remove warning-evoking assertions.
45187         Return -1 if offset parameter is out of bounds.
45188         Change the type of a local from int to size_t.
45189
45190         * lib/strftime.c (my_strftime_localtime_r): Include this function
45191         definition in the `#if ! HAVE_TM_GMTOFF' block.
45192
45193         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
45194         Include xalloc.h instead.
45195
45196 2001-12-02  Jim Meyering  <meyering@lucent.com>
45197
45198         * lib/tempname.c: Don't declare getenv, thus reverting the change of
45199         2001-11-18.  It's no longer necessary, now that stdlib.h is always
45200         included.
45201
45202         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
45203         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
45204
45205 2001-11-30  Akim Demaille  <akim@epita.fr>
45206
45207         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
45208         before being defined.
45209
45210 2001-11-27  Paul Eggert  <eggert@twinsun.com>
45211
45212         * lib/quotearg.h (quotearg_n, quotearg_n_style):
45213         First arg is int, not unsigned.
45214         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
45215         (SIZE_MAX, UINT_MAX): New macros.
45216         (quotearg_n_options): Abort if N is negative.
45217         Avoid overflow check on hosts where size_t is 64 bits and int
45218         is 32 bits, as overflow is impossible there.
45219         Fix off-by-one typo that caused unnecessary reallocation.
45220
45221 2001-11-27  Jim Meyering  <meyering@lucent.com>
45222
45223         * lib/tempname.c: Merge with version from libc.
45224         * lib/regex.c: Likewise.
45225
45226         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
45227         systems for which STDC_HEADERS is 0, it was not included, resulting in
45228         a warning about an integer-to-pointer conversion problem with getenv.
45229         Reported by Volker Borchert.
45230
45231 2001-11-26  Jim Meyering  <meyering@lucent.com>
45232
45233         * lib/gtod.h: Remove file.
45234         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
45235         * lib/gettimeofday.c: Don't include gtod.h.
45236         (GTOD_init): Remove function.
45237         (rpl_gettimeofday): Do its job here instead, rather than aborting.
45238         Suggestion from Volker Borchert.
45239
45240 2001-11-23  Jim Meyering  <meyering@lucent.com>
45241
45242         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
45243         it.
45244         * lib/hash.c (struct hash_table): Define it here instead.
45245
45246 2001-11-22  Jim Meyering  <meyering@lucent.com>
45247
45248         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
45249
45250 2001-11-20  Jim Meyering  <meyering@lucent.com>
45251
45252         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
45253         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
45254
45255 2001-11-19  Jim Meyering  <meyering@lucent.com>
45256
45257         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
45258         directory.  Use "conftestXXXXXX" as the template.
45259         Suggestion from Paul Eggert.
45260
45261         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
45262         immediately, so the test doesn't mistakenly hit the max-open-files
45263         limit.
45264
45265 2001-11-18  Paul Eggert  <eggert@twinsun.com>
45266
45267         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
45268         (TEMPORARIES): New macro.
45269         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
45270         removes an artificial limitation (e.g. HP-UX 10.20, where
45271         TMP_MAX is 17576).
45272
45273 2001-11-18  Jim Meyering  <meyering@lucent.com>
45274
45275         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
45276
45277 2001-11-18  Jim Meyering  <meyering@lucent.com>
45278
45279         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
45280         on SunOS 4.
45281
45282         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
45283         files will be created before anything else.
45284
45285 2001-11-17  Paul Eggert  <eggert@twinsun.com>
45286
45287         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
45288         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
45289
45290 2001-11-17  Jim Meyering  <meyering@lucent.com>
45291
45292         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
45293         Prompted by a report from Bob Proulx.
45294
45295         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
45296         Instead, require UTILS_FUNC_MKSTEMP.
45297
45298 2001-11-17  Jim Meyering  <meyering@lucent.com>
45299
45300         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
45301         Now, that's done as part of AC_FUNC_STRTOD.
45302
45303 2001-11-17  Jim Meyering  <meyering@lucent.com>
45304
45305         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
45306         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
45307         rather than group writable.  Patch by Juan F. Codagnone.
45308
45309         * lib/readtokens.c: Remove explicit declarations of xmalloc and
45310         xrealloc, Instead, include "xalloc.h".
45311
45312         * lib/mountlist.c: Include unlocked-io.h after all system headers.
45313         Remove explicit declarations of xmalloc, xrealloc,
45314         and xstrdup.  Instead, include "xalloc.h".
45315
45316         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
45317         unlocked-io.h.
45318         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
45319         Likewise.
45320         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
45321
45322         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
45323         Reported by Padraig Brady.
45324
45325         * lib/mkstemp.c: #undef mkstemp.
45326         Include config.h.
45327         (rpl_mkstemp): Rename from mkstemp.
45328         Protoize.
45329
45330 2001-11-16  Jim Meyering  <meyering@lucent.com>
45331
45332         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
45333         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
45334         determine the amount of total physical memory, use pstat_getstatic.
45335         HPUX-11 doesn't define _SC_PHYS_PAGES.
45336         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
45337         If sysconf couldn't be used to determine the amount of available
45338         physical memory, use both pstat_getstatic and pstat_getdynamic.
45339         Based on a patch from Bob Proulx.
45340
45341 2001-11-10  Jim Meyering  <meyering@lucent.com>
45342
45343         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
45344         (jm_PREREQ): Use it.
45345
45346 2001-11-09  Jim Meyering  <meyering@lucent.com>
45347
45348         * m4/jm-macros.m4: Require autoconf-2.52f.
45349         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
45350         Use these AC_-prefixed names, not the AM_-prefixed ones.
45351
45352         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
45353
45354 2001-11-05  Jim Meyering  <meyering@lucent.com>
45355
45356         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
45357
45358 2001-11-04  Jim Meyering  <meyering@lucent.com>
45359
45360         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
45361         $DEFS.
45362
45363 2001-11-03  Jim Meyering  <meyering@lucent.com>
45364
45365         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
45366         of AC_DEFUN.
45367
45368         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
45369         know the name of the variable in the macro definition.
45370
45371 2001-11-03  Jim Meyering  <meyering@lucent.com>
45372
45373         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
45374         in argmatch_to_argument call.
45375
45376         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
45377         argument.
45378
45379         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
45380         e.g., a fault due to an attempt to free a NULL pointer.
45381
45382 2001-11-01  Jim Meyering  <meyering@lucent.com>
45383
45384         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
45385         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
45386
45387 2001-11-01  Jim Meyering  <meyering@lucent.com>
45388
45389         * lib/dirfd.c, lib/dirfd.h: New files.
45390         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
45391
45392         * lib/hash.c (hash_print) [TESTING]: Clean up.
45393
45394 2001-10-22  Paul Eggert  <eggert@twinsun.com>
45395
45396         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
45397         to avoid a warning if -Wall.
45398
45399 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
45400
45401         * README: New file
45402         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
45403         (per RMS's instructions, this is now the canonical source)
45404         * lgpl/, gpl/: New directories.
45405
45406 2001-10-21  Paul Eggert  <eggert@twinsun.com>
45407
45408         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
45409
45410 2001-10-21  Jim Meyering  <meyering@lucent.com>
45411
45412         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
45413         this code would end up calling gettext even in packages built
45414         with --disable-nls.
45415         * lib/getopt.c (_): Likewise.
45416         * lib/regex.c (_): Likewise.
45417
45418 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45419
45420         * m4/error.m4 (jm_PREREQ_ERROR):
45421         Do not invoke AC_CHECK_FUNCS with strerror_r, as
45422         AC_FUNC_STRERROR_R does that.
45423         Check for strerror declaration.
45424
45425         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
45426         are supposed to have them these days.
45427         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
45428         Merge changes from latest Autoconf CVS.
45429         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
45430         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
45431         POSIX decided to standardize on the int flavor of strerror_r.
45432
45433 2001-10-20  Paul Eggert  <eggert@twinsun.com>
45434
45435         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
45436         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
45437         Use strerror_r that is only a macro, even if it is not a function.
45438         (strerror): Check for HAVE_DECL_STRERROR before declaring.
45439         (private_strerror): Use prototypes, not old-style function definition.
45440         (print_errno_message): New function.
45441         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
45442         char*-flavored one.
45443         (error_tail, error, error_at_line): Use it.
45444
45445 2001-10-11  Jim Meyering  <meyering@lucent.com>
45446
45447         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
45448         and quote_n (1, ... to avoid clobbering a buffer.
45449
45450 2001-10-05  Jim Meyering  <meyering@lucent.com>
45451
45452         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
45453         hash-pjw.h.
45454         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
45455         * lib/hash-pjw.h: New file.
45456
45457 2001-09-30  Jim Meyering  <meyering@lucent.com>
45458
45459         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
45460         `struct fsstat' has the `f_fstypename' member.
45461         Use that to define FS_TYPE, which is now used to make
45462         the getfsstat link test tighter.
45463
45464 2001-09-30  Jim Meyering  <meyering@lucent.com>
45465
45466         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
45467         Include <sys/ucred.h>, for Apple Darwin.
45468         Include sys/mount.h and sys/fs_types.h only if available.
45469         (FS_TYPE): Define.
45470         (read_filesystem_list): Use FS_TYPE.
45471
45472 2001-09-29  Paul Eggert  <eggert@twinsun.com>
45473
45474         * lib/exclude.c (excluded_filename): 0 -> false, since it's
45475         a boolean context.
45476
45477 2001-09-29  Jim Meyering  <meyering@lucent.com>
45478
45479         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45480         [one-argument getmntent function]): Include stdio.h before mntent.h.
45481         SunOS 4.1.x needs it for the declaration of `FILE'.
45482         Patch by Volker Borchert.
45483
45484         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
45485         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
45486         sys/fs_types.h, and make the link-test for getfsstat guard #include
45487         directives with appropriate #if HAVE_*_H tests so that we can
45488         detect getfsstat on Apple Darwin1.3.7 systems.
45489         Reported by Nelson Beebe.
45490         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
45491
45492 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45493
45494         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45495         #defines strtoimax.  Also treat the other strto* functions
45496         like strtoimax.
45497
45498         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
45499         Check for strtoul and strtoumax,
45500         as those declarations are made even in the signed case.
45501         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
45502         Likewise, for strtol and strtoimax.
45503
45504 2001-09-28  Paul Eggert  <eggert@twinsun.com>
45505
45506         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
45507         #defines strtoimax.  Also treat the other strto* functions
45508         like strtoimax.
45509
45510         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
45511         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
45512         (strtoimax, strtoumax): Do not declare if already defined as a macro.
45513
45514 2001-09-26  Jim Meyering  <meyering@lucent.com>
45515
45516         Most macros in unlocked-io.h had the wrong number of arguments.
45517         * lib/gen-uio: New script.
45518         (USE_UNLOCKED_IO): Define to 1 if not already defined.
45519         * lib/unlocked-io.hin: Remove file.
45520         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
45521         rather than trying to embed it here.
45522         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
45523         Reported by Padraig Brady.
45524
45525 2001-09-25  Volker Borchert  <bt@teknon.de>
45526
45527         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
45528         `result'.
45529
45530 2001-09-24  Jim Meyering  <meyering@lucent.com>
45531
45532         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
45533
45534 2001-09-23  Jim Meyering  <meyering@lucent.com>
45535
45536         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
45537         instead of the mere test for existence of mntent.h.  The latter
45538         would get a false-positive on AIX 3.4 systems.
45539         In the outer getmntent if-block, don't die if neither of the getmntent
45540         tests succeeds.  Instead, just fall through and continue with the
45541         remaining tests.
45542
45543 2001-09-23  Jim Meyering  <meyering@lucent.com>
45544
45545         * lib/mountlist.c: Remove useless parentheses in #if directives.
45546         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
45547         the deprecated MOUNTED symbol is no longer defined in mntent.h.
45548
45549 2001-09-22  Jim Meyering  <meyering@lucent.com>
45550
45551         * m4/gettext.m4: New file.  From gettext.
45552         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
45553         * m4/progtest.m4: Likewise
45554         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
45555         * m4/glibc21.m4: Likewise.
45556
45557         * m4/libintl.m4: Remove.  No longer used.
45558
45559 2001-09-22  Jim Meyering  <meyering@lucent.com>
45560
45561         * lib/localcharset.c: Update from latest gettext.
45562         * lib/config.charset: Likewise.
45563
45564 2001-09-20  Jim Meyering  <meyering@lucent.com>
45565
45566         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
45567         strtoimax.
45568         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
45569         strtoumax.
45570
45571 2001-09-20  Jim Meyering  <meyering@lucent.com>
45572
45573         * lib/xstrtol.c (strtoimax): Guard declaration with
45574         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
45575         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
45576         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
45577         (strtoumax): Likewise, for completeness (it wasn't necessary).
45578
45579 2001-09-17  Paul Eggert  <eggert@twinsun.com>
45580
45581         * lib/strtoimax.c (HAVE_LONG_LONG):
45582         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
45583         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
45584         to work around bug in IBM C compiler.
45585
45586 2001-09-17  Jim Meyering  <meyering@lucent.com>
45587
45588         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
45589         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
45590         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
45591         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
45592         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
45593         whenever the right hand side need not be expanded by the shell.
45594
45595 2001-09-16  Paul Eggert  <eggert@twinsun.com>
45596
45597         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
45598         library.  It's not correct, as some older glibcs are buggy.
45599         fnmatch wasn't fixed until glibc 2.2.
45600
45601         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
45602         special shell magic here.
45603
45604 2001-09-16  Jim Meyering  <meyering@lucent.com>
45605
45606         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
45607         * m4/jm-macros.m4: Require it.
45608
45609 2001-09-16  Jim Meyering  <meyering@lucent.com>
45610
45611         * lib/mkdir.c: New file.
45612
45613 2001-09-15  Jim Meyering  <meyering@lucent.com>
45614
45615         * m4/jm-macros.m4: Check for help2man.
45616
45617 2001-09-11  Jim Meyering  <meyering@lucent.com>
45618
45619         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
45620         The body, by Paul Eggert, was moved here from configure.in.
45621         * m4/jm-macros.m4: Require UTILS_HOST_OS.
45622
45623 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45624
45625         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
45626         (jm_PREREQ): Use it.
45627
45628 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45629
45630         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
45631         Use ssize_t, not int, to store result of readlink.
45632         Check for ssize_t overflow as well as size_t overflow,
45633         as POSIX says the result of readlink is implementation-defined
45634         when ssize_t overflows.
45635         Remove unnecessary cast to char*.
45636         Use free+malloc instead of realloc, as the storage doesn't need
45637         to be preserved and it's clearer and can be more efficient that way.
45638         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
45639         * lib/xreadlink.h (xreadlink): Update prototype.
45640
45641 2001-09-04  Paul Eggert  <eggert@twinsun.com>
45642
45643         * lib/xgetcwd.c: Revert some of the previous change; intead,
45644         fix the HAVE_GETCWD_NULL code to behave more like the
45645         !HAVE_GETCWD_NULL code used to.
45646
45647         Include "xalloc.h".
45648         (xgetcwd): Do not return NULL when memory is exhausted; instead,
45649         invoke xalloc_die.
45650
45651 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45652
45653         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
45654         sys/param.h, as pathmax.h includes them.
45655
45656 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45657
45658         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
45659         (jm_PREREQ_XGETCWD): New macro.
45660
45661         * m4/getcwd.m4: New file.
45662
45663 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45664
45665         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
45666         like the HAVE_GETCWD_NULL code.
45667         Include pathmax.h if not HAVE_GETCWD.
45668         Do not include xalloc.h.
45669         (INITIAL_BUFFER_SIZE): New symbol.
45670         Do not use xmalloc / xrealloc, since the caller is responsible for
45671         handling errors.  Preserve errno around `free' during failure.
45672         Do not overrun buffer when using getwd.
45673
45674 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45675
45676         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
45677         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
45678         getcwd (NULL, 0).
45679
45680 2001-09-03  Paul Eggert  <eggert@twinsun.com>
45681
45682         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
45683         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
45684         spotted by Jim Meyering.
45685
45686 2001-09-03  Jim Meyering  <meyering@lucent.com>
45687
45688         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
45689         failure.
45690
45691 2001-09-02  Jim Meyering  <meyering@lucent.com>
45692
45693         * lib/error.c: Update from GNU libc.
45694
45695 2001-09-01  Jim Meyering  <meyering@lucent.com>
45696
45697         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
45698         Used by df.
45699
45700 2001-09-01  Jim Meyering  <meyering@lucent.com>
45701
45702         * lib/xreadlink.c: New file.
45703         * lib/xreadlink.h: New file.
45704         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
45705         xreadlink.h.
45706
45707         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
45708         doesn't conflict with sparc Solaris 7's definition in
45709         /usr/include/sys/int_types.h.
45710
45711         * lib/exclude.c: Use `""', not `<>' to #include non-system header
45712         files.
45713         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
45714         and strncasecmp as r-values.  Unixware didn't have declarations.
45715
45716 2001-08-31  Paul Eggert  <eggert@twinsun.com>
45717
45718         * lib/xstrtol.h: Add copyright notice.
45719         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
45720         LONGINT_INVALID_SUFFIX_CHAR.
45721
45722 2001-08-31  Paul Eggert  <eggert@twinsun.com>
45723
45724         * lib/xstrtol.c (strtoimax): New decl.
45725
45726 2001-08-31  Paul Eggert  <eggert@twinsun.com>
45727
45728         * lib/xgetcwd.c: Don't include pathmax.h.
45729         Include stdlib.h and unistd.h if available.
45730         Include xalloc.h.
45731         (xmalloc, xstrdup, free): Remove decls.
45732         (xgetcwd): Don't assume sizes fit in unsigned.
45733         Check for overflow when computing sizes.
45734         Simplify reallocation code.
45735
45736 2001-08-31  Paul Eggert  <eggert@twinsun.com>
45737
45738         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
45739         a directory's st_size can have an arbitrary value, so the old
45740         usage could waste an arbitrary amount of memory.  All uses
45741         changed.
45742         * lib/savedir.h: Update prototype.
45743
45744 2001-08-31  Paul Eggert  <eggert@twinsun.com>
45745
45746         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
45747
45748         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
45749         old strtoimax.c.
45750
45751         Also, make the following further changes to make this file's
45752         configuration more similar to that of strtol.c:
45753         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
45754         (strtoumax, uintmax_t, strtoull, strtol): Remove.
45755         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
45756         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
45757         changed to signed values.
45758
45759         And make the following changes as well:
45760         Fix copyright notice, as 1999 was missing.
45761         (verify): New macro.
45762         (strtoimax): Check sizes at compile-time, not run-time.
45763         Prefer strtol to strtoll if both work.
45764         (main): Remove; it was not that useful and was a pain to maintain.
45765
45766         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
45767
45768 2001-08-31  Jim Meyering  <meyering@lucent.com>
45769
45770         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
45771         Use an initial, malloc'd, buffer of length 128 rather than
45772         a statically allocated one of length 1024.
45773
45774 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45775
45776         Simplify code, partly by assuming autoconf 2.52 semantics.
45777
45778         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
45779
45780         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
45781         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
45782         All uses removed.
45783         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
45784         Move AC_REQUIRE to next-to-top level, to avoid confusion.
45785         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
45786         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
45787         jm_AC_HEADER_INTTYPES_H.
45788         * m4/jm-macros.m4 (jm_MACROS): Likewise.
45789
45790         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
45791
45792         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
45793         Quote first arg of AC_DEFUN.
45794         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
45795         since they are needed to parse the include file even if we need
45796         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
45797         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
45798         but with opposite signedness.
45799
45800 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45801
45802         Merge 'exclude' changes from tar 1.13.22.
45803         This fixes one or two unlikely storage allocation overflow bugs,
45804         but doesn't change user-visible behavior otherwise.
45805
45806 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45807
45808         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
45809         (jm_PREREQ_EXCLUDE): New macro.
45810
45811 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45812
45813         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
45814         tm to be declared.
45815
45816 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45817
45818         * lib/hash.c: Remove '2001' from copyright notice.
45819
45820 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45821
45822         * lib/full-write.h: New file.
45823         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
45824         * lib/full-write.c: Correct credits, as cccp.c no longer
45825         exists and anyway it was so heavily changed from the old cccp
45826         code as to be unrecognizable.  Include full-write.h.
45827         (full_write) Return size_t, with short writes meaning failure.
45828         All callers changed.  This fixes a bug with large buffers
45829         on 64-bit hosts.
45830         * lib/utime.c: Include full-write.h.
45831
45832 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45833
45834         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
45835         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
45836         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
45837         Include if available.
45838         (<xalloc.h>): Include
45839         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
45840         (verify): New macro.  Use it to verify that EXCLUDE macros do not
45841         collide with FNM macros.
45842         (struct patopts): New struct.
45843         (struct exclude): Use it, as exclude patterns now come with options.
45844         (new_exclude): Support above changes.
45845         (new_exclude, add_exclude_file):
45846         Initial size must now be a power of two to simplify overflow checking.
45847         (free_exclude, fnmatch_no_wildcards): New function.
45848         (excluded_filename): No longer requires options arg, as the options
45849         are determined by add_exclude.  Now returns bool, not int.
45850         (excluded_filename, add_exclude):
45851         Add support for the fancy new exclusion options.
45852         (add_exclude, add_exclude_file): Now takes int options arg.
45853         Check for arithmetic overflow when computing sizes.
45854         (add_exclude_file): xrealloc might modify errno, so don't
45855         realloc until after errno might be used.
45856
45857         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
45858         New macros.
45859         (free_exclude): New decl.
45860         (add_exclude, add_exclude_file): Now takes int options arg.
45861         (excluded_filename): No longer requires options arg, as the options
45862         are determined by add_exclude.  Now returns bool, not int.
45863
45864 2001-08-30  Paul Eggert  <eggert@twinsun.com>
45865
45866         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
45867
45868 2001-08-27  Jim Meyering  <meyering@lucent.com>
45869
45870         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
45871
45872         * lib/version-etc.c (N_): Remove definition.
45873         Revert most of last change.
45874         Instead, simply don't mark the `Copyright...' string for translation.
45875         Based on advice from Paul Eggert.
45876
45877         * lib/strtoxmax.c: Tweak comment.
45878
45879 2001-08-26  Jim Meyering  <meyering@lucent.com>
45880
45881         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
45882
45883         * m4/xstrtoimax.m4: New file.
45884         * m4/xstrtoumax.m4: Add comments explaining why we
45885         AC_REPLACE_FUNCS(strtol).
45886
45887 2001-08-26  Jim Meyering  <meyering@lucent.com>
45888
45889         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
45890         of copyright with `%s' so translators don't get an untranslated
45891         message in 2002.
45892         (COPYRIGHT_YEAR): Define.
45893         (version_etc): Use fprintf rather than fputs.
45894         Suggestion from Ulrich Drepper.
45895
45896         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
45897
45898         * lib/strtoll.c: New file, from GNU libc.
45899         * lib/xstrtoimax.c: New file.
45900
45901         * lib/xstrtol.h: Add xstrtoimax.
45902         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
45903         * lib/strtoimax.c: New file.  Likewise, but first define
45904         STRTOUXMAX_SIGNED.
45905
45906         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
45907         ...
45908         * lib/strtoxmax.c: ... then renamed to this.
45909
45910 2001-08-18  Paul Eggert  <eggert@twinsun.com>
45911
45912         * m4/inttypes.m4: Add AC_PREREQ(2.13).
45913         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
45914         (jm_AC_TYPE_INTMAX_T): New macro.
45915         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
45916
45917         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
45918
45919         * m4/longlong.m4: Renamed from ulonglong.m4.
45920         * m4/inttypes.m4: Renamed from inttypes_h.m4.
45921         * m4/uintmax_t.m4: Removed.
45922
45923 2001-08-13  Paul Eggert  <eggert@twinsun.com>
45924
45925         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
45926         Port to Solaris 8, where 'sed' requires a space after the 'r'
45927         command, and where sh dislikes "$/".  Clean up the spacing a bit.
45928         Redirect output to $tmp just once.
45929
45930 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
45931
45932         * lib/addext.c (<errno.h>): Include.
45933         (errno): Declare if not defined.
45934         (addext): Work correctly when pathconf returns -1 and leaves
45935         errno alone because there is no limit.  Also, work even if
45936         pathconf returns a value greater than SIZE_MAX.
45937
45938 2001-08-12  Jim Meyering  <meyering@lucent.com>
45939
45940         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
45941         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
45942         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
45943         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
45944         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
45945         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
45946         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
45947         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
45948         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
45949         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
45950         utime.m4, utimes.m4, xstrtoumax.m4:
45951         Quote the first argument in each use of AC_DEFUN.
45952
45953 2001-08-12  Jim Meyering  <meyering@lucent.com>
45954
45955         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
45956         Simply `return getcwd (NULL, 0);'.
45957         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
45958         Use 1300 as initial value for length, not PATH_MAX.
45959
45960         * lib/pathmax.h: Clean up cpp syntax.
45961
45962 2001-08-12  Jim Meyering  <meyering@lucent.com>
45963
45964         * lib/gettimeofday.c: New file.
45965         * lib/gtod.h: New file.
45966         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
45967
45968 2001-08-05  Jim Meyering  <meyering@lucent.com>
45969
45970         * m4/jm-macros.m4: Require autoconf-2.52.
45971
45972 2001-08-04  Jim Meyering  <meyering@lucent.com>
45973
45974         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
45975         stmt, to get in sync with glibc.
45976
45977 2001-08-03  Paul Eggert  <eggert@twinsun.com>
45978
45979         The following changes are from gettext 0.10.39 as maintained by
45980         Bruno Haible.
45981
45982         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
45983         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
45984         with inverted sense.  All uses changed.
45985
45986         * lib/mbswidth.c: Don't include <limits.h>.
45987         Include <stdlib.h> and <string.h> unconditionally.
45988         (iswcntrl, mbsinit, ISCNTRL): New macros.
45989         (mbsnwidth): Use K&R style function declarations.
45990         Don't bother checking for MB_LEN_MAX == 1, since the compiler
45991         can optimize it when MB_CUR_MAX == 1.
45992         The width of control characters is zero, not 1.
45993
45994 2001-08-03  Paul Eggert  <eggert@twinsun.com>
45995
45996         The following changes are from gettext 0.10.39 as maintained by
45997         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
45998
45999         * m4/codeset.m4: Upgrade to serial AM1.
46000         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
46001         all uses changed.  Quote first arg of AC_DEFUN.
46002         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
46003
46004         * m4/iconv.m4: Upgrade to serial AM2.
46005         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
46006         Add --with-libconv-prefix.
46007         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
46008         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
46009         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
46010         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
46011         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
46012
46013         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
46014         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
46015         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
46016         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
46017         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
46018         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
46019         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
46020         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
46021         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
46022
46023         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
46024         string.h any more.
46025
46026         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
46027         not the default value.
46028
46029         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
46030         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
46031         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
46032         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
46033         Also check for iswcntrl, used for wcwidth fallback.
46034         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
46035         to Autoconf 2.13.
46036
46037 2001-08-03  Jim Meyering  <meyering@lucent.com>
46038
46039         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
46040         as it was in the original.  Reported by Paul Eggert.
46041
46042 2001-07-16  Jim Meyering  <meyering@lucent.com>
46043
46044         * m4/gettimeofday.m4: New file.
46045         Prompted by a report from Bernhard Baehr.
46046
46047 2001-07-15  Jim Meyering  <meyering@lucent.com>
46048
46049         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
46050         stuff. Now it's in ../Makefile.cfg.
46051
46052 2001-07-15  Jim Meyering  <meyering@lucent.com>
46053
46054         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
46055         (BUILT_SOURCES): Add unlocked-io.h.
46056         (io_functions): Define.
46057         (unlocked-io.h): New rule.
46058         (DISTCLEANFILES): Add unlocked-io.h.
46059         (all-local): Depend on unlocked-io.h, to ensure it is created.
46060
46061         * lib/unlocked-io.hin: New file
46062
46063         * lib/regex.c: Update from glibc.
46064
46065 2001-07-05  Jim Meyering  <meyering@lucent.com>
46066
46067         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
46068         recommendation.
46069         (libfetish_a_SOURCES): Put all .h files here instead.
46070         Remove a thus-exposed (better checks in automake) duplicate and
46071         two unnecessary .h files.
46072
46073 2001-07-04  Jim Meyering  <meyering@lucent.com>
46074
46075         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
46076         that generates jm-glibc-io.m4 so that it doesn't trigger any make
46077         distcheck failure.
46078
46079 2001-07-02  Jim Meyering  <meyering@lucent.com>
46080
46081         The following changes were prompted by suggestions from Bruno Haible.
46082
46083         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
46084         is now generated.
46085         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
46086         definition of EXTRA_DIST.
46087         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
46088         ensure that the generated file is created/updated whenever the list
46089         of $(unlocked_functions) is changed.
46090         (jm-glibc-io.m4): New rule.
46091         (unlocked-io.h): New rule -- currently unused.
46092
46093 2001-06-24  Jim Meyering  <meyering@lucent.com>
46094
46095         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
46096         unmatched right bracket, rather than kludging it with an extra,
46097         falsely-matching quote in a comment.  Patch by Akim Demaille.
46098
46099 2001-06-11  Jim Meyering  <meyering@lucent.com>
46100
46101         * lib/regex.c: Update from GNU libc.
46102
46103 2001-05-27  Jim Meyering  <meyering@lucent.com>
46104
46105         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
46106         Check for ut_type in struct utmp.
46107
46108 2001-05-27  Jim Meyering  <meyering@lucent.com>
46109
46110         * lib/readutmp.h (UT_TYPE): Define.
46111
46112 2001-05-24  Jim Meyering  <meyering@lucent.com>
46113
46114         * lib/argmatch.c: Include "quote.h".
46115         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
46116         quote function.  Reported by Göran Uddeborg.
46117
46118 2001-05-22  Jim Meyering  <meyering@lucent.com>
46119
46120         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
46121         now that we use the package-supplied version unconditionally.
46122         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
46123
46124 2001-05-21  Jim Meyering  <meyering@lucent.com>
46125
46126         * m4/regex.m4: Change a couple backticks to single quotes to avoid
46127         shell syntax errors.
46128
46129 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46130
46131         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
46132
46133 2001-05-20  Paul Eggert  <eggert@twinsun.com>
46134
46135         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
46136         Don't bother to check library strftime, since
46137         we'll be using our own my_strftime function anyway.
46138         Define my_strftime instead of strftime.
46139
46140 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
46141
46142         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
46143         which is not yet declared.
46144
46145 2001-05-15  Jim Meyering  <meyering@lucent.com>
46146
46147         * m4/regex.m4: Use proper quoting so brackets appear in the test
46148         program.
46149         Reported by, and with help from, Bruno Haible.
46150
46151 2001-05-13  Jim Meyering  <meyering@lucent.com>
46152
46153         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
46154         undefined.
46155
46156 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46157
46158         dirname code cleanup.  base_name now behaves more compatibly
46159         with POSIX basename when given file names that have trailing
46160         slashes, and similarly for dir_name.  Add new primitives
46161         base_len and dir_len.  Put the directory-name-related decls
46162         into dirname.h.
46163
46164         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
46165         * lib/backupfile.c (base_name): Likewise.
46166         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
46167         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
46168         * lib/makepath.c (strip_trailing_slashes): Likewise.
46169         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
46170         ISSLASH): Likewise.
46171         * lib/rename.c (strip_trailing_slashes): Likewise.
46172         * lib/same.c (base_name): Likewise.
46173         * lib/stripslash.c (ISSLASH): Likewise.
46174
46175         * lib/addext.c: Include <dirname.h> after size_t is defined.
46176         * lib/backupfile.c: Likewise.
46177
46178         * lib/addext.c (addext): Use base_len to trim redundant
46179         trailing slashes instead of doing it ourselves.
46180         But do not trim the last slash if it is not redundant.
46181
46182         * lib/backupfile.c (find_backup_file_name,
46183         max_backup_version): Use base_len instead of rolling it ourselves.
46184         Handle the case of "" and (on DOS) "C:" correctly.
46185
46186         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
46187         needed. Include <string.h>, <dirname.h>.
46188         (base_name): Allow file names ending in slashes, other than names
46189         that are all slashes.  In this case, return the basename followed
46190         by the slashes.  This is more general, and can be used in places
46191         where the original base_name purposely had an assertion failure.
46192         (base_len): New function.
46193
46194         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
46195         Do not include <assert.h>; no longer needed.
46196         Include xalloc.h.
46197         (memrchr): Remove decl.
46198         (dir_name_r): Remove.
46199         (dir_len): Renamed from dirlen.  All callers changed.
46200         Rewrite in terms of base_name, for simplicity and consistency.
46201         (dir_name): Never return NULL.  All callers changed.
46202         Do not include <stdlib.h> in test program; no longer needed.
46203         return 0; is fine for test program.
46204
46205         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
46206         New macros.
46207         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
46208
46209         * lib/path-concat.c (path_concat): Use base_len to compute
46210         base length, not strlen; this means we cannot rely on memcpy
46211         to null-terminate.
46212
46213         * lib/same.c (STREQ): Remove.
46214         (same_name): Handle the case where the basename ends in trailing '/'.
46215
46216         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
46217         a slash was stripped.  Do not strip the last slash after a
46218         file system prefix.
46219
46220 2001-05-11  Paul Eggert  <eggert@twinsun.com>
46221
46222         * lib/Makefile.am (libfetish_a_SOURCES):
46223         Add strftime.c, since we now compile it on all hosts.
46224
46225         * lib/strftime.c (my_strftime):
46226         Define to nstrftime if emacs, but only if my_strftime is not defined.
46227         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
46228         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
46229         Add one more extra argument: a nanoseconds value.
46230         All uses changed.
46231         (ns): New macro.
46232         (my_strftime function): Add %N format.
46233         (emacs_strftimeu): Renamed from emacs_strftime,
46234         with extra ut argument.
46235
46236 2001-05-09  Paul Eggert  <eggert@twinsun.com>
46237
46238         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
46239
46240 2001-04-21  Jim Meyering  <meyering@lucent.com>
46241
46242         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
46243         doesn't interfere.
46244
46245 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
46246
46247         * m4/ftruncate.m4: Check for chsize.
46248         Link with ftruncate.o unconditionally if ftruncate is missing.
46249         This was required when cross-compiling to i586-mingw32msvc.
46250
46251 2001-04-08  Jim Meyering  <meyering@lucent.com>
46252
46253         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
46254         recomputed; that's necessary when the offset spans a DST transition.
46255         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
46256
46257 2001-04-02  Jim Meyering  <meyering@lucent.com>
46258
46259         * lib/regex.h, regex.c: Update from GNU libc.
46260
46261 2001-03-24  Jim Meyering  <meyering@lucent.com>
46262
46263         * m4/jm-macros.m4: Require autoconf-2.49d.
46264
46265 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
46266
46267         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
46268
46269 2001-03-19  Paul Eggert  <eggert@twinsun.com>
46270
46271         * lib/version-etc.c (version_etc_copyright): Update to 2001.
46272
46273 2001-03-17  Jim Meyering  <meyering@lucent.com>
46274
46275         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
46276         now that the version in autoconf is equivalent.
46277         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
46278
46279         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
46280         Suggestion from Akim Demaille.
46281
46282         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
46283         (jm_PREREQ_TEMPNAME): New function.
46284
46285 2001-03-16  Paul Eggert  <eggert@twinsun.com>
46286
46287         * lib/tempname.c (uint64_t): Define to uintmax_t if
46288         not defined, and if UINT64_MAX is not defined.
46289         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
46290         Reported by John David Anglin.
46291
46292 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
46293
46294         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
46295         resolve alias if codeset is empty.
46296         * lib/config.charset (BeOS): Use wildcard syntax.
46297
46298 2001-03-13  Jim Meyering  <meyering@lucent.com>
46299
46300         * lib/path-concat.c (path_concat)
46301         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
46302         concatenating e.g., `C:' and `foo'.
46303         From Bruno Haible.
46304
46305 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46306
46307         * lib/localcharset.c (locale_charset): Don't use
46308         setlocale(LC_CTYPE,NULL). Don't return NULL.
46309         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
46310
46311 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
46312
46313         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
46314         support for DOS/DJGPP.
46315
46316 2001-03-01  Paul Eggert  <eggert@twinsun.com>
46317
46318         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
46319         lacks mkstemp.  Compile our own tempname.c if we compile our own
46320         mkstemp.c, as mkstemp relies on tempname.
46321
46322 2001-03-01  Jim Meyering  <meyering@lucent.com>
46323
46324         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
46325         AH_VERBATIM really does output its argument verbatim.
46326
46327 2001-02-28  Paul Eggert  <eggert@twinsun.com>
46328
46329         * lib/Makefile.am (libfetish_a_SOURCES):
46330         Add dup-safer.c, fopen-safer.c.
46331         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
46332
46333         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
46334         * lib/unistd-safer.h: New files.
46335
46336 2001-02-25  Paul Eggert  <eggert@twinsun.com>
46337
46338         The mkstemp replacement is taken from glibc 2.2.2, with some
46339         portability fixes for use outside glibc, as follows:
46340
46341         * lib/tempname.c (struct_stat64): New macro.
46342         (direxists, __gen_tempname): Use it.
46343         This avoids a portability problem with Solaris 8.
46344
46345         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
46346         (<stddef.h>, <stdint.h>, <string.h>):
46347         Include only if STDC_HEADERS || _LIBC.
46348         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
46349         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
46350         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
46351         (__set_errno): Define this macro if <errno.h> doesn't.
46352         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
46353         Define these macros if <stdio.h> doesn't.
46354         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
46355         Define these macros if <sys/stat.h>
46356         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
46357         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
46358         __xstat64): Define if not _LIBC.
46359         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
46360         (__gen_tempname): Invoke gettimeofday only if
46361         HAVE_GETTIMEOFDAY || _LIBC;
46362         otherwise, fall back on plain "time".
46363         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
46364
46365         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
46366
46367         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
46368
46369 2001-02-18  Paul Eggert  <eggert@twinsun.com>
46370
46371         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
46372
46373 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46374
46375         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
46376         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
46377         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
46378         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
46379
46380 2001-02-17  Paul Eggert  <eggert@twinsun.com>
46381
46382         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
46383         Remove workaround macros for hosts that have mbrtowc but not
46384         mbstate_t, as we now insist on proper declarations for both
46385         before using mbrtowc.
46386
46387 2001-02-17  Jim Meyering  <meyering@lucent.com>
46388
46389         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
46390         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
46391         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
46392         UnixWare 7.1.1.
46393
46394         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
46395         rather than AC_CACHE_VAL.
46396
46397 2001-02-17  Jim Meyering  <meyering@lucent.com>
46398
46399         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
46400         around included file name.
46401
46402         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
46403
46404         * lib/strftime.c: Update from GNU libc (the only changes were to
46405         comments).
46406
46407 2001-02-17  Jim Meyering  <meyering@lucent.com>
46408
46409         * lib/regex.c: Update from libc.
46410
46411 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
46412
46413         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
46414         clash.
46415
46416 2001-02-16  Paul Eggert  <eggert@twinsun.com>
46417
46418         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
46419         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
46420         Reported by Mark Hounschell via Paul Eggert.
46421
46422 2001-02-07  Jim Meyering  <meyering@lucent.com>
46423
46424         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
46425
46426 2001-02-05  Jim Meyering  <meyering@lucent.com>
46427
46428         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
46429         it includes the patch required for `large file' support with at least
46430         HP-UX's 10.20 /bin/cc.
46431
46432 2001-02-03  Jim Meyering  <meyering@lucent.com>
46433
46434         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
46435         AS_IF, now that it works once again (mysteriously).
46436         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46437
46438 2001-01-30  Jim Meyering  <meyering@lucent.com>
46439
46440         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
46441         * m4/chown.m4: Rename conftestchown to conftest.chown.
46442         * m4/rename.m4: s/conftestdir/conftest.d1/ and
46443         s/conftestdir2/conftest.d2/.
46444         * m4/utimes.m4: s/conftestdata/conftest.data/
46445         Inspired by Pavel Roskin's change in autoconf.
46446
46447 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
46448
46449         * lib/config.charset: Update for FreeBSD 4.2.
46450
46451 2001-01-27  Jim Meyering  <meyering@lucent.com>
46452
46453         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
46454         a use of AS_IF.
46455         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
46456
46457 2001-01-26  Jim Meyering  <meyering@lucent.com>
46458
46459         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
46460         quotearg.c includes it.
46461
46462 2001-01-26  Jim Meyering  <meyering@lucent.com>
46463
46464         * lib/quotearg.c: Include stddef.h.
46465         * lib/quote.c: Include stddef.h.
46466         Reported by Axel Kittenberger.
46467
46468         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
46469         line in double quotes so that it evokes a better diagnostic.
46470         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
46471         Reported by Axel Kittenberger.
46472
46473 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
46474
46475         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
46476         as if it was a `charset'.
46477
46478 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46479
46480         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
46481         has const.
46482
46483 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
46484
46485         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
46486         to avoid a warning.  Add back 'const' to inptr.
46487
46488 2001-01-20  Jim Meyering  <meyering@lucent.com>
46489
46490         Be sure that headers are checked before used in code compiled
46491         for the type checks.
46492         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
46493         In place of that, invoke jm_CHECK_ALL_TYPES.
46494         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
46495         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
46496         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
46497         The check for ssize_t was mistakenly run before the test for unistd.h.
46498
46499         The configure-time check for stdbool.h was missing.
46500         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
46501         (jm_PREREQ_HASH): New function.
46502
46503 2001-01-17  Jim Meyering  <meyering@lucent.com>
46504
46505         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
46506         for autoconf-2.49c.
46507         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
46508
46509 2001-01-16  Jim Meyering  <meyering@lucent.com>
46510
46511         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
46512         From Bruno Haible.
46513
46514 2001-01-14  Jim Meyering  <meyering@lucent.com>
46515
46516         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
46517         foo and bar.  Create conftestdir/ in the script, not in the C code.
46518         Remove directories in the script, not in the C code.
46519         Remove conftestdir{,2} before trying to create the directory.
46520         Make the entire configure script fail if the mkdir fails.
46521
46522 2001-01-14  Jim Meyering  <meyering@lucent.com>
46523
46524         * lib/rename.c: New file.  From Volker Borchert.
46525         Include stdlib.h, string.h or strings.h, and xalloc.h.
46526         Use strip_trailing_slashes rather than open-coding it.
46527
46528 2001-01-03  Paul Eggert  <eggert@twinsun.com>
46529
46530         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
46531
46532 2001-01-03  Jim Meyering  <meyering@lucent.com>
46533
46534         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
46535         of local `inptr' to avoid warning with some system declarations of
46536         iconv.
46537
46538 2001-01-02  Volker Borchert  <bt@teknon.de>
46539
46540         * m4/rename.m4: New file.
46541         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
46542
46543 2001-01-01  Jim Meyering  <meyering@lucent.com>
46544
46545         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
46546         even on systems with utmpx.h.  It's necessary for the declaration of
46547         utmp's ut_user member.  Reported by Andreas Jaeger.
46548
46549         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
46550         available. They are required for the declarations of getgrgid and
46551         getpwuid resp.
46552         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
46553         Reported by Andreas Jaeger.
46554
46555 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
46556
46557         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
46558         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
46559         so `make install' also works in VPATH builds.
46560
46561 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
46562
46563         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
46564         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
46565         can be used in subdirectories.
46566
46567 2000-12-29  Paul Eggert  <eggert@twinsun.com>
46568
46569         * lib/modechange.c: Do not assume that mode_t uses the
46570         traditional octal encoding.  E.g. "chmod 1 FOO" should set
46571         the other-execute bit of FOO even if S_IXOTH != 1.
46572
46573         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
46574         WOTH, XOTH, ALLM): New macros.
46575         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
46576          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
46577         Use them.
46578         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
46579         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
46580         (mode_compile):
46581         No need to use uintmax_t; unsigned long is long enough.
46582         Don't bother to get suffix since we don't use it.
46583
46584 2000-12-26  Jim Meyering  <meyering@lucent.com>
46585
46586         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
46587         better with autoheader.
46588
46589 2000-12-24  Jim Meyering  <meyering@lucent.com>
46590
46591         * lib/hash.c (is_prime): Return explicit boolean values.
46592         (hash_get_first): Return NULL to appease Irix5.6's 89.
46593         Reported by Nelson Beebe.
46594
46595 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
46596
46597         * lib/localcharset.c (locale_charset): Add support for Win32.
46598
46599 2000-12-18  Paul Eggert  <eggert@twinsun.com>
46600
46601         * lib/physmem.h, lib/physmem.c: New files.
46602
46603         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
46604         (noinst_HEADERS): Add physmem.h.
46605
46606         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
46607         't' for compatibility with Solaris 8 sort.
46608
46609 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
46610
46611         * lib/config.charset: Add support for BeOS.
46612
46613 2000-12-17  Jim Meyering  <meyering@lucent.com>
46614
46615         * m4/dos.m4 (jm_AC_DOS): New file and macro.
46616         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
46617
46618 2000-12-16  Jim Meyering  <meyering@lucent.com>
46619
46620         This bug had a serious impact on chown: `chown N:M FILE' (for integer
46621         N and M) would have treated it like `chown N:N FILE'.
46622
46623         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
46624
46625 2000-12-16  Jim Meyering  <meyering@lucent.com>
46626
46627         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
46628         SHELLS_FILE to a file name that's useful on djgpp systems.
46629         Include stdlib.h.
46630         (ADDITIONAL_DEFAULT_SHELLS): Define.
46631         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
46632         Based mostly on a patch from Prashant TR.
46633
46634 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
46635
46636         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
46637         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
46638         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
46639
46640 2000-12-08  Andreas Schwab  <schwab@suse.de>
46641
46642         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
46643         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
46644
46645 2000-12-07  Jim Meyering  <meyering@lucent.com>
46646
46647         * lib/stripslash.c (ISSLASH): Define.
46648         (strip_trailing_slashes): Use ISSLASH rather than comparing against
46649         `/'.
46650         From Prashant TR.
46651
46652         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
46653         (dir_name_r): Declare this function as static.
46654         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
46655         manifest itself on a name containing a mix of slashes and
46656         backslashes.
46657         Make this function work with names starting with a DOS-style
46658         drive letter and colon prefix.
46659         (dir_name): Append `.' if necessary.
46660         Based mostly on patches from Prashant TR and Eli Zaretskii.
46661
46662         * lib/dirname.h (dir_name_r): Remove prototype.
46663
46664 2000-12-06  Paul Eggert  <eggert@twinsun.com>
46665
46666         * m4/off_t-format.m4: Remove this file.
46667         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
46668
46669 2000-12-06  Jim Meyering  <meyering@lucent.com>
46670
46671         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
46672         replacement strtoull, we may well need the replacement strtoul, too.
46673         Check for declarations of strtoul and strtoull.
46674         Check for strtol.  Mainly as a cue to cause automake to include
46675         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
46676         Check for limits.h -- strtol.c needs it.
46677
46678 2000-12-05  Jim Meyering  <meyering@lucent.com>
46679
46680         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
46681
46682 2000-12-04  Jim Meyering  <meyering@lucent.com>
46683
46684         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
46685         Also include memory.h, stdlib.h, unistd.h if appropriate.
46686         Reported by Andreas Jaeger (conflicting declaration of malloc).
46687
46688 2000-12-02  Jim Meyering  <meyering@lucent.com>
46689
46690         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
46691         * m4/jm-macros.m4 (jm_MACROS): require it.
46692
46693 2000-12-02  Jim Meyering  <meyering@lucent.com>
46694
46695         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
46696
46697 2000-12-01  Paul Eggert  <eggert@twinsun.com>
46698
46699         * lib/memrchr.c: Include <config.h> before any system include file.
46700
46701 2000-11-30  Jim Meyering  <meyering@lucent.com>
46702
46703         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
46704
46705 2000-11-30  Jim Meyering  <meyering@lucent.com>
46706
46707         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
46708
46709 2000-11-29  Paul Eggert  <eggert@twinsun.com>
46710
46711         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
46712
46713 2000-11-26  Jim Meyering  <meyering@lucent.com>
46714
46715         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
46716
46717 2000-11-22  Paul Eggert  <eggert@twinsun.com>
46718
46719         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
46720         size of (size_t) -1; it's not portable.
46721
46722 2000-11-17  Jim Meyering  <meyering@lucent.com>
46723
46724         * lib/strstr.c: Update from GNU libc.
46725
46726 2000-11-17  Akim Demaille  <akim@epita.fr>
46727
46728         * lib/obstack.h: Formatting changes.
46729         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
46730         prevent type checking.
46731         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
46732         cast the value to (void *): assigning a `foo *' to a `void *'
46733         variable is valid.
46734         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
46735
46736 2000-11-16  Jim Meyering  <meyering@lucent.com>
46737
46738         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
46739
46740 2000-11-11  Jim Meyering  <meyering@lucent.com>
46741
46742         * lib/error.c: Add a couple #includes, merging from GNU libc version.
46743
46744 2000-11-10  Jim Meyering  <meyering@lucent.com>
46745
46746         * lib/obstack.h: Update from GNU libc.
46747         * lib/obstack.c: Likewise.
46748
46749 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
46750
46751         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
46752
46753 2000-11-06  Paul Eggert  <eggert@twinsun.com>
46754
46755         * lib/getusershell.c (setusershell): Use rewind rather than
46756         fseek/fseeko, to avoid configuration hassles with fseeko.
46757         Don't bother opening SHELLS_FILE if shellstream is NULL;
46758         it's not necessary.
46759
46760 2000-11-05  Jim Meyering  <meyering@lucent.com>
46761
46762         * lib/makepath.h (make_dir): Declare.
46763         * lib/makepath.c (make_dir): Remove `static' attribute.
46764         Tweak a comment.
46765
46766 2000-11-04  Jim Meyering  <meyering@lucent.com>
46767
46768         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
46769
46770 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
46771
46772         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
46773         last one in a bucket, advance to the next bucket.
46774
46775 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
46776
46777         * lib/fnmatch.c: Do not comment out all the code if we are using
46778         the GNU C library, because in some cases we are replacing buggy
46779         code in the GNU C library itself.
46780
46781 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
46782
46783         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
46784         (regex_compile): Catch bogus \(\1\).
46785
46786 2000-10-30  Paul Eggert  <eggert@twinsun.com>
46787
46788         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
46789         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
46790         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
46791
46792 2000-10-30  Paul Eggert  <eggert@twinsun.com>
46793
46794         * lib/error.h, getline.h, modechange.h:
46795         Remove "2000" from Copyright line, as the file hasn't been
46796         changed this year other than in the copyright notice.
46797
46798         * lib/xalloc.h: Add "2000" to Copyright line, as this file
46799         was changed this year.
46800
46801 2000-10-29  Jim Meyering  <meyering@lucent.com>
46802
46803         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
46804         renaming.
46805         * m4/ls-mntd-fs.m4: Likewise
46806
46807 2000-10-29  Jim Meyering  <meyering@lucent.com>
46808
46809         * lib/xstat.in: Fix grammar in comment.
46810
46811 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
46812
46813         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
46814         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
46815         doesn't define __restrict_arr.
46816
46817 2000-10-28  Jim Meyering  <meyering@lucent.com>
46818
46819         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
46820         (jm_PREREQ_MEMCHR): New function.
46821
46822 2000-10-28  Jim Meyering  <meyering@lucent.com>
46823
46824         * lib/memchr.c: Update from libc.
46825         Adjust for portability:
46826         [HAVE_STDLIB_H]: Include stdlib.h.
46827         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
46828         Undef __memchr, too.
46829         [!weak_alias]: Define __memchr to memchr.
46830
46831         * lib/regex.c: Update from libc.
46832         * lib/regex.h: Likewise.
46833         * lib/getopt1.c: Likewise.
46834         * lib/memcmp.c: Likewise.
46835
46836         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
46837         Avoid using fseek, when possible -- it's broken by design.
46838         Patch by Ulrich Drepper.
46839
46840 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
46841
46842         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
46843         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
46844         Giving in to popular pressure to shut up the compiler with casts.
46845
46846 2000-10-26  Jim Meyering  <meyering@lucent.com>
46847
46848         * lib/strftime.c: Update from libc.
46849
46850 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
46851
46852         * regex.c: More `unsigned char' -> `re_char' changes.
46853         Also change several `int' into `re_wchar_t'.
46854         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
46855         (PUSH_FAILURE_POINTER): Don't cast any more.
46856         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
46857         We want GCC to complain, since this piece of code makes
46858         re_match non-reentrant, which *should* be fixed.
46859         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
46860         (EXTEND_BUFFER): Use RETALLOC.
46861         (SET_LIST_BIT): Don't cast.
46862         (re_wchar_t): New type.
46863         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
46864         that those two functions will always properly return.
46865         (IMMEDIATE_QUIT_CHECK): Cast to void.
46866         (analyse_first): Use recursion rather than an explicit stack.
46867         (re_compile_fastmap): Can't fail anymore.
46868         (re_search_2): Don't check re_compile_fastmap for failure.
46869         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
46870         Now also sets the new value (passed in a new argument).
46871         (re_match_2_internal): Use it.
46872         Also, use a new var `reg' of type size_t when looping through regs
46873         rather than reuse the inappropriate `mcnt'.
46874
46875 2000-10-25  Jim Meyering  <meyering@lucent.com>
46876
46877         * lib/obstack.c: Update from libc.
46878
46879 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
46880
46881         * regex.c (regex_compile): Change the way of handling a range from
46882         a char less than 256 to a char not less than 256.
46883
46884 2000-10-24  Andrew Innes  <andrewi@gnu.org>
46885
46886         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
46887         NT-Emacs only.
46888         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
46889         so that re_search functions only quit when callers expect them to.
46890
46891 2000-10-23  Jim Meyering  <meyering@lucent.com>
46892
46893         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
46894         wrong.  That set_locale call must not have any side effects.
46895         From Paul Eggert.
46896
46897 2000-10-22  Jim Meyering  <meyering@lucent.com>
46898
46899         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
46900         [CYCLIC]: Remove now-unused definition.
46901
46902         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
46903         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
46904         Suggestion from Ulrich Drepper.
46905
46906 2000-10-21  Jim Meyering  <meyering@lucent.com>
46907
46908         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
46909         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
46910         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
46911
46912 2000-10-21  Jim Meyering  <meyering@lucent.com>
46913
46914         * lib/dirname.c (memrchr): Declare if necessary.
46915         (dir_name): Remove the restriction that there be no
46916         trailing slashes.  Now, this code skips past them, effectively
46917         ignoring them.
46918         [TEST_DIRNAME] (main): New unit tests.
46919
46920         * lib/memrchr.c: New file from GNU libc.
46921         Undef __memrchr, too.
46922         [!weak_alias]: Define __memrchr to memrchr.
46923         Guard weak_alias use with `#ifdef weak_alias'.
46924
46925 2000-10-21  Jim Meyering  <meyering@lucent.com>
46926
46927         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
46928         (dir_name): Use dir_name_r.
46929         * lib/dirname.h (dir_name_r): Declare it.
46930
46931 2000-10-17  Jim Meyering  <meyering@lucent.com>
46932
46933         * lib/quote.h (PARAMS): Define and use.
46934         Reported by Akim Demaille.
46935
46936         * lib/getopt.c: Update from libc.
46937
46938 2000-10-16  Jim Meyering  <meyering@lucent.com>
46939
46940         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
46941         setlocale.
46942         From Jan Fedak.
46943
46944 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
46945
46946         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
46947
46948 2000-09-25  Jim Meyering  <meyering@lucent.com>
46949
46950         * lib/md5.h (rol): Define (from GnuPG).
46951
46952         * lib/sha.c: Give credit (GnuPG) where due.
46953         (M): Use rol rather than open-coding it.
46954         Add a FIXME comment.
46955
46956 2000-09-21  Jim Meyering  <meyering@lucent.com>
46957
46958         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
46959         Reported by Michael Stone.
46960
46961 2000-09-20  Jim Meyering  <meyering@lucent.com>
46962
46963         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
46964         (noinst_HEADERS): Add sha.h.
46965         Based on code from Scott G. Miller and from GnuPG.
46966
46967 2000-09-18  Jim Meyering  <meyering@lucent.com>
46968
46969         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
46970         LIBS. Otherwise, everyone ends up linking with -lelf for some
46971         configurations.
46972         Reported by Mike Stone.
46973
46974 2000-09-15  Jim Meyering  <meyering@lucent.com>
46975
46976         * lib/regex.c: Update from libc.
46977
46978 2000-09-10  Jim Meyering  <meyering@lucent.com>
46979
46980         * lib/getopt.c (_getopt_internal): Update from glibc.
46981
46982 2000-09-09  Jim Meyering  <meyering@lucent.com>
46983
46984         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
46985         think it should be used as a general replacement for isascii.
46986         * lib/fnmatch.c: Likewise.
46987         * lib/mbswidth.c: Likewise
46988         * lib/regex.c: Likewise.
46989
46990         Don't use atoi.
46991         * lib/userspec.c: Include sys/param.h and limits.h.
46992         Include xstrtol.h.
46993         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
46994         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
46995         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
46996         UID, GID.  Check range.
46997
46998 2000-09-06  Jim Meyering  <meyering@lucent.com>
46999
47000         * lib/getopt.c (_getopt_internal): Update from glibc.
47001
47002 2000-08-30  Jim Meyering  <meyering@lucent.com>
47003
47004         * lib/strftime.c: Merge in changes from GNU libc.
47005
47006 2000-08-26  Jim Meyering  <meyering@lucent.com>
47007
47008         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
47009         * m4/fpending.m4: New file.
47010
47011 2000-08-26  Jim Meyering  <meyering@lucent.com>
47012
47013         * lib/closeout.c: Include "__fpending.h".
47014         (close_stdout_status): Return right away if there's nothing to flush.
47015
47016         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
47017         * lib/__fpending.c: New file.
47018         * lib/__fpending.h: New file.
47019
47020 2000-08-20  Jim Meyering  <meyering@lucent.com>
47021
47022         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
47023         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
47024         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
47025
47026 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
47027
47028         Improve fileutils installation on systems where running
47029         programs (like install) can't be unlinked.
47030         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
47031         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
47032
47033 2000-08-07  Paul Eggert  <eggert@twinsun.com>
47034
47035         Standardize on "memory exhausted" instead of "Memory exhausted"
47036         or "virtual memory exhausted".
47037         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
47038         "virtual memory exhausted".
47039         * lib/same.c (same_name): Invoke xalloc_die instead of printing
47040         our own message.
47041         * lib/userspec.c (parse_user_spec): Likewise.
47042         * lib/bumpalloc.h: comment fix
47043         * lib/same.c, userspec.c: Include xalloc.h.
47044
47045         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
47046         not char *const and pointing to a constant array.
47047         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
47048         (xrealloc): Comment fix.
47049
47050         * lib/userspec.c (parse_user_spec):
47051         Don't translate a message until just before returning,
47052         to avoid unnecessary translation.
47053
47054 2000-08-07  Jim Meyering  <meyering@lucent.com>
47055
47056         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
47057         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
47058         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
47059         getgroups.c, gethostname.c, getopt.h, group-member.c,
47060         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
47061         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
47062         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
47063         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
47064         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
47065         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
47066         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
47067         yesno.c: Back out Copyright date changes for each file with no change
47068         this year.  This eases coordination with other programs using the same
47069         source code modules.  From Paul Eggert.
47070
47071 2000-08-06  Paul Eggert  <eggert@twinsun.com>
47072
47073         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
47074         not char, for compatibility with glibc 2.1.3 strftime.c.
47075
47076 2000-08-03  Greg McGary  <greg@mcgary.org>
47077
47078         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
47079         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
47080         (EXTEND_BUFFER): Use them.
47081
47082 2000-08-01  Jim Meyering  <meyering@lucent.com>
47083
47084         * lib/dirname.c (ISSLASH): Define.
47085         (BACKSLASH_IS_PATH_SEPARATOR): Define.
47086         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
47087         both `\' and `/' may be use as path separators.
47088         Based on a patch from Prashant TR.
47089
47090 2000-07-31  Paul Eggert  <eggert@twinsun.com>
47091
47092         * lib/quotearg.c (quotearg_n_options): Don't make the initial
47093         slot vector a constant, since it might get modified.
47094
47095 2000-07-31  Jim Meyering  <meyering@lucent.com>
47096
47097         * lib/xmalloc.c: Use `virtual memory exhausted', not
47098         `Memory exhausted'.
47099         * lib/obstack.c (print_and_abort): Likewise.
47100
47101 2000-07-30  Paul Eggert  <eggert@twinsun.com>
47102
47103         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
47104         buffer, so that the caller can always quote one small
47105         component of a "memory exhausted" message in slot 0.
47106         From a suggestion by Jim Meyering.
47107
47108 2000-07-30  Jim Meyering  <meyering@lucent.com>
47109
47110         * lib/makepath.c (make_path): Quote the other instance, too.
47111
47112         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
47113         (STATIC_BUF_SIZE): Define.
47114         (quotearg_n_options): Use only statically allocated storage when
47115         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
47116         than STATIC_BUF_SIZE.
47117
47118 2000-07-29  Jim Meyering  <meyering@lucent.com>
47119
47120         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
47121         * lib/dirname.c (dir_name): Likewise.
47122
47123         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
47124         `/'.
47125
47126         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
47127         (dir_name): Assert that there are no trailing slashes.
47128
47129 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
47130
47131         * lib/mbswidth.h (mbswidth): Add a flags argument.
47132         (mbswidth): New declaration.
47133         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
47134         * lib/mbswidth.c (mbswidth): Add a flags argument.
47135         (mbsnwidth): New function.
47136
47137 2000-07-24  Jim Meyering  <meyering@lucent.com>
47138
47139         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
47140
47141 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47142
47143         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
47144
47145 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47146
47147         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
47148         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
47149         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
47150         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
47151         invoke multibyte primitives.
47152
47153 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47154
47155         * lib/quotearg.c:
47156         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
47157         so that mbstate_t is always defined.
47158
47159         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
47160         be 1 in at least one GCC installation, and this configuration
47161         error is likely to be common.  Ignoring MB_LEN_MAX hurts
47162         performance on hosts that have mbrtowc but have only unibyte
47163         locales, but I assume these hosts are rare.
47164
47165 2000-07-23  Paul Eggert  <eggert@twinsun.com>
47166
47167         * lib/mbswidth.c (_XOPEN_SOURCE):
47168         Don't define; this causes problems on Solaris 7.
47169         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
47170
47171 2000-07-23  Jim Meyering  <meyering@lucent.com>
47172
47173         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
47174         too: getgrgid, getpwuid, getuid.
47175
47176 2000-07-23  Jim Meyering  <meyering@lucent.com>
47177
47178         * lib/basename.c (base_name): Add an assertion.
47179
47180 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
47181
47182         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
47183         shadow its mbsinit function.
47184
47185 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47186
47187         * lib/mbswidth.h: New file.
47188         * lib/mbswidth.c: New file.
47189         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
47190         (noinst_HEADERS): Add mbswidth.h.
47191
47192 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
47193
47194         * lib/config.charset: Add support for FreeBSD. Improve support for
47195         HP-UX and IRIX 6.
47196
47197 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
47198
47199         * m4/mbswidth.m4: New file.
47200         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
47201
47202 2000-07-15  Jim Meyering  <meyering@lucent.com>
47203
47204         * lib/makepath.c: Include quote.h.
47205         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
47206         corresponding argument in a `quote (...)' call.
47207         Give better diagnostics.
47208
47209         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
47210         (noinst_HEADERS): Add quote.h.
47211
47212         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
47213         from tar's src/misc.c.
47214         * lib/quote.h: New file.  Prototypes for same.
47215
47216 2000-07-14  Paul Eggert  <eggert@twinsun.com>
47217
47218         From a suggestion by Bruno Haible.
47219         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
47220         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
47221         to decide whether to define the BeOS workaround macro;
47222         this adjusts to the change to AC_MBSTATE_T.
47223
47224 2000-07-14  Jim Meyering  <meyering@lucent.com>
47225
47226         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
47227         jm_AC_TYPE_UINTMAX_T.
47228
47229 2000-07-13  Paul Eggert  <eggert@twinsun.com>
47230
47231         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
47232
47233         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
47234         quotearg_buffer_restyled): Add support for
47235         clocale_quoting_style.  Undo previous change to
47236         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
47237         and "{RIGHT QUOTATION MARK}" msgids.
47238
47239 2000-07-10  Paul Eggert  <eggert@twinsun.com>
47240
47241         From a suggestion by Bruno Haible.
47242         * m4/mbstate_t.m4 (AC_MBSTATE_T):
47243         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
47244         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
47245         and mbstate_t, to a single-part test that simply defines mbstate_t.
47246         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
47247         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
47248
47249 2000-07-10  Jim Meyering  <meyering@lucent.com>
47250
47251         * m4/strerror_r.m4: Mirror the correction made in autoconf.
47252
47253         * m4/gnu-source.m4: Output to confdefs.h directly.
47254         Suggestion from Akim Demaille.
47255
47256 2000-07-09  Paul Eggert  <eggert@twinsun.com>
47257
47258         The old behavior of quoting `like this' doesn't look good with
47259         newer, ISO-style fonts.  See:
47260         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
47261
47262         Instead, quote "like this" by default.  Let the translator
47263         tailor the locale-specific quoting behavior by providing
47264         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
47265
47266         * lib/quotearg.c (N_): New macro.
47267         (gettext_default): New function.
47268         (quotearg_buffer_restyled): Use
47269         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
47270         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
47271
47272 2000-07-09  Jim Meyering  <meyering@lucent.com>
47273
47274         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
47275         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
47276
47277         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
47278         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
47279
47280 2000-07-09  Jim Meyering  <meyering@lucent.com>
47281
47282         * lib/Most files: Update copyright dates to include 2000.
47283
47284 2000-07-08  Jim Meyering  <meyering@lucent.com>
47285
47286         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
47287         if not defined.
47288         (xgethostname): Remove now-unnecessary #ifdef.
47289         Move declaration of `err' into loop where it's used.
47290
47291 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47292         and Bruno Haible  <haible@clisp.cons.org>
47293
47294         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
47295         only if the test for an object-type mbstate_t fails.  This
47296         prevents us from mistakenly reporting that mbstate_t is a
47297         system object type after we "#define mbstate_t int" to work
47298         around its lack.
47299
47300 2000-07-05  Paul Eggert  <eggert@twinsun.com>
47301         and Bruno Haible  <haible@clisp.cons.org>
47302
47303         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
47304
47305 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47306
47307         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
47308         to strerror_r.
47309         Include <ctype.h> for use of isalpha.
47310
47311 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47312
47313         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
47314         by allocating a larger buffer. Test the gethostname return value for
47315         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
47316         returns an error and ENAMETOOLONG isn't defined.
47317
47318 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
47319
47320         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
47321         dimension.
47322
47323 2000-07-04  Jim Meyering  <meyering@lucent.com>
47324
47325         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
47326         of the deprecated AC_CHECKING.
47327
47328 2000-07-04  Jim Meyering  <meyering@lucent.com>
47329
47330         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
47331         Reported by Bruno Haible.
47332
47333 2000-07-04  Jim Meyering  <meyering@lucent.com>
47334
47335         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
47336         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
47337         lacks mbrtowc.
47338
47339 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47340
47341         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
47342         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
47343
47344 2000-07-03  Paul Eggert  <eggert@twinsun.com>
47345         and Bruno Haible  <haible@clisp.cons.org>
47346
47347         * lib/quotearg.c (mbrtowc):
47348         Assign to *pwc, and return 1 only if result is nonzero.
47349         (iswprint): Use ISPRINT when substituting our own mbrtowc.
47350
47351 2000-07-03  Jim Meyering  <meyering@lucent.com>
47352
47353         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
47354
47355 2000-07-03  Jim Meyering  <meyering@lucent.com>
47356
47357         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
47358         This is necessary to get a definition of e.g., UTMP_FILE on
47359         HP-UX 10.20.
47360         From Bob Proulx.
47361
47362 2000-07-02  Jim Meyering  <meyering@lucent.com>
47363
47364         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
47365
47366         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
47367         AC_LIBOBJ(function_name).
47368         * m4/chown.m4: Likewise.
47369         * m4/fnmatch.m4: Likewise.
47370         * m4/ftruncate.m4: Likewise.
47371         * m4/getgroups.m4: Likewise.
47372         * m4/getline.m4: Likewise.
47373         * m4/group-member.m4: Likewise.
47374         * m4/jm-macros.m4: Likewise.
47375         * m4/lstat.m4: Likewise.
47376         * m4/malloc.m4: Likewise.
47377         * m4/memcmp.m4: Likewise.
47378         * m4/nanosleep.m4: Likewise.
47379         * m4/putenv.m4: Likewise.
47380         * m4/realloc.m4: Likewise.
47381         * m4/regex.m4: Likewise.
47382         * m4/stat.m4: Likewise.
47383         * m4/strftime.m4: Likewise.
47384
47385 2000-07-02  Jim Meyering  <meyering@lucent.com>
47386
47387         * lib/quotearg.c (mbstate_t): Don't define here.
47388
47389 2000-07-02  Jim Meyering  <meyering@lucent.com>
47390
47391         * lib/nanosleep.c (SIGCONT): Define if not already defined.
47392
47393 2000-07-01  Jim Meyering  <meyering@lucent.com>
47394
47395         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
47396
47397 2000-07-01  Jim Meyering  <meyering@lucent.com>
47398
47399         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
47400         problem.
47401
47402 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47403
47404         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
47405         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
47406
47407 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
47408
47409         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
47410         per change in ../m4/ls-mntd-fs.m4.
47411         (read_filesystem_list): Ignore symbolic links.
47412
47413 2000-06-29  Jim Meyering  <meyering@lucent.com>
47414
47415         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
47416         for declaration of strcmp.
47417
47418         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
47419
47420         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
47421         Avoid warning by casting result to `char *' to remove `const'.
47422
47423 2000-06-28  Jim Meyering  <meyering@lucent.com>
47424
47425         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
47426         included by quotearg.c, for which we perform this test.  From
47427         Bruno Haible.
47428
47429 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47430
47431         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
47432         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
47433         <utmpx.h> exists, put readutmp.o into LIBOBJS.
47434
47435 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
47436
47437         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
47438
47439 2000-06-26  Paul Eggert  <eggert@twinsun.com>
47440
47441         savedir now sets errno on failure and invokes xmalloc to get memory.
47442         Fix a couple of other minor bugs while we're at it.
47443
47444         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
47445         (NAMLEN): Remove macro.
47446         (malloc, realloc): Remove decls.
47447         (stpcpy): Likewise.
47448         ("xalloc.h"): Include.
47449         (NAME_SIZE_DEFAULT): New macro.
47450         (savedir): Use xmalloc / xrealloc to allocate memory.
47451         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
47452         Skip "" directory entries.
47453         Use strlen to calculate directory entry length, since the old method
47454         is rarely used these days and isn't worth supporting.
47455         Don't use a pointer after freeing it.
47456         Check for integer overflow when calculating allocation size.
47457         Use memcpy to copy entries, instead of stpcpy.
47458         Set errno properly when returning NULL.
47459         Check for readdir error.
47460
47461 2000-06-26  Jim Meyering  <meyering@lucent.com>
47462
47463         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
47464
47465 2000-06-25  Jim Meyering  <meyering@lucent.com>
47466
47467         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
47468         Linux header bug when _XOPEN_SOURCE is defined to 500.
47469
47470 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47471
47472         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
47473         deficiency.
47474
47475 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
47476
47477         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
47478         Include xalloc.h.
47479         Don't include <stdlib.h>.  Don't declare malloc, realloc.
47480
47481 2000-06-24  Jim Meyering  <meyering@lucent.com>
47482
47483         * m4/strerror_r.m4: Revive this file -- to try out an experimental
47484         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
47485         for which strerror does return char*, but which lacks a conveniently
47486         accessible declaration of the function.  If the compile-test says
47487         strerror_r doesn't work, then resort to a `run'-test that works on
47488         BeOS and segfaults on DEC Unix.
47489
47490 2000-06-24  Jim Meyering  <meyering@lucent.com>
47491
47492         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
47493
47494 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47495
47496         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
47497         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
47498
47499 2000-06-23  Paul Eggert  <eggert@twinsun.com>
47500
47501         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
47502         (mbrtowc, mbstate_t): Define substitutes if
47503         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
47504         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
47505         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
47506
47507 2000-06-23  Jim Meyering  <meyering@lucent.com>
47508
47509         * m4/afs.m4: Add missing AC_MSG_RESULT.
47510         Reported by Bruno Haible.
47511
47512         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
47513         Suggestion from Bruno Haible.
47514
47515 2000-06-23  Jim Meyering  <meyering@lucent.com>
47516
47517         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
47518
47519 2000-06-21  Jim Meyering  <meyering@lucent.com>
47520
47521         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
47522
47523 2000-06-21  Jim Meyering  <meyering@lucent.com>
47524
47525         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
47526         (noinst_HEADERS): Add getstr.h.
47527
47528         * lib/getline.c (getstr): Move into a separate file.
47529         * lib/getstr.c (getstr): New file, extracted from getline.c, with
47530         the following changes: new parameter, delim2; both delim[12]
47531         parameters have type `int', not `char'.  The latter would lose
47532         with 8-bit delimiters.
47533         * lib/getstr.h: New file.
47534
47535 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47536
47537         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
47538         than 1024, return a memory chunk of least possible size, instead
47539         of size PATH_MAX + 2. In the loop, increment the size proportionally.
47540         Use free/xmalloc instead of xrealloc to avoid copying for very long
47541         paths.
47542
47543 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47544
47545         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
47546         the empty string.
47547
47548 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
47549
47550         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
47551         address, not strdup.  Include <stdlib.h> and don't declare free().
47552
47553 2000-06-19  Jim Meyering  <meyering@lucent.com>
47554
47555         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
47556
47557 2000-06-18  Jim Meyering  <meyering@lucent.com>
47558
47559         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
47560
47561         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
47562         `checking whether...' message to be consistent with that of the
47563         lstat test.
47564
47565 2000-06-18  Jim Meyering  <meyering@lucent.com>
47566
47567         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
47568         Besides, these days every porting target provides a mkdir function.
47569
47570         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
47571         needed. (this snippet comes from src/system.h).
47572
47573 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
47574
47575         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
47576
47577 2000-06-15  Paul Eggert  <eggert@twinsun.com>
47578
47579         * lib/human.c (adjust_value): New function.
47580         (human_readable_inexact): Apply rounding style even when
47581         printing approximate values.
47582
47583 2000-06-14  Paul Eggert  <eggert@twinsun.com>
47584
47585         * lib/human.c (human_readable_inexact): Allow an input block
47586         size that is not a multiple of the output block size, and vice versa.
47587         Reported by Piergiorgio Sartor.
47588
47589 2000-06-14  Paul Eggert  <eggert@twinsun.com>
47590
47591         * lib/getdate.y (get_date): Apply relative times after time
47592         zone indicator, not before.  Reported by Todd A. Jacobs.
47593
47594 2000-06-13  Jim Meyering  <meyering@lucent.com>
47595
47596         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
47597
47598         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
47599
47600 2000-06-12  Paul Eggert  <eggert@twinsun.com>
47601
47602         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
47603
47604 2000-06-12  Jim Meyering  <meyering@lucent.com>
47605
47606         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
47607         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
47608         optional argument.
47609         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
47610         the optional argument, `lib'.
47611
47612 2000-06-08  Jim Meyering  <meyering@lucent.com>
47613
47614         * m4/largefile.m4: Remove file (now that it's part of autoconf).
47615
47616 2000-06-04  Paul Eggert  <eggert@twinsun.com>
47617
47618         Rewrite largefile configuration so that we don't need to run
47619         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
47620         AC_CANONICAL_HOST in configure.in -- jmm]
47621
47622         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
47623         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
47624         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
47625         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
47626         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
47627         All uses changed.
47628         Instead of inspecting the output of getconf, try to compile the
47629         test program without and with the macro definition.
47630         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
47631         for getconf.  Instead, check for the needed flags by compiling
47632         test programs.
47633
47634 2000-06-04  Paul Eggert  <eggert@twinsun.com>
47635
47636         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
47637
47638 2000-06-04  Jim Meyering  <meyering@lucent.com>
47639
47640         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
47641         SunOS 4.1.4 for which gid_t is an unsigned type.
47642
47643 2000-06-03  Jim Meyering  <meyering@lucent.com>
47644
47645         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
47646         now that autoconf requires that.
47647
47648         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
47649         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
47650         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
47651
47652 2000-06-03  Jim Meyering  <meyering@lucent.com>
47653
47654         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
47655
47656 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
47657
47658         * m4/glibc21.m4: New file.
47659         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
47660
47661 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
47662
47663         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
47664         newer, don't install charset.alias.
47665         * lib/config.charset: Change the Linux/glibc rules so they become empty
47666         on glibc-2.1 or newer.
47667
47668 2000-06-02  Jim Meyering  <meyering@lucent.com>
47669
47670         * lib/mountlist.c: Back out last change.  Instead, do this...
47671         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
47672         me_dummy member using the same `ignore'-testing code.
47673         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
47674         fs_type strings.
47675         From Mark D. Roth.
47676
47677 2000-05-29  Jim Meyering  <meyering@lucent.com>
47678
47679         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
47680         mounts with the `ignore' attribute.  Based on a patch from
47681         Mark D. Roth.
47682
47683 2000-05-28  Jim Meyering  <meyering@lucent.com>
47684
47685         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
47686         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
47687         * m4/stat.m4: Likewise.
47688         * m4/lstat.m4: Likewise.
47689         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
47690
47691         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
47692         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
47693
47694 2000-05-26  Jim Meyering  <meyering@lucent.com>
47695
47696         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
47697
47698 2000-05-24  Jim Meyering  <meyering@lucent.com>
47699
47700         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
47701         autoconf requires that.
47702         * m4/lib-check.m4: Likewise.
47703         * m4/jm-macros.m4: Likewise.
47704         * m4/strftime.m4: Likewise.
47705
47706         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
47707         AC_CHECK_DECLS, now that autoconf requires that.
47708
47709 2000-05-22  Jim Meyering  <meyering@lucent.com>
47710
47711         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
47712         * m4/lstat.m4: Likewise.
47713
47714 2000-05-22  Jim Meyering  <meyering@lucent.com>
47715
47716         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
47717
47718 2000-05-20  Jim Meyering  <meyering@lucent.com>
47719
47720         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
47721         (jm_PREREQ): Use it.
47722
47723 2000-05-18  Jim Meyering  <meyering@lucent.com>
47724
47725         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
47726         back, too, since it may have been modified by allocate_entry.
47727         (hash_delete): Rewrite to use neither the assignment operator
47728         nor the comma operator in an if-expression.
47729
47730 2000-05-15  Paul Eggert  <eggert@twinsun.com>
47731
47732         * lib/closeout.c:
47733         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
47734         Remove; no longer needed.
47735         "quotearg.h": Add include.
47736         (file_name): Do not bother to explicitly initialize to NULL; it's less
47737         efficient on some hosts.
47738         (close_stdout_status): Remove test as to whether stdout was already
47739         closed; it breaks for the case "echo x | sort >&-".
47740         Quote file name colons.
47741         Do not assume that _("write error") lacks format strings.
47742
47743 2000-05-15  Jim Meyering  <meyering@lucent.com>
47744
47745         * lib/version-etc.c (version_etc_copyright): Update the copyright
47746         string used in all --version output.
47747
47748 2000-05-14  Jim Meyering  <meyering@lucent.com>
47749
47750         * lib/closeout.c (close_stdout_set_file_name): New function.
47751         (close_stdout_status): Use new file-scoped global.
47752         Return right away if fstat says the stdout file descriptor is invalid.
47753         * lib/closeout.h (close_stdout_set_file_name): Declare.
47754
47755 2000-05-10  Jim Meyering  <meyering@lucent.com>
47756
47757         * lib/closeout.c [default_exit_status]: New file-scoped variable.
47758         (close_stdout_set_status): New function.
47759         * lib/closeout.h (close_stdout_set_status): Declare.
47760
47761 2000-05-09  Jim Meyering  <meyering@lucent.com>
47762
47763         * m4/gettext.m4: Rename this...
47764         * m4/libintl.m4: ...to this.
47765
47766 2000-05-08  Jim Meyering  <meyering@lucent.com>
47767
47768         * lib/long-options.c: Don't include closeout.h.
47769         (parse_long_options): Don't call close_stdout for --version.
47770
47771 2000-05-06  Paul Eggert  <eggert@twinsun.com>
47772
47773         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
47774         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
47775         2.1.3 bug.  This avoids a clash when files like regex.c define
47776         _GNU_SOURCE.
47777
47778 2000-05-06  Jim Meyering  <meyering@lucent.com>
47779
47780         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
47781         (AC_REPLACE_FUNCS): Add strnlen.
47782
47783         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
47784         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
47785
47786         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
47787         AC_SEARCH_LIBS call for nanosleep.
47788         (LIB_NANOSLEEP): Set and AC_SUBST.
47789
47790 2000-05-06  Jim Meyering  <meyering@lucent.com>
47791
47792         * lib/strnlen.c: Undefine __strnlen and strnlen.
47793         [!weak_alias]: Define __strnlen to strnlen.
47794
47795         * lib/atexit.c: New file, from libiberty.
47796
47797 2000-05-06  Jim Meyering  <meyering@lucent.com>
47798
47799         * lib/closeout.c (close_stdout_status): Also check for errors on the
47800         stderr stream.
47801
47802 2000-05-05  Jim Meyering  <meyering@lucent.com>
47803
47804         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
47805         AC_SEARCH_LIBS call for clock_gettime.
47806         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
47807
47808         * m4/search-libs.m4: Update from autoconf.
47809
47810         su doesn't work on Solaris 2.6.
47811         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
47812         <shadow.h>.  Reported by Dragos Harabor.
47813
47814 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
47815
47816         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
47817         memcpy instead of xmalloc, xrealloc, path_concat.
47818         (locale_charset): Treat empty environment variables as absent.
47819         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
47820
47821 2000-05-04  Jim Meyering  <meyering@lucent.com>
47822
47823         * lib/getopt.c: Update from glibc.
47824         * lib/obstack.c: Likewise.
47825         * lib/obstack.h: Likewise.
47826         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
47827         file
47828
47829         * lib/regex.h: Likewise.
47830         * lib/strndup.c: Likewise.
47831         * lib/strnlen.c: New file, from glibc.
47832
47833 2000-05-03  Jim Meyering  <meyering@lucent.com>
47834
47835         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
47836
47837 2000-05-02  Paul Eggert  <eggert@twinsun.com>
47838
47839         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
47840         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
47841         compile-time test, rather than inspecting host and OS, to
47842         decide whether to define _LARGEFILE_SOURCE.
47843
47844 2000-05-01  Jim Meyering  <meyering@lucent.com>
47845
47846         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
47847
47848         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
47849         Based on a patch from Bruno Haible.
47850
47851 2000-05-01  Jim Meyering  <meyering@lucent.com>
47852
47853         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
47854
47855 2000-04-29  Jim Meyering  <meyering@lucent.com>
47856
47857         * lib/path-concat.c: Declare strdup only if it's not defined.
47858         * lib/canon-host.c: Likewise.
47859
47860 2000-04-28  Jim Meyering  <meyering@lucent.com>
47861
47862         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
47863         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
47864         is included first, then limits.h is included by locale.h by libintl.h.
47865         From John David Anglin.
47866
47867 2000-04-25  Jim Meyering  <meyering@lucent.com>
47868
47869         * lib/makepath.c (S_IRWXUGO): Define.
47870         (make_path): Always perform explicit chmod if MODE specifies any
47871         of the `special' permission bits.  Prompted by a bug report against
47872         install from Mate Wierdl and Joost van Baal.
47873
47874 2000-04-18  Jim Meyering  <meyering@lucent.com>
47875
47876         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
47877         (jm_PREREQ): Use it.
47878
47879 2000-04-18  Jim Meyering  <meyering@lucent.com>
47880
47881         * lib/README: New file.
47882
47883         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
47884         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
47885
47886 2000-04-17  Jim Meyering  <meyering@lucent.com>
47887
47888         Get it right :-)
47889         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
47890         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
47891         Suggestion from Akim Demaille.
47892
47893 2000-04-17  Jim Meyering  <meyering@lucent.com>
47894
47895         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
47896         the definition of it to rpl_strftime also defined-away the system's
47897         declaration.
47898
47899 2000-04-15  Jim Meyering  <meyering@lucent.com>
47900
47901         Use `C' to denote so-called `contiguous' files, the same way
47902         that tar does.
47903         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
47904         (ftypelet): Use S_ISCTG.
47905         From Michael Deutschmann.
47906
47907 2000-04-14  Jim Meyering  <meyering@lucent.com>
47908
47909         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
47910         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
47911         clobbered.
47912
47913 2000-04-14  Jim Meyering  <meyering@lucent.com>
47914
47915         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
47916
47917 2000-04-13  Jim Meyering  <meyering@lucent.com>
47918
47919         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
47920         AH_VERBATIM to insert required #ifndef into config.h.in.
47921         Suggestion from Akim Demaille.
47922
47923 2000-04-12  Jim Meyering  <meyering@lucent.com>
47924
47925         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
47926         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
47927         Christian Krackowizer.
47928
47929         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
47930         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
47931         (AC_SYS_LARGEFILE): Require.
47932         (AM_C_PROTOTYPES): Require.
47933
47934 2000-04-08  Jim Meyering  <meyering@lucent.com>
47935
47936         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
47937         names don't conflict.  Reported by Eli Zaretskii.
47938
47939 2000-04-07  Jim Meyering  <meyering@lucent.com>
47940
47941         * lib/putenv.c: Move inclusion of errno.h so it follows that of
47942         sys/types.h, to work around system header problems on AIX 3.2.5.
47943         From Bruno Haible.
47944
47945 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
47946
47947         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
47948         bug.  Deal with the different error behavior of Irix iconv.
47949
47950 2000-04-05  Paul Eggert  <eggert@twinsun.com>
47951
47952         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
47953         IRIX if the installer said otherwise.
47954
47955 2000-04-05  Jim Meyering  <meyering@lucent.com>
47956
47957         Portability tweaks required for ultrix4.3.
47958         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
47959         (jm_CHECK_DECLS): Add getutent to the list of functions.
47960         (_jm_DECL_HEADERS): Add utmpx.h.
47961         From John David Anglin.
47962
47963         * m4/strftime.m4: Back out the 2000-04-02 change.
47964         Instead of that change, simply undefine putenv in the test program.
47965
47966 2000-04-05  Jim Meyering  <meyering@lucent.com>
47967
47968         Portability tweaks required for ultrix4.3.
47969         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
47970         getutent.
47971         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
47972         * lib/canon-host.c: Declare strdup.
47973         * lib/path-concat.c: Likewise.
47974         From John David Anglin.
47975
47976 2000-04-04  Jim Meyering  <meyering@lucent.com>
47977
47978         Be more DOS 8.3-friendly.
47979         * lib/ref-add.sin: Renamed from ref-add.sed.in.
47980         * lib/ref-del.sin: Renamed from ref-del.sed.in.
47981         * lib/Makefile.am: Reflect renaming.
47982         Reported by Eli Zaretskii.
47983
47984         Use a temporary file name that won't clash with `charset.alias'
47985         in the DOS 8.3 name space.
47986         * lib/Makefile.am (charset_tmp): Define.
47987         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
47988         (uninstall-local): Likewise.
47989         Reported by Eli Zaretskii.
47990
47991 2000-04-03  Jim Meyering  <meyering@lucent.com>
47992
47993         * m4/gettext.m4: Fix typo in comment.
47994
47995         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
47996         textutils/configure.in).  Suggestion from Paul Eggert.
47997         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
47998
47999 2000-04-02  Paul Eggert  <eggert@twinsun.com>
48000
48001         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
48002         variable in the shell rather than using putenv, which isn't
48003         portable.  This avoids the configure-time inter-test dependency
48004         on the potentially-renamed putenv function.
48005
48006 2000-03-30  Paul Eggert  <eggert@twinsun.com>
48007
48008         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
48009         before checking struct stat.st_blksize, so that
48010         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
48011
48012 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48013
48014         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
48015         since strftime.c uses HAVE_STRFTIME to decide whether to use
48016         the underlying strftime.
48017
48018 2000-03-29  Paul Eggert  <eggert@twinsun.com>
48019
48020         * lib/time/strftime.c (my_strftime): Make sure we call the system
48021         strftime, not ourselves, when invoking the underlying strftime.
48022
48023 2000-03-24  Jim Meyering  <meyering@lucent.com>
48024
48025         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
48026         (charset_alias): Define.
48027         (install-exec-local): Factor out common code.
48028         (uninstall-local): Split lines longer than 80.
48029         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
48030         (SUFFIXES): Define.
48031         (.sed.in.sed): New rule.  Don't redirect directly to $@.
48032         (CLEANFILES): Add ref-add.sed and ref-del.sed.
48033
48034 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
48035
48036         * lib/config.charset: Output a line containing "Packages using this
48037         file".
48038         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
48039         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
48040         ref-del.sed): New rules.
48041
48042 2000-03-17  Jim Meyering  <meyering@lucent.com>
48043
48044         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
48045         Otherwise, include <strings.h>
48046
48047 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
48048
48049         * lib/unicodeio.c (utf8_wctomb): New function.
48050         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
48051         format instead of in UCS-4 with platform dependent endianness.
48052
48053 2000-03-10  Jim Meyering  <meyering@lucent.com>
48054
48055         * m4/lib-check.m4: Look for getspnam in -lgen, too.
48056         From Marco Franzen.
48057
48058 2000-03-07  Paul Eggert  <eggert@twinsun.com>
48059
48060         * lib/savedir.c (savedir): Work even if directory size is
48061         negative; this can happen with some screwy NFS configurations.
48062
48063 2000-03-06  Jim Meyering  <meyering@lucent.com>
48064
48065         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
48066         if it's NULL (because we ran out of memory).  From Bruno Haible.
48067
48068 2000-03-05  Jim Meyering  <meyering@lucent.com>
48069
48070         * lib/localcharset.c ("path-concat.h"): Include.
48071         (get_charset_aliases): Use path_concat instead of ANSI string
48072         concatenation.
48073
48074         * lib/unicodeio.h (PARAMS): Define.
48075         Use it to guard prototype.
48076
48077 2000-03-04  Jim Meyering  <meyering@lucent.com>
48078
48079         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
48080         for lib/localcharset.c.
48081
48082 2000-03-04  Jim Meyering  <meyering@lucent.com>
48083
48084         * lib/Makefile.am (install-exec-local): Create $(libdir) before
48085         installing into it.
48086         (uninstall-local): Uncomment this rule so `make distcheck' works
48087         once again.
48088
48089         * lib/unicodeio.c (<errno.h>): Include it.
48090         (errno): Declare if not defined.
48091
48092         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
48093
48094         * lib/config.charset: New version, incorporating remarks from a linux
48095         i18n mailing list.  From Bruno Haible.
48096
48097 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
48098
48099         * m4/codeset.m4: New file.
48100         * m4/iconv.m4: New file.
48101         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
48102
48103 2000-03-03  Jim Meyering  <meyering@lucent.com>
48104
48105         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
48106
48107 2000-03-02  Jim Meyering  <meyering@lucent.com>
48108
48109         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
48110         the messages come out on separate lines.
48111
48112         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
48113         rather than jm_CHECK_DECLARATIONS.
48114         * m4/decl.m4: Remove now-unused file.
48115
48116         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
48117         geteuid.
48118
48119 2000-03-02  Jim Meyering  <meyering@lucent.com>
48120
48121         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
48122
48123 2000-03-01  Jim Meyering  <meyering@lucent.com>
48124
48125         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
48126         * lib/unicodeio.c: Likewise.
48127
48128 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
48129
48130         * lib/config.charset: New file.
48131         * lib/localcharset.c: New file.
48132         * lib/unicodeio.h, lib/unicodeio.c: New files.
48133         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
48134         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
48135         (noinst_HEADERS): Add unicodeio.h.
48136         (all-local, install-exec-local, charset.alias): New targets.
48137
48138 2000-02-28  Paul Eggert  <eggert@twinsun.com>
48139
48140         * lib/quotearg.c (ALERT_CHAR): New macro.
48141         (quotearg_buffer_restyled): Use it.
48142
48143 2000-02-27  Jim Meyering  <meyering@lucent.com>
48144
48145         * m4/check-decl.m4: Add getenv to the list.
48146
48147 2000-02-27  Jim Meyering  <meyering@lucent.com>
48148
48149         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
48150         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
48151
48152         * lib/backupfile.c: Guard inclusion of stdlib.h with
48153         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
48154         Declare malloc if needed.
48155
48156         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
48157         `#ifndef HAVE_DECL..'
48158         now that autoconf always defines the HAVE_DECL_ symbols.
48159         * lib/human.c: Likewise.
48160         * lib/same.c: Likewise.
48161         * lib/strtoumax.c: Likewise.
48162
48163         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
48164         declaration check was not run.
48165         * lib/hash.c: Likewise.
48166         * lib/human.c: Likewise.
48167         * lib/same.c: Likewise.
48168         * lib/strtoumax.c: Likewise.
48169
48170         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
48171         `.', then first look up the entire `.'-containing string as a login
48172         name.
48173
48174 2000-02-23  Jim Meyering  <meyering@lucent.com>
48175
48176         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
48177         in place of my hack.
48178
48179 2000-02-18  Paul Eggert  <eggert@twinsun.com>
48180
48181         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
48182         (textint): New typedef.
48183         (parser_control): Member year changed from int to textint.
48184         All uses changed.
48185         (YYSTYPE): Removed; replaced by %union with int and textint members.
48186         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
48187         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
48188         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
48189         (tSNUMBER, tUNUMBER): Now of type <textintval>.
48190         (date, number, to_year): Use width of number in digits, not its value,
48191         to determine whether it's a 2-digit year, or a 2-digit time.
48192         (yylex): Store number of digits of numeric tokens.
48193         Reported by John Kendall.
48194
48195         (parser_control): Changed from struct parser_control to typedef (for
48196         consistency).  All uses changed.
48197
48198         (tID): Removed; not used.
48199         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
48200
48201 2000-02-14  Paul Eggert  <eggert@twinsun.com>
48202
48203         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
48204         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
48205
48206 2000-02-12  Jim Meyering  <meyering@lucent.com>
48207
48208         * lib/userspec.c (ISDIGIT): Define it.
48209         (isdigit): Remove definition.
48210         (is_number): Use ISDIGIT, not isdigit.
48211         <libintl.h>: Include.
48212         (_ and N_): Define.
48213         (parse_user_spec): Mark translatable strings.
48214
48215 2000-02-10  Jim Meyering  <meyering@lucent.com>
48216
48217         With these changes, nanosleep.[ch] are finally enough like the other
48218         lib/* replacement files to compile on a few more losing systems.
48219
48220         * lib/nanosleep.h: Don't include config.h.
48221         Remove prototype from declaration of nanosleep.
48222         (PARAMS): Remove now-unneeded definition.
48223         * lib/nanosleep.c: #undef nanosleep.
48224         (rpl_nanosleep): Rename from nanosleep.
48225
48226 2000-02-10  Jim Meyering  <meyering@lucent.com>
48227
48228         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
48229         gnu_nanosleep to rpl_nanosleep.
48230
48231 2000-02-09  Jim Meyering  <meyering@lucent.com>
48232
48233         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
48234         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
48235
48236 2000-02-08  Akim Demaille  <akim@epita.fr>
48237
48238         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
48239         `[' and `]' and remove uses of `changequote'.
48240         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
48241         (AC_SYS_LARGEFILE): Likewise.
48242         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
48243         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
48244         of changequote.
48245         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
48246         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
48247         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
48248         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
48249
48250 2000-02-05  Jim Meyering  <meyering@lucent.com>
48251
48252         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
48253         Remove explicit use of AC_HEADER_TIME.  It is required by
48254         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
48255         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
48256         in autoconf whereby the expansion of the latter ended up preceding
48257         the expansion of its prerequisite, AC_HEADER_TIME.
48258         Reported by Volker Borchert.
48259
48260 2000-02-03  Jim Meyering  <meyering@lucent.com>
48261
48262         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
48263
48264 2000-02-03  Jim Meyering  <meyering@lucent.com>
48265
48266         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
48267         rather than with `#if HAVE_UTMPNAME'.
48268
48269 2000-02-02  Jim Meyering  <meyering@lucent.com>
48270
48271         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
48272         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
48273         Reported by Eli Zaretskii.
48274
48275 2000-02-01  Jim Meyering  <meyering@lucent.com>
48276
48277         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
48278
48279 2000-01-31  Jim Meyering  <meyering@lucent.com>
48280
48281         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
48282         functions.  Add the time.h and sys/time.h headers along with the
48283         AC_REQUIRE'ment of AC_HEADER_TIME.
48284
48285 2000-01-31  Jim Meyering  <meyering@lucent.com>
48286
48287         * lib/nanosleep.h (nanosleep): Guard declaration with
48288         `#if ! HAVE_DECL_NANOSLEEP'.
48289         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
48290         the declaration in that vendor's sys/timers.h.
48291         Reported by Christian Krackowizer.
48292
48293         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
48294         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
48295         (ISPRINT): Likewise.
48296         Reported by Tom Tromey.
48297
48298 2000-01-30  Jim Meyering  <meyering@lucent.com>
48299
48300         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
48301
48302         * m4/prereq.m4 (utmp_includes): Define.
48303         Check for ut_user and ut_name members in both struct utmpx
48304         and struct utmp.
48305
48306 2000-01-30  Jim Meyering  <meyering@lucent.com>
48307
48308         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
48309         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
48310         header files where only utmpx.ut_user is declared.
48311
48312         * lib/readutmp.h (UT_USER): Define.
48313
48314 2000-01-29  Jim Meyering  <meyering@lucent.com>
48315
48316         * m4/lib-check.m4: New file containing library-related checks from
48317         fileutils and sh-utils (textutils had none).
48318
48319 2000-01-28  Jim Meyering  <meyering@lucent.com>
48320
48321         * m4/perl.m4: Change format of warning message to look more like that
48322         from the missing script.  Suggestion from François Pinard.
48323
48324 2000-01-25  Jim Meyering  <meyering@lucent.com>
48325
48326         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
48327         well as time.h in the compile check.
48328         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
48329         Fix typo in cross-compiling case: s/yes/no/.
48330
48331 2000-01-23  Jim Meyering  <meyering@lucent.com>
48332
48333         * m4/jm-macros.m4: Move df-related tests here from
48334         fileutils/configure.in
48335
48336         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
48337         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
48338
48339         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
48340         s/space/ac_fsusage_space/.
48341         (jm_FILE_SYSTEM_USAGE): Take two parameters.
48342
48343         * m4/ftruncate.m4: New file (derived from part of
48344         fileutils/configure.in).
48345         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
48346         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
48347
48348         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
48349         AC_SUBST these here, rather than just in sh-util/configure.in, so
48350         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
48351         all the same.
48352         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
48353         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
48354         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
48355         (AC_SUBST(POW_LIBM)): Likewise.
48356         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
48357
48358 2000-01-23  Jim Meyering  <meyering@lucent.com>
48359
48360         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
48361         obstack.c.
48362
48363 2000-01-22  Jim Meyering  <meyering@lucent.com>
48364
48365         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
48366
48367         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
48368
48369         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
48370         configure.in
48371         (AC_CHECK_HEADERS): Likewise for sh-utils.
48372         (AC_CHECK_HEADERS): Likewise for textutils.
48373         Merge the three lists of headers.
48374
48375         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
48376         from fileutils' configure.in.
48377
48378         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
48379         code. Moved tests into their own function (_jm_DECL_HEADERS) in
48380         check-decl.m4.
48381
48382         * m4/check-decl.m4: Use #if rather than #ifdef.
48383         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
48384         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
48385         (_jm_DECL_HEADERS): Define new function.
48386         (jm_CHECK_DECLARATIONS): Require it.
48387
48388 2000-01-22  Jim Meyering  <meyering@lucent.com>
48389
48390         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
48391         [! HAVE_DECL_STRTOULL]: Declare strtoull.
48392         Required for some AIX systems.  Reported by Christian Krackowizer.
48393         [TESTING] (main): New function.
48394
48395         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
48396         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
48397         letters.
48398
48399         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
48400         iswprint.
48401
48402         * lib/strverscmp.c (ISDIGIT): Define.
48403         (strverscmp): Use ISDIGIT, not isdigit.
48404
48405 2000-01-19  Jim Meyering  <meyering@lucent.com>
48406
48407         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
48408         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
48409         defines `struct timespec' in <sys/time.h>
48410
48411         * m4/c-bs-a.m4: Remove uses of changequote altogether.
48412         Thanks to Akim for explaining.
48413
48414 2000-01-17  Paul Eggert  <eggert@twinsun.com>
48415
48416         * lib/nanosleep.c (nanosleep):
48417         Don't use SA_INTERRUPT to decide whether to call sigaction, as
48418         POSIX.1 doesn't require SA_INTERRUPT and some systems
48419         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
48420         it's been part of POSIX.1 since day 1 (in 1988).
48421
48422 2000-01-17  Jim Meyering  <meyering@lucent.com>
48423
48424         * lib/interlock: Remove unused file.  Reported by François Pinard.
48425
48426 2000-01-16  Paul Eggert  <eggert@twinsun.com>
48427
48428         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
48429         alert, backslash, formfeed, and vertical tab unnecessarily in
48430         shell quoting style.
48431
48432 2000-01-16  Jim Meyering  <meyering@lucent.com>
48433
48434         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
48435         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
48436         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
48437         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
48438
48439 2000-01-16  Jim Meyering  <meyering@lucent.com>
48440
48441         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
48442         because the latter didn't work.
48443
48444 2000-01-15  Jim Meyering  <meyering@lucent.com>
48445
48446         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
48447         (AC_REPLACE_FUNCS): Add memcpy and memset.
48448         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
48449         Add strpbrk.
48450         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
48451
48452 2000-01-12  Jim Meyering  <meyering@lucent.com>
48453
48454         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
48455         (jm_PREREQ): Use it.
48456         (jm_PREREQ_READUTMP): New macro.
48457         (jm_PREREQ): Use it.
48458
48459 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48460
48461         Quote multibyte characters correctly.
48462         * m4/c-bs-a.m4: New file.
48463         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
48464         (jm_PREREQ): Use it.
48465
48466 2000-01-11  Paul Eggert  <eggert@twinsun.com>
48467
48468         * m4/uintmax_t.m4: Port to autoconf 2.13.
48469
48470 2000-01-08  Jim Meyering  <meyering@ascend.com>
48471
48472         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
48473         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
48474
48475 2000-01-04  Jim Meyering  <meyering@ascend.com>
48476
48477         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
48478         jm_STRUCT_DIRENT_D_TYPE.
48479         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
48480         jm_STRUCT_DIRENT_D_INO.
48481         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
48482         jm_STRUCT_UTIMBUF.
48483         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
48484         renamings.
48485         * m4/utime.m4: Likewise.
48486
48487         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
48488         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
48489
48490 2000-01-03  Paul Eggert  <eggert@twinsun.com>
48491
48492         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
48493         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
48494
48495 2000-01-02  Jim Meyering  <meyering@ascend.com>
48496
48497         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
48498         remember if this is necessary.
48499
48500 1999-12-26  Jim Meyering  <meyering@ascend.com>
48501
48502         * m4/jm-macros.m4: Use it here.
48503         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
48504
48505 1999-12-23  Jim Meyering  <meyering@ascend.com>
48506
48507         * m4/jm-macros.m4: Check for clock_gettime (moved from
48508         fileutils/configure.in)
48509         Check for gettimeofday.
48510
48511 1999-12-20  Jim Meyering  <meyering@ascend.com>
48512
48513         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
48514         autoconf-2.14a-1999-12-20.
48515
48516 1999-12-19  Jim Meyering  <meyering@ascend.com>
48517
48518         * m4/lstat-slash.m4: New file.
48519         * m4/jm-macros.m4: Use the new macro:
48520         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
48521
48522 1999-12-07  Jim Meyering  <meyering@ascend.com>
48523
48524         * m4/perl.m4: Require that File::Compare be available, too.
48525         Too many systems seem to lack it.
48526
48527         * m4/strftime.m4: Add checks for most of the cpp macros tested in
48528         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
48529
48530 1999-11-18  Paul Eggert  <eggert@twinsun.com>
48531
48532         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
48533         problem with the QNX 4.25 shell, which doesn't propagate exit
48534         status of failed commands inside shell assignments.
48535
48536 1999-11-17  Jim Meyering  <meyering@ascend.com>
48537
48538         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
48539
48540 1999-11-07  Jim Meyering  <meyering@ascend.com>
48541
48542         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
48543
48544 1999-11-06  Jim Meyering  <meyering@ascend.com>
48545
48546         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
48547         * m4/jm-macros.m4 (jm_MACROS): Use it here.
48548
48549 1999-11-05  Jim Meyering  <meyering@ascend.com>
48550
48551         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
48552         configure.in of textutils, fileutils, and sh-utils into this one
48553         (shared between those packages) file.
48554         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
48555         AC_STRUCT_ST_BLKSIZE.
48556
48557 1999-11-03  Jim Meyering  <meyering@ascend.com>
48558
48559         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
48560         of AC_CHECK_TYPE checks includes unistd.h.
48561         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
48562         Suggestion from Akim Demaille.
48563
48564 1999-10-30  Jim Meyering  <meyering@ascend.com>
48565
48566         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
48567         m4-quoted string.
48568         * m4/ls-mntd-fs.m4: Likewise.
48569         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
48570         * m4/jm-winsz1.m4: Likewise.
48571
48572         * m4/const.m4: Remove file, since the fix made it into the experimental
48573         version of autoconf.
48574         * m4/mktime.m4: Likewise.
48575
48576         * m4/check-type.m4: Remove file, now that the latest version of
48577         AC_CHECK_TYPE takes a third arg to specify additional #includes.
48578
48579         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
48580         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
48581         AC_CHECK_TYPE.
48582
48583 1999-10-04  Jim Meyering  <meyering@ascend.com>
48584
48585         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
48586
48587 1999-09-22  Paul Eggert  <eggert@twinsun.com>
48588
48589         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
48590         2.95.1 bug with HP-UX 10.20.
48591
48592 1999-09-17  Jim Meyering  <meyering@ascend.com>
48593
48594         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
48595         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
48596         due to missing strdup (against sh-utils-2.0).
48597
48598 1999-08-29  Jim Meyering  <meyering@ascend.com>
48599
48600         * m4/jm-macros.m4: Require jm_BISON.
48601         * m4/bison.m4: New file.
48602
48603 1999-08-17  Paul Eggert  <eggert@twinsun.com>
48604
48605         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
48606         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
48607
48608 1999-08-05  Jim Meyering  <meyering@ascend.com>
48609
48610         * m4/getline.m4: Rename test file from conftestdata to conftest.data
48611         to avoid conflicts with `conftest' on 8+3 filesystems.
48612         Suggestion from Eli Zaretskii.
48613
48614 1999-08-04  Jim Meyering  <meyering@ascend.com>
48615
48616         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
48617         fileutils and sh-utils (textutils's getline test was inadequate).
48618         (AM_FUNC_GETLINE): Run this test.
48619         (AC_CHECK_FUNCS): Check for getdelim.
48620         Reported by Bob Proulx.
48621
48622 1999-08-02  Jim Meyering  <meyering@ascend.com>
48623
48624         * m4/jm-macros.m4: Add a comment.
48625
48626 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48627
48628         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
48629         <inttypes.h> defines strtoumax as a macro (and not as a
48630         function).
48631
48632 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48633
48634         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
48635         that we can shift, multiply and divide unsigned long long
48636         values; Ultrix cc can't do it.
48637
48638 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48639
48640         * m4/mktime.m4: New file, which is a preview of what should appear
48641         in the next public autoconf release.
48642
48643 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48644
48645         * m4/lfs.m4: Remove this file.
48646         * m4/largefile.m4: New file.  It contains the old contents of
48647         lfs.m4, except that all names with prefix AC_LFS have been
48648         changed to use the prefix AC_SYS_LARGEFILE instead, to be
48649         compatible with future autoconf versions.  Also, some minor m4
48650         quoting problems have been fixed.
48651
48652 1999-08-01  Paul Eggert  <eggert@twinsun.com>
48653
48654         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
48655         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
48656         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
48657         and simplify the shell code.
48658
48659 1999-08-01  Jim Meyering  <meyering@ascend.com>
48660
48661         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
48662         m4.
48663
48664 1999-07-20  Jim Meyering  <meyering@ascend.com>
48665
48666         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
48667
48668 1999-07-15  Jim Meyering  <meyering@ascend.com>
48669
48670         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
48671
48672 1999-05-22  Jim Meyering  <meyering@ascend.com>
48673
48674         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
48675
48676 1999-05-20  Jim Meyering  <meyering@ascend.com>
48677
48678         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
48679         Add a colon after each `then' in case $4 is empty.
48680
48681 1999-05-16  Jim Meyering  <meyering@ascend.com>
48682
48683         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
48684
48685 1999-05-10  Jim Meyering  <meyering@ascend.com>
48686
48687         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
48688
48689         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
48690         AC_FUNC_MKTIME.
48691
48692 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
48693
48694         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
48695
48696 1999-05-04  Paul Eggert  <eggert@twinsun.com>
48697
48698         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
48699         not CPPFLAGS, so that linking works correctly in IRIX.
48700
48701 1999-04-30  Paul Eggert  <eggert@twinsun.com>
48702
48703         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
48704
48705 1999-04-20  Paul Eggert  <eggert@twinsun.com>
48706
48707         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
48708         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
48709         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
48710         jm_AC_TYPE_UNSIGNED_LONG_LONG.
48711         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
48712
48713         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
48714
48715 1999-04-20  Jim Meyering  <meyering@ascend.com>
48716
48717         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
48718         AC_REPLACE xstroull if necessary.  From Paul Eggert.
48719         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
48720
48721 1999-04-18  Jim Meyering  <meyering@ascend.com>
48722
48723         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
48724         * m4/jm-macros.m4: Use it.
48725
48726 1999-04-06  Jim Meyering  <meyering@ascend.com>
48727
48728         * m4/strftime.m4: Remove test for %f.
48729
48730 1999-03-29  Jim Meyering  <meyering@ascend.com>
48731
48732         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
48733         superset of the AC_TYPE_* checks in the textutils, fileutils,
48734         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
48735         AC_TYPE_PID_T.
48736
48737 1999-03-28  Jim Meyering  <meyering@ascend.com>
48738
48739         * m4/jm-macros.m4: Define GNU_PACKAGE here.
48740         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
48741         replaced e.g., in the *.sh files of the sh-utils.
48742
48743 1999-03-20  Jim Meyering  <meyering@ascend.com>
48744
48745         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
48746         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
48747         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
48748
48749 1999-03-19  Jim Meyering  <meyering@ascend.com>
48750
48751         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
48752
48753 1999-03-12  Jim Meyering  <meyering@ascend.com>
48754
48755         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
48756
48757 1999-03-07  Jim Meyering  <meyering@ascend.com>
48758
48759         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
48760         declared.
48761
48762 1999-02-17  Jim Meyering  <meyering@ascend.com>
48763
48764         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
48765         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
48766
48767 1999-02-07  Jim Meyering  <meyering@ascend.com>
48768
48769         * m4/group-member.m4: New file -- extracted from sh-utils'
48770         configure.in.
48771
48772         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
48773         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
48774
48775 1999-02-06  Jim Meyering  <meyering@ascend.com>
48776
48777         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
48778         * m4/fnmatch.m4: Likewise.
48779         * m4/getgroups.m4: Likewise.
48780         * m4/lstat.m4: Likewise.
48781         * m4/malloc.m4: Likewise.
48782         * m4/putenv.m4: Likewise.
48783         * m4/realloc.m4: Likewise.
48784         * m4/regex.m4: Likewise.
48785         * m4/stat.m4: Likewise.
48786         * m4/strftime.m4: Likewise.
48787         Suggestion from Alain Magloire.
48788
48789         * m4/chown.m4: Use `.$ac_objext', not `.o'.
48790         * m4/fnmatch.m4: Likewise.
48791         * m4/getgroups.m4: Likewise.
48792         * m4/getline.m4: Likewise.
48793         * m4/lstat.m4: Likewise.
48794         * m4/malloc.m4: Likewise.
48795         * m4/memcmp.m4: Likewise.
48796         * m4/putenv.m4: Likewise.
48797         * m4/realloc.m4: Likewise.
48798         * m4/regex.m4: Likewise.
48799         * m4/stat.m4: Likewise.
48800         * m4/strftime.m4: Likewise.
48801         Suggestion from Alain Magloire.
48802
48803         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
48804         an argument.
48805
48806         * m4/regex.m4: Add a run-time Test for proper operation of
48807         re_compile_pattern.
48808
48809 1999-01-31  Jim Meyering  <meyering@ascend.com>
48810
48811         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
48812
48813 1999-01-30  Jim Meyering  <meyering@ascend.com>
48814
48815         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
48816
48817         * m4/jm-mktime.m4: Make this a wrapper around the official
48818         AM_FUNC_MKTIME rather than my private copy, now that the official one
48819         is up to date.
48820         * m4/mktime.m4: Remove file.
48821
48822         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
48823         * m4/uptime.m4: Likewise.
48824         * m4/uintmax_t.m4: Likewise.
48825
48826 1999-01-28  Jim Meyering  <meyering@ascend.com>
48827
48828         * m4/jm-macros.m4: Use jm_AFS.
48829         * m4/afs.m4: New file (from fileutils' configure.in).
48830
48831         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
48832         * m4/chown.m4: Likewise.
48833         * m4/d-ino.m4: Likewise.
48834         * m4/d-type.m4: Likewise.
48835         * m4/fnmatch.m4: Likewise.
48836         * m4/getgroups.m4: Likewise.
48837         * m4/gettext.m4: Likewise.
48838         * m4/jm-mktime.m4: Likewise.
48839         * m4/jm-winsz2.m4: Likewise.
48840         * m4/lcmessage.m4: Likewise.
48841         * m4/ls-mntd-fs.m4: Likewise.
48842         * m4/malloc.m4: Likewise.
48843         * m4/memcmp.m4: Likewise.
48844         * m4/putenv.m4: Likewise.
48845         * m4/realloc.m4: Likewise.
48846         * m4/st_mtim.m4: Likewise.
48847         * m4/strftime.m4: Likewise.
48848
48849 1999-01-16  Jim Meyering  <meyering@ascend.com>
48850
48851         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
48852         (ARGMATCH_DIE_DECL): Define.
48853
48854 1999-01-12  Jim Meyering  <meyering@ascend.com>
48855
48856         * m4/Makefile.am.in: Rewrite to avoid using fmt.
48857         Reported by Lars Hecking.
48858
48859 1999-01-10  Jim Meyering  <meyering@ascend.com>
48860
48861         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
48862         gross kludge.
48863         * m4/inttypes_h.m4: Likewise.
48864         * m4/lstat.m4: Likewise.
48865         * m4/malloc.m4: Likewise.
48866         * m4/readdir.m4: Likewise.
48867         * m4/realloc.m4: Likewise.
48868         * m4/st_dm_mode.m4: Likewise.
48869         * m4/stat.m4: Likewise.
48870         * m4/utimbuf.m4: Likewise.
48871         * m4/utimes.m4: Likewise.
48872
48873         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
48874         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
48875         comments in config.h.in are meaningful.
48876
48877         * m4/jm-macros.m4: Require autoconf-2.13 here.
48878
48879         * m4/regex.m4: By default, don't use the included regex.c on systems
48880         with glibc 2.  Suggestion from Uli Drepper.
48881
48882 1999-01-02  Jim Meyering  <meyering@ascend.com>
48883
48884         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
48885
48886 1998-12-18  Jim Meyering  <meyering@ascend.com>
48887
48888         * m4/Makefile.am.in (Makefile.am): Simplify rule.
48889         Based on a suggestion from Lars Hecking.
48890
48891 1998-11-16  Paul Eggert  <eggert@twinsun.com>
48892
48893         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
48894
48895 1998-11-16  Jim Meyering  <meyering@ascend.com>
48896
48897         * m4/lfs.m4: Double-quote the `uname...` expression.
48898
48899 1998-11-14  Jim Meyering  <meyering@ascend.com>
48900
48901         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
48902         * m4/stat.m4: Likewise.
48903
48904 1998-11-03  Jim Meyering  <meyering@ascend.com>
48905
48906         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
48907         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
48908
48909 1998-10-18  Jim Meyering  <meyering@ascend.com>
48910
48911         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
48912
48913 1998-10-17  Jim Meyering  <meyering@ascend.com>
48914
48915         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
48916         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
48917         calls for those previously hard-coded headers.  Instead, take a new
48918         parameter.
48919         (jm_CHECK_DECLARATIONS): Reflect interface change.
48920         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
48921         (jm_CHECK_DECL_LOCALTIME_R): New macro.
48922
48923         * m4/mktime.m4: Test for spring-forward gap before long-running test.
48924
48925 1998-10-14  Jim Meyering  <meyering@ascend.com>
48926
48927         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
48928         instead of "TZ=America/Vancouver".  From Paul Eggert.
48929
48930 1998-10-11  Jim Meyering  <meyering@ascend.com>
48931
48932         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
48933         This adds a test for a recently added compatibility fix for mktime.c.
48934         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
48935
48936 1998-09-27  Jim Meyering  <meyering@ascend.com>
48937
48938         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
48939
48940         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
48941         ../configure.in, including a change from Gordon Matzigkeit to allow
48942         cross-compiling for the Hurd.
48943
48944         * m4/glibc.m4: New file/macro to test for the GNU C Library
48945         versions 1 and 2.  From Gordon Matzigkeit.
48946         Indent.
48947
48948 1998-09-21  Jim Meyering  <meyering@ascend.com>
48949
48950         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
48951
48952 1998-08-18  Paul Eggert  <eggert@twinsun.com>
48953
48954         Port nanosecond-resolution times to UnixWare 2.1.2 and
48955         pedantic Solaris 2.6.
48956
48957         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
48958         AC_STRUCT_ST_MTIM.
48959         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
48960         Generate name of ns member, instead of just 1 or undef.
48961         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
48962
48963 1998-08-15  Jim Meyering  <meyering@ascend.com>
48964
48965         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
48966         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
48967         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
48968         instead of jm_TYPE_SSIZE_T.
48969
48970 1998-08-12  Jim Meyering  <meyering@ascend.com>
48971
48972         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
48973
48974 1998-08-02  Jim Meyering  <meyering@ascend.com>
48975
48976         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
48977         in acconfig.h manually.
48978
48979 1998-07-31  Paul Eggert  <eggert@twinsun.com>
48980
48981         * m4/st_mtim.m4: New file.
48982
48983 1998-07-28  Jim Meyering  <meyering@ascend.com>
48984
48985         * m4/utimes.m4: Undef stat.
48986
48987 1998-07-25  Jim Meyering  <meyering@ascend.com>
48988
48989         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
48990         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
48991
48992 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
48993
48994         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
48995         uid and gid actually remain unchanged.
48996
48997 1998-07-07  Jim Meyering  <meyering@ascend.com>
48998
48999         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
49000
49001 1998-07-04  Jim Meyering  <meyering@ascend.com>
49002
49003         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
49004         to prove that this macro can be used in packages without regex.c.
49005
49006 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
49007
49008         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
49009         is to be used.
49010
49011 1998-07-03  Jim Meyering  <meyering@ascend.com>
49012
49013         * m4/gettext.m4: Add -lintl if it's found to be necessary.
49014
49015         * m4/gettext.m4: New file -- from gettext-0.10.35.
49016         * m4/lcmessage.m4: Likewise.
49017         * m4/progtest.m4: Likewise.
49018
49019         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
49020         * m4/jm-macros.m4: Require the new macro.
49021
49022 1998-06-29  Jim Meyering  <meyering@ascend.com>
49023
49024         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
49025         for the definition of NGROUPS (used in a system header included
49026         by sys/mount.h).
49027
49028 1998-06-28  Jim Meyering  <meyering@ascend.com>
49029
49030         * m4/ls-mntd-fs.m4: New file.
49031         * m4/fstypename.m4: New file.
49032
49033         * m4/jm-macros.m4: Require the new macro.
49034         * m4/jm-glibc-io.m4: New file.
49035
49036 1998-05-19  Jim Meyering  <meyering@ascend.com>
49037
49038         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
49039         * m4/lchown.m4: New file.
49040
49041         * m4/Makefile.am.in: New file.
49042         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
49043
49044 1998-05-14  Jim Meyering  <meyering@ascend.com>
49045
49046         * m4/Makefile.am (EXTRA_DIST): Add them.
49047         * m4/jm-macros.m4: New file.
49048         * m4/utimbuf.m4: New file.
49049
49050 1998-05-12  Jim Meyering  <meyering@ascend.com>
49051
49052         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
49053
49054 1998-05-11  Jim Meyering  <meyering@ascend.com>
49055
49056         * m4/isc-posix.m4: New file.
49057
49058 1998-05-10  Jim Meyering  <meyering@ascend.com>
49059
49060         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
49061
49062 1998-05-09  Jim Meyering  <meyering@ascend.com>
49063
49064         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
49065         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
49066         with automake.
49067
49068         * m4/ssize_t.m4: New file.
49069         * m4/mktime.m4: Remove file -- the new automake has this now.
49070
49071 1998-04-26  Jim Meyering  <meyering@ascend.com>
49072
49073         * m4/assert.m4: New file.
49074         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
49075
49076 1998-04-05  Jim Meyering  <meyering@ascend.com>
49077
49078         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
49079         (jm_PREREQ): Use it here.
49080
49081 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
49082
49083         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
49084         in acconfig.h.
49085
49086 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
49087
49088         * m4/prereq.m4: New file.
49089         * m4/error.m4: New file.
49090         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
49091
49092 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
49093
49094         * m4/getline.m4: Don't set am_cv_func_working_getline before the
49095         cache-check for the same variable -- that defeated the purpose of
49096         the test; the test program was never run.  This was a problem only
49097         on systems with losing getline functions -- HP-UX 10.20 is one.
49098         Reported by Bjorn Helgaas.
49099
49100 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
49101
49102         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
49103
49104 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
49105
49106         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
49107
49108         * m4/const.m4: New file.  Use an initializer in this declaration
49109         typedef int charset[2]; const charset x;
49110         Reported by Bob Glickstein.
49111
49112 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
49113
49114         * m4/chown.m4: Fix reversed types on -1 args to chown.
49115         From Kaveh Ghazi.
49116
49117 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
49118
49119         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
49120         Add lseek and memchr.
49121
49122         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
49123         T.E.Dickey <dickey@clark.net> said that some older preprocessors
49124         have a 20-character limit on names.
49125
49126 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
49127
49128         * m4/inttypes_h.m4: New file.
49129         * m4/uintmax_t.m4: New file.
49130         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
49131
49132
49133         -----
49134
49135         Local Variables:
49136         coding: utf-8
49137         End:
49138
49139         Copyright (C) 1997-2009 Free Software Foundation, Inc.
49140
49141         Copying and distribution of this file, with or without
49142         modification, are permitted provided the copyright notice
49143         and this notice are preserved.