dec7912cbfec122bc6f6ab4f3e66f51009510942
[gnulib.git] / ChangeLog
1 2008-12-25  Bruno Haible  <bruno@clisp.org>
2
3         Add support for universal builds to <inttypes.h>.
4         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
5         _SCNu64_PREFIX): In Apple
6         universal builds, define directly, using _LP64.
7         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
8         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
9         * modules/inttypes (Depends-on): Add multiarch.
10         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
11
12         Add support for universal builds to <stdint.h>.
13         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
14         universal builds, define directly, using _LP64.
15         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
16         Apple universal builds, don't test for the size and suffix of ptrdiff_t
17         and size_t.
18         * modules/stdint (Depends-on): Add multiarch.
19         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
20
21         New module 'multiarch'.
22         * modules/multiarch: New file.
23         * m4/multiarch.m4: New file.
24
25 2008-12-25  Bruno Haible  <bruno@clisp.org>
26
27         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
28
29 2008-12-25  Bruno Haible  <bruno@clisp.org>
30
31         * modules/btowc (License): Relicense under LGPLv2+.
32         * modules/mbsinit (License): Likewise.
33         * modules/mbrtowc (License): Likewise.
34         * modules/wcrtomb (License): Likewise.
35         * modules/streq (License): Likewise.
36         Reported by David Lutterkort <lutter@redhat.com>.
37
38 2008-12-23  Bruno Haible  <bruno@clisp.org>
39
40         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
41
42 2008-12-23  Bruno Haible  <bruno@clisp.org>
43
44         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
45         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
46         GETADDRINFO_LIB, not in LIBS.
47         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
48         * modules/canon-host (Link): Likewise.
49         * NEWS: Mention the change.
50         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
51         GETADDRINFO_LIB.
52
53 2008-12-22  Bruno Haible  <bruno@clisp.org>
54
55         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
56         * doc/posix-functions/iswalpha_l.texi: Likewise.
57         * doc/posix-functions/iswblank_l.texi: Likewise.
58         * doc/posix-functions/iswcntrl_l.texi: Likewise.
59         * doc/posix-functions/iswctype_l.texi: Likewise.
60         * doc/posix-functions/iswdigit_l.texi: Likewise.
61         * doc/posix-functions/iswgraph_l.texi: Likewise.
62         * doc/posix-functions/iswlower_l.texi: Likewise.
63         * doc/posix-functions/iswprint_l.texi: Likewise.
64         * doc/posix-functions/iswpunct_l.texi: Likewise.
65         * doc/posix-functions/iswspace_l.texi: Likewise.
66         * doc/posix-functions/iswupper_l.texi: Likewise.
67         * doc/posix-functions/iswxdigit_l.texi: Likewise.
68         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
69         * doc/posix-functions/open_wmemstream.texi: Likewise.
70         * doc/posix-functions/swscanf.texi: Likewise.
71         * doc/posix-functions/towctrans_l.texi: Likewise.
72         * doc/posix-functions/towlower.texi: Likewise.
73         * doc/posix-functions/towlower_l.texi: Likewise.
74         * doc/posix-functions/towupper.texi: Likewise.
75         * doc/posix-functions/towupper_l.texi: Likewise.
76         * doc/posix-functions/vfwprintf.texi: Likewise.
77         * doc/posix-functions/vfwscanf.texi: Likewise.
78         * doc/posix-functions/vswscanf.texi: Likewise.
79         * doc/posix-functions/vwprintf.texi: Likewise.
80         * doc/posix-functions/vwscanf.texi: Likewise.
81         * doc/posix-functions/wcpcpy.texi: Likewise.
82         * doc/posix-functions/wcpncpy.texi: Likewise.
83         * doc/posix-functions/wcscasecmp.texi: Likewise.
84         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
85         * doc/posix-functions/wcscoll_l.texi: Likewise.
86         * doc/posix-functions/wcsdup.texi: Likewise.
87         * doc/posix-functions/wcsncasecmp.texi: Likewise.
88         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
89         * doc/posix-functions/wcsnlen.texi: Likewise.
90         * doc/posix-functions/wcsnrtombs.texi: Likewise.
91         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
92         * doc/posix-functions/wctrans_l.texi: Likewise.
93         * doc/posix-functions/wctype_l.texi: Likewise.
94         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
95         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
96         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
97         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
98         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
99         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
100         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
101         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
102         * doc/glibc-functions/wcschrnul.texi: Likewise.
103         * doc/glibc-functions/wcsftime_l.texi: Likewise.
104         * doc/glibc-functions/wcstod_l.texi: Likewise.
105         * doc/glibc-functions/wcstof_l.texi: Likewise.
106         * doc/glibc-functions/wcstol_l.texi: Likewise.
107         * doc/glibc-functions/wcstold_l.texi: Likewise.
108         * doc/glibc-functions/wcstoll_l.texi: Likewise.
109         * doc/glibc-functions/wcstoq.texi: Likewise.
110         * doc/glibc-functions/wcstoul_l.texi: Likewise.
111         * doc/glibc-functions/wcstoull_l.texi: Likewise.
112         * doc/glibc-functions/wcstouq.texi: Likewise.
113         * doc/glibc-functions/wmempcpy.texi: Likewise.
114
115 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
116             Eric Blake  <ebb9@byu.net>
117             Paolo Bonzini  <bonzini@gnu.org>
118             Bruno Haible  <bruno@clisp.org>
119
120         Make c-stack work on Haiku.
121         * lib/c-stack.c (SA_ONSTACK): Define fallback.
122         (c_stack_action): Use SA_ONSTACK flag.
123
124 2008-12-22  Bruno Haible  <bruno@clisp.org>
125
126         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
127
128 2008-12-22  Bruno Haible  <bruno@clisp.org>
129
130         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
131         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
132         being overridden.
133         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
134         New macros.
135         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
136         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
137         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
138         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
139
140 2008-12-22  Bruno Haible  <bruno@clisp.org>
141
142         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
143         from test code.
144
145 2008-12-22  Eric Blake  <ebb9@byu.net>
146
147         Avoid gcc warnings on cygwin.
148         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
149         Avoid unused variable.
150         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
151         Likewise.
152
153 2008-12-22  Bruno Haible  <bruno@clisp.org>
154
155         Remove HAVE_MBRTOWC conditionals.
156         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
157         (mbscasecmp): Assume mbrtowc function.
158         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
159         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
160         * lib/mbschr.c: Include mbuiter.h unconditionally.
161         (mbschr): Assume mbrtowc function.
162         * lib/mbscspn.c: Include mbuiter.h unconditionally.
163         (mbscspn): Assume mbrtowc function.
164         * lib/mbslen.c: Include mbuiter.h unconditionally.
165         (mbslen): Assume mbrtowc function.
166         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
167         (mbsncasecmp): Assume mbrtowc function.
168         * lib/mbsnlen.c: Include mbiter.h unconditionally.
169         (mbsnlen): Assume mbrtowc function.
170         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
171         (mbspbrk): Assume mbrtowc function.
172         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
173         (mbspcasecmp): Assume mbrtowc function.
174         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
175         (mbsrchr): Assume mbrtowc function.
176         * lib/mbssep.c: Include mbuiter.h unconditionally.
177         (mbssep): Assume mbrtowc function.
178         * lib/mbsspn.c: Include mbuiter.h unconditionally.
179         (mbsspn): Assume mbrtowc function.
180         * lib/mbsstr.c: Include mbuiter.h unconditionally.
181         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
182         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
183         (mbstok_r): Assume mbrtowc function.
184         * lib/propername.c: Include mbuiter.h unconditionally.
185         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
186         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
187         (trim2): Assume mbrtowc function.
188         * lib/mbswidth.c (mbsinit): Remove fallback definition.
189         (mbsnwidth): Assume mbrtowc function.
190         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
191         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
192         fallback definitions.
193         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
194
195 2008-12-22  Bruno Haible  <bruno@clisp.org>
196
197         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
198
199 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
200
201         * modules/regex: Request emulations for the mb*/wc* functions we need.
202         * m4/regex.m4: Don't look for those functions here.
203         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
204
205 2008-12-22  Bruno Haible  <bruno@clisp.org>
206
207         * modules/fnmatch (Depends-on): Remove duplicated dependency.
208
209 2008-12-21  Bruno Haible  <bruno@clisp.org>
210
211         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
212         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
213         (Include): Remove conditionalization.
214         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
215         (Include): Remove conditionalization.
216         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
217         (Include): Remove conditionalization.
218         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
219         * m4/mbfile.m4 (gl_MBFILE): Likewise.
220         * NEWS: Mention the change.
221         Reported by Alan Hourihane <alanh@fairlite.co.uk>
222         via Sergey Poznyakoff <gray@gnu.org.ua>.
223
224 2008-12-21  Bruno Haible  <bruno@clisp.org>
225
226         * MODULES.html.sh (Extended multibyte and wide character utilities
227         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
228         wcrtomb, wcsrtombs.
229         (Support for systems lacking POSIX:2008): Add accept, bind, close,
230         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
231         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
232         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
233
234 2008-12-21  Bruno Haible  <bruno@clisp.org>
235
236         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
237
238 2008-12-21  Bruno Haible  <bruno@clisp.org>
239
240         * modules/wcsnrtombs-tests: New file.
241         * tests/test-wcsnrtombs1.sh: New file.
242         * tests/test-wcsnrtombs2.sh: New file.
243         * tests/test-wcsnrtombs3.sh: New file.
244         * tests/test-wcsnrtombs4.sh: New file.
245         * tests/test-wcsnrtombs.c: New file.
246
247         New module 'wcsnrtombs'.
248         * lib/wchar.in.h (wcsnrtombs): New declaration.
249         * lib/wcsnrtombs.c: New file.
250         * lib/wcsrtombs-state.c: New file.
251         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
252         (internal_state): Remove variable.
253         * m4/wcsnrtombs.m4: New file.
254         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
255         compilation units.
256         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
257         HAVE_WCSNRTOMBS.
258         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
259         HAVE_WCSNRTOMBS.
260         * modules/wcsnrtombs: New file.
261         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
262         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
263
264 2008-12-21  Bruno Haible  <bruno@clisp.org>
265
266         * modules/wcsrtombs-tests: New file.
267         * tests/test-wcsrtombs1.sh: New file.
268         * tests/test-wcsrtombs2.sh: New file.
269         * tests/test-wcsrtombs3.sh: New file.
270         * tests/test-wcsrtombs4.sh: New file.
271         * tests/test-wcsrtombs.c: New file.
272
273         New module 'wcsrtombs'.
274         * lib/wchar.in.h (wcsrtombs): New declaration.
275         * lib/wcsrtombs.c: New file.
276         * m4/wcsrtombs.m4: New file.
277         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
278         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
279         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
280         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
281         * modules/wcsrtombs: New file.
282         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
283         bugs.
284
285 2008-12-21  Bruno Haible  <bruno@clisp.org>
286
287         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
288         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
289         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
290         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
291         if not correct.
292         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
293         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
294         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
295         m4/locale-zh.m4, m4/codeset.m4.
296         * doc/posix-functions/wcrtomb.texi: Document the bug.
297
298 2008-12-21  Bruno Haible  <bruno@clisp.org>
299
300         Work around a btowc() bug on IRIX 6.5.
301         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
302         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
303         REPLACE_WTOBC if not.
304         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
305         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
306         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
307
308 2008-12-21  Bruno Haible  <bruno@clisp.org>
309
310         * modules/wcrtomb-tests: New file.
311         * tests/test-wcrtomb.sh: New file.
312         * tests/test-wcrtomb.c: New file.
313
314         New module 'wcrtomb'.
315         * lib/wchar.in.h (wcrtomb): New declaration.
316         * lib/wcrtomb.c: New file.
317         * m4/wcrtomb.m4: New file.
318         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
319         HAVE_WCRTOMB.
320         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
321         HAVE_WCRTOMB.
322         * modules/wcrtomb: New file.
323         * doc/posix-functions/wcrtomb.texi: Mention the new module.
324
325 2008-12-21  Bruno Haible  <bruno@clisp.org>
326
327         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
328         * modules/mbsrtowcs (Files): Likewise.
329         * modules/wctob (Files): Likewise.
330         * modules/c-strcase-tests (Files): Likewise.
331         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
332         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
333         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
334         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
335         * modules/vasnprintf-posix-tests (Files): Likewise.
336
337 2008-12-21  William Pursell  <bill.pursell@gmail.com>
338
339         gitlog-to-changelog: pass all command-line arguments to git-log
340         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
341         it is sometimes convenient to filter the commits in various ways.
342         gitlog-to-changelog only allows --since to specify a start date,
343         but git-log itself supports many other filtering mechanisms.
344         At the moment, I want to filter by branch name.  Rather than
345         adding a --branch option to gitlog-to-changelog, it seems more
346         flexible to simply pass all options directly to git-log and let
347         git do the work.  Notice that this effectively makes --since a
348         redundant option for gitlog-to-changelog, but removing it would
349         require current usage to change since calls would then require
350         an additional '--'.
351
352 2008-12-21  Bruno Haible  <bruno@clisp.org>
353
354         * modules/mbsnrtowcs-tests: New file.
355         * tests/test-mbsnrtowcs1.sh: New file.
356         * tests/test-mbsnrtowcs2.sh: New file.
357         * tests/test-mbsnrtowcs3.sh: New file.
358         * tests/test-mbsnrtowcs4.sh: New file.
359         * tests/test-mbsnrtowcs.c: New file.
360
361         New module 'mbsnrtowcs'.
362         * lib/wchar.in.h (mbsnrtowcs): New declaration.
363         * lib/mbsnrtowcs.c: New file.
364         * lib/mbsrtowcs-state.c: New file.
365         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
366         (internal_state): Remove variable.
367         * m4/mbsnrtowcs.m4: New file.
368         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
369         compilation units.
370         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
371         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
372         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
373         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
374         * modules/mbsnrtowcs: New file.
375         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
376         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
377         portability problem.
378
379 2008-12-21  Bruno Haible  <bruno@clisp.org>
380
381         Work around mbsrtowcs bug.
382         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
383         (gl_FUNC_MBSRTOWCS): Invoke it.
384         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
385         m4/locale-zh.m4.
386         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
387
388 2008-12-21  Bruno Haible  <bruno@clisp.org>
389
390         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
391
392 2008-12-21  Bruno Haible  <bruno@clisp.org>
393
394         Update doc for AIX.
395         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
396         16-bit wchar_t type.
397         * doc/posix-functions/btowc.texi: Likewise.
398         * doc/posix-functions/fgetwc.texi: Likewise.
399         * doc/posix-functions/fgetws.texi: Likewise.
400         * doc/posix-functions/fputwc.texi: Likewise.
401         * doc/posix-functions/fputws.texi: Likewise.
402         * doc/posix-functions/fwide.texi: Likewise.
403         * doc/posix-functions/fwprintf.texi: Likewise.
404         * doc/posix-functions/fwscanf.texi: Likewise.
405         * doc/posix-functions/getwchar.texi: Likewise.
406         * doc/posix-functions/getwc.texi: Likewise.
407         * doc/posix-functions/iswalnum.texi: Likewise.
408         * doc/posix-functions/iswalpha.texi: Likewise.
409         * doc/posix-functions/iswblank.texi: Likewise.
410         * doc/posix-functions/iswcntrl.texi: Likewise.
411         * doc/posix-functions/iswctype.texi: Likewise.
412         * doc/posix-functions/iswdigit.texi: Likewise.
413         * doc/posix-functions/iswgraph.texi: Likewise.
414         * doc/posix-functions/iswlower.texi: Likewise.
415         * doc/posix-functions/iswprint.texi: Likewise.
416         * doc/posix-functions/iswpunct.texi: Likewise.
417         * doc/posix-functions/iswspace.texi: Likewise.
418         * doc/posix-functions/iswupper.texi: Likewise.
419         * doc/posix-functions/iswxdigit.texi: Likewise.
420         * doc/posix-functions/mbrtowc.texi: Likewise.
421         * doc/posix-functions/mbsrtowcs.texi: Likewise.
422         * doc/posix-functions/mbstowcs.texi: Likewise.
423         * doc/posix-functions/mbtowc.texi: Likewise.
424         * doc/posix-functions/putwchar.texi: Likewise.
425         * doc/posix-functions/putwc.texi: Likewise.
426         * doc/posix-functions/swprintf.texi: Likewise.
427         * doc/posix-functions/tolower.texi: Likewise.
428         * doc/posix-functions/toupper.texi: Likewise.
429         * doc/posix-functions/towctrans.texi: Likewise.
430         * doc/posix-functions/ungetwc.texi: Likewise.
431         * doc/posix-functions/vswprintf.texi: Likewise.
432         * doc/posix-functions/wcrtomb.texi: Likewise.
433         * doc/posix-functions/wcscat.texi: Likewise.
434         * doc/posix-functions/wcschr.texi: Likewise.
435         * doc/posix-functions/wcscmp.texi: Likewise.
436         * doc/posix-functions/wcscoll.texi: Likewise.
437         * doc/posix-functions/wcscpy.texi: Likewise.
438         * doc/posix-functions/wcscspn.texi: Likewise.
439         * doc/posix-functions/wcsftime.texi: Likewise.
440         * doc/posix-functions/wcslen.texi: Likewise.
441         * doc/posix-functions/wcsncat.texi: Likewise.
442         * doc/posix-functions/wcsncmp.texi: Likewise.
443         * doc/posix-functions/wcsncpy.texi: Likewise.
444         * doc/posix-functions/wcspbrk.texi: Likewise.
445         * doc/posix-functions/wcsrchr.texi: Likewise.
446         * doc/posix-functions/wcsrtombs.texi: Likewise.
447         * doc/posix-functions/wcsspn.texi: Likewise.
448         * doc/posix-functions/wcsstr.texi: Likewise.
449         * doc/posix-functions/wcstod.texi: Likewise.
450         * doc/posix-functions/wcstof.texi: Likewise.
451         * doc/posix-functions/wcstoimax.texi: Likewise.
452         * doc/posix-functions/wcstok.texi: Likewise.
453         * doc/posix-functions/wcstold.texi: Likewise.
454         * doc/posix-functions/wcstoll.texi: Likewise.
455         * doc/posix-functions/wcstol.texi: Likewise.
456         * doc/posix-functions/wcstombs.texi: Likewise.
457         * doc/posix-functions/wcstoull.texi: Likewise.
458         * doc/posix-functions/wcstoul.texi: Likewise.
459         * doc/posix-functions/wcstoumax.texi: Likewise.
460         * doc/posix-functions/wcswidth.texi: Likewise.
461         * doc/posix-functions/wcsxfrm.texi: Likewise.
462         * doc/posix-functions/wctob.texi: Likewise.
463         * doc/posix-functions/wctomb.texi: Likewise.
464         * doc/posix-functions/wctrans.texi: Likewise.
465         * doc/posix-functions/wctype.texi: Likewise.
466         * doc/posix-functions/wcwidth.texi: Likewise.
467         * doc/posix-functions/wmemchr.texi: Likewise.
468         * doc/posix-functions/wmemcmp.texi: Likewise.
469         * doc/posix-functions/wmemcpy.texi: Likewise.
470         * doc/posix-functions/wmemmove.texi: Likewise.
471         * doc/posix-functions/wmemset.texi: Likewise.
472         * doc/posix-functions/wprintf.texi: Likewise.
473         * doc/posix-functions/wscanf.texi: Likewise.
474
475 2008-12-21  Bruno Haible  <bruno@clisp.org>
476
477         Update doc for HP-UX 11.11.
478         * doc/posix-functions/btowc.texi: Clarify that the function is missing
479         in HP-UX version 11.00, not in all versions of HP-UX 11.
480         * doc/posix-functions/fwide.texi: Likewise.
481         * doc/posix-functions/fwprintf.texi: Likewise.
482         * doc/posix-functions/fwscanf.texi: Likewise.
483         * doc/posix-functions/inet_ntop.texi: Likewise.
484         * doc/posix-functions/inet_pton.texi: Likewise.
485         * doc/posix-functions/mbrlen.texi: Likewise.
486         * doc/posix-functions/mbrtowc.texi: Likewise.
487         * doc/posix-functions/mbsinit.texi: Likewise.
488         * doc/posix-functions/mbsrtowcs.texi: Likewise.
489         * doc/posix-functions/swprintf.texi: Likewise.
490         * doc/posix-functions/swscanf.texi: Likewise.
491         * doc/posix-functions/towctrans.texi: Likewise.
492         * doc/posix-functions/vfwprintf.texi: Likewise.
493         * doc/posix-functions/vswprintf.texi: Likewise.
494         * doc/posix-functions/vwprintf.texi: Likewise.
495         * doc/posix-functions/wcrtomb.texi: Likewise.
496         * doc/posix-functions/wcsrtombs.texi: Likewise.
497         * doc/posix-functions/wcsstr.texi: Likewise.
498         * doc/posix-functions/wctob.texi: Likewise.
499         * doc/posix-functions/wctrans.texi: Likewise.
500         * doc/posix-functions/wmemchr.texi: Likewise.
501         * doc/posix-functions/wmemcmp.texi: Likewise.
502         * doc/posix-functions/wmemcpy.texi: Likewise.
503         * doc/posix-functions/wmemmove.texi: Likewise.
504         * doc/posix-functions/wmemset.texi: Likewise.
505         * doc/posix-functions/wprintf.texi: Likewise.
506         * doc/posix-functions/wscanf.texi: Likewise.
507
508 2008-12-21  Bruno Haible  <bruno@clisp.org>
509
510         Work around a portability problem.
511         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
512         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
513
514 2008-12-20  Bruno Haible  <bruno@clisp.org>
515
516         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
517         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
518         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
519         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
520         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
521
522         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
523         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
524         set.
525         (GNULIB_defined_mbstate_t): New macro.
526         (mbsinit): Redefine if REPLACE_MBSINIT is set.
527         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
528         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
529         reuses the system's mbrtowc function but works around the bugs.
530         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
531         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
532         macros.
533         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
534         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
535         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
536         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
537         REPLACE_MBSINIT if mbsinit needs to be overridden.
538         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
539         REPLACE_MBSINIT, REPLACE_MBRTOWC.
540         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
541         REPLACE_MBSINIT, REPLACE_MBRTOWC.
542         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
543         m4/locale-zh.m4.
544         (Depends): Add mbsinit.
545         * modules/mbsinit (Depends): Add mbrtowc.
546         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
547
548 2008-12-20  Bruno Haible  <bruno@clisp.org>
549
550         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
551         so that there are no conversion errors on AIX.
552         * tests/test-mbsrtowcs.c (main): LIkewise.
553
554 2008-12-20  Bruno Haible  <bruno@clisp.org>
555
556         Work around wctob bug on Solaris <= 9.
557         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
558         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
559         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
560         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
561         * modules/wctob (Files): Add m4/locale-fr.m4.
562         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
563
564 2008-12-20  Bruno Haible  <bruno@clisp.org>
565
566         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
567         /dev/null.
568         * tests/test-select-in.sh: Likewise.
569         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
570
571 2008-12-20  Bruno Haible  <bruno@clisp.org>
572
573         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
574         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
575         Cygwin 1.5.x.
576
577 2008-12-20  Bruno Haible  <bruno@clisp.org>
578
579         Ensure mbstate_t is defined on HP-UX 11.11.
580         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
581         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
582         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
583         AC_USE_SYSTEM_EXTENSIONS.
584         * modules/fnmatch (Depends-on): Add extensions.
585         * modules/mbrlen (Depends-on): Likewise.
586         * modules/mbrtowc (Depends-on): Likewise.
587         * modules/mbsinit (Depends-on): Likewise.
588         * modules/mbsrtowcs (Depends-on): Likewise.
589         * modules/mbswidth (Depends-on): Likewise.
590         * modules/quotearg (Depends-on): Likewise.
591         * modules/strftime (Depends-on): Likewise.
592
593 2008-12-20  Bruno Haible  <bruno@clisp.org>
594
595         Ensure wctob is declared on IRIX 6.5.
596         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
597         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
598         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
599         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
600         of HAVE_WCTOB.
601         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
602         HAVE_WCTOB.
603         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
604
605 2008-12-19  Bruno Haible  <bruno@clisp.org>
606
607         * modules/mbsrtowcs-tests: New file.
608         * tests/test-mbsrtowcs1.sh: New file.
609         * tests/test-mbsrtowcs2.sh: New file.
610         * tests/test-mbsrtowcs3.sh: New file.
611         * tests/test-mbsrtowcs4.sh: New file.
612         * tests/test-mbsrtowcs.c: New file.
613
614         New module 'mbsrtowcs'.
615         * lib/wchar.in.h (mbsrtowcs): New declaration.
616         * lib/mbsrtowcs.c: New file.
617         * m4/mbsrtowcs.m4: New file.
618         * modules/mbsrtowcs: New file.
619         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
620         HAVE_MBSRTOWCS.
621         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
622         HAVE_MBSRTOWCS.
623         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
624
625 2008-12-19  Bruno Haible  <bruno@clisp.org>
626
627         New module 'mbrlen'.
628         * lib/wchar.in.h (mbrlen): New declaration.
629         * lib/mbrlen.c: New file.
630         * m4/mbrlen.m4: New file.
631         * modules/mbrlen: New file.
632         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
633         HAVE_MBRLEN.
634         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
635         HAVE_MBRLEN.
636         * doc/posix-functions/mbrlen.texi: Document the new module.
637
638 2008-12-19  Bruno Haible  <bruno@clisp.org>
639
640         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
641         * modules/mbrtowc (Depends-on): Add verify.
642         Suggested by Paul Eggert.
643
644 2008-12-18  Bruno Haible  <bruno@clisp.org>
645
646         * modules/mbsinit-tests: New file.
647         * tests/test-mbsinit.sh: New file.
648         * tests/test-mbsinit.c: New file.
649
650 2008-12-18  Bruno Haible  <bruno@clisp.org>
651
652         * modules/mbrtowc-tests: New file.
653         * tests/test-mbrtowc1.sh: New file.
654         * tests/test-mbrtowc2.sh: New file.
655         * tests/test-mbrtowc3.sh: New file.
656         * tests/test-mbrtowc4.sh: New file.
657         * tests/test-mbrtowc.c: New file.
658
659         New module 'mbrtowc'.
660         * lib/wchar.in.h (mbstate_t): Override when the system does not have
661         mbsinit and mbrtowc.
662         (mbrtowc): New declaration.
663         * lib/mbrtowc.c: New file.
664         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
665         * modules/mbrtowc: New file.
666         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
667         HAVE_MBRTOWC.
668         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
669         HAVE_MBRTOWC.
670         * doc/posix-functions/mbrtowc.texi: Document the new module.
671
672 2008-12-18  Bruno Haible  <bruno@clisp.org>
673
674         New module 'wctob'.
675         * lib/wchar.in.h (wctob): New declaration.
676         * lib/wctob.c: New file.
677         * m4/wctob.m4: New file.
678         * modules/wctob: New file.
679         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
680         HAVE_WCTOB.
681         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
682         * doc/posix-functions/wctob.texi: Document the new module.
683
684 2008-12-18  Bruno Haible  <bruno@clisp.org>
685
686         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
687         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
688
689 2008-12-18  Simon Josefsson  <simon@josefsson.org>
690
691         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
692         G. Christensen" <tgc@jupiterrise.com>.
693
694         * lib/flock.c: Need to include errno.h.  Reported by "Tom
695         G. Christensen" <tgc@jupiterrise.com>.
696
697         * lib/flock.c: Need to include string.h.  Reported by "Tom
698         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
699         <ebb9@byu.net>.
700
701 2008-12-18  Bruno Haible  <bruno@clisp.org>
702
703         * m4/locale-ja.m4: New file, from GNU gettext.
704
705 2008-12-17  Bruno Haible  <bruno@clisp.org>
706
707         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
708         Suggested by Eric Blake.
709
710 2008-12-17  Bruno Haible  <bruno@clisp.org>
711
712         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
713
714 2008-12-17  Bruno Haible  <bruno@clisp.org>
715
716         * lib/mbsinit.c: Include verify.h. Verify an assumption.
717         * modules/mbsinit (Depends-on): Add verify.
718         Suggested by Paul Eggert.
719
720 2008-12-17  Bruno Haible  <bruno@clisp.org>
721
722         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
723         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
724         gl_FUNC_MBRTOWC.
725         * m4/mbiter.m4 (gl_MBITER): LIkewise.
726         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
727         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
728         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
729         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
730         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
731         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
732         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
733         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
734         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
735         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
736         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
737         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
738         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
739         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
740         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
741         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
742         * modules/trim (configure.ac): Likewise.
743
744 2008-12-17  Bruno Haible  <bruno@clisp.org>
745
746         * modules/btowc-tests: New file.
747         * tests/test-btowc1.sh: New file.
748         * tests/test-btowc2.sh: New file.
749         * tests/test-btowc.c: New file.
750
751         New module 'btowc'.
752         * lib/wchar.in.h (btowc): New declaration.
753         * lib/btowc.c: New file.
754         * m4/btowc.m4: New file.
755         * modules/btowc: New file.
756         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
757         HAVE_BTOWC.
758         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
759         * doc/posix-functions/btowc.texi: Document the new module.
760
761 2008-12-17  Bruno Haible  <bruno@clisp.org>
762
763         New module 'mbsinit'.
764         * lib/wchar.in.h (mbsinit): New declaration.
765         * lib/mbsinit.c: New file.
766         * m4/mbsinit.m4: New file.
767         * modules/mbsinit: New file.
768         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
769         HAVE_MBSINIT.
770         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
771         HAVE_MBSINIT.
772         * doc/posix-functions/mbsinit.texi: Document the new module.
773
774 2008-12-16  Bruno Haible  <bruno@clisp.org>
775
776         * lib/unistd.in.h: Add comment.
777         * tests/test-environ.c: Don't include <stdlib.h>.
778
779 2008-12-16  Bruno Haible  <bruno@clisp.org>
780
781         * lib/parse-duration.h (parse_duration): Document return value
782         convention.
783         * lib/parse-duration.c: Include specification header first. Add
784         comments.
785         (_): Remove macro.
786         (parse_year_month_day, parse_hour_minute_second): Move side effects
787         outside of strchr call.
788         (parse_non_iso8601): Move side effects outside of isspace call.
789         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
790         call.
791
792 2008-12-16  Bruno Haible  <bruno@clisp.org>
793
794         * tests/test-parse-duration.sh: Produce no output when the test
795         succeeds.
796
797 2008-12-16  Bruno Haible  <bruno@clisp.org>
798
799         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
800         expressions.
801
802 2008-12-15  Bruno Haible  <bruno@clisp.org>
803
804         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
805         * doc/glibc-functions/flistxattr.texi: Likewise.
806         * doc/glibc-functions/fopencookie.texi: Likewise.
807         * doc/glibc-functions/fremovexattr.texi: Likewise.
808         * doc/glibc-functions/fsetxattr.texi: Likewise.
809         * doc/glibc-functions/getxattr.texi: Likewise.
810         * doc/glibc-functions/lgetxattr.texi: Likewise.
811         * doc/glibc-functions/listxattr.texi: Likewise.
812         * doc/glibc-functions/llistxattr.texi: Likewise.
813         * doc/glibc-functions/lremovexattr.texi: Likewise.
814         * doc/glibc-functions/lsetxattr.texi: Likewise.
815         * doc/glibc-functions/removexattr.texi: Likewise.
816         * doc/glibc-functions/setxattr.texi: Likewise.
817         * doc/posix-functions/open_memstream.texi: Likewise.
818
819 2008-12-15  Eric Blake  <ebb9@byu.net>
820
821         Update doc for cygwin 1.7.
822         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
823         functions.
824         * doc/posix-functions/fchmodat.texi: Likewise.
825         * doc/posix-functions/fchownat.texi: Likewise.
826         * doc/posix-functions/fdopendir.texi: Likewise.
827         * doc/posix-functions/fmemopen.texi: Likewise.
828         * doc/posix-functions/freeaddrinfo.texi: Likewise.
829         * doc/posix-functions/fstatat.texi: Likewise.
830         * doc/posix-functions/futimens.texi: Likewise.
831         * doc/posix-functions/gai_strerror.texi: Likewise.
832         * doc/posix-functions/getaddrinfo.texi: Likewise.
833         * doc/posix-functions/getnameinfo.texi: Likewise.
834         * doc/posix-functions/if_freenameindex.texi: Likewise.
835         * doc/posix-functions/if_indextoname.texi: Likewise.
836         * doc/posix-functions/if_nameindex.texi: Likewise.
837         * doc/posix-functions/if_nametoindex.texi: Likewise.
838         * doc/posix-functions/insque.texi: Likewise.
839         * doc/posix-functions/linkat.texi: Likewise.
840         * doc/posix-functions/llrint.texi: Likewise.
841         * doc/posix-functions/llrintf.texi: Likewise.
842         * doc/posix-functions/llrintl.texi: Likewise.
843         * doc/posix-functions/lockf.texi: Likewise.
844         * doc/posix-functions/lrintl.texi: Likewise.
845         * doc/posix-functions/mkdirat.texi: Likewise.
846         * doc/posix-functions/mkfifoat.texi: Likewise.
847         * doc/posix-functions/mknodat.texi: Likewise.
848         * doc/posix-functions/mq_close.texi: Likewise.
849         * doc/posix-functions/mq_getattr.texi: Likewise.
850         * doc/posix-functions/mq_notify.texi: Likewise.
851         * doc/posix-functions/mq_open.texi: Likewise.
852         * doc/posix-functions/mq_receive.texi: Likewise.
853         * doc/posix-functions/mq_send.texi: Likewise.
854         * doc/posix-functions/mq_setattr.texi: Likewise.
855         * doc/posix-functions/mq_timedreceive.texi: Likewise.
856         * doc/posix-functions/mq_timedsend.texi: Likewise.
857         * doc/posix-functions/mq_unlink.texi: Likewise.
858         * doc/posix-functions/open_memstream.texi: Likewise.
859         * doc/posix-functions/openat.texi: Likewise.
860         * doc/posix-functions/posix_fadvise.texi: Likewise.
861         * doc/posix-functions/posix_fallocate.texi: Likewise.
862         * doc/posix-functions/posix_madvise.texi: Likewise.
863         * doc/posix-functions/posix_memalign.texi: Likewise.
864         * doc/posix-functions/posix_openpt.texi: Likewise.
865         * doc/posix-functions/readlinkat.texi: Likewise.
866         * doc/posix-functions/remque.texi: Likewise.
867         * doc/posix-functions/renameat.texi: Likewise.
868         * doc/posix-functions/rintl.texi: Likewise.
869         * doc/posix-functions/sem_unlink.texi: Likewise.
870         * doc/posix-functions/shm_open.texi: Likewise.
871         * doc/posix-functions/shm_unlink.texi: Likewise.
872         * doc/posix-functions/signgam.texi: Likewise.
873         * doc/posix-functions/sigset.texi: Likewise.
874         * doc/posix-functions/stpcpy.texi: Likewise.
875         * doc/posix-functions/stpncpy.texi: Likewise.
876         * doc/posix-functions/strerror.texi: Likewise.
877         * doc/posix-functions/strtod.texi: Likewise.
878         * doc/posix-functions/symlinkat.texi: Likewise.
879         * doc/posix-functions/unlinkat.texi: Likewise.
880         * doc/posix-functions/utimensat.texi: Likewise.
881         * doc/glibc-functions/bindresvport.texi: Likewise.
882         * doc/glibc-functions/dn_expand.texi: Likewise.
883         * doc/glibc-functions/exp10.texi: Likewise.
884         * doc/glibc-functions/exp10f.texi: Likewise.
885         * doc/glibc-functions/fgetxattr.texi: Likewise.
886         * doc/glibc-functions/flistxattr.texi: Likewise.
887         * doc/glibc-functions/fopencookie.texi: Likewise.
888         * doc/glibc-functions/freeifaddrs.texi: Likewise.
889         * doc/glibc-functions/fremovexattr.texi: Likewise.
890         * doc/glibc-functions/fsetxattr.texi: Likewise.
891         * doc/glibc-functions/getifaddrs.texi: Likewise.
892         * doc/glibc-functions/getxattr.texi: Likewise.
893         * doc/glibc-functions/lgetxattr.texi: Likewise.
894         * doc/glibc-functions/listxattr.texi: Likewise.
895         * doc/glibc-functions/llistxattr.texi: Likewise.
896         * doc/glibc-functions/lremovexattr.texi: Likewise.
897         * doc/glibc-functions/lsetxattr.texi: Likewise.
898         * doc/glibc-functions/pow10.texi: Likewise.
899         * doc/glibc-functions/pow10f.texi: Likewise.
900         * doc/glibc-functions/rcmd_af.texi: Likewise.
901         * doc/glibc-functions/removexattr.texi: Likewise.
902         * doc/glibc-functions/res_init.texi: Likewise.
903         * doc/glibc-functions/res_mkquery.texi: Likewise.
904         * doc/glibc-functions/res_query.texi: Likewise.
905         * doc/glibc-functions/res_querydomain.texi: Likewise.
906         * doc/glibc-functions/res_send.texi: Likewise.
907         * doc/glibc-functions/rresvport_af.texi: Likewise.
908         * doc/glibc-functions/setxattr.texi: Likewise.
909         * doc/glibc-functions/strcasestr.texi: Likewise.
910
911 2008-12-15  Bruno Haible  <bruno@clisp.org>
912
913         Fix compilation error on OSF/1 4.0.
914         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
915         <sys/time.h>, simply delegate to the system header.
916         Reported by Daniel Richard G. <oss@teragram.com>.
917
918 2008-12-15  Bruno Haible  <bruno@clisp.org>
919
920         * doc/posix-functions/openat.texi: Mention the 'openat' module.
921         * doc/posix-functions/fchmodat.texi: Likewise.
922         * doc/posix-functions/fchownat.texi: Likewise.
923         * doc/posix-functions/fdopendir.texi: Likewise.
924         * doc/posix-functions/fstatat.texi: Likewise.
925         * doc/posix-functions/mkdirat.texi: Likewise.
926         * doc/posix-functions/unlinkat.texi: Likewise.
927
928 2008-12-14  Bruno Haible  <bruno@clisp.org>
929
930         Update doc for POSIX:2008.
931         * doc/posix-functions/faccessat.texi: New file.
932         * doc/posix-functions/fchmodat.texi: New file.
933         * doc/posix-functions/fchownat.texi: New file.
934         * doc/posix-functions/fdopendir.texi: New file.
935         * doc/posix-functions/fstatat.texi: New file.
936         * doc/posix-functions/futimens.texi: New file.
937         * doc/posix-functions/linkat.texi: New file.
938         * doc/posix-functions/mkdirat.texi: New file.
939         * doc/posix-functions/mkfifoat.texi: New file.
940         * doc/posix-functions/mknodat.texi: New file.
941         * doc/posix-functions/open_wmemstream.texi: New file.
942         * doc/posix-functions/openat.texi: New file.
943         * doc/posix-functions/psiginfo.texi: New file.
944         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
945         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
946         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
947         * doc/posix-functions/readlinkat.texi: New file.
948         * doc/posix-functions/renameat.texi: New file.
949         * doc/posix-functions/strerror_l.texi: New file.
950         * doc/posix-functions/symlinkat.texi: New file.
951         * doc/posix-functions/unlinkat.texi: New file.
952         * doc/posix-functions/utimensat.texi: New file.
953         * doc/gnulib.texi (Function Substitutes): Add these subsections.
954
955 2008-12-14  Bruno Haible  <bruno@clisp.org>
956
957         Update doc for POSIX:2008.
958         * doc/posix-functions/alphasort.texi: Renamed from
959         doc/glibc-functions/alphasort.texi.
960         * doc/posix-functions/dirfd.texi: Renamed from
961         doc/glibc-functions/dirfd.texi.
962         * doc/posix-functions/dprintf.texi: Renamed from
963         doc/glibc-functions/dprintf.texi.
964         * doc/posix-functions/duplocale.texi: Renamed from
965         doc/glibc-functions/duplocale.texi.
966         * doc/posix-functions/fexecve.texi: Renamed from
967         doc/glibc-functions/fexecve.texi.
968         * doc/posix-functions/fmemopen.texi: Renamed from
969         doc/glibc-functions/fmemopen.texi.
970         * doc/posix-functions/freelocale.texi: Renamed from
971         doc/glibc-functions/freelocale.texi.
972         * doc/posix-functions/getdate_err.texi: Renamed from
973         doc/glibc-functions/getdate_err.texi.
974         * doc/posix-functions/isalnum_l.texi: Renamed from
975         doc/glibc-functions/isalnum_l.texi.
976         * doc/posix-functions/isalpha_l.texi: Renamed from
977         doc/glibc-functions/isalpha_l.texi.
978         * doc/posix-functions/isblank_l.texi: Renamed from
979         doc/glibc-functions/isblank_l.texi.
980         * doc/posix-functions/iscntrl_l.texi: Renamed from
981         doc/glibc-functions/iscntrl_l.texi.
982         * doc/posix-functions/isdigit_l.texi: Renamed from
983         doc/glibc-functions/isdigit_l.texi.
984         * doc/posix-functions/isgraph_l.texi: Renamed from
985         doc/glibc-functions/isgraph_l.texi.
986         * doc/posix-functions/islower_l.texi: Renamed from
987         doc/glibc-functions/islower_l.texi.
988         * doc/posix-functions/isprint_l.texi: Renamed from
989         doc/glibc-functions/isprint_l.texi.
990         * doc/posix-functions/ispunct_l.texi: Renamed from
991         doc/glibc-functions/ispunct_l.texi.
992         * doc/posix-functions/isspace_l.texi: Renamed from
993         doc/glibc-functions/isspace_l.texi.
994         * doc/posix-functions/isupper_l.texi: Renamed from
995         doc/glibc-functions/isupper_l.texi.
996         * doc/posix-functions/iswalnum_l.texi: Renamed from
997         doc/glibc-functions/iswalnum_l.texi.
998         * doc/posix-functions/iswalpha_l.texi: Renamed from
999         doc/glibc-functions/iswalpha_l.texi.
1000         * doc/posix-functions/iswblank_l.texi: Renamed from
1001         doc/glibc-functions/iswblank_l.texi.
1002         * doc/posix-functions/iswcntrl_l.texi: Renamed from
1003         doc/glibc-functions/iswcntrl_l.texi.
1004         * doc/posix-functions/iswctype_l.texi: Renamed from
1005         doc/glibc-functions/iswctype_l.texi.
1006         * doc/posix-functions/iswdigit_l.texi: Renamed from
1007         doc/glibc-functions/iswdigit_l.texi.
1008         * doc/posix-functions/iswgraph_l.texi: Renamed from
1009         doc/glibc-functions/iswgraph_l.texi.
1010         * doc/posix-functions/iswlower_l.texi: Renamed from
1011         doc/glibc-functions/iswlower_l.texi.
1012         * doc/posix-functions/iswprint_l.texi: Renamed from
1013         doc/glibc-functions/iswprint_l.texi.
1014         * doc/posix-functions/iswpunct_l.texi: Renamed from
1015         doc/glibc-functions/iswpunct_l.texi.
1016         * doc/posix-functions/iswspace_l.texi: Renamed from
1017         doc/glibc-functions/iswspace_l.texi.
1018         * doc/posix-functions/iswupper_l.texi: Renamed from
1019         doc/glibc-functions/iswupper_l.texi.
1020         * doc/posix-functions/iswxdigit_l.texi: Renamed from
1021         doc/glibc-functions/iswxdigit_l.texi.
1022         * doc/posix-functions/isxdigit_l.texi: Renamed from
1023         doc/glibc-functions/isxdigit_l.texi.
1024         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
1025         doc/glibc-functions/mbsnrtowcs.texi.
1026         * doc/posix-functions/mkdtemp.texi: Renamed from
1027         doc/glibc-functions/mkdtemp.texi.
1028         * doc/posix-functions/newlocale.texi: Renamed from
1029         doc/glibc-functions/newlocale.texi.
1030         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
1031         doc/glibc-functions/nl_langinfo_l.texi.
1032         * doc/posix-functions/open_memstream.texi: Renamed from
1033         doc/glibc-functions/open_memstream.texi.
1034         * doc/posix-functions/opterr.texi: Renamed from
1035         doc/glibc-functions/opterr.texi.
1036         * doc/posix-functions/optind.texi: Renamed from
1037         doc/glibc-functions/optind.texi.
1038         * doc/posix-functions/optopt.texi: Renamed from
1039         doc/glibc-functions/optopt.texi.
1040         * doc/posix-functions/psignal.texi: Renamed from
1041         doc/glibc-functions/psignal.texi.
1042         * doc/posix-functions/scandir.texi: Renamed from
1043         doc/glibc-functions/scandir.texi.
1044         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
1045         doc/glibc-functions/sched_get_priority_min.texi.
1046         * doc/posix-functions/signgam.texi: Renamed from
1047         doc/glibc-functions/signgam.texi.
1048         * doc/posix-functions/stpcpy.texi: Renamed from
1049         doc/glibc-functions/stpcpy.texi.
1050         * doc/posix-functions/stpncpy.texi: Renamed from
1051         doc/glibc-functions/stpncpy.texi.
1052         * doc/posix-functions/strcasecmp_l.texi: Renamed from
1053         doc/glibc-functions/strcasecmp_l.texi.
1054         * doc/posix-functions/strcoll_l.texi: Renamed from
1055         doc/glibc-functions/strcoll_l.texi.
1056         * doc/posix-functions/strfmon_l.texi: Renamed from
1057         doc/glibc-functions/strfmon_l.texi.
1058         * doc/posix-functions/strftime_l.texi: Renamed from
1059         doc/glibc-functions/strftime_l.texi.
1060         * doc/posix-functions/strncasecmp_l.texi: Renamed from
1061         doc/glibc-functions/strncasecmp_l.texi.
1062         * doc/posix-functions/strndup.texi: Renamed from
1063         doc/glibc-functions/strndup.texi.
1064         * doc/posix-functions/strnlen.texi: Renamed from
1065         doc/glibc-functions/strnlen.texi.
1066         * doc/posix-functions/strsignal.texi: Renamed from
1067         doc/glibc-functions/strsignal.texi.
1068         * doc/posix-functions/strxfrm_l.texi: Renamed from
1069         doc/glibc-functions/strxfrm_l.texi.
1070         * doc/posix-functions/timer_gettime.texi: Renamed from
1071         doc/glibc-functions/timer_gettime.texi.
1072         * doc/posix-functions/tolower_l.texi: Renamed from
1073         doc/glibc-functions/tolower_l.texi.
1074         * doc/posix-functions/toupper_l.texi: Renamed from
1075         doc/glibc-functions/toupper_l.texi.
1076         * doc/posix-functions/towctrans_l.texi: Renamed from
1077         doc/glibc-functions/towctrans_l.texi.
1078         * doc/posix-functions/towlower_l.texi: Renamed from
1079         doc/glibc-functions/towlower_l.texi.
1080         * doc/posix-functions/towupper_l.texi: Renamed from
1081         doc/glibc-functions/towupper_l.texi.
1082         * doc/posix-functions/uselocale.texi: Renamed from
1083         doc/glibc-functions/uselocale.texi.
1084         * doc/posix-functions/vdprintf.texi: Renamed from
1085         doc/glibc-functions/vdprintf.texi.
1086         * doc/posix-functions/wcpcpy.texi:
1087         Renamed from doc/glibc-functions/wcpcpy.texi.
1088         * doc/posix-functions/wcpncpy.texi: Renamed from
1089         doc/glibc-functions/wcpncpy.texi.
1090         * doc/posix-functions/wcscasecmp.texi: Renamed from
1091         doc/glibc-functions/wcscasecmp.texi.
1092         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
1093         doc/glibc-functions/wcscasecmp_l.texi.
1094         * doc/posix-functions/wcscoll_l.texi: Renamed from
1095         doc/glibc-functions/wcscoll_l.texi.
1096         * doc/posix-functions/wcsdup.texi: Renamed from
1097         doc/glibc-functions/wcsdup.texi.
1098         * doc/posix-functions/wcsncasecmp.texi: Renamed from
1099         doc/glibc-functions/wcsncasecmp.texi.
1100         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
1101         doc/glibc-functions/wcsncasecmp_l.texi.
1102         * doc/posix-functions/wcsnlen.texi: Renamed from
1103         doc/glibc-functions/wcsnlen.texi.
1104         * doc/posix-functions/wcsnrtombs.texi: Renamed from
1105         doc/glibc-functions/wcsnrtombs.texi.
1106         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
1107         doc/glibc-functions/wcsxfrm_l.texi.
1108         * doc/posix-functions/wctrans_l.texi: Renamed from
1109         doc/glibc-functions/wctrans_l.texi.
1110         * doc/posix-functions/wctype_l.texi: Renamed from
1111         doc/glibc-functions/wctype_l.texi.
1112         * doc/gnulib.texi (Function Substitutes): Add these subsections.
1113         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
1114         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
1115         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
1116         these subsections.
1117         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
1118         Remove sections.
1119
1120 2008-12-14  Bruno Haible  <bruno@clisp.org>
1121
1122         Update doc for POSIX:2008.
1123         * doc/posix-functions/*.texi: Update URL of POSIX specification.
1124
1125 2008-12-14  Bruno Haible  <bruno@clisp.org>
1126
1127         Update doc for POSIX:2008.
1128         * doc/pastposix-functions/bcmp.texi: Renamed from
1129         doc/posix-functions/bcmp.texi.
1130         * doc/pastposix-functions/bcopy.texi: Renamed from
1131         doc/posix-functions/bcopy.texi.
1132         * doc/pastposix-functions/bsd_signal.texi: Renamed from
1133         doc/posix-functions/bsd_signal.texi.
1134         * doc/pastposix-functions/bzero.texi: Renamed from
1135         doc/posix-functions/bzero.texi.
1136         * doc/pastposix-functions/ecvt.texi: Renamed from
1137         doc/posix-functions/ecvt.texi.
1138         * doc/pastposix-functions/fcvt.texi: Renamed from
1139         doc/posix-functions/fcvt.texi.
1140         * doc/pastposix-functions/ftime.texi: Renamed from
1141         doc/posix-functions/ftime.texi.
1142         * doc/pastposix-functions/gcvt.texi: Renamed from
1143         doc/posix-functions/gcvt.texi.
1144         * doc/pastposix-functions/getcontext.texi: Renamed from
1145         doc/posix-functions/getcontext.texi.
1146         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
1147         doc/posix-functions/gethostbyaddr.texi.
1148         * doc/pastposix-functions/gethostbyname.texi: Renamed from
1149         doc/posix-functions/gethostbyname.texi.
1150         * doc/pastposix-functions/getwd.texi: Renamed from
1151         doc/posix-functions/getwd.texi.
1152         * doc/pastposix-functions/h_errno.texi: Renamed from
1153         doc/posix-functions/h_errno.texi.
1154         * doc/pastposix-functions/index.texi: Renamed from
1155         doc/posix-functions/index.texi.
1156         * doc/pastposix-functions/makecontext.texi: Renamed from
1157         doc/posix-functions/makecontext.texi.
1158         * doc/pastposix-functions/mktemp.texi: Renamed from
1159         doc/posix-functions/mktemp.texi.
1160         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
1161         doc/posix-functions/pthread_attr_getstackaddr.texi.
1162         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
1163         doc/posix-functions/pthread_attr_setstackaddr.texi.
1164         * doc/pastposix-functions/rindex.texi: Renamed from
1165         doc/posix-functions/rindex.texi.
1166         * doc/pastposix-functions/scalb.texi: Renamed from
1167         doc/posix-functions/scalb.texi.
1168         * doc/pastposix-functions/setcontext.texi: Renamed from
1169         doc/posix-functions/setcontext.texi.
1170         * doc/pastposix-functions/swapcontext.texi: Renamed from
1171         doc/posix-functions/swapcontext.texi.
1172         * doc/pastposix-functions/ualarm.texi: Renamed from
1173         doc/posix-functions/ualarm.texi.
1174         * doc/pastposix-functions/usleep.texi: Renamed from
1175         doc/posix-functions/usleep.texi.
1176         * doc/pastposix-functions/vfork.texi: Renamed from
1177         doc/posix-functions/vfork.texi.
1178         * doc/pastposix-functions/wcswcs.texi: Renamed from
1179         doc/posix-functions/wcswcs.texi.
1180         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
1181         (Function Substitutes): Update.
1182
1183 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1184
1185         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
1186         m4/strerror.m4.
1187
1188 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1189             Bruno Haible  <bruno@clisp.org>
1190
1191         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
1192
1193 2008-12-13  Bruno Haible  <bruno@clisp.org>
1194
1195         * modules/strtoull (Depends-on): Remove unistd.
1196
1197 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1198
1199         * modules/strtoull (Depends-on): Add stdlib.
1200
1201 2008-12-11  Simon Josefsson  <simon@josefsson.org>
1202
1203         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
1204
1205 2008-12-10  Jim Meyering  <meyering@redhat.com>
1206
1207         gl_ASSERT: don't say assertions are disabled when they're not
1208         * m4/assert.m4 (gl_ASSERT): Do not make configure report
1209         "checking whether to enable assertions... no", when they are in
1210         fact enabled.  This is solely a bug in the output of configure.
1211         In spite of saying "no", NDEBUG was not defined in that case.
1212         Also, as noted by Eric Blake, leave assertions enabled upon
1213         --enable-assert=INVALID.
1214
1215 2008-12-10  Bruno Haible  <bruno@clisp.org>
1216
1217         Change MODULES.html to refer to POSIX:2008 where possible.
1218         * MODULES.html.sh (POSIX2008_URL): New variable.
1219         (posix_headers): Remove sys/timeb, ucontext.
1220         (posix2001_headers): New variable.
1221         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
1222         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
1223         index, makecontext, mktemp, pthread_attr_getstackaddr,
1224         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
1225         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
1226         (posix2001_functions): New variable.
1227         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
1228         otherwise.
1229
1230 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1231
1232         add missing include to parse-duration.c
1233         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
1234         * modules/parse-duration (Depends-on): Add xalloc.
1235
1236         fix sed script reading maint.mk
1237         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
1238         (syntax-check-rules): Use it.
1239
1240 2008-12-09  Bruno Haible  <bruno@clisp.org>
1241
1242         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
1243         MacOS X 10.4/PowerPC.
1244         Reported by Simon Josefsson.
1245
1246 2008-12-08  Jim Meyering  <meyering@redhat.com>
1247
1248         work around mingw's lack of some S_IF definitions
1249         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
1250         Reported by Simon Josefsson.
1251
1252 2008-12-08  Bruno Haible  <bruno@clisp.org>
1253
1254         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
1255         applied to variables. Needed on MacOS X 10.4/PowerPC.
1256         Reported by Simon Josefsson.
1257
1258 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
1259         and Eric Blake  <ebb9@byu.net>
1260
1261         assert: honor --enable-assert
1262         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
1263         order to honor --enable-assert, rather than treating it as a
1264         synonym for --disable-assert.
1265
1266 2008-12-08  Jim Meyering  <meyering@redhat.com>
1267
1268         * lib/posixtm.c: Remove now-useless declaration of mktime.
1269
1270         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
1271
1272 2008-12-07  Bruno Haible  <bruno@clisp.org>
1273
1274         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
1275         test_once): Mark functions as static.
1276         * tests/test-tls.c (test_tls): Likewise.
1277
1278 2008-12-07  Bruno Haible  <bruno@clisp.org>
1279
1280         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
1281         iconv_register_autodetect.
1282
1283 2008-12-07  Jim Meyering  <meyering@redhat.com>
1284
1285         posixtm.c: avoid a warning
1286         * lib/posixtm.c (posixtime): Don't initialize tm0.
1287         It's no longer needed to placate gcc4's -Wuninitialized,
1288         and the attempt to placate would elicit a new warning.
1289
1290         unicodeio.c: mark unused parameters
1291         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
1292         (fallback_failure_callback): Likewise.
1293
1294 2008-12-07  Bruno Haible  <bruno@clisp.org>
1295
1296         * gnulib-tool (func_create_testdir): When building the tests
1297         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
1298         Reported by Simon Josefsson.
1299
1300 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1301
1302         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
1303
1304 2008-12-06  Bruno Haible  <bruno@clisp.org>
1305
1306         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
1307         Suggested by Eric Blake.
1308
1309 2008-12-06  Bruno Haible  <bruno@clisp.org>
1310
1311         Fix a c-stack test failure on MacOS X.
1312         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
1313         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
1314         handler for SIGBUS as well.
1315         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
1316         install a signal handler for SIGBUS as well.
1317         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
1318
1319 2008-12-06  Bruno Haible  <bruno@clisp.org>
1320
1321         Advocacy documentation.
1322         * doc/gnulib-intro.texi (Benefits): New section.
1323         * doc/gnulib.texi: Update.
1324
1325 2008-12-06  Bruno Haible  <bruno@clisp.org>
1326
1327         Document the 'manywarnings' module.
1328         * doc/manywarnings.texi: New file.
1329         * doc/gnulib.texi: Include it.
1330
1331 2008-12-05  Eric Blake  <ebb9@byu.net>
1332
1333         tests: silence some gcc warnings
1334         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
1335         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
1336         type mismatches.
1337
1338 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1339             Bruno Haible  <bruno@clisp.org>
1340
1341         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
1342
1343 2008-11-29  Jim Meyering  <meyering@redhat.com>
1344
1345         unicodeio.c: mark unused parameters
1346         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
1347         (fallback_failure_callback): Likewise.
1348
1349         fts: fix a thinko
1350         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
1351         (set_stat_type): Return S_IF*-valued "type" directly.
1352         Prompted by James Youngman's spotting a related bug.
1353         Confirmed by further testing through find.
1354
1355         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
1356         * lib/fts.c (D_TYPE): Define.
1357         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
1358         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
1359         (s_ifmt_shift_bits): New function.
1360         (set_stat_type): New function.
1361         (fts_build): When not calling fts_stat, call set_stat_type
1362         to propagate dirent.d_type info to fts_read caller.
1363         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
1364         fts_statp->st_mode type information may be valid.
1365
1366 2008-11-28  Simon Josefsson  <simon@josefsson.org>
1367
1368         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
1369         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
1370         <sds@gnu.org>.
1371
1372 2008-11-20  Bruno Haible  <bruno@clisp.org>
1373
1374         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
1375         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
1376         INCLUDE_NEXT.
1377         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
1378         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
1379         * modules/math (Makefile.am): Substitute
1380         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
1381         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
1382
1383 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
1384             Bruno Haible  <bruno@clisp.org>
1385
1386         * lib/stdint.in.h: Define all type macros so that their expansion is
1387         a single typedef'ed token. Fixes a compilation failure in Boost which
1388         does "using ::int8_t;".
1389
1390 2008-11-18  Simon Josefsson  <simon@josefsson.org>
1391
1392         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
1393         gl_MANYWARN_ALL_GCC.
1394         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
1395         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
1396         * modules/manywarnings: New file.
1397         * MODULES.html.sh: Mention manywarnings module.
1398
1399 2008-11-18  Bruno Haible  <bruno@clisp.org>
1400
1401         * doc/gnulib-tool.texi (Unit tests): New section.
1402
1403 2008-11-18  Simon Josefsson  <simon@josefsson.org>
1404
1405         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
1406         paths like 'lib/po/foo.po'.
1407
1408 2008-11-17  Simon Josefsson  <simon@josefsson.org>
1409
1410         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
1411         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
1412
1413 2008-11-17  Simon Josefsson  <simon@josefsson.org>
1414
1415         * m4/warnings.m4: Use CPPFLAGS to really check whether the
1416         parameter works.
1417
1418 2008-11-17  Simon Josefsson  <simon@josefsson.org>
1419
1420         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
1421
1422 2008-11-17  Bruce Korb  <bkorb@gnu.org>
1423
1424         * modules/parse-duration-tests: New file.
1425         * tests/test-parse-duration.sh: New file.
1426         * tests/test-parse-duration.c: New file.
1427
1428         New module 'parse-duration'.
1429         * lib/parse-duration.h: New file.
1430         * lib/parse-duration.c: New file.
1431         * modules/parse-duration: New file.
1432
1433 2008-11-17  Bruno Haible  <bruno@clisp.org>
1434
1435         * tests/test-select-out.sh: Comment out the first pipe test.
1436         Reported by Simon Josefsson.
1437
1438 2008-11-17  Bruno Haible  <bruno@clisp.org>
1439
1440         * modules/getaddrinfo (Depends-on): Add servent, hostent.
1441         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
1442         gl_HOSTENT.
1443
1444 2008-11-17  Bruno Haible  <bruno@clisp.org>
1445
1446         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
1447         -lnetwork and -lnet. Needed for Haiku and BeOS.
1448
1449 2008-11-16  Bruno Haible  <bruno@clisp.org>
1450
1451         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
1452
1453 2008-11-16  Bruno Haible  <bruno@clisp.org>
1454
1455         Avoid test failure on Haiku.
1456         * tests/test-fsync.c: Include <errno.h>.
1457         (main): Don't require that fsync (0) fails.
1458
1459 2008-11-15  Bruno Haible  <bruno@clisp.org>
1460
1461         New module 'hostent'.
1462         * modules/hostent: New file.
1463         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
1464
1465 2008-11-15  Bruno Haible  <bruno@clisp.org>
1466
1467         New module 'servent'.
1468         * modules/servent: New file.
1469         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
1470
1471 2008-11-15  Bruno Haible  <bruno@clisp.org>
1472
1473         Avoid generating same test program with two different rules.
1474         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
1475         test-frexp to test-frexp-nolibm.
1476         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
1477         test-frexpl to test-frexpl-nolibm.
1478
1479 2008-11-15  Bruno Haible  <bruno@clisp.org>
1480
1481         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
1482         $(FREXPL_LIBM).
1483
1484 2008-11-15  Bruno Haible  <bruno@clisp.org>
1485
1486         * lib/netdb.in.h: Activate the definitions also when the system's
1487         <netdb.h> has 'struct addrinfo'.
1488         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
1489         EAI_OVERFLOW or AI_NUMERICSERV.
1490         * doc/posix-headers/netdb.texi: Document the problem.
1491
1492 2008-11-15  Bruno Haible  <bruno@clisp.org>
1493
1494         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
1495
1496         Make the 'sched' module work on platforms where <sched.h> exists but
1497         is incomplete (such as Haiku).
1498         * lib/sched.in.h; Include the system's <sched.h> if it exists.
1499         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
1500         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
1501         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
1502         HAVE_STRUCT_SCHED_PARAM.
1503         * modules/sched (Depends-on): Add include_next.
1504         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
1505         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
1506         * doc/posix-headers/sched.texi: Document the issue.
1507
1508 2008-11-13  Jim Meyering  <meyering@redhat.com>
1509
1510         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
1511         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
1512         test would fail due to the difference in the Report bugs to ...
1513         line.  The expected address is empty, "<>", while the actual
1514         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
1515
1516 2008-11-12  Bruno Haible  <bruno@clisp.org>
1517
1518         lstat: don't compile lstat.c on systems lacking lstat
1519         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
1520         which don't have lstat; this is handled by lib/sys_stat.in.h already.
1521         Reported by Daniel P. Berrange via Jim Meyering.
1522
1523 2008-11-12  Jim Meyering  <meyering@redhat.com>
1524
1525         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
1526
1527 2008-11-12  Simon Josefsson  <simon@josefsson.org>
1528
1529         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
1530         instead.
1531
1532 2008-11-12  Bruno Haible  <bruno@clisp.org>
1533
1534         * lib/unicodeio.c: Include unistr.h.
1535         (utf8_wctomb): Remove function.
1536         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
1537
1538 2008-11-12  Simon Josefsson  <simon@josefsson.org>
1539
1540         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
1541         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
1542         <bruno@clisp.org>.
1543         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
1544
1545 2008-11-12  Simon Josefsson  <simon@josefsson.org>
1546
1547         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
1548         * doc/gnulib.texi: Add section for warnings.
1549
1550 2008-11-11  Bruno Haible  <bruno@clisp.org>
1551
1552         * lib/sockets.h: Add a comment.
1553
1554 2008-11-11  Karl Berry  <karl@gnu.org>
1555
1556         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
1557
1558 2008-11-11  Eric Blake  <ebb9@byu.net>
1559
1560         fdl.texi: avoid git symlinks
1561         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
1562
1563 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
1564
1565         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
1566
1567 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
1568
1569         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
1570         (gl_WARN_ADD): Substitute $2 if literal.
1571
1572 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
1573
1574         * m4/warning.m4: Remove.
1575
1576 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
1577
1578         * m4/warnings.m4: Almost complete rewrite. :-)
1579
1580 2008-11-10  Simon Josefsson  <simon@josefsson.org>
1581
1582         * modules/warnings: New module.
1583         * m4/warnings.m4: New file.
1584         * MODULES.html.sh: Mention warnings module.
1585         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
1586         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
1587
1588 2008-11-10  Eric Blake  <ebb9@byu.net>
1589
1590         fdl.texi: make a symlink to the latest version
1591         * doc/standards.texi: Revert today's earlier change.
1592         * doc/fdl-1.2.texi: Rename from old fdl.texi...
1593         * doc/fdl.texi: ...and replace this with a symlink to the newer
1594         fdl-1.3.texi.
1595
1596 2008-11-10  Bruno Haible  <bruno@clisp.org>
1597
1598         * tests/test-select-fd.c (main): Accept the result file name as fourth
1599         argument.
1600         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
1601         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
1602
1603 2008-11-10  Bruno Haible  <bruno@clisp.org>
1604
1605         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
1606         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
1607         as autoconf-substituted macros.
1608         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
1609         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
1610         gl_NETDB_H_DEFAULTS. Set these variables.
1611         * modules/netdb (Makefile.am): Substitute these variables.
1612
1613 2008-11-10  Eric Blake  <ebb9@byu.net>
1614
1615         standards.texi: include correct file for FDL 1.3
1616         * doc/standards.texi (GNU Free Documentation License): Change
1617         include file to pull in FDL 1.3, not 1.2.
1618
1619         fdl.texi: revert accidental change to license
1620         * doc/fdl.texi: This is FDL 1.2, not 1.3.
1621
1622 2008-11-10  Bruno Haible  <bruno@clisp.org>
1623
1624         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
1625         cross-compiling guesses also when the native compile gives no result.
1626
1627 2008-11-10  Bruno Haible  <bruno@clisp.org>
1628
1629         * lib/spawni.c (__spawni): Force variable into the stack.
1630
1631 2008-11-10  Bruno Haible  <bruno@clisp.org>
1632
1633         Add support for Haiku.
1634         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
1635         glibc and BeOS, but also on Haiku.
1636         * lib/fpurge.c (fpurge): Likewise.
1637         * lib/freadable.c (freadable): Likewise.
1638         * lib/freadahead.c (freadahead): Likewise.
1639         * lib/freading.c (freading): Likewise.
1640         * lib/freadptr.c (freadptr): Likewise.
1641         * lib/freadseek.c (freadptrinc): Likewise.
1642         * lib/fseeko.c (rpl_fseeko): Likewise.
1643         * lib/fseterr.c (fseterr): Likewise.
1644         * lib/fwritable.c (fwritable): Likewise.
1645         * lib/fwriting.c (fwriting): Likewise.
1646         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
1647
1648 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
1649
1650         * lib/config.charset: Treat Haiku like BeOS.
1651
1652 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
1653
1654         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
1655         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
1656
1657 2008-11-08  Bruno Haible  <bruno@clisp.org>
1658
1659         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
1660         AC_CACHE_CHECK.
1661
1662 2008-11-08  Bruno Haible  <bruno@clisp.org>
1663
1664         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
1665
1666 2008-11-08  Bruno Haible  <bruno@clisp.org>
1667
1668         * tests/test-select-fd.c: New file.
1669         * tests/test-select-in.sh: New file.
1670         * tests/test-select-out.sh: New file.
1671         * tests/test-select-stdin.c: New file.
1672         * modules/select-tests (Files): Add the new files.
1673         (Depends-on): Add gettimeofday.
1674         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
1675         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
1676         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
1677
1678 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
1679             Bruno Haible  <bruno@clisp.org>
1680
1681         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
1682
1683 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
1684
1685         * build-aux/pmccabe2html: Added support for C++ source files.
1686
1687 2008-11-05  Ben Pfaff  <blp@gnu.org>
1688
1689         Fix lib/close.c build on Windows.
1690         * modules/close (Files): Add lib/w32sock.h.
1691
1692 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
1693
1694         Accept Bison's NEWS format.
1695         * build-aux/announce-gen (print_news_deltas): Tweak
1696         $re_prefix.
1697
1698 2008-11-04  Bruno Haible  <bruno@clisp.org>
1699
1700         * modules/random_r (Maintainer): Add glibc.
1701
1702 2008-11-04  Simon Josefsson  <simon@josefsson.org>
1703
1704         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
1705         by karl@freefriends.org (Karl Berry).
1706         * doc/alloca.texi: Likewise.
1707         * doc/c-ctype.texi: Likewise.
1708         * doc/c-strcase.texi: Likewise.
1709         * doc/c-strcaseeq.texi: Likewise.
1710         * doc/c-strcasestr.texi: Likewise.
1711         * doc/c-strstr.texi: Likewise.
1712         * doc/c-strtod.texi: Likewise.
1713         * doc/c-strtold.texi: Likewise.
1714         * doc/ctime.texi: Likewise.
1715         * doc/error.texi: Likewise.
1716         * doc/fdl.texi: Likewise.
1717         * doc/gcd.texi: Likewise.
1718         * doc/getdate.texi: Likewise.
1719         * doc/gnulib-intro.texi: Likewise.
1720         * doc/gnulib-tool.texi: Likewise.
1721         * doc/gnulib.texi: Likewise.
1722         * doc/inet_ntoa.texi: Likewise.
1723         * doc/maintain.texi: Likewise.
1724         * doc/make-stds.texi: Likewise.
1725         * doc/quote.texi: Likewise.
1726         * doc/regexprops-generic.texi: Likewise.
1727         * doc/standards.texi: Likewise.
1728         * doc/verify.texi: Likewise.
1729         * doc/visibility.texi: Likewise.
1730         * doc/gnulib.texi (GNU Free Documentation License): Include
1731         fdl-1.3.texi instead of fdl.texi.
1732
1733 2008-11-04  Simon Josefsson  <simon@josefsson.org>
1734
1735         * doc/fdl-1.3.texi: New file, from
1736         <http://www.gnu.org/licenses/fdl-1.3.texi>.
1737         * modules/fdl-1.3: Add.
1738         * MODULES.html.sh: Add fdl-1.3.
1739
1740 2008-11-03  Bruno Haible  <bruno@clisp.org>
1741
1742         Make determination of absolute name of header file work with AIX xlc.
1743         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
1744         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
1745         preprocessing.
1746         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
1747         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
1748
1749 2008-11-03  Simon Josefsson  <simon@josefsson.org>
1750
1751         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
1752         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
1753         <ludo@gnu.org>.
1754
1755 2008-11-02  Bruno Haible  <bruno@clisp.org>
1756
1757         Mark 'strpbrk' obsolete.
1758         * modules/strpbrk (Status, Notice): New sections.
1759         * modules/strtok_r (Depends-on): Add strpbrk.
1760
1761 2008-11-02  Bruno Haible  <bruno@clisp.org>
1762
1763         Mark 'strdup' obsolete.
1764         * modules/strdup (Status, Notice): New sections.
1765         * modules/findprog (Depends-on): Add strdup.
1766         * modules/getaddrinfo (Depends-on): Likewise.
1767         * modules/localename (Depends-on): Likewise.
1768         * modules/relocatable-lib (Depends-on): Likewise.
1769         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
1770         * modules/relocatable-prog (Depends-on): Likewise.
1771         * modules/trim (Depends-on): Likewise.
1772         * modules/unictype/gen-ctype (Depends-on): Likewise.
1773         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
1774
1775 2008-11-02  Bruno Haible  <bruno@clisp.org>
1776
1777         Mark 'strcspn' obsolete.
1778         * modules/strcspn (Status, Notice): New sections.
1779
1780 2008-11-02  Bruno Haible  <bruno@clisp.org>
1781
1782         Mark 'rmdir' obsolete.
1783         * modules/rmdir (Status, Notice): New sections.
1784         * modules/clean-temp (Depends-on): Add rmdir.
1785         * modules/openat (Depends-on): Likewise.
1786
1787 2008-11-02  Bruno Haible  <bruno@clisp.org>
1788
1789         Mark 'raise' obsolete.
1790         * modules/raise (Status, Notice): New sections.
1791         (Include): Specify <signal.h>.
1792         * modules/stdio (Depends-on): Add raise.
1793         * modules/write (Depends-on): Likewise.
1794
1795 2008-11-02  Bruno Haible  <bruno@clisp.org>
1796
1797         Mark 'memset' obsolete.
1798         * modules/memset (Status, Notice): New sections.
1799
1800 2008-11-02  Bruno Haible  <bruno@clisp.org>
1801
1802         Mark 'memmove' obsolete.
1803         * modules/memmove (Status, Notice): New sections.
1804         * modules/argp (Depends-on): Add memmove.
1805         * modules/argz (Depends-on): Likewise.
1806         * modules/canonicalize (Depends-on): Likewise.
1807         * modules/canonicalize-lgpl (Depends-on): Likewise.
1808         * modules/fts (Depends-on): Likewise.
1809         * modules/getcwd (Depends-on): Likewise.
1810         * modules/human (Depends-on): Likewise.
1811         * modules/regex (Depends-on): Likewise.
1812         * modules/striconveh (Depends-on): Likewise.
1813         * modules/trim (Depends-on): Likewise.
1814         * modules/unistr/u8-move (Depends-on): Likewise.
1815         * modules/unistr/u16-move (Depends-on): Likewise.
1816         * modules/unistr/u32-move (Depends-on): Likewise.
1817
1818 2008-11-02  Bruno Haible  <bruno@clisp.org>
1819
1820         Mark 'memcpy' obsolete.
1821         * modules/memcpy (Status, Notice): New sections.
1822
1823 2008-11-02  Bruno Haible  <bruno@clisp.org>
1824
1825         Mark 'memcmp' obsolete.
1826         * modules/memcmp (Status, Notice): New sections.
1827         * modules/argmatch (Depends-on): Add memchr.
1828         * modules/backupfile (Depends-on): Likewise.
1829         * modules/c-strcasestr (Depends-on): Likewise.
1830         * modules/crypto/des (Depends-on): Likewise.
1831         * modules/csharpcomp (Depends-on): Likewise.
1832         * modules/fnmatch (Depends-on): Likewise.
1833         * modules/git-merge-changelog (Depends-on): Likewise.
1834         * modules/isnand (Depends-on): Likewise.
1835         * modules/isnand-nolibm (Depends-on): Likewise.
1836         * modules/isnanf (Depends-on): Likewise.
1837         * modules/isnanf-nolibm (Depends-on): Likewise.
1838         * modules/isnanl (Depends-on): Likewise.
1839         * modules/isnanl-nolibm (Depends-on): Likewise.
1840         * modules/mbchar (Depends-on): Likewise.
1841         * modules/memcoll (Depends-on): Likewise.
1842         * modules/quotearg (Depends-on): Likewise.
1843         * modules/regex (Depends-on): Likewise.
1844         * modules/relocatable-prog (Depends-on): Likewise.
1845         * modules/same (Depends-on): Likewise.
1846         * modules/signbit (Depends-on): Likewise.
1847         * modules/strcasestr-simple (Depends-on): Likewise.
1848         * modules/unictype/gen-ctype (Depends-on): Likewise.
1849         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
1850         * modules/uniname/uniname (Depends-on): Likewise.
1851         * modules/unistr/u8-cmp (Depends-on): Likewise.
1852
1853 2008-11-02  Bruno Haible  <bruno@clisp.org>
1854
1855         Mark 'memchr' obsolete.
1856         * modules/memchr (Status, Notice): New sections.
1857         * modules/argp (Depends-on): Add memchr.
1858         * modules/base64 (Depends-on): Likewise.
1859         * modules/c-strcasestr (Depends-on): Likewise.
1860         * modules/chdir-long (Depends-on): Likewise.
1861         * modules/fnmatch (Depends-on): Likewise.
1862         * modules/getsubopt (Depends-on): Likewise.
1863         * modules/git-merge-changelog (Depends-on): Likewise.
1864         * modules/glob (Depends-on): Likewise.
1865         * modules/strcasestr-simple (Depends-on): Likewise.
1866         * modules/strnlen (Depends-on): Likewise.
1867
1868 2008-11-02  Bruno Haible  <bruno@clisp.org>
1869
1870         Mark 'atexit' obsolete.
1871         * modules/atexit (Status, Notice): New sections.
1872         * modules/chdir-long (Depends-on): Add atexit.
1873         * modules/wait-process (Depends-on): Likewise.
1874
1875 2008-11-02  Bruno Haible  <bruno@clisp.org>
1876
1877         * gnulib-tool: New option --with-obsolete.
1878         (func_usage): Document it.
1879         (func_modules_transitive_closure): Drop obsolete dependencies if
1880         incobsolete is not true.
1881         (func_import): Read and save the incobsolete variable to the cache.
1882
1883 2008-11-02  Bruno Haible  <bruno@clisp.org>
1884
1885         * modules/TEMPLATE-EXTENDED: New field 'Status'.
1886         * gnulib-tool: New option --extract-status.
1887         (func_usage): Document it.
1888         (sed_extract_prog): Recognize it.
1889         (func_get_status): New function.
1890
1891 2008-10-30  Simon Josefsson  <simon@josefsson.org>
1892
1893         * modules/sockets (License): Change from LGPL to LGPLv2+.
1894
1895 2008-10-28  Simon Josefsson  <simon@josefsson.org>
1896
1897         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
1898
1899 2008-10-28  Simon Josefsson  <simon@josefsson.org>
1900
1901         * MODULES.html.sh (Support for systems lacking POSIX:2001):
1902         Mention times and sys_times.
1903         * modules/sys_times, modules/sys_times-tests: New modules.
1904         * modules/times, modules/times-tests: Likewise
1905         * m4/sys_times_h.m4: New file.
1906         * lib/sys_times.in.h: Likewise
1907         * lib/times.c: Likewise.
1908         * tests/test-sys_times.c: Likewise.
1909         * tests/test-times.c: Likewise.
1910         * doc/posix-headers/sys_times.texi: Update.
1911         * doc/posix-functions/times.texi: Update.
1912
1913 2008-10-28  Jim Meyering  <meyering@redhat.com>
1914
1915         * modules/tempname (Depends-on): Add lstat.
1916
1917         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
1918
1919 2008-10-28  Simon Josefsson  <simon@josefsson.org>
1920
1921         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
1922         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
1923         using idiom used elsewhere in gnulib.
1924
1925 2008-10-27  Jim Meyering  <meyering@redhat.com>
1926
1927         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
1928
1929 2008-10-27  Simon Josefsson  <simon@josefsson.org>
1930
1931         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
1932         TESTS_ENVIRONMENT, for shell scripts that needs to call built
1933         programs.
1934         * tests/test-argp-2.sh: Use $EXEEXT when needed.
1935
1936 2008-10-27  Simon Josefsson  <simon@josefsson.org>
1937
1938         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
1939
1940 2008-10-27  Bruno Haible  <bruno@clisp.org>
1941
1942         * tests/test-lstat.c: Include <stdio.h>.
1943
1944 2008-10-27  Simon Josefsson  <simon@josefsson.org>
1945
1946         * modules/lstat-tests: New module.
1947         * tests/test-lstat.c: New file.
1948
1949 2008-10-26  Jim Meyering  <meyering@redhat.com>
1950
1951         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
1952
1953 2008-10-26  Simon Josefsson  <simon@josefsson.org>
1954             Bruno Haible  <bruno@clisp.org>
1955
1956         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
1957         * modules/configmake (Include): Add a note that the include must come
1958         after all system headers.
1959         * lib/javaversion.c: Include configmake.h after all other includes.
1960
1961 2008-10-26  Bruno Haible  <bruno@clisp.org>
1962
1963         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
1964         HAVE_STRUCT_RANDOM_DATA to 1.
1965         (gl_STDLIB_H): Simplify.
1966
1967 2008-10-26  Simon Josefsson  <simon@josefsson.org>
1968
1969         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
1970         substitute HAVE_STRUCT_RANDOM_DATA.
1971         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
1972         random_data.
1973         * modules/stdlib (Makefile.am): Substitute
1974         HAVE_STRUCT_RANDOM_DATA.
1975
1976 2008-10-26  Simon Josefsson  <simon@josefsson.org>
1977
1978         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
1979         * doc/gnulib-intro.texi (Copyright): Likewise.
1980
1981 2008-10-26  Simon Josefsson  <simon@josefsson.org>
1982
1983         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
1984         findings.
1985
1986 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
1987             Bruno Haible  <bruno@clisp.org>
1988
1989         * lib/unistd.in.h: Include <winsock2.h>.
1990         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
1991         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
1992         Provide dummy declarations.
1993         (gethostname): Override.
1994         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
1995         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
1996         gl_PREREQ_SYS_H_WINSOCK2.
1997         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
1998         * doc/posix-functions/gethostname.texi: More details.
1999
2000 2008-10-25  Bruno Haible  <bruno@clisp.org>
2001
2002         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
2003         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
2004         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
2005
2006         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
2007         here ...
2008         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
2009         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
2010         gl_UNISTD_H_DEFAULTS.
2011
2012 2008-10-25  Eric Blake  <ebb9@byu.net>
2013
2014         signbit: avoid spurious compiler failure
2015         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
2016         declarations inside function.
2017
2018 2008-10-24  Simon Josefsson  <simon@josefsson.org>
2019             Bruno Haible  <bruno@clisp.org>
2020
2021         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
2022         * modules/random_r (Depends-on): Add stdint.
2023
2024 2008-10-24  Bruno Haible  <bruno@clisp.org>
2025
2026         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
2027         Eggert.
2028         * modules/strerror (License): Likewise.
2029
2030 2008-10-24  Jim Meyering  <meyering@redhat.com>
2031
2032         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
2033         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
2034
2035 2008-10-24  Eric Blake  <ebb9@byu.net>
2036
2037         getgroups: fix compilation when getgroups is available
2038         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
2039         but with <config.h> override of getgroups disabled.
2040
2041 2008-10-24  Simon Josefsson  <simon@josefsson.org>
2042
2043         * doc/gnulib.texi (Header files): Add note about C++ problems.
2044         Explained by Bruno Haible <bruno@clisp.org>.
2045
2046 2008-10-23  Bruno Haible  <bruno@clisp.org>
2047
2048         Define a dummy SA_NODEFER macro on Interix.
2049         * lib/signal.in.h (SA_NODEFER): Define fallback.
2050         Reported by Aleksey Cheusov <cheusov@tut.by> via
2051         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
2052
2053 2008-10-23  Bruno Haible  <bruno@clisp.org>
2054
2055         * modules/freadahead (License): Change to LGPLv2+.
2056         Suggested by Simon Josefsson.
2057
2058 2008-10-23  Jim Meyering  <meyering@redhat.com>
2059
2060         random_r: new module
2061         * modules/random_r: New file.
2062         * m4/random_r.m4: New file.
2063         * lib/random_r.c: New file, from glibc.
2064         * modules/random_r-tests: New file.
2065         * tests/test-random_r.c: New file.
2066         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
2067          Declare.
2068         (RAND_MAX): Define.
2069         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
2070         * modules/stdlib: Substitute them, too.
2071         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
2072         * doc/glibc-functions/initstate_r.texi: Mention the new module.
2073         * doc/glibc-functions/random_r.texi: Likewise.
2074         * doc/glibc-functions/setstate_r.texi: Likewise.
2075         * doc/glibc-functions/srandom_r.texi: Likewise.
2076         * config/srclist.txt: Mention it.
2077
2078 2008-10-23  David Lutterkort  <lutter@redhat.com>
2079
2080         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
2081         link requirement
2082
2083 2008-10-23  Jim Meyering  <meyering@redhat.com>
2084
2085         selinux-h: mark parameters of stub functions as intentionally unused
2086         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
2087         * lib/se-context.in.h: Likewise.
2088
2089 2008-10-22  Simon Josefsson  <simon@josefsson.org>
2090
2091         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
2092
2093 2008-10-22  Simon Josefsson  <simon@josefsson.org>
2094
2095         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
2096
2097 2008-10-22  Eric Blake  <ebb9@byu.net>
2098
2099         glthread/thread: avoid compiler warning
2100         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
2101         Add unreachable abort to silence compiler.
2102
2103 2008-10-22  Eric Blake  <ebb9@byu.net>
2104
2105         netdb: also supply struct addrinfo for cygwin 1.5.x
2106         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
2107         older cygwin.
2108         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
2109         cygwin.
2110         * doc/posix-headers/netdb.texi (netdb.h): Document this.
2111
2112 2008-10-22  Bruno Haible  <bruno@clisp.org>
2113
2114         * users.txt: Update entry about pspp.
2115
2116 2008-10-21  Bruno Haible  <bruno@clisp.org>
2117
2118         Simplification.
2119         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
2120         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
2121
2122         Simplification.
2123         * lib/ioctl.c (ioctl): Don't undefine.
2124         * lib/socket.c (socket): Don't undefine.
2125
2126         Remove unused module indicator macros.
2127         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
2128         GNULIB_$1 as a C macro.
2129
2130         * doc/posix-functions/close.texi: Undo last change.
2131         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
2132         Windows platforms.
2133
2134 2008-10-21  Bruno Haible  <bruno@clisp.org>
2135
2136         Add gethostname() declaration to <unistd.h>.
2137         * lib/unistd.in.h (gethostname): New declaration.
2138         * lib/gethostname.c: Include <unistd.h>.
2139         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
2140         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
2141         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
2142         and HAVE_GETHOSTNAME.
2143         * modules/gethostname (Depends-on): Add unistd.
2144         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
2145         (Include): Specify <unistd.h>.
2146         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
2147         HAVE_GETHOSTNAME.
2148         * tests/test-gethostname.c: Include <unistd.h> first.
2149
2150 2008-10-21  Bruno Haible  <bruno@clisp.org>
2151
2152         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
2153         * modules/select-tests (Depends-on): Likewise.
2154         Reported by Simon Josefsson.
2155
2156 2008-10-21  Simon Josefsson  <simon@josefsson.org>
2157
2158         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
2159         * lib/accept.c: New file, based on winsock.c.
2160         * lib/bind.c: New file, based on winsock.c.
2161         * lib/connect.c: New file, based on winsock.c.
2162         * lib/getpeername.c: New file, based on winsock.c.
2163         * lib/getsockname.c: New file, based on winsock.c.
2164         * lib/getsockopt.c: New file, based on winsock.c.
2165         * lib/ioctl.c: New file, based on winsock.c.
2166         * lib/listen.c: New file, based on winsock.c.
2167         * lib/recv.c: New file, based on winsock.c.
2168         * lib/recvfrom.c: New file, based on winsock.c.
2169         * lib/send.c: New file, based on winsock.c.
2170         * lib/sendto.c: New file, based on winsock.c.
2171         * lib/setsockopt.c: New file, based on winsock.c.
2172         * lib/shutdown.c: New file, based on winsock.c.
2173         * lib/socket.c: New file, based on winsock.c.
2174         * lib/w32sock.h: New file, based on winsock.c.
2175         * lib/winsock.c: Remove file.
2176         * modules/accept: Likewise.
2177         * modules/bind: Likewise.
2178         * modules/connect: Likewise.
2179         * modules/getpeername: Likewise.
2180         * modules/getsockname: Likewise.
2181         * modules/getsockopt: Likewise.
2182         * modules/ioctl: Likewise.
2183         * modules/listen: Likewise.
2184         * modules/recv: Likewise.
2185         * modules/recvfrom: Likewise.
2186         * modules/send: Likewise.
2187         * modules/sendto: Likewise.
2188         * modules/setsockopt: Likewise.
2189         * modules/shutdown: Likewise.
2190         * modules/socket: Use socket.c instead of winsock.c.
2191         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
2192         * doc/posix-functions/accept.texi: Doc fix.
2193         * doc/posix-functions/bind.texi: Doc fix.
2194         * doc/posix-functions/close.texi: Doc fix.
2195         * doc/posix-functions/connect.texi: Doc fix.
2196         * doc/posix-functions/getpeername.texi: Doc fix.
2197         * doc/posix-functions/getsockname.texi: Doc fix.
2198         * doc/posix-functions/getsockopt.texi: Doc fix.
2199         * doc/posix-functions/ioctl.texi: Doc fix.
2200         * doc/posix-functions/listen.texi: Doc fix.
2201         * doc/posix-functions/recv.texi: Doc fix.
2202         * doc/posix-functions/recvfrom.texi: Doc fix.
2203         * doc/posix-functions/send.texi: Doc fix.
2204         * doc/posix-functions/sendto.texi: Doc fix.
2205         * doc/posix-functions/setsockopt.texi: Doc fix.
2206         * doc/posix-functions/shutdown.texi: Doc fix.
2207         * doc/posix-functions/socket.texi: Doc fix.
2208
2209 2008-10-20  Bruno Haible  <bruno@clisp.org>
2210
2211         Take into account the role of SIGABRT_COMPAT on Windows 2008.
2212         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
2213         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
2214         as an alias for SIGABRT.
2215         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
2216         (sigaction): Map it to SIGABRT.
2217         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
2218
2219 2008-10-20  Bruno Haible  <bruno@clisp.org>
2220
2221         * lib/fts.c: Don't include lstat.h.
2222         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
2223
2224         Move the lstat() declaration to <sys/stat.h>.
2225         * lib/lstat.h: Remove file.
2226         * lib/sys_stat.in.h: Add special invocation convention.
2227         (lstat): New declaration.
2228         * lib/lstat.c (orig_lstat): New function.
2229         (rpl_lstat): Use orig_lstat instead of lstat.
2230         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
2231         AC_C_INLINE. Set REPLACE_LSTAT.
2232         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
2233         and REPLACE_LSTAT.
2234         * modules/lstat (Files): Remove lib/lstat.h.
2235         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
2236         (Include): Specify <sys/stat.h> instead of lstat.h.
2237         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
2238         REPLACE_LSTAT.
2239         * NEWS: Mention the change.
2240
2241 2008-10-20  Bruno Haible  <bruno@clisp.org>
2242
2243         * modules/posix_spawn-tests: New file.
2244         * tests/test-posix_spawn3.c: New file.
2245
2246 2008-10-20  Bruno Haible  <bruno@clisp.org>
2247
2248         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
2249         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
2250         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
2251         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
2252         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
2253
2254 2008-10-20  Bruno Haible  <bruno@clisp.org>
2255
2256         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
2257         of posix_spawn on AIX 5.3.
2258
2259 2008-10-20  Bruno Haible  <bruno@clisp.org>
2260
2261         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
2262
2263 2008-10-20  Bruno Haible  <bruno@clisp.org>
2264
2265         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
2266         of AC_LANG_PROGRAM.
2267
2268 2008-10-20  Simon Josefsson  <simon@josefsson.org>
2269
2270         * lib/netdb.in.h: Don't define GNU specific constants until they
2271         are supported or needed.  Reported by Bruno Haible
2272         <bruno@clisp.org>.
2273
2274 2008-10-20  Simon Josefsson  <simon@josefsson.org>
2275
2276         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
2277
2278 2008-10-20  Simon Josefsson  <simon@josefsson.org>
2279
2280         * lib/getaddrinfo.h: Remove file.
2281         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
2282         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
2283         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
2284         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
2285         * modules/netdb: Substitute GNULIB_GETADDRINFO.
2286         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
2287         * tests/test-getaddrinfo.c: Likewise.
2288         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
2289         * NEWS: Mention change.
2290
2291 2008-10-19  Bruno Haible  <bruno@clisp.org>
2292
2293         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
2294
2295 2008-10-19  Bruno Haible  <bruno@clisp.org>
2296
2297         * lib/wait-process.c: Include simply <sys/wait.h>.
2298         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
2299         WIFSTOPPED): Remove fallback definitions.
2300         * modules/wait-process (Depends-on): Add sys_wait.
2301
2302         New module 'sys_wait'.
2303         * modules/sys_wait: New file.
2304         * lib/sys_wait.in.h: New file, partially copied from
2305         lib/wait-process.c.
2306         * m4/sys_wait_h.m4: New file.
2307         * doc/posix-headers/sys_wait.texi: Mention the new module.
2308
2309 2008-10-19  Bruno Haible  <bruno@clisp.org>
2310
2311         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
2312
2313 2008-10-19  Bruno Haible  <bruno@clisp.org>
2314
2315         Assume that waitpid() fills an 'int' status, not a 'union wait'.
2316         * lib/wait-process.c (WAIT_T): Remove type.
2317         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
2318         (wait_subprocess): Update.
2319
2320 2008-10-19  Bruno Haible  <bruno@clisp.org>
2321
2322         New module 'atoll'.
2323         * modules/atoll: New file.
2324         * lib/stdlib.in.h (atoll): New declaration.
2325         * lib/atoll.c: New file, from glibc with modifications.
2326         * m4/atoll.m4: New file.
2327         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
2328         HAVE_ATOLL.
2329         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
2330         * doc/posix-functions/atoll.texi: Mention the new module.
2331
2332 2008-10-19  Bruno Haible  <bruno@clisp.org>
2333
2334         Add strtoull() declaration to <stdlib.h>.
2335         * lib/stdlib.in.h (strtoull): New declaration.
2336         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
2337         Set HAVE_STRTOULL.
2338         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
2339         HAVE_STRTOULL.
2340         * modules/strtoull (Depends-on): Add stdlib.
2341         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
2342         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
2343         HAVE_STRTOULL.
2344
2345 2008-10-19  Bruno Haible  <bruno@clisp.org>
2346
2347         Add strtoll() declaration to <stdlib.h>.
2348         * lib/stdlib.in.h (strtoll): New declaration.
2349         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
2350         Set HAVE_STRTOLL.
2351         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
2352         HAVE_STRTOLL.
2353         * modules/strtoll (Depends-on): Add stdlib.
2354         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
2355         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
2356
2357 2008-10-19  Bruno Haible  <bruno@clisp.org>
2358
2359         * modules/bcopy (Depends-on): Add strings.
2360         (Include): Specify <strings.h>.
2361
2362 2008-10-19  Bruno Haible  <bruno@clisp.org>
2363
2364         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
2365
2366 2008-10-19  Bruno Haible  <bruno@clisp.org>
2367
2368         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
2369         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
2370         mingw.
2371
2372 2008-10-19  Bruno Haible  <bruno@clisp.org>
2373
2374         * lib/atanl.c: Don't include isnanl.h.
2375         * lib/cosl.c: Likewise.
2376         * lib/ldexpl.c: Likewise.
2377         * lib/logl.c: Likewise.
2378         * lib/sinl.c: Likewise.
2379         * lib/sqrtl.c: Likewise.
2380         * lib/tanl.c: Likewise.
2381
2382         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
2383         * lib/isnanf.h: Remove file.
2384         * lib/isnand.h: Remove file.
2385         * lib/isnanl.h: Remove file.
2386         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
2387         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
2388         macros.
2389         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
2390         HAVE_ISNANF, don't define it as a C macro.
2391         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
2392         HAVE_ISNAND, don't define it as a C macro.
2393         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
2394         HAVE_ISNANL, don't define it as a C macro.
2395         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
2396         HAVE_ISNAN[FDL].
2397         * modules/isnanf (Files): Remove lib/isnanf.h.
2398         (Depends-on): Add math.
2399         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
2400         (Include): Specify <math.h> instead of isnanf.h.
2401         * modules/isnand (Files): Remove lib/isnand.h.
2402         (Depends-on): Add math.
2403         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
2404         (Include): Specify <math.h> instead of isnand.h.
2405         * modules/isnanl (Files): Remove lib/isnanl.h.
2406         (Depends-on): Add math.
2407         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
2408         (Include): Specify <math.h> instead of isnanl.h.
2409         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
2410         HAVE_ISNAN[FDL].
2411         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
2412         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
2413         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
2414         * NEWS: Mention the change.
2415
2416 2008-10-18  Bruno Haible  <bruno@clisp.org>
2417
2418         Add getusershell(), setusershell(), endusershell() declarations to
2419         <unistd.h>.
2420         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
2421         declarations.
2422         * lib/getusershell.c: Include unistd.h.
2423         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
2424         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
2425         HAVE_GETUSERSHELL.
2426         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
2427         and HAVE_GETUSERSHELL.
2428         * modules/getusershell (Depends-on): Add unistd, extensions.
2429         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
2430         (Include): Specify <unistd.h>.
2431         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
2432         HAVE_GETUSERSHELL.
2433
2434 2008-10-18  Bruno Haible  <bruno@clisp.org>
2435
2436         Add a getloadavg() declaration to <stdlib.h>.
2437         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
2438         getloadavg declaration.
2439         (getloadavg): New declaration.
2440         * lib/getloadavg.c: Include <stdlib.h> first.
2441         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
2442         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
2443         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
2444         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
2445         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
2446         * modules/getloadavg (Depends-on): Add stdlib, extensions.
2447         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
2448         (Include): Specify <stdlib.h>.
2449         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
2450         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
2451
2452 2008-10-18  Bruno Haible  <bruno@clisp.org>
2453
2454         * lib/dirchownmod.c: Don't include lchmod.h.
2455
2456         Move the lchmod() declaration to <sys/stat.h>.
2457         * lib/lchmod.h: Remove file.
2458         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
2459         (lchmod): New declaration, moved here from lib/lchown.h.
2460         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
2461         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
2462         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
2463         and HAVE_LCHMOD.
2464         * modules/lchmod (Files): Remove lib/lchmod.h.
2465         (Depends-on): Add sys_stat, extensions.
2466         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
2467         (Include): Specify <sys/stat.h> instead of lchmod.h.
2468         * modules/sys_stat (Depends-on): Add link-warning.
2469         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
2470         definition of GL_LINK_WARNING.
2471         * NEWS: Mention the change.
2472
2473 2008-10-18  Bruno Haible  <bruno@clisp.org>
2474
2475         * lib/fchdir.c: Don't include dirfd.h.
2476         * lib/fts.c: Likewise.
2477         * lib/getcwd.c: Likewise.
2478         * lib/glob.c: Likewise.
2479
2480         Move the dirfd() declaration to <dirent.h>.
2481         * lib/dirfd.h: Remove file.
2482         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
2483         (dirfd): New declaration.
2484         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
2485         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
2486         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
2487         HAVE_DECL_DIRFD.
2488         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
2489         HAVE_DECL_DIRFD.
2490         * modules/dirfd (Files): Remove lib/dirfd.h.
2491         (Depends-on): Add dirent, extensions.
2492         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
2493         (Include): Specify <dirent.h> instead of dirfd.h.
2494         * modules/dirent (Depends-on): Add link-warning.
2495         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
2496         definition of GL_LINK_WARNING.
2497         * NEWS: Mention the change.
2498
2499 2008-10-18  Bruno Haible  <bruno@clisp.org>
2500
2501         Move the euidaccess() declaration to <unistd.h>.
2502         * lib/euidaccess.h: Remove file.
2503         * lib/unistd.in.h (euidaccess): New declaration.
2504         * lib/euidaccess.c: Don't include euidaccess.h.
2505         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
2506         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
2507         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
2508         and HAVE_EUIDACCESS.
2509         * modules/euidaccess (Files): Remove lib/euidaccess.h.
2510         (Depends-on): Add unistd.
2511         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
2512         (Include): Specify <unistd.h> instead of euidaccess.h.
2513         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
2514         HAVE_EUIDACCESS.
2515         * NEWS: Mention the change.
2516
2517 2008-10-18  Bruno Haible  <bruno@clisp.org>
2518
2519         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
2520
2521         Move the getdomainname() declaration to <unistd.h>.
2522         * lib/getdomainname.h: Remove file.
2523         * lib/unistd.in.h (getdomainname): New declaration.
2524         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
2525         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
2526         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
2527         HAVE_GETDOMAINNAME.
2528         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
2529         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
2530         * modules/getdomainname (Files): Remove lib/getdomainname.h.
2531         (Depends-on): Add unistd, extensions.
2532         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
2533         (Includes): Specify <unistd.h> instead of getdomainname.h.
2534         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
2535         HAVE_GETDOMAINNAME.
2536         * NEWS: Mention the change.
2537
2538 2008-10-18  Bruno Haible  <bruno@clisp.org>
2539
2540         * modules/dirent: New file.
2541         * m4/dirent_h.m4: New file.
2542         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
2543         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
2544         * modules/fchdir (Files): Remove lib/dirent.in.h.
2545         (Depends-on): Add dirent.
2546         (Makefile.am): Move rules to modules/dirent.
2547         * doc/posix-headers/dirent.texi: Mention the new module.
2548
2549 2008-10-18  Bruno Haible  <bruno@clisp.org>
2550
2551         Avoid -Wunused-parameter warnings in public gnulib header files.
2552         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
2553         macro.
2554         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
2555
2556 2008-10-18  Bruno Haible  <bruno@clisp.org>
2557
2558         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
2559         * doc/glibc-functions/error.texi: Mention the module 'error'.
2560         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
2561         * doc/glibc-functions/getdomainname.texi: Mention the module
2562         'getdomainname'.
2563         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
2564         * doc/glibc-functions/getpagesize.texi: Mention the module
2565         'getpagesize'.
2566         * doc/glibc-functions/getusershell.texi: Mention the module
2567         'getusershell'.
2568         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
2569         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
2570         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
2571         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
2572         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
2573         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
2574         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
2575         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
2576         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
2577         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
2578         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
2579         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
2580         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
2581         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
2582
2583 2008-10-17  Bruno Haible  <bruno@clisp.org>
2584
2585         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
2586         HP-UX and IRIX, use -0.0L.
2587         * tests/test-ceill.c (minus_zero): Likewise.
2588         * tests/test-floorl.c (minus_zero): Likewise.
2589         * tests/test-frexpl.c (minus_zero): Likewise.
2590         * tests/test-isnan.c (minus_zerol): Likewise.
2591         * tests/test-isnanl.h (minus_zero): Likewise.
2592         * tests/test-ldexpl.c (minus_zero): Likewise.
2593         * tests/test-roundl.c (minus_zero): Likewise.
2594         * tests/test-signbit.c (minus_zerol): Likewise.
2595         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
2596         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
2597         * tests/test-truncl.c (minus_zero): Likewise.
2598         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
2599         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
2600         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
2601         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
2602
2603 2008-10-17  Bruno Haible  <bruno@clisp.org>
2604
2605         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
2606         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
2607         that it gets activated only for gcc >= 3.0.
2608         * lib/dirent.in.h: Likewise.
2609         * lib/errno.in.h: Likewise.
2610         * lib/fcntl.in.h: Likewise.
2611         * lib/float.in.h: Likewise.
2612         * lib/iconv.in.h: Likewise.
2613         * lib/inttypes.in.h: Likewise.
2614         * lib/locale.in.h: Likewise.
2615         * lib/math.in.h: Likewise.
2616         * lib/netdb.in.h: Likewise.
2617         * lib/netinet_in.in.h: Likewise.
2618         * lib/search.in.h: Likewise.
2619         * lib/signal.in.h: Likewise.
2620         * lib/spawn.in.h: Likewise.
2621         * lib/stdarg.in.h: Likewise.
2622         * lib/stdint.in.h: Likewise.
2623         * lib/stdio.in.h: Likewise.
2624         * lib/stdlib.in.h: Likewise.
2625         * lib/string.in.h: Likewise.
2626         * lib/strings.in.h: Likewise.
2627         * lib/sys_file.in.h: Likewise.
2628         * lib/sys_ioctl.in.h: Likewise.
2629         * lib/sys_select.in.h: Likewise.
2630         * lib/sys_socket.in.h: Likewise.
2631         * lib/sys_stat.in.h: Likewise.
2632         * lib/sys_time.in.h: Likewise.
2633         * lib/sysexits.in.h: Likewise.
2634         * lib/time.in.h: Likewise.
2635         * lib/unistd.in.h: Likewise.
2636         * lib/wchar.in.h: Likewise.
2637         * lib/wctype.in.h: Likewise.
2638         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
2639
2640 2008-10-17  Jim Meyering  <meyering@redhat.com>
2641
2642         ignore-value: don't depend on inline module
2643         * modules/ignore-value (Depends-on): Remove 'inline'.
2644         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
2645         Suggestion from Bruno Haible.
2646
2647 2008-10-17  Bruno Haible  <bruno@clisp.org>
2648
2649         New implementation of condition variables for Win32.
2650         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
2651         (gl_linked_waitqueue_t): New type.
2652         (gl_cond_t): Use it.
2653         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
2654         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
2655         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
2656         (glthread_cond_init_func, glthread_cond_wait_func,
2657         glthread_cond_timedwait_func, glthread_cond_signal_func,
2658         glthread_cond_broadcast_func, glthread_cond_destroy_func):
2659         Reimplemented on the basis of gl_linked_waitqueue_t.
2660         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
2661         gl_waitqueue_t.
2662         (gl_rwlock_t): Update.
2663         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
2664
2665 2008-10-17  Simon Josefsson  <simon@josefsson.org>
2666
2667         * modules/recvfrom (Depends-on): Add dependency on getpeername.
2668         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
2669
2670 2008-10-17  Jim Meyering  <meyering@redhat.com>
2671
2672         ignore-value: new module
2673         * modules/ignore-value: New file.
2674         * lib/ignore-value.h: New file.
2675         * MODULES.html.sh (Compiler warning management): New section,
2676         just for this module.  More to come.
2677
2678 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
2679
2680         open-safer.c: avoid 'signed and unsigned in conditional...' warning
2681         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
2682         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
2683
2684 2008-10-16  Jim Meyering  <meyering@redhat.com>
2685
2686         openat-die.c: avoid 'no previous prototype' warning
2687         * lib/openat-die.c: Include "openat.h".
2688         Reported by Reuben Thomas <rrt@sc3d.org>.
2689
2690 2008-10-16  Simon Josefsson  <simon@josefsson.org>
2691
2692         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
2693         * lib/netdb.in.h: Fix typo.
2694         Reported by Bruno Haible  <bruno@clisp.org>
2695
2696         * lib/netdb.in.h: Include sys/socket.h for platforms without
2697         netdb.h, to get structures like hostent on MinGW.
2698         * modules/netdb (Depends-on): Add sys_socket.
2699
2700 2008-10-15  Simon Josefsson  <simon@josefsson.org>
2701
2702         * modules/netdb, modules/netdb-tests: New file.
2703         * m4/netdb_h.m4: New file.
2704         * lib/netdb.in.h: Add, currently just an empty file pending
2705         definitions.
2706         * tests/test-netdb.c: New file.
2707         * doc/posix-headers/netdb.texi: Mention that we replace it if
2708         needed.
2709         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
2710         netdb.
2711
2712 2008-10-15  Simon Josefsson  <simon@josefsson.org>
2713
2714         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
2715         with code.
2716
2717 2008-10-13  Bruno Haible  <bruno@clisp.org>
2718
2719         * lib/glthread/cond.c (glthread_cond_wait_func,
2720         glthread_cond_timedwait_func): Add a comment.
2721
2722 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
2723
2724         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
2725         * tests/test-select.c: Likewise,
2726
2727 2008-10-13  Bruno Haible  <bruno@clisp.org>
2728
2729         * lib/glthread/cond.c (glthread_cond_wait_func,
2730         glthread_cond_timedwait_func): Fix variable name.
2731         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
2732
2733 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
2734
2735         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
2736         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
2737         struct sockaddr.sa_len.
2738         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
2739
2740 2008-10-13  Simon Josefsson  <simon@josefsson.org>
2741
2742         * build-aux/pmccabe2html: Add css and css_url parameters.
2743
2744 2008-10-12  Bruno Haible  <bruno@clisp.org>
2745
2746         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
2747         calling aclx_get.
2748         Reported by Rainer Tammer <tammer@tammer.net>.
2749
2750 2008-10-12  Bruno Haible  <bruno@clisp.org>
2751
2752         Use msvcrt aware primitives for creation/termination of Win32 threads.
2753         * lib/glthread/thread.c: Include <process.h>.
2754         (glthread_create_func): Use _beginthreadex instead of CreateThread.
2755         (wrapper_func): Update signature.
2756         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
2757
2758 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
2759             Bruno Haible  <bruno@clisp.org>
2760
2761         Provide a Win32 implementation of the 'cond' module.
2762         * lib/glthread/cond.h [USE_WIN32]: New implementation.
2763         * lib/glthread/cond.c (glthread_cond_init_func,
2764         glthread_cond_wait_func, glthread_cond_timedwait_func,
2765         glthread_cond_signal_func, glthread_cond_broadcast_func,
2766         glthread_cond_destroy_func) [USE_WIN32]: New functions.
2767         * modules/cond (Dependencies): Add gettimeofday.
2768
2769 2008-10-11  Bruno Haible  <bruno@clisp.org>
2770
2771         Make sleep work on older versions of mingw.
2772         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
2773         only whether it exists.
2774         * doc/posix-functions/sleep.texi: Mention the problem with older
2775         versions of mingw.
2776
2777 2008-10-11  Bruno Haible  <bruno@clisp.org>
2778
2779         New module 'shutdown'.
2780         * modules/shutdown: New file.
2781         * lib/sys_socket.in.h (shutdown): New declaration.
2782         * lib/winsock.c (shutdown): New function.
2783         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
2784         GNULIB_SHUTDOWN.
2785         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
2786         * doc/posix-functions/shutdown.texi: Document the new module.
2787
2788 2008-10-11  Jim Meyering  <meyering@redhat.com>
2789
2790         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
2791
2792 2008-10-11  Bruno Haible  <bruno@clisp.org>
2793
2794         New module 'fclose'.
2795         * modules/fclose: New file.
2796         * lib/stdio.in.h (fclose): New declaration.
2797         * lib/fclose.c: New file.
2798         * m4/fclose.m4: New file.
2799         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
2800         REPLACE_FCLOSE.
2801         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
2802         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
2803         REPLACE_FCLOSE.
2804         * modules/close (Depends-on): fclose.
2805         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
2806
2807 2008-10-11  Bruno Haible  <bruno@clisp.org>
2808
2809         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
2810         set errno and don't call _close.
2811
2812 2008-10-10  Bruno Haible  <bruno@clisp.org>
2813
2814         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
2815         ACL, not afterwards. Fixes test failure on Cygwin.
2816
2817 2008-10-09  Ben Pfaff  <blp@gnu.org>
2818
2819         * build-aux/announce-gen: Fix gnulib version related part of usage
2820         message.  Die with a useful error message if no tarballs are
2821         found.
2822
2823 2008-10-10  Jim Meyering  <meyering@redhat.com>
2824
2825         bootstrap: use git's --depth=N option only if it's supported
2826         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
2827         recognize the --depth option.  Reported by Pádraig Brady.
2828
2829 2008-10-09  Bruno Haible  <bruno@clisp.org>
2830
2831         New module 'ioctl'.
2832         * modules/ioctl: New file.
2833         * lib/sys_socket.in.h (ioctl): Remove declaration.
2834         * lib/winsock.c: Include <sys/ioctl.h>.
2835         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
2836         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
2837         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
2838         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
2839         * doc/posix-functions/ioctl.texi: Mention the new module.
2840
2841 2008-10-09  Bruno Haible  <bruno@clisp.org>
2842
2843         New module 'sys_ioctl'.
2844         * lib/sys_ioctl.in.h: New file.
2845         * m4/sys_ioctl_h.m4: New file.
2846         * modules/sys_ioctl: New file.
2847         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
2848
2849 2008-10-09  Bruno Haible  <bruno@clisp.org>
2850
2851         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
2852         * lib/winsock.c: Include <stdarg.h>.
2853         (rpl_ioctl): Change to second argument 'int' and then varargs.
2854
2855 2008-10-09  Bruno Haible  <bruno@clisp.org>
2856
2857         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
2858         when the sys_socket module is present and the system has <winsock2.h>.
2859
2860 2008-10-09  Bruno Haible  <bruno@clisp.org>
2861
2862         * doc/posix-functions/close.texi: Mention module 'close' instead of
2863         module 'sys_socket'.
2864
2865 2008-10-09  Bruno Haible  <bruno@clisp.org>
2866
2867         * doc/glibc-headers/sys_ioctl.texi: New file.
2868         * doc/gnulib.texi: Include it.
2869
2870 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
2871             Bruno Haible  <bruno@clisp.org>
2872
2873         Combine the two replacements of 'close'.
2874         * lib/sys_socket.in.h (close): Define to a reminder to include
2875         <unistd.h>.
2876         (_gl_close_fd_maybe_socket): New declaration.
2877         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
2878         * lib/winsock.c (close): Remove undefinition.
2879         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
2880         needed for the gnulib module 'close'.
2881         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
2882         define to an error symbol or to a warning, if suitable.
2883         * lib/close.c: Include <sys/socket.h>.
2884         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
2885         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
2886         UNISTD_H_HAVE_WINSOCK2_H.
2887         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
2888         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
2889         UNISTD_H_HAVE_WINSOCK2_H.
2890         * modules/sys_socket (Files): Add m4/unistd_h.m4.
2891         (configure.ac): Set a module indicator.
2892         (Makefile.am): Substitute GNULIB_CLOSE.
2893         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
2894         * modules/poll-tests (Depends-on): Add close.
2895         * modules/select-tests (Depends-on): Likewise.
2896
2897 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
2898             Bruno Haible  <bruno@clisp.org>
2899
2900         New module 'close'.
2901         * modules/close: New file.
2902         * lib/unistd.in.h (close): Move declaration out of the
2903         FCHDIR_REPLACEMENT scope.
2904         (_gl_unregister_fd): New declaration.
2905         * lib/close.c: New file.
2906         * lib/fchdir.c (rpl_close): Remove function.
2907         * m4/close.m4: New file.
2908         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
2909         close.
2910         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
2911         REPLACE_CLOSE.
2912         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
2913         REPLACE_CLOSE.
2914         * modules/fchdir (Depends-on): Add close.
2915
2916 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
2917             Bruno Haible  <bruno@clisp.org>
2918
2919         * lib/fcntl.in.h (open): Simplify conditionals.
2920         (_gl_register_fd): New declaration.
2921         * lib/fchdir.c (rpl_open): Remove function.
2922         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
2923         also.
2924         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
2925         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
2926         open.
2927
2928 2008-10-09  Jim Meyering  <meyering@redhat.com>
2929
2930         GNUmakefile: use the more name-space-friendly "_version"
2931         * top/GNUmakefile (_dummy): Update.
2932         (_version): Rename from "version".
2933
2934 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
2935             Bruno Haible  <bruno@clisp.org>
2936
2937         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
2938         rpl_close.
2939         (_gl_register_fd): New function, extracted from rpl_open.
2940         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
2941         (rpl_open, rpl_opendir): Use _gl_register_fd.
2942
2943 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
2944
2945         Fix organization of 'open' replacement.
2946         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
2947         (gl_FUNC_OPEN): Use it.
2948         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
2949
2950 2008-10-08  Bruno Haible  <bruno@clisp.org>
2951
2952         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
2953
2954 2008-10-08  Simon Josefsson  <simon@josefsson.org>
2955
2956         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
2957         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
2958         listen).
2959
2960 2008-10-08  Eric Blake  <ebb9@byu.net>
2961
2962         GNUmakefile: add 'make version' target
2963         * top/GNUmakefile (_curr-ver): Split version update rules...
2964         (version): ...into a target.
2965
2966 2008-10-07  Bruno Haible  <bruno@clisp.org>
2967
2968         Use a more portable replacement expression for -0.0L.
2969         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
2970         instead of -0.0L. Fix m4 quotation.
2971
2972         * tests/test-signbit.c: Include <float.h>.
2973         (minus_zero): New variable.
2974         (test_signbitl): Use minus_zero instead of -zero.
2975         * modules/signbit-tests (Depends-on): Add float.
2976
2977         * tests/test-ceill.c: Include <float.h>.
2978         (zero): Remove variable.
2979         (minus_zero): New variable.
2980         (main): Use minus_zero instead of -zero.
2981         * modules/ceill-tests (Depends-on): Add float.
2982
2983         * tests/test-floorl.c: Include <float.h>.
2984         (zero): Remove variable.
2985         (minus_zero): New variable.
2986         (main): Use minus_zero instead of -zero.
2987         * modules/floorl-tests (Depends-on): Add float.
2988
2989         * tests/test-roundl.c: Include <float.h>.
2990         (zero): Remove variable.
2991         (minus_zero): New variable.
2992         (main): Use minus_zero instead of -zero.
2993         * modules/roundl-tests (Depends-on): Add float.
2994
2995         * tests/test-truncl.c: Include <float.h>.
2996         (zero): Remove variable.
2997         (minus_zero): New variable.
2998         (main): Use minus_zero instead of -zero.
2999         * modules/truncl-tests (Depends-on): Add float.
3000
3001         * tests/test-frexpl.c (zero): Remove variable.
3002         (minus_zero): New variable.
3003         (main): Use minus_zero instead of -zero.
3004         * modules/frexpl-tests (Depends-on): Add float.
3005
3006         * tests/test-isnan.c (zerol): Remove variable.
3007         (minus_zerol): New variable.
3008         (test_long_double): Use minus_zerol instead of -zerol.
3009         * modules/isnan-tests (Depends-on): Add float.
3010
3011         * tests/test-isnanl.h (zero): Remove variable.
3012         (minus_zero): New variable.
3013         (main): Use minus_zero instead of -zero.
3014         * modules/isnanl-nolibm-tests (Depends-on): Add float.
3015         * modules/isnanl-tests (Depends-on): Add float.
3016
3017         * tests/test-ldexpl.c (zero): Remove variable.
3018         (minus_zero): New variable.
3019         (main): Use minus_zero instead of -zero.
3020         * modules/ldexpl-tests (Depends-on): Add float.
3021
3022         * tests/test-snprintf-posix.h (zerol): Remove variable.
3023         (minus_zerol): New variable.
3024         (test_function): Use minus_zerol instead of -zerol.
3025         * modules/snprintf-posix-tests (Depends-on): Add float.
3026         * modules/vsnprintf-posix-tests (Depends-on): Add float.
3027
3028         * tests/test-sprintf-posix.h (zerol): Remove variable.
3029         (minus_zerol): New variable.
3030         (test_function): Use minus_zerol instead of -zerol.
3031         * modules/sprintf-posix-tests (Depends-on): Add float.
3032         * modules/vsprintf-posix-tests (Depends-on): Add float.
3033
3034         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
3035         (minus_zerol): New variable.
3036         (test_function): Use minus_zerol instead of -zerol.
3037         * modules/vasnprintf-posix-tests (Depends-on): Add float.
3038
3039         * tests/test-vasprintf-posix.c (zerol): Remove variable.
3040         (minus_zerol): New variable.
3041         (test_function): Use minus_zerol instead of -zerol.
3042         * modules/vasprintf-posix-tests (Depends-on): Add float.
3043
3044 2008-10-07  Simon Josefsson  <simon@josefsson.org>
3045
3046         * MODULES.html.sh (Support for building documentation): Mention
3047         pmccabe2html.  Sort entries.
3048
3049         Add pmccabe2html module, from gnupdf.
3050         * build-aux/pmccabe.css: New file.
3051         * build-aux/pmccabe2html: New file.
3052         * m4/pmccabe2html.m4: New file.
3053         * modules/pmccabe2html: New file.
3054
3055 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
3056
3057         flock: new module
3058         * MODULES.html.sh: Add to list of modules.
3059         * lib/flock.c: flock implementation for Windows and Unix systems
3060         which have fcntl.
3061         * doc/glibc-functions/flock.texi: Update documentation.
3062         * lib/sys_file.in.h: <sys/file.h> header file.
3063         * m4/flock.m4: M4 macros.
3064         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
3065         * modules/flock: flock module.
3066         * modules/flock-tests: flock tests module.
3067         * modules/sys_file: sys/file.h module.
3068         * tests/test-flock.c: test suite for flock.
3069
3070 2008-10-06  Jim Meyering  <meyering@redhat.com>
3071
3072         bootstrap: check for LT_INIT more portably still ;-)
3073         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
3074         Spotted by Bruno Haible.
3075
3076 2008-10-06  Eric Blake  <ebb9@byu.net>
3077
3078         test-signbit: avoid tripping Irix cc bug on -0.0L
3079         * tests/test-signbit.c (minus_zerol): Delete, and replace with
3080         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
3081         entire testsuite consistent and avoids an Irix 6.2 bug.
3082
3083 2008-10-05  Bruno Haible  <bruno@clisp.org>
3084             Jim Meyering  <jim@meyering.net>
3085
3086         Add an option for ignoring EPIPE during close_stdout.
3087         * lib/closeout.h: Include <stdbool.h>.
3088         (close_stdout_set_ignore_EPIPE): New declaration.
3089         * lib/closeout.c: Include <stdbool.h>.
3090         (ignore_EPIPE): New variable.
3091         (close_stdout_set_ignore_EPIPE): New function.
3092         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
3093         * lib/close-stream.c (close_stream): Mention the possible EPIPE
3094         failure.
3095         * modules/closeout (Depends-on): Add stdbool.
3096
3097 2008-10-05  Bruno Haible  <bruno@clisp.org>
3098
3099         * modules/accept: New file.
3100         * modules/bind: New file.
3101         * modules/connect: New file.
3102         * modules/getpeername: New file.
3103         * modules/getsockname: New file.
3104         * modules/getsockopt: New file.
3105         * modules/listen: New file.
3106         * modules/recv: New file.
3107         * modules/recvfrom: New file.
3108         * modules/send: New file.
3109         * modules/sendto: New file.
3110         * modules/setsockopt: New file.
3111         * modules/socket: New file.
3112         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
3113         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
3114         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
3115         the particular module is requested. Add a link warning when the
3116         particular module is not requested.
3117         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
3118         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
3119         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
3120         the particular module is requested.
3121         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
3122         gl_SYS_SOCKET_H_DEFAULTS): New macros.
3123         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
3124         * modules/sys_socket (Depends-on): Add link-warning.
3125         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
3126         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
3127         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
3128         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
3129         GL_LINK_WARNING.
3130         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
3131         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
3132         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
3133         * doc/posix-functions/getpeername.texi: Mention the new module
3134         'getpeername'.
3135         * doc/posix-functions/getsockname.texi: Mention the new module
3136         'getsockname'.
3137         * doc/posix-functions/getsockopt.texi: Mention the new module
3138         'getsockopt'.
3139         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
3140         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
3141         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
3142         * doc/posix-functions/send.texi: Mention the new module 'send'.
3143         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
3144         * doc/posix-functions/setsockopt.texi: Mention the new module
3145         'setsockopt'.
3146         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
3147         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
3148         listen, connect, accept.
3149         * modules/select-tests (Depends-on): Likewise.
3150
3151 2008-10-05  Bruno Haible  <bruno@clisp.org>
3152
3153         * lib/winsock.c (strerror): Remove unused #undef.
3154         (rpl_close): Remove unused local variable.
3155
3156         * modules/sys_socket (Depends-on); Add errno.
3157
3158 2008-10-05  Bruno Haible  <bruno@clisp.org>
3159
3160         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
3161         (select): Add a link warning when the 'select' module is not used.
3162         * modules/sys_select (Depends-on): Add link-warning.
3163         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
3164         Suggested by Paolo Bonzini.
3165
3166 2008-10-05  Jim Meyering  <meyering@redhat.com>
3167
3168         bootstrap: check for LT_INIT more portably
3169         * build-aux/bootstrap: Avoid using grep -E, since it's not
3170         portable enough.  Suggestion from Bruno Haible.
3171
3172 2008-10-05  Bruno Haible  <bruno@clisp.org>
3173
3174         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
3175         as being fixed by gnulib.
3176
3177 2008-10-05  Bruno Haible  <bruno@clisp.org>
3178
3179         * modules/select-tests: New file, mostly copied from
3180         modules/sys_select-tests.
3181         * tests/test-select.c: New file, mostly copied from
3182         tests/test-sys_select.c.
3183         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
3184         * modules/sys_select-tests (Depends-on): Remove all dependencies.
3185         (Makefile.am): Remove test_sys_select_LDADD.
3186
3187         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
3188         to an undefined symbol, for an error message.
3189         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
3190         (gl_SYS_SELECT_H_DEFAULTS): New macro.
3191         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
3192         winsock-select.c here.
3193         * modules/sys_select (Files): Remove lib/winsock-select.c.
3194         (Depends-on): Remove alloca.
3195         (Makefile.am): Substitute GNULIB_SELECT.
3196         * modules/select: New file.
3197         * doc/posix-functions/select.texi: Update.
3198
3199 2008-10-05  Bruno Haible  <bruno@clisp.org>
3200
3201         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
3202         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
3203         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
3204         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
3205         getdtablesize.
3206         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
3207         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
3208
3209 2008-10-05  Bruno Haible  <bruno@clisp.org>
3210
3211         * modules/getdtablesize-tests: New file.
3212         * tests/test-getdtablesize.c: New file.
3213
3214         New module 'getdtablesize'.
3215         * lib/unistd.in.h (getdtablesize): New declaration.
3216         * lib/getdtablesize.c: New file.
3217         * m4/getdtablesize.m4: New file.
3218         * modules/getdtablesize: New file.
3219         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3220         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
3221         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
3222         HAVE_GETDTABLESIZE.
3223         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
3224
3225 2008-10-05  Bruno Haible  <bruno@clisp.org>
3226
3227         * modules/sched (Makefile.am): Fix typo.
3228         Reported by Simon Josefsson.
3229
3230 2008-10-05  Jim Meyering  <meyering@redhat.com>
3231
3232         bootstrap: check for LT_INIT, too
3233         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
3234         are deprecated.  Suggestion from Ralf Wildenhues.
3235
3236 2008-10-05  Bruno Haible  <bruno@clisp.org>
3237
3238         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
3239         overriding them by ours.
3240         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
3241
3242 2008-10-05  Jim Meyering  <meyering@redhat.com>
3243
3244         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
3245         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
3246         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
3247
3248 2008-10-04  Bruno Haible  <bruno@clisp.org>
3249
3250         * modules/dup2 (License): Change to LGPLv2+.
3251         * modules/sleep (License): Likewise.
3252         * modules/perror (License): Likewise.
3253         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
3254         Blake.
3255         * modules/signal (License): Likewise.
3256         * modules/sigprocmask (License): Likewise.
3257         * modules/raise (License): Change to LGPLv2+, with approval by Jim
3258         Meyering.
3259
3260 2008-10-04  Bruno Haible  <bruno@clisp.org>
3261
3262         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
3263         Reported by Rainer Tammer <tammer@tammer.net>.
3264
3265 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
3266             Bruno Haible  <bruno@clisp.org>
3267
3268         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
3269         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
3270         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
3271
3272 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
3273
3274         filevercmp: new module
3275         * lib/filevercmp.h: New function filevercmp comparing version strings.
3276         * lib/filevercmp.c: Implementation of filevercmp function.
3277         * modules/filevercmp: Module metadata.
3278         * tests/test-filevercmp.c: Unit test for new module.
3279         * modules/filevercmp-tests: Unit test metadata.
3280         * MODULES.html.sh: Add filevercmp module.
3281
3282 2008-10-03  Bruno Haible  <bruno@clisp.org>
3283
3284         * lib/c-ctype.h: Add comment.
3285         Reported by Jim Meyering.
3286
3287 2008-10-02  Bruno Haible  <bruno@clisp.org>
3288
3289         * modules/posix_spawn-internal (Depends-on): Add 'open'.
3290
3291 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
3292
3293         * build-aux/bootstrap: Allow renaming bootstrap, and change the
3294         name of bootstrap.conf accordingly.
3295
3296 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
3297
3298         * build-aux/bootstrap: Install git-merge-changelog configuration
3299         items into .gitconfig if needed.
3300
3301 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
3302
3303         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
3304         git repository, and initialize/update it accordingly.
3305
3306 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
3307
3308         * modules/fsync-tests: New file.
3309         * tests/test-fsync.c: New file.
3310
3311         New module 'fsync'.
3312         * lib/fsync.c: New file.
3313         * m4/fsync.m4: New file.
3314         * modules/fsync: New file.
3315         * lib/unistd.in.h (fsync): New declaration.
3316         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
3317         GNULIB_FSYNC and HAVE_FSYNC.
3318         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
3319         * MODULES.html.sh (posix_functions): Add fsync.
3320         * doc/posix-functions/fsync.texi: Mention the new module.
3321
3322 2008-10-02  Jim Meyering  <meyering@redhat.com>
3323
3324         fts.c: sync with similar code from coreutils' remove.c
3325         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
3326         Guard also with "#if defined __linux__", since for now at least,
3327         this code is Linux-kernel-specific.
3328
3329 2008-10-02  Jim Meyering  <meyering@redhat.com>
3330
3331         fts: bug fixes
3332         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
3333         Include <sys/vfs.h>, not <sys/statfs.h>.
3334
3335         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
3336         Include <sys/vfs.h>, not <sys/statfs.h>.
3337
3338 2008-10-01  Bruno Haible  <bruno@clisp.org>
3339
3340         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
3341         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
3342         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
3343         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
3344         * doc/posix-functions/posix_spawnp.texi: Likewise.
3345         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
3346         whether posix_spawn actually works.
3347         * m4/pipe.m4 (gl_PIPE): Likewise.
3348         * modules/execute (Files): Add m4/posix_spawn.m4.
3349         * modules/pipe (Files): Add m4/posix_spawn.m4.
3350         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
3351
3352 2008-10-01  Jim Meyering  <meyering@redhat.com>
3353
3354         remove trailing spaces
3355         * NEWS: Likewise.
3356         * lib/poll.c (poll): Likewise.
3357         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
3358         * lib/winsock.c (rpl_close): Likewise.
3359         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
3360         * modules/yield: Likewise.
3361         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
3362         * tests/test-sys_select.c (connect_to_socket): Likewise.
3363
3364         fts.c: adjust a new interface to be more generally useful
3365         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
3366         (fts_build): Adjust caller.
3367
3368 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3369
3370         * modules/cond-tests: New file.
3371         * tests/test-cond.c: New file.
3372
3373 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3374             Bruno Haible  <bruno@clisp.org>
3375
3376         * modules/cond (Dependencies): Add errno, time.
3377         * lib/glthread/cond.h: Include <time.h>.
3378         (gl_cond_define, gl_cond_define_initialized): Use the same definition
3379         across platforms.
3380
3381 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3382             Bruno Haible  <bruno@clisp.org>
3383
3384         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
3385
3386 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3387             Bruno Haible  <bruno@clisp.org>
3388
3389         * modules/tls-tests (Depends-on): Add thread, yield.
3390         (configure.ac): Remove all checks.
3391         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
3392         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
3393         gl_thread_self): Remove definitions. Include glthread/thread.h and
3394         glthread/yield.h instead.
3395         (test_tls): Pass an additional NULL argument to gl_thread_join.
3396
3397 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3398             Bruno Haible  <bruno@clisp.org>
3399
3400         * modules/lock-tests (Depends-on): Add thread, yield.
3401         (configure.ac): Remove all checks.
3402         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
3403         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
3404         gl_thread_self): Remove definitions. Include glthread/thread.h and
3405         glthread/yield.h instead.
3406         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
3407         additional NULL argument to gl_thread_join.
3408
3409 2008-09-30  Bruno Haible  <bruno@clisp.org>
3410
3411         Fix the Win32 implementation of the 'thread' module.
3412         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
3413         pointer type.
3414         (gl_thread_self): Invoke gl_thread_self_func.
3415         (gl_thread_self_func): New declaration.
3416         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
3417         (do_init_self_key, init_self_key): New functions.
3418         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
3419         Remove some fields.
3420         (running_threads, running_lock): Remove variables.
3421         (get_current_thread_handle): New function.
3422         (gl_thread_self_func, wrapper_func, glthread_create_func,
3423         glthread_join_func, gl_thread_exit_func): Largely rewritten and
3424         simplified.
3425
3426 2008-09-30  Bruno Haible  <bruno@clisp.org>
3427
3428         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
3429         files.
3430
3431 2008-09-30  Jim Meyering  <meyering@redhat.com>
3432
3433         fts.m4: correct the test for statfs.f_type
3434         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
3435         when checking for statfs.f_type.
3436
3437 2008-09-15  Simon Josefsson  <simon@josefsson.org>
3438
3439         tests: avoid some compiler warnings
3440         * tests/test-memchr.c (main): Pass NULL indirectly.
3441         * tests/test-getdate.c (main): Remove unused variable 'ret'.
3442
3443 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
3444
3445         getdate.y: disallow countable dayshifts like "4 yesterday ago"
3446         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
3447         exactly specified dayshifts.
3448         (dayshift): New rule.
3449         (rel): Add dayshift.
3450         (relative_time_table) [tomorrow, yesterday, today, now]:
3451         Use tDAY_SHIFT in place of tDAY_UNIT.
3452         * tests/test-getdate.c: Add tests for now-disallowed countable
3453         dayshifts, e.g., "4 yesterday ago".
3454
3455 2008-09-29  Bruno Haible  <bruno@clisp.org>
3456
3457         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
3458         * tests/test-posix_spawn1.in.sh: Renamed from
3459         tests/test-posix_spawn.in.sh.
3460         * tests/test-posix_spawn2.c: New file.
3461         * tests/test-posix_spawn2.in.sh: New file.
3462         * modules/posix_spawnp-tests (Files): Update.
3463         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
3464
3465 2008-09-29  Bruno Haible  <bruno@clisp.org>
3466
3467         Propagate effects of putenv/setenv/unsetenv to child processes.
3468         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
3469         * lib/pipe.c (create_pipe): Likewise.
3470
3471 2008-09-29  Bruno Haible  <bruno@clisp.org>
3472
3473         Enable use of shell scripts as executables in mingw.
3474         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
3475         run the program as a shell script.
3476         * lib/pipe.c (create_pipe): Likewise.
3477         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
3478         resulting array.
3479
3480 2008-09-29  Eric Blake  <ebb9@byu.net>
3481
3482         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
3483
3484 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
3485
3486         * doc/posix-functions/accept.texi: Update mingw problems.
3487         * doc/posix-functions/bind.texi: Update mingw problems.
3488         * doc/posix-functions/close.texi: Update mingw problems.
3489         * doc/posix-functions/connect.texi: Update mingw problems.
3490         * doc/posix-functions/getpeername.texi: Update mingw problems.
3491         * doc/posix-functions/getsockname.texi: Update mingw problems.
3492         * doc/posix-functions/getsockopt.texi: Update mingw problems.
3493         * doc/posix-functions/ioctl.texi: Update mingw problems.
3494         * doc/posix-functions/listen.texi: Update mingw problems.
3495         * doc/posix-functions/recv.texi: Update mingw problems.
3496         * doc/posix-functions/recvfrom.texi: Update mingw problems.
3497         * doc/posix-functions/select.texi: Update mingw problems.
3498         * doc/posix-functions/send.texi: Update mingw problems.
3499         * doc/posix-functions/sendto.texi: Update mingw problems.
3500         * doc/posix-functions/setsockopt.texi: Update mingw problems.
3501         * doc/posix-functions/socket.texi: Update mingw problems.
3502
3503 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
3504             Bruno Haible  <bruno@clisp.org>
3505
3506         * lib/sys_select.in.h: Include sys/time.h.
3507         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
3508         * modules/sys_select: Depend on sys_time.
3509         * tests/test-sys_select.c: Test that sys/select.h defines struct
3510         timeval fully.
3511
3512 2008-09-29  Bruno Haible  <bruno@clisp.org>
3513
3514         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
3515         * lib/sys_select.in.h: Likewise.
3516
3517 2008-09-29  Bruno Haible  <bruno@clisp.org>
3518
3519         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
3520
3521 2008-09-29  Bruno Haible  <bruno@clisp.org>
3522
3523         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
3524         Set LIBSOCKET instead of augmenting LIBS.
3525         * modules/sockets (Link): New section.
3526         * modules/sockets-tests (test_sockets_LDADD): New variable.
3527         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
3528         * modules/poll-tests (test_poll_LDADD): New variable.
3529         * NEWS: Document the change.
3530
3531 2008-09-29  Bruno Haible  <bruno@clisp.org>
3532
3533         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
3534         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
3535         ARPA_INET_H directly.
3536         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
3537
3538 2008-09-28  Bruno Haible  <bruno@clisp.org>
3539
3540         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
3541         from gl_HEADER_SYS_SOCKET.
3542         (gl_HEADER_SYS_SOCKET): Invoke it.
3543         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3544
3545 2008-09-28  Bruno Haible  <bruno@clisp.org>
3546
3547         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
3548         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
3549         Needed on OSF/1 4.0.
3550
3551 2008-09-28  Bruno Haible  <bruno@clisp.org>
3552
3553         Override open more carefully.
3554         * lib/open.c (orig_open): New function.
3555         (rpl_open): Use orig_open instead of open.
3556         * lib/fcntl.in.h: Add special invocation convention.
3557         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
3558         (gl_FUNC_OPEN): Invoke it.
3559
3560         Override freopen more carefully.
3561         * lib/freopen.c (orig_freopen): New function.
3562         (rpl_freopen): Use orig_freopen instead of freopen.
3563         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
3564         (gl_FUNC_FREOPEN): Invoke it.
3565
3566         Override fopen more carefully.
3567         * lib/fopen.c (orig_fopen): New function.
3568         (rpl_fopen): Use orig_fopen instead of fopen.
3569         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
3570         (gl_FUNC_FOPEN): Invoke it.
3571         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
3572
3573 2008-09-28  Bruno Haible  <bruno@clisp.org>
3574
3575         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
3576         SIGPIPE.
3577
3578 2008-09-28  Bruno Haible  <bruno@clisp.org>
3579
3580         * tests/test-sigaction.c (handler, main): Disable the check whether
3581         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
3582         glibc systems with LinuxThreads.
3583
3584 2008-09-28  Bruno Haible  <bruno@clisp.org>
3585
3586         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
3587
3588         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
3589         with AIX xlc.
3590         * lib/fcntl.in.h (open): Likewise.
3591         Reported by Rainer Tammer <tammer@tammer.net>.
3592
3593 2008-09-28  Bruno Haible  <bruno@clisp.org>
3594
3595         * modules/posix_spawnp-tests: New file.
3596         * tests/test-posix_spawn.c: New file.
3597         * tests/test-posix_spawn.in.sh: New file.
3598
3599         New module 'posix_spawnp'.
3600         * modules/posix_spawnp: New file.
3601         * lib/spawnp.c: New file, from GNU libc with modifications.
3602         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
3603
3604         New module 'posix_spawn'.
3605         * modules/posix_spawn: New file.
3606         * lib/spawn.c: New file, from GNU libc with modifications.
3607         * doc/posix-functions/posix_spawn.texi: Mention the new module.
3608
3609         New module 'posix_spawnattr_destroy'.
3610         * modules/posix_spawnattr_destroy: New file.
3611         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
3612         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
3613         module.
3614
3615         New module 'posix_spawnattr_setsigmask'.
3616         * modules/posix_spawnattr_setsigmask: New file.
3617         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
3618         modifications.
3619         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
3620         new module.
3621
3622         New module 'posix_spawnattr_getsigmask'.
3623         * modules/posix_spawnattr_getsigmask: New file.
3624         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
3625         modifications.
3626         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
3627         new module.
3628
3629         New module 'posix_spawnattr_setsigdefault'.
3630         * modules/posix_spawnattr_setsigdefault: New file.
3631         * lib/spawnattr_setdefault.c: New file, from GNU libc with
3632         modifications.
3633         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
3634         new module.
3635
3636         New module 'posix_spawnattr_getsigdefault'.
3637         * modules/posix_spawnattr_getsigdefault: New file.
3638         * lib/spawnattr_getdefault.c: New file, from GNU libc with
3639         modifications.
3640         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
3641         new module.
3642
3643         New module 'posix_spawnattr_setschedpolicy'.
3644         * modules/posix_spawnattr_setschedpolicy: New file.
3645         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
3646         modifications.
3647         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
3648         new module.
3649
3650         New module 'posix_spawnattr_getschedpolicy'.
3651         * modules/posix_spawnattr_getschedpolicy: New file.
3652         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
3653         modifications.
3654         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
3655         new module.
3656
3657         New module 'posix_spawnattr_setschedparam'.
3658         * modules/posix_spawnattr_setschedparam: New file.
3659         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
3660         modifications.
3661         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
3662         new module.
3663
3664         New module 'posix_spawnattr_getschedparam'.
3665         * modules/posix_spawnattr_getschedparam: New file.
3666         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
3667         modifications.
3668         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
3669         new module.
3670
3671         New module 'posix_spawnattr_setpgroup'.
3672         * modules/posix_spawnattr_setpgroup: New file.
3673         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
3674         modifications.
3675         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
3676         module.
3677
3678         New module 'posix_spawnattr_getpgroup'.
3679         * modules/posix_spawnattr_getpgroup: New file.
3680         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
3681         modifications.
3682         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
3683         module.
3684
3685         New module 'posix_spawnattr_setflags'.
3686         * modules/posix_spawnattr_setflags: New file.
3687         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
3688         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
3689         module.
3690
3691         New module 'posix_spawnattr_getflags'.
3692         * modules/posix_spawnattr_getflags: New file.
3693         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
3694         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
3695         module.
3696
3697         New module 'posix_spawnattr_init'.
3698         * modules/posix_spawnattr_init: New file.
3699         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
3700         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
3701         module.
3702
3703         New module 'posix_spawn_file_actions_destroy'.
3704         * modules/posix_spawn_file_actions_destroy: New file.
3705         * lib/spawn_faction_destroy.c: New file, from GNU libc with
3706         modifications.
3707         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
3708         the new module.
3709
3710         New module 'posix_spawn_file_actions_addopen'.
3711         * modules/posix_spawn_file_actions_addopen: New file.
3712         * lib/spawn_faction_addopen.c: New file, from GNU libc with
3713         modifications.
3714         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
3715         the new module.
3716
3717         New module 'posix_spawn_file_actions_adddup2'.
3718         * modules/posix_spawn_file_actions_adddup2: New file.
3719         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
3720         modifications.
3721         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
3722         the new module.
3723
3724         New module 'posix_spawn_file_actions_addclose'.
3725         * modules/posix_spawn_file_actions_addclose: New file.
3726         * lib/spawn_faction_addclose.c: New file, from GNU libc with
3727         modifications.
3728         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
3729         the new module.
3730
3731         New module 'posix_spawn_file_actions_init'.
3732         * modules/posix_spawn_file_actions_init: New file.
3733         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
3734         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
3735         new module.
3736
3737         New module 'posix_spawn-internal'.
3738         * modules/posix_spawn-internal: New file.
3739         * lib/spawn_int.h: New file, from GNU libc with modifications.
3740         * lib/spawni.c: New file, from GNU libc with modifications.
3741         * m4/posix_spawn.m4: New file.
3742
3743         New module 'spawn'.
3744         * modules/spawn: New file.
3745         * lib/spawn.in.h: New file, from GNU libc with modifications.
3746         * m4/spawn_h.m4: New file.
3747         * doc/posix-headers/spawn.texi: Mention the new module.
3748
3749 2008-09-28  Bruno Haible  <bruno@clisp.org>
3750
3751         * modules/sched-tests: New file.
3752         * tests/test-sched.c: New file.
3753
3754         New module 'sched'.
3755         * modules/sched: New file.
3756         * lib/sched.in.h: New file.
3757         * m4/sched_h.m4: New file.
3758         * doc/posix-headers/sched.texi: Mention the new module.
3759
3760 2008-09-27  Eric Blake  <ebb9@byu.net>
3761
3762         Fix previous patch, and tweak references to $0.
3763         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
3764         (func_version, func_gnulib_dir): Don't call this program
3765         gnulib-tool.
3766         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
3767         with using $0 in function.
3768         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
3769         (func_fatal_error): Reuse the name the user invoked us with.
3770
3771 2008-09-27  Bruno Haible  <bruno@clisp.org>
3772
3773         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
3774         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
3775         (gl_ICONV_H): Not here.
3776         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
3777         instead of assigning ICONV_H directly.
3778
3779         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
3780         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
3781         WCHAR_H directly.
3782
3783 2008-09-27  Bruno Haible  <bruno@clisp.org>
3784
3785         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
3786         * modules/arpa_inet (Depends-on): Add link-warning.
3787         (Makefile.am): Insert the definition of GL_LINK-WARNING.
3788         * modules/unistd (Makefile.am): Likewise.
3789
3790 2008-09-26  Bruno Haible  <bruno@clisp.org>
3791
3792         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
3793         variables.
3794         (func_version): Essentially copied from gnulib-tool.
3795         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
3796         func_readlink): Copied from gnulib-tool.
3797
3798 2008-09-26  Bruno Haible  <bruno@clisp.org>
3799
3800         * gnulib-tool (func_version): Change directory to $gnulib_dir before
3801         invoking git-version-gen.
3802
3803 2008-09-26  Bruno Haible  <bruno@clisp.org>
3804
3805         * posix-modules: Update to directory names changed on 2008-01-19.
3806         Remove commas in output before splitting into words. No more need to
3807         avoid 'ftruncate' since 2007-02-19.
3808
3809 2008-09-26  Bruno Haible  <bruno@clisp.org>
3810
3811         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
3812
3813 2008-09-26  Bruno Haible  <bruno@clisp.org>
3814
3815         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
3816         * modules/fwriteerror (Depends-on): Add errno.
3817
3818 2008-09-26  Bruno Haible  <bruno@clisp.org>
3819
3820         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
3821         * tests/test-vc-list-files-cvs.sh: Likewise.
3822
3823 2008-09-26  Bruno Haible  <bruno@clisp.org>
3824
3825         * doc/posix-headers/sys_resource.texi: Reorder items.
3826
3827 2008-09-26  Jim Meyering  <meyering@redhat.com>
3828
3829         fts: tweak inode comparison function
3830         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
3831         inode numbers, as documented.
3832
3833         fts: sort dirent entries on inode number before traversing
3834         This avoids a quadratic, seek-related performance penalty when
3835         operating on a directory containing many entries (measurable at 10k;
3836         3.5 hours at 2 million entries with a cold cache) on certain types
3837         of file systems, including ext3 and ext4, but not tmpfs.
3838         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
3839         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
3840         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
3841         (fs_handles_readdir_ordered_dirents_efficiently): New function.
3842         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
3843         (fts_build): Set the stat.st_ino member from D_INO.
3844         If it is likely to be useful, sort dirent entries on inode number.
3845
3846         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
3847         and the struct statfs.f_type member.
3848         * modules/fts (Depends-on): Add d-ino.
3849
3850 2008-09-26  Bruno Haible  <bruno@clisp.org>
3851
3852         * modules/sigpipe-die (Depends-on): Add sigpipe.
3853
3854         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
3855         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
3856         and GNULIB_STDIO_H_SIGPIPE are set.
3857         * lib/stdio-write.c: New file.
3858         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
3859         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
3860         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
3861         REPLACE_STDIO_WRITE_FUNCS.
3862         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
3863         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
3864         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
3865         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
3866         * modules/stdio (Files): Add lib/stdio-write.c.
3867         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
3868         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
3869         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
3870         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
3871         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
3872         REPLACE_FPRINTF_POSIX.
3873         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
3874         REPLACE_PRINTF_POSIX.
3875         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
3876         REPLACE_VFPRINTF_POSIX.
3877         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
3878         REPLACE_VPRINTF_POSIX.
3879         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
3880         SIGPIPE issue.
3881         * doc/posix-functions/fputc.texi: Likewise.
3882         * doc/posix-functions/fputs.texi: Likewise.
3883         * doc/posix-functions/fwrite.texi: Likewise.
3884         * doc/posix-functions/printf.texi: Likewise.
3885         * doc/posix-functions/putc.texi: Likewise.
3886         * doc/posix-functions/putchar.texi: Likewise.
3887         * doc/posix-functions/puts.texi: Likewise.
3888         * doc/posix-functions/vfprintf.texi: Likewise.
3889         * doc/posix-functions/vprintf.texi: Likewise.
3890
3891         * modules/safe-write (Depends-on): Add write.
3892
3893         * modules/sigpipe-tests: New file.
3894         * tests/test-sigpipe.c: New file.
3895         * tests/test-sigpipe.sh: New file.
3896
3897         * modules/write: New file.
3898         * lib/unistd.in.h: Include <sys/types.h>.
3899         (write): New declaration.
3900         * lib/write.c: New file.
3901         * m4/write.m4: New file.
3902         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
3903         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
3904         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
3905         GNULIB_WRITE, REPLACE_WRITE.
3906         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
3907         and the SIGPIPE issue.
3908
3909         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
3910         (raise): New declaration.
3911         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
3912         (ext_signal): New function.
3913         (rpl_raise): New function.
3914         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
3915         GNULIB_SIGNAL_H_SIGPIPE.
3916         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
3917         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
3918
3919         * modules/sigpipe: New file.
3920         * m4/sigpipe.m4: New file.
3921
3922 2008-09-25  Derek Price  <derek@ximbiot.com>
3923             Bruno Haible  <bruno@clisp.org>
3924
3925         * gnulib-tool (func_import): Report all license incompatibilities, not
3926         just the first one.
3927
3928 2008-09-25  Bruno Haible  <bruno@clisp.org>
3929
3930         * gnulib-tool (func_import): When computing the edits, consider not
3931         only the Makefile.ams that exist but also those that will be generated.
3932
3933 2008-09-25  Simon Josefsson  <simon@josefsson.org>
3934
3935         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
3936         fixes gnulib-tool --test warning about duplicate dependency.
3937
3938 2008-09-25  Bruno Haible  <bruno@clisp.org>
3939
3940         * gnulib-tool: Don't ask the user to perform edits in the generated
3941         Makefile.ams.
3942         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
3943         apply to the Makefile.am being generated.
3944         (func_emit_tests_Makefile_am): Execute edits that apply to the
3945         Makefile.am being generated.
3946         (func_import): Setup list of Makefile.am edits before emitting the
3947         Makefile.ams, not at the end.
3948         (func_create_testdir): Update.
3949         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
3950
3951 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3952
3953         * gnulib-tool (func_import): Store the --tests-base option in the
3954         comment in gnulib-cache.m4.
3955
3956 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
3957
3958         * NEWS: Document increased portability that sys_select now provides.
3959
3960         * lib/sys_select.in.h: Install select wrapper.
3961         * lib/sys_socket.in.h: Use more descriptive name when there is no
3962         select wrapper.
3963         * lib/winsock-select.c: New.
3964         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
3965         Require gl_HEADER_SYS_SOCKET.
3966         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
3967         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
3968         * tests/test-sys_select.c: Add functional tests.
3969
3970 2008-09-24  Eric Blake  <ebb9@byu.net>
3971
3972         open, fopen: close fd leak in last patch
3973         * lib/open.c (rpl_open): Close fd before returning error.
3974         * lib/fopen.c (rpl_fopen): Close fd before returning error.
3975         * doc/posix-functions/open.texi (open): Document that Irix also
3976         has the bug.
3977         * doc/posix-functions/fopen.texi (fopen): Likewise.
3978         Reported by Paolo Bonzini.
3979
3980 2008-09-24  Bruno Haible  <bruno@clisp.org>
3981
3982         Ensure that a filename ending in a slash cannot be used to access a
3983         non-directory.
3984         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
3985         to check whether it's really a directory.
3986         * lib/fopen.c: Include fcntl.h, unistd.h.
3987         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
3988         and fdopen().
3989         * modules/fopen (Depends-on): Add unistd.
3990         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
3991         * tests/test-fopen.c (main): Likewise.
3992         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
3993         * doc/posix-functions/fopen.texi: Likewise.
3994         Reported by Eric Blake.
3995
3996 2008-09-23  Eric Blake  <ebb9@byu.net>
3997
3998         c-stack: avoid compiler optimizations when provoking overflow
3999         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
4000         recursion harder to optimize, to ensure a stack overflow occurs.
4001         * tests/test-c-stack.c (recurse): Likewise.
4002         Borrowed from libsigsegv.
4003
4004         c-stack: work around Irix sigaltstack bug
4005         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
4006         whether sigaltstack uses wrong end of stack_t (copied in part from
4007         libsigsegv).
4008         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
4009         Irix bug, without requiring an over-allocation.
4010         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
4011         bug.
4012
4013         fopen: document mingw bug on directories
4014         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
4015         not allowing a stream visiting a directory, even though reading
4016         from such a stream is not portable.
4017
4018 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4019
4020         * lib/poll.c: Rewrite.
4021         * modules/poll: Depend on alloca.
4022
4023 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4024
4025         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
4026         instead define prototypes for a full set of wrappers.  Ensure
4027         that Cygwin does not use the compatibility code, which is only
4028         for MinGW.
4029         * lib/winsock.c: New.
4030         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
4031         * modules/sys_socket: Add lib/winsock.c.
4032
4033         * modules/poll-tests: Add errno and perror.
4034         * tests/test-poll.c: Use ioctl, not ioctlsocket.
4035
4036 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
4037
4038         * tests/test-poll.c: Downgrade minimum needed Winsock version.
4039
4040 2008-09-23  Bruno Haible  <bruno@clisp.org>
4041
4042         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
4043         * doc/glibc-functions/*: Likewise.
4044
4045 2008-09-23  Simon Josefsson  <simon@josefsson.org>
4046
4047         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
4048         success.
4049
4050 2008-09-22  Eric Blake  <ebb9@byu.net>
4051             Bruno Haible  <bruno@clisp.org>
4052
4053         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
4054         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
4055         supply %A but mishandle pseudo-NaN.
4056         Reported by Simon Josefsson.
4057
4058 2008-09-21  Bruno Haible  <bruno@clisp.org>
4059
4060         * tests/test-lock.c (main): Tweak skip message.
4061         * tests/test-tls.c (main): Likewise.
4062
4063 2008-09-21  Bruno Haible  <bruno@clisp.org>
4064
4065         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
4066         whether 'struct sigaction' has sa_sigaction here...
4067         (gl_PREREQ_SIG_HANDLER_H): ... not here.
4068         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
4069
4070 2008-09-21  Bruno Haible  <bruno@clisp.org>
4071
4072         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
4073         section.
4074         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
4075         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
4076         the new section.
4077         (Support for obsolete systems lacking POSIX:2001): New section.
4078         (String handling <string.h>): Move strdup to the new section.
4079         Suggested by Simon Josefsson and Paolo Bonzini.
4080
4081 2008-09-21  Bruno Haible  <bruno@clisp.org>
4082
4083         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
4084         exponents in %e and %g results on 'long double'. Needed for mingw's
4085         improved *printf functions.
4086         * tests/test-vasprintf-posix.c (test_function): Likewise.
4087         * tests/test-snprintf-posix.h (test_function): Likewise.
4088         * tests/test-sprintf-posix.h (test_function): Likewise.
4089         Reported by Eric Blake.
4090
4091 2008-09-21  Bruno Haible  <bruno@clisp.org>
4092
4093         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
4094         * tests/test-sprintf-posix.h (test_function): Likewise.
4095
4096 2008-09-21  Bruno Haible  <bruno@clisp.org>
4097
4098         * modules/getpass (Depends-on): Add strdup-posix.
4099
4100         New module 'strdup-posix'.
4101         * modules/strdup-posix: New file.
4102         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
4103         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
4104         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4105         REPLACE_STRDUP.
4106         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
4107         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
4108         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
4109         strdup-posix.
4110
4111         * modules/strdup (Depends-on): Remove malloc-posix.
4112
4113 2008-09-20  Bruno Haible  <bruno@clisp.org>
4114
4115         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
4116         Wildenhues.
4117
4118 2008-09-20  Bruno Haible  <bruno@clisp.org>
4119
4120         Ensure that wint_t gets defined on IRIX 5.3.
4121         * lib/wchar.in.h (wint_t): Define if not defined by the system.
4122         * lib/wctype.in.h (wint_t): Likewise.
4123         (__wctype_wint_t): Remove type.
4124         (isw*): Use wint_t instead of __wctype_wint_t.
4125         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
4126         * modules/wchar (Files): Add m4/wint_t.m4.
4127         (Makefile.am): Substitute HAVE_WINT_T.
4128         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
4129         * tests/test-wctype.c: Check that wint_t is defined.
4130         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
4131         * doc/posix-headers/wctype.texi: Likewise.
4132         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4133
4134 2008-09-18  Bruno Haible  <bruno@clisp.org>
4135
4136         * gnulib-tool (func_exit): Update comment.
4137
4138 2008-09-18  Simon Josefsson  <simon@josefsson.org>
4139
4140         * modules/getaddrinfo (Depends-on): Remove strdup, this module
4141         assumes strdup exists and does not depend on strdup to return
4142         ENOMEM on out of memory conditions.
4143
4144 2008-09-18  Bruno Haible  <bruno@clisp.org>
4145
4146         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
4147         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
4148         digits for the exponent.
4149
4150 2008-09-18  Jim Meyering  <meyering@redhat.com>
4151             Bruno Haible  <bruno@clisp.org>
4152
4153         * lib/vasnprintf.c (decimal_point_char): Define also if
4154         NEED_PRINTF_INFINITE_LONG_DOUBLE.
4155
4156 2008-09-16  Bruno Haible  <bruno@clisp.org>
4157         and Eric Blake  <ebb9@byu.net>
4158
4159         vasnprintf: support Irix 5.3
4160         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
4161         that mishandle long double infinity.
4162         Reported by Tom G. Christensen.
4163
4164 2008-09-16  Bruno Haible  <bruno@clisp.org>
4165
4166         * doc/glibc-functions/scandir.texi: Mention the function is missing on
4167         Solaris 9.
4168         * doc/glibc-functions/alphasort.texi: Likewise.
4169         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
4170
4171 2008-09-16  Jim Meyering  <meyering@redhat.com>
4172
4173         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
4174         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
4175         a umask modification leak out of a subshell.  Otherwise, the
4176         opensolaris /bin/sh would be accepted and thus cause unwarranted
4177         failures in the coreutils test suite.
4178
4179 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
4180
4181         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
4182         to succeed.
4183
4184 2008-09-16  Jim Meyering  <meyering@redhat.com>
4185
4186         avoid spurious test failure when library is built without ACL support
4187         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
4188         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
4189         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
4190         * tests/test-copy-acl.sh: Likewise.
4191
4192 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4193
4194         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
4195         based on character occurrence counts.
4196
4197 2008-09-15  Eric Blake  <ebb9@byu.net>
4198
4199         tests: avoid some compiler warnings
4200         * tests/test-memchr.c (main): Pass NULL indirectly.
4201         * tests/test-closein.c (main): Avoid unused variable.
4202
4203 2008-09-15  Bruno Haible  <bruno@clisp.org>
4204
4205         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
4206         are missing on OpenBSD 4.0 individually.
4207         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
4208
4209 2008-09-15  Bruno Haible  <bruno@clisp.org>
4210
4211         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
4212         * doc/posix-functions/strerror.texi: Mention also Cygwin.
4213         * doc/posix-functions/perror.texi: Likewise.
4214         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
4215         is missing.
4216         Reported by Eric Blake.
4217
4218         * lib/errno.in.h: Use replacement values >= 2000.
4219         Reported by Eric Blake.
4220
4221 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4222
4223         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
4224         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
4225         limit.
4226         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
4227         compareseq was aborted.
4228
4229 2008-09-14  Bruno Haible  <bruno@clisp.org>
4230
4231         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
4232         yvec_edit_count.
4233         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
4234         (fstrcmp_bounded): Simplify result computation accordingly.
4235
4236 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4237
4238         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
4239         (fstrcmp): Define in terms of fstrcmp_bounded.
4240         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
4241         lower_bound argument.
4242         Return quickly if the result is certainly < lower_bound.
4243         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
4244
4245 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4246
4247         * lib/diffseq.h (EARLY_ABORT): New macro.
4248         (compareseq): Change return type to bool. Return true when EARLY_ABORT
4249         evaluates to true.
4250
4251 2008-09-14  Bruno Haible  <bruno@clisp.org>
4252
4253         * modules/perror-tests: New file.
4254         * tests/test-perror.sh: New file.
4255         * tests/test-perror.c: New file.
4256
4257         New module 'perror'.
4258         * lib/stdio.in.h (perror): New declaration.
4259         * lib/perror.c: New file.
4260         * m4/perror.m4: New file.
4261         * modules/perror: New file.
4262         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
4263         * doc/posix-functions/perror.texi: Mention the perror module.
4264         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
4265         REPLACE_PERROR.
4266         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
4267         REPLACE_PERROR.
4268
4269 2008-09-14  Bruno Haible  <bruno@clisp.org>
4270
4271         * modules/stdio (Makefile.am): Reorder to match the order in
4272         lib/stdio.in.h.
4273         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
4274
4275 2008-09-13  Bruno Haible  <bruno@clisp.org>
4276
4277         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
4278
4279 2008-09-13  Bruno Haible  <bruno@clisp.org>
4280
4281         Extend strerror to cover the added errno values.
4282         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
4283         (rpl_strerror): Provide error messages for the added errno values and
4284         for the WSA* values.
4285         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
4286         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
4287         strerror.
4288         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
4289         * modules/strerror (Depends-on): Add errno.
4290         * doc/posix-functions/strerror.texi: Document the change.
4291         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
4292         and EOVERFLOW.
4293
4294 2008-09-13  Bruno Haible  <bruno@clisp.org>
4295
4296         * modules/EOVERFLOW: Remove file.
4297         * m4/eoverflow.m4: Remove file.
4298         * modules/EOVERFLOW-tests: Remove file.
4299         * tests/test-EOVERFLOW.c: Remove file.
4300         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
4301         * modules/ftell (Depends-on): Likewise.
4302         * modules/getdelim (Depends-on): Likewise.
4303         * modules/getugroups (Depends-on): Likewise.
4304         * modules/poll (Depends-on): Likewise.
4305         * modules/snprintf (Depends-on): Likewise.
4306         * modules/sprintf-posix (Depends-on): Likewise.
4307         * modules/vasnprintf (Depends-on): Likewise.
4308         * modules/vasprintf (Depends-on): Likewise.
4309         * modules/vfprintf-posix (Depends-on): Likewise.
4310         * modules/vsnprintf (Depends-on): Likewise.
4311         * modules/vsprintf-posix (Depends-on): Likewise.
4312         * modules/xvasprintf (Depends-on): Likewise.
4313         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
4314         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
4315         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
4316         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
4317         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
4318         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
4319         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
4320         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
4321         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
4322         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
4323         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
4324         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
4325         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
4326         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
4327         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
4328         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
4329         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
4330         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
4331         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
4332         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
4333         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
4334         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
4335         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
4336         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
4337         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
4338         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
4339         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
4340         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
4341         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
4342         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
4343         * MODULES.html.sh: Remove EOVERFLOW.
4344         * NEWS: Mention the change.
4345
4346 2008-09-13  Bruno Haible  <bruno@clisp.org>
4347
4348         * modules/errno-tests: New file.
4349         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
4350
4351         * lib/errno.in.h: New file.
4352         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
4353         * modules/errno: New file.
4354         * doc/posix-headers/errno.texi: Update documentation.
4355         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
4356
4357 2008-09-13  Bruno Haible  <bruno@clisp.org>
4358
4359         * tests/test-poll.c: Use #if for native Windows, rather than testing
4360         __MSVCRT__.
4361
4362 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4363             Bruno Haible  <bruno@clisp.org>
4364
4365         * lib/glob.c: Don't include <pwd.h> on native Windows.
4366         (WINDOWS32): New macro.
4367         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
4368
4369 2008-09-13  Bruno Haible  <bruno@clisp.org>
4370
4371         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
4372         (ETIMEDOUT): Remove macro.
4373         (glthread_cond_timedwait_multithreaded): New declaration.
4374         (glthread_cond_timedwait): Use it.
4375         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
4376         (glthread_cond_timedwait_multithreaded): New function.
4377
4378 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
4379
4380         * modules/poll-tests: Do not check for io.h.
4381         * tests/test-poll.c: Check for __MSVCRT__ instead.
4382
4383 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
4384
4385         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
4386         * modules/poll-tests: Add inet_pton, stdbool, sockets.
4387         * tests/test-poll.c: Use them.  Use _pipe on Windows.
4388
4389 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
4390
4391         * modules/poll-tests: New.
4392         * tests/test-poll.c: New.
4393
4394 2008-09-12  Eric Blake  <ebb9@byu.net>
4395
4396         frexp: test for NetBSD failure on -0.0
4397         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
4398         not all, bugs from NetBSD 3.0 have been fixed.
4399         * doc/posix-functions/frexp.texi (frexp): Document bug.
4400         Reported by Thomas Klausner.
4401
4402         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
4403         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
4404         literal -0.0.
4405         Reported by Jonathan C. Patschke <jp@centtech.com>.
4406
4407 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4408
4409         * lib/glthread/cond.h: Use dummy implementation also if
4410         USE_WIN32_THREADS.
4411
4412 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4413
4414         * modules/fnmatch-posix (License): Change to LGPLv2+.
4415         * modules/fnmatch-gnu (License): Likewise.
4416
4417 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4418
4419         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
4420
4421 2008-09-11  Jim Meyering  <meyering@redhat.com>
4422
4423         * users.txt: Add gtk-vnc.
4424
4425 2008-09-08  Simon Josefsson  <simon@josefsson.org>
4426
4427         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
4428         rotate amounts.
4429
4430         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
4431         required for 16-bit and 8-bit rotates.
4432         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
4433         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
4434         UINT8_MAX instead of hard-coded constants.
4435         Suggested by Paul Eggert.
4436
4437 2008-09-07  Bruno Haible  <bruno@clisp.org>
4438
4439         * tests/test-striconveh.c (main): Check behaviour when converting from
4440         UTF-7.
4441
4442         Make striconveh work better with stateful encodings.
4443         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
4444         that iconv does not increment the inptr when returning -1/EINVAL.
4445
4446 2008-09-07  Bruno Haible  <bruno@clisp.org>
4447
4448         * build-aux/config.rpath: Update according to libtool-2.2.6.
4449         * build-aux/config.libpath: Likewise.
4450
4451 2008-09-06  Bruno Haible  <bruno@clisp.org>
4452
4453         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
4454         * lib/freadptr.c (freadptr): Likewise.
4455         * lib/freadseek.c (freadptrinc): Likewise.
4456         Reported by Simon Josefsson.
4457
4458 2008-09-06  Bruno Haible  <bruno@clisp.org>
4459
4460         * modules/freadptr (License): Change to LGPLv2+.
4461         * modules/freadseek (License): Likewise.
4462         Suggested by Eric Blake.
4463
4464         * modules/memchr2 (License): Change to LGPLv2+.
4465         Approved by Eric Blake.
4466
4467 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4468             Bruno Haible  <bruno@clisp.org>
4469
4470         Make gnulib-tool work with native 'sed' on AIX.
4471         * gnulib-tool (sed_noop): New variable.
4472         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
4473         func_add_or_update, func_create_testdir): Use it to initialize sed
4474         script variables.
4475         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
4476
4477 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
4478             Bruno Haible  <bruno@clisp.org>
4479
4480         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
4481         also works after #include directives.
4482
4483 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
4484
4485         getdate.y: reject an out-of-range timezone value
4486         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
4487         the range [-24...+24].  When specified with only one or two digits,
4488         * tests/test-getdate.c: Tests for the fix.
4489         * doc/getdate.texi: Document this change.
4490
4491 2008-09-03  Bruno Haible  <bruno@clisp.org>
4492
4493         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
4494
4495 2008-09-02  Simon Josefsson  <simon@josefsson.org>
4496
4497         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
4498         <bruce.korb@gmail.com> with ideas from Ben Pfaff
4499         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
4500         Blake <ebb9@byu.net>.
4501
4502         * tests/test-bitrotate.c: Add more test vectors.
4503
4504 2008-09-02  Eric Blake  <ebb9@byu.net>
4505
4506         vasnprintf-posix: handle large precision via %.*d
4507         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
4508         when handling it ourselves.
4509         * tests/test-vasnprintf-posix.c (test_function): Add test.
4510         * tests/test-snprintf-posix.h (test_function): Likewise.
4511         * tests/test-sprintf-posix.h (test_function): Likewise.
4512         * tests/test-vasprintf-posix.c (test_function): Likewise.
4513         Reported by Alain Guibert.
4514
4515 2008-09-01  Eric Blake  <ebb9@byu.net>
4516
4517         c-stack: make configure-time check more robust
4518         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
4519         successful sigaction call.
4520         Reported by Tom G. Christensen.
4521
4522 2008-09-01  Bruno Haible  <bruno@clisp.org>
4523
4524         New module 'findprog-lgpl'.
4525         * modules/findprog-lgpl: New file.
4526         * lib/findprog-lgpl.c: New file.
4527         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
4528         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
4529         to decide whether to use strdup or xstrdup, concatenated_filename or
4530         xconcatenated_filename.
4531
4532 2008-09-01  Bruno Haible  <bruno@clisp.org>
4533
4534         Split module 'concat-filename' into 'concat-filename' (LGPL) and
4535         'xconcat-filename' (GPL).
4536         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
4537         (License): Change to LGPLv2+.
4538         * modules/xconcat-filename: New file.
4539         * lib/concat-filename.h (concatenated_filename): Change specification.
4540         (xconcatenated_filename): New declaration.
4541         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
4542         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
4543         memory situations.
4544         * lib/xconcat-filename.c: New file.
4545         * NEWS: Mention the change.
4546         * lib/findprog.c: Include concat-filename.h, not filename.h.
4547         (find_in_path): Use xconcatenated_filename instead of
4548         concatenated_filename.
4549         * lib/javacomp.c: Include concat-filename.h, not filename.h.
4550         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
4551         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
4552         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
4553         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
4554         instead of concatenated_filename.
4555         * lib/javaexec.c: Include concat-filename.h, not filename.h.
4556         (execute_java_class): Use xconcatenated_filename instead of
4557         concatenated_filename.
4558         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
4559         * modules/javacomp (Depends-on): Likewise.
4560         * modules/javaexec (Depends-on): Likewise.
4561
4562 2008-09-01  Bruno Haible  <bruno@clisp.org>
4563
4564         Split module 'filename' into 'filename' and 'concat-filename'.
4565         * modules/filename: Keep only lib/filename.h.
4566         (License): Change to LGPLv2+.
4567         * modules/concat-filename: New file, extracted from modules/filename.
4568         * lib/filename.h (concatenated_filename): Remove declaration.
4569         * lib/concat-filename.h: New file, extracted from lib/filename.h.
4570         * lib/concat-filename.c: Include concat-filename.h.
4571         * NEWS: Mention the change.
4572
4573 2008-09-01  Simon Josefsson  <simon@josefsson.org>
4574
4575         * lib/bitrotate.h (rotl8, rotr8): Add.
4576
4577         * modules/bitrotate (configure.ac): Need
4578         AC_REQUIRE([AC_C_INLINE]).
4579         (Description): Mention stdint.h.  Reported by Bruno Haible
4580         <bruno@clisp.org>.
4581
4582         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
4583         Paolo Bonzini <bonzini@gnu.org>.
4584
4585 2008-08-31  Bruno Haible  <bruno@clisp.org>
4586
4587         Assume Solaris specific bi-arch conventions on Solaris systems.
4588         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
4589         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
4590         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
4591         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
4592         like acl_libdirstem.
4593         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
4594         acl_libdirstem.
4595         * NEWS: Mention the change.
4596         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
4597
4598 2008-08-31  Jim Meyering  <meyering@redhat.com>
4599
4600         * lib/strftime.h: Add comments describing the two added arguments.
4601
4602         remove duplicate #include directives
4603         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
4604         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
4605
4606 2008-08-31  Bruno Haible  <bruno@clisp.org>
4607
4608         New module 'sigpipe-die'.
4609         * modules/sigpipe-die: New file.
4610         * lib/sigpipe-die.h: New file.
4611         * lib/sigpipe-die.c: New file.
4612         * MODULES.html.sh (Signal handling): Add sigpipe-die.
4613
4614 2008-08-31  Bruno Haible  <bruno@clisp.org>
4615
4616         Don't override previously installed signal handlers.
4617         * lib/fatal-signal.c (saved_sigactions): New variable.
4618         (uninstall_handlers): Reset the signal to the saved handler, not
4619         to SIG_DFL (except when ignored).
4620         (install_handlers): Save the previous handlers.
4621
4622 2008-08-30  Bruno Haible  <bruno@clisp.org>
4623
4624         * gnulib-tool (func_reset_sigpipe): New function.
4625         (func_get_automake_snippet, func_modules_transitive_closure,
4626         func_import): Invoke it before a join command that reads from stdin,
4627         to avoid "echo: write error: Broken pipe" error messages on stderr.
4628         Reported by Sam Steingold <sds@gnu.org>.
4629
4630 2008-08-30  Bruno Haible  <bruno@clisp.org>
4631
4632         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
4633         Code copied from m4/open.m4.
4634         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
4635         access and the filename ends in a slash. Code copied from lib/open.c.
4636         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
4637         * tests/test-fopen.c (main): Check against bug with trailing slash.
4638
4639 2008-08-29  Bruno Haible  <bruno@clisp.org>
4640
4641         Avoid some "gcc -pedantic" warnings.
4642         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
4643         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
4644         * lib/dirent.in.h: Likewise.
4645         * lib/fcntl.in.h: Likewise.
4646         * lib/float.in.h: Likewise.
4647         * lib/iconv.in.h: Likewise.
4648         * lib/inttypes.in.h: Likewise.
4649         * lib/locale.in.h: Likewise.
4650         * lib/math.in.h: Likewise.
4651         * lib/netinet_in.in.h: Likewise.
4652         * lib/search.in.h: Likewise.
4653         * lib/signal.in.h: Likewise.
4654         * lib/stdarg.in.h: Likewise.
4655         * lib/stdint.in.h: Likewise.
4656         * lib/stdio.in.h: Likewise.
4657         * lib/stdlib.in.h: Likewise.
4658         * lib/string.in.h: Likewise.
4659         * lib/strings.in.h: Likewise.
4660         * lib/sys_select.in.h: Likewise.
4661         * lib/sys_socket.in.h: Likewise.
4662         * lib/sys_stat.in.h: Likewise.
4663         * lib/sys_time.in.h: Likewise.
4664         * lib/sysexits.in.h: Likewise.
4665         * lib/time.in.h: Likewise.
4666         * lib/unistd.in.h: Likewise.
4667         * lib/wchar.in.h: Likewise.
4668         * lib/wctype.in.h: Likewise.
4669         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
4670         * modules/fchdir (Makefile.am): Likewise.
4671         * modules/fcntl (Makefile.am): Likewise.
4672         * modules/float (Makefile.am): Likewise.
4673         * modules/iconv_open (Makefile.am): Likewise.
4674         * modules/inttypes (Makefile.am): Likewise.
4675         * modules/locale (Makefile.am): Likewise.
4676         * modules/math (Makefile.am): Likewise.
4677         * modules/netinet_in (Makefile.am): Likewise.
4678         * modules/search (Makefile.am): Likewise.
4679         * modules/signal (Makefile.am): Likewise.
4680         * modules/stdarg (Makefile.am): Likewise.
4681         * modules/stdint (Makefile.am): Likewise.
4682         * modules/stdio (Makefile.am): Likewise.
4683         * modules/stdlib (Makefile.am): Likewise.
4684         * modules/string (Makefile.am): Likewise.
4685         * modules/strings (Makefile.am): Likewise.
4686         * modules/sys_select (Makefile.am): Likewise.
4687         * modules/sys_socket (Makefile.am): Likewise.
4688         * modules/sys_stat (Makefile.am): Likewise.
4689         * modules/sys_time (Makefile.am): Likewise.
4690         * modules/sysexits (Makefile.am): Likewise.
4691         * modules/time (Makefile.am): Likewise.
4692         * modules/unistd (Makefile.am): Likewise.
4693         * modules/wchar (Makefile.am): Likewise.
4694         * modules/wctype (Makefile.am): Likewise.
4695         Reported by Reuben Thomas <rrt@sc3d.org>.
4696
4697 2008-08-29  Bruno Haible  <bruno@clisp.org>
4698
4699         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
4700         any more.
4701
4702 2008-08-29  Simon Josefsson  <simon@josefsson.org>
4703
4704         * MODULES.html.sh (Misc): Add bitrotate.
4705
4706         * modules/bitrotate: New file.
4707
4708         * lib/bitrotate.h: New file.
4709
4710         * modules/bitrotate-tests: New file.
4711
4712         * tests/test-bitrotate.c: New file.
4713
4714         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
4715         on the bitrotate module.
4716
4717         * lib/arctwo.c: Use new bitrotate module.
4718
4719 2008-08-29  Jim Meyering  <meyering@redhat.com>
4720
4721         bootstrap: merge changes from coreutils
4722         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
4723         of copied files.  Remove a kludge, now that this is fixed.
4724         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
4725         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
4726         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
4727
4728 2008-08-29  Bruno Haible  <bruno@clisp.org>
4729
4730         * MODULES.html.sh: Remove --cvs-urls option.
4731
4732 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
4733
4734         maint.mk: adjust to file name change
4735         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
4736
4737 2008-08-28  Jim Meyering  <meyering@redhat.com>
4738
4739         * modules/getndelim2 (License): Relicense to LGPLv2+.
4740         Approved by Richard Stallman for the version of 1995, and by
4741         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
4742
4743 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
4744
4745         * lib/getdelim.c (flockfile, funlockfile): Make all of them
4746         dummy if one is not available.  Do not touch them if
4747         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
4748         (getc_maybe_unlocked): New.
4749         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
4750
4751 2008-08-26  Eric Blake  <ebb9@byu.net>
4752
4753         doc/INSTALL: resync from autoconf
4754         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
4755         (INSTALL_PRELUDE): Delete; this is done more efficiently by
4756         moving...
4757         * install.texi [!autoconf]: ...here.  Resync from autoconf.
4758         * INSTALL: Regenerate.
4759         * INSTALL.ISO: New file.
4760         * INSTALL.UTF-8: Likewise.
4761
4762 2008-08-26  Jim Meyering  <meyering@redhat.com>
4763
4764         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
4765         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
4766         these definitions conditional, so that they may be overridden, too.
4767
4768 2008-08-26  Bruno Haible  <bruno@clisp.org>
4769
4770         Generate INSTALL file variants with prettier quotes.
4771         * doc/Makefile (INSTALL_PRELUDE): New macro.
4772         (INSTALL): Use it.
4773         (INSTALL.ISO, INSTALL.UTF-8): New rules.
4774
4775 2008-08-26  Bruno Haible  <bruno@clisp.org>
4776
4777         Run makeinfo in an English locale.
4778         * doc/Makefile (MAKEINFO): New variable.
4779
4780 2008-08-26  Bruno Haible  <bruno@clisp.org>
4781
4782         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
4783         Suggested by Eric Blake.
4784
4785 2008-08-25  Bruno Haible  <bruno@clisp.org>
4786
4787         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
4788
4789 2008-08-25  Eric Blake  <ebb9@byu.net>
4790
4791         c-stack: test that stack overflow can be caught
4792         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
4793         that platform allows handling stack overflow; at least OS/2 EMX
4794         has sigaltstack, but crashes before transferring control to
4795         handler on stack overflow.
4796         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
4797         check for HAVE_STACK_OVERFLOW_HANDLING.
4798         Reported by Elbert Pol.
4799
4800 2008-08-25  Bruno Haible  <bruno@clisp.org>
4801
4802         * doc/posix-functions/strftime.texi: Fix description of strftime
4803         module.
4804
4805 2008-08-24  Bruno Haible  <bruno@clisp.org>
4806
4807         * tests/uniwidth/test-uc_width2.c: New file.
4808         * tests/uniwidth/test-uc_width2.sh: New file.
4809         * modules/uniwidth/width-tests (Files): Add the new files.
4810         (TESTS): Add uniwidth/test-uc_width2.sh.
4811         (TESTS_ENVIRONMENT): New variable.
4812         (check_PROGRAMS): Add test-uc_width2.
4813         (test_uc_width2_SOURCES): New variable.
4814
4815         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
4816         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
4817         not 0x00AB.
4818         Reported by Alexander V. Lukyanov <lav@netis.ru>.
4819
4820 2008-08-22  Eric Blake  <ebb9@byu.net>
4821
4822         test-lock, test-tls: mention why a test is skipped
4823         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
4824         skipped.
4825         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
4826
4827         count-one-bits: relax license
4828         * modules/count-one-bits (License): Relicense to LGPLv2+.
4829         Suggested by Ludovic Courtès, approved by Ben Pfaff.
4830
4831 2008-08-22  Andreas Schwab  <schwab@suse.de>
4832
4833         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
4834         Remove spurious space in assignment.
4835
4836 2008-08-21  Simon Josefsson  <simon@josefsson.org>
4837
4838         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
4839         Paul Eggert <eggert@CS.UCLA.EDU>.
4840
4841 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
4842
4843         * modules/gettext: Add m4/threadlib.m4.
4844
4845 2008-08-19  Eric Blake  <ebb9@byu.net>
4846
4847         test-c-stack: fix compilation failure on FreeBSD 5.0
4848         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
4849         headers before <sys/resource.h>.
4850         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
4851         the bug.
4852         Reported by Nelson H. F. Beebe.
4853
4854         strverscmp: migrate from "strverscmp.h" to <string.h>
4855         * modules/string (Makefile.am): Add new hooks.
4856         * modules/strverscmp (Files): Remove strverscmp.h.
4857         (Depends-on): Add string.
4858         (configure.ac): Add indicator.
4859         (Include): Mention new header.
4860         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
4861         defaults.
4862         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
4863         results.
4864         * lib/strverscmp.h: Delete.
4865         * lib/string.in.h (strverscmp): Provide declaration, when needed.
4866         * tests/test-strverscmp.c (includes): Adjust client.
4867         * lib/check-version.c (includes): Likewise.
4868         * NEWS: Document the change.
4869
4870         strverscmp: add unit test
4871         * modules/strverscmp-tests: New file.
4872         * tests/test-strverscmp.c: Likewise.
4873
4874 2008-08-19  Simon Josefsson  <simon@josefsson.org>
4875
4876         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
4877         regarding Windows crypto stuff, from Mono.
4878
4879 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
4880
4881         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
4882         if present, for intel RND.  Return error on failures.
4883
4884 2008-08-18  Ben Pfaff  <blp@gnu.org>
4885
4886         gitlog-to-changelog: give better diagnostic for failed pipe-open
4887         * build-aux/gitlog-to-changelog: Improve error message: suggest
4888         that the version of Git may be too old.
4889
4890 2008-08-18  Simon Josefsson  <simon@josefsson.org>
4891
4892         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
4893         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
4894
4895 2008-08-18  Bruno Haible  <bruno@clisp.org>
4896
4897         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
4898         pthread_in_use().
4899
4900 2008-08-18  Bruno Haible  <bruno@clisp.org>
4901
4902         * lib/glthread/threadlib.c: Include <pthread.h>.
4903
4904 2008-08-18  Bruno Haible  <bruno@clisp.org>
4905
4906         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
4907         glthread_recursive_lock_* macros.
4908         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
4909         Fix syntax error.
4910
4911 2008-08-18  Bruno Haible  <bruno@clisp.org>
4912
4913         * lib/glthread/thread.c: Avoid forcing a context switch right after
4914         thread creation.
4915
4916 2008-08-17  Bruno Haible  <bruno@clisp.org>
4917
4918         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
4919         * lib/glthread/thread.h: Provide Win32 specific implementation.
4920         * modules/thread (Files): Add lib/glthread/thread.c.
4921         (Depends-on): Add lock.
4922         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
4923
4924 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4925
4926         New module 'yield'.
4927         * modules/yield: New file.
4928         * lib/glthread/yield.h: New file.
4929         * m4/yield.m4: New file.
4930         * MODULES.html.sh (Multithreading): Add yield.
4931
4932 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4933
4934         New module 'thread'.
4935         * modules/thread: New file.
4936         * lib/glthread/thread.h: New file.
4937         * m4/thread.m4: New file.
4938         * MODULES.html.sh (Multithreading): Add thread.
4939
4940 2008-08-17  Bruno Haible  <bruno@clisp.org>
4941
4942         * lib/glthread/lock.h: Include <stdlib.h> always.
4943         * lib/glthread/tls.h: Likewise.
4944         * lib/glthread/cond.h: Likewise.
4945
4946 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
4947
4948         New module 'cond'.
4949         * modules/cond: New file.
4950         * lib/glthread/cond.h: New file.
4951         * lib/glthread/cond.c: New file.
4952         * m4/cond.m4: New file.
4953         * MODULES.html.sh (Multithreading): Add cond.
4954
4955 2008-08-16  Eric Blake  <ebb9@byu.net>
4956
4957         c-stack: fix regression on Irix 5.3 from 2008-06-21
4958         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
4959         sa_sigaction...
4960         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
4961         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
4962         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
4963         * modules/signal (Makefile.am): Use the value.
4964         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
4965         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
4966         * doc/posix-headers/signal.texi (signal.h): Document this
4967         portability issue.
4968         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
4969         Reported by Tom G. Christensen.
4970
4971 2008-08-17  Bruno Haible  <bruno@clisp.org>
4972
4973         New module 'threadlib'.
4974         * modules/threadlib: New file.
4975         * lib/glthread/threadlib.c: New file, extracted from
4976         lib/glthread/lock.c.
4977         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
4978         functions.
4979         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
4980         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
4981         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
4982         macros.
4983         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
4984         (gl_DISABLE_THREADS): Remove macro.
4985         * modules/lock (Files): Remove build-aux/config.rpath.
4986         (Depends-on): Remove havelib. Add threadlib.
4987         (configure.ac-early): Remove section.
4988         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
4989         * modules/tls (Depends-on): Remove lock. Add threadlib.
4990         (Link): New section, copied from threadlib.
4991         * MODULES.html.sh (Multithreading): Add threadlib.
4992
4993 2008-08-14  Bruno Haible  <bruno@clisp.org>
4994
4995         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
4996         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
4997         glthread_rwlock_unlock, glthread_rwlock_destroy,
4998         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
4999         glthread_recursive_lock_destroy): Define as macros always.
5000         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
5001         glthread_lock_lock.
5002         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
5003         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
5004         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
5005         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
5006         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
5007         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
5008         (glthread_recursive_lock_lock_func): Renamed from
5009         glthread_recursive_lock_lock.
5010         (glthread_recursive_lock_unlock_func): Renamed from
5011         glthread_recursive_lock_unlock.
5012         (glthread_recursive_lock_destroy_func): Renamed from
5013         glthread_recursive_lock_destroy.
5014
5015 2008-08-14  Bruno Haible  <bruno@clisp.org>
5016
5017         * lib/glthread/lock.h: Renamed from lib/lock.h.
5018         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
5019         * lib/glthread/tls.h: Renamed from lib/tls.h.
5020         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
5021         * lib/fstrcmp.c: Update includes.
5022         * lib/strsignal.c: Update includes.
5023         * modules/lock (Files, Makefile.am): Update.
5024         (Include): Change to "glthread/lock.h".
5025         * modules/tls (Files, Makefile.am): Update.
5026         (Include): Change to "glthread/tls.h".
5027         * tests/test-lock.c: Update includes.
5028         * tests/test-tls.c: Update includes.
5029         * NEWS: Mention the renamed header files.
5030
5031 2008-08-11  Jim Meyering  <meyering@redhat.com>
5032
5033         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
5034
5035 2008-08-11  Eric Blake  <ebb9@byu.net>
5036
5037         test-c-stack: avoid C99-ism
5038         * tests/test-c-stack.c (main): Fix whitespace, move declaration
5039         before statement.
5040         Reported by Alain Guibert.
5041
5042 2008-08-10  Jim Meyering  <meyering@redhat.com>
5043
5044         ensure that return value of uinttostr et al are not ignored
5045         * lib/inttostr.h (__GNUC_PREREQ): Define.
5046         (__attribute_warn_unused_result__): Define.
5047         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
5048
5049 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
5050
5051         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
5052         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
5053
5054 2008-08-07  Jim Meyering  <meyering@redhat.com>
5055
5056         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
5057
5058         * modules/mkstemp (License): Relicense under LGPLv2+.
5059         * modules/tempname (License): Likewise.
5060
5061 2008-08-06  Bruno Haible  <bruno@clisp.org>
5062
5063         * lib/poll.c (poll): Further micro-optimization.
5064
5065 2008-08-06  Jim Meyering  <meyering@redhat.com>
5066
5067         inet_pton.c: use locale-independent tolower
5068         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
5069         (inet_pton6): Use c_tolower rather than tolower.
5070         * modules/inet_pton (Depends-on): Add c-ctype.
5071
5072 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
5073
5074         * lib/poll.c (poll): Avoid division when timeout is 0, cache
5075         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
5076
5077 2008-08-06  Jim Meyering  <meyering@redhat.com>
5078
5079         * modules/inet_pton (License): Relicense under LGPLv2+.
5080
5081 2008-08-03  Bruno Haible  <bruno@clisp.org>
5082
5083         Additional non-aborting API for lock and tls.
5084         * lib/lock.h: Include <errno.h>.
5085         (glthread_lock_init): New macro/function.
5086         (gl_lock_init): Define as wrapper around glthread_lock_init.
5087         (glthread_lock_lock): New macro/function.
5088         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
5089         (glthread_lock_unlock): New macro/function.
5090         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
5091         (glthread_lock_destroy): New macro/function.
5092         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
5093         (glthread_rwlock_init): New macro/function.
5094         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
5095         (glthread_rwlock_rdlock): New macro/function.
5096         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
5097         (glthread_rwlock_wrlock): New macro/function.
5098         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
5099         (glthread_rwlock_unlock): New macro/function.
5100         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
5101         (glthread_rwlock_destroy): New macro/function.
5102         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
5103         (glthread_recursive_lock_init): New macro/function.
5104         (gl_recursive_lock_init): Define as wrapper around
5105         glthread_recursive_lock_init.
5106         (glthread_recursive_lock_lock): New macro/function.
5107         (gl_recursive_lock_lock): Define as wrapper around
5108         glthread_recursive_lock_lock.
5109         (glthread_recursive_lock_unlock): New macro/function.
5110         (gl_recursive_lock_unlock): Define as wrapper around
5111         glthread_recursive_lock_unlock.
5112         (glthread_recursive_lock_destroy): New macro/function.
5113         (gl_recursive_lock_destroy): Define as wrapper around
5114         glthread_recursive_lock_destroy.
5115         (glthread_once): New macro/function.
5116         (gl_once): Define as wrapper around glthread_once.
5117         Update function declarations.
5118         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
5119         glthread_rwlock_init. Return error code.
5120         (glthread_rwlock_rdlock_multithreaded): Renamed from
5121         glthread_rwlock_rdlock. Return error code.
5122         (glthread_rwlock_wrlock_multithreaded): Renamed from
5123         glthread_rwlock_wrlock. Return error code.
5124         (glthread_rwlock_unlock_multithreaded): Renamed from
5125         glthread_rwlock_unlock. Return error code.
5126         (glthread_rwlock_destroy_multithreaded): Renamed from
5127         glthread_rwlock_destroy. Return error code.
5128         (glthread_recursive_lock_init_multithreaded): Renamed from
5129         glthread_recursive_lock_init. Return error code.
5130         (glthread_recursive_lock_lock_multithreaded): Renamed from
5131         glthread_recursive_lock_lock. Return error code.
5132         (glthread_recursive_lock_unlock_multithreaded): Renamed from
5133         glthread_recursive_lock_unlock. Return error code.
5134         (glthread_recursive_lock_destroy_multithreaded): Renamed from
5135         glthread_recursive_lock_destroy. Return error code.
5136         (glthread_once_call): Make static.
5137         (glthread_once_multithreaded): Renamed from glthread_once.
5138         * lib/tls.h: Include <errno.h>.
5139         (glthread_tls_key_init): New macro/function.
5140         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
5141         (glthread_tls_set): New macro/function.
5142         (gl_tls_set): Define as wrapper around glthread_tls_set.
5143         (glthread_tls_key_destroy): New macro/function.
5144         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
5145         Update function declarations.
5146         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
5147         glthread_tls_get.
5148         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
5149
5150 2008-08-04  Eric Blake  <ebb9@byu.net>
5151
5152         gnumakefile: use space, not TAB, outside of targets
5153         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
5154
5155 2008-08-02  Jim Meyering  <meyering@redhat.com>
5156
5157         getdate.y: avoid locale-dependent date parsing failure
5158         In Turkish locales, getdate would fail to recognize keywords
5159         containing a lowercase "i".  The solution is not to rely on
5160         locale-sensitive case-conversion.
5161         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
5162         (lookup_word): Use c_toupper in place of toupper.
5163         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
5164         Reported by Vefa Bicakci <bicave@superonline.com> in
5165         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
5166         * modules/getdate (Depends-on): Add c-ctype.
5167
5168 2008-08-02  Bruno Haible  <bruno@clisp.org>
5169
5170         * gnulib-tool (func_import): When updating or creating a .gitignore
5171         file, prepend each added line with a slash, and ignore leading slashes
5172         from the existing lines.
5173         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
5174
5175 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5176
5177         Portability fix for GNU make 3.79.1.
5178         * top/GNUmakefile: Avoid 'else COND', which older GNU make
5179         versions do not understand.
5180
5181 2008-08-01  Bruno Haible  <bruno@clisp.org>
5182
5183         Work around bug of HP-UX 10.20 cc with -0.0 literal.
5184         * tests/test-isnanf.h (zero): New variable.
5185         (main): Avoid literal -0.0f.
5186         * tests/test-isnand.h (zero): New variable.
5187         (main): Avoid literal -0.0.
5188         * tests/test-isnanl.h (zero): New variable.
5189         (main): Avoid literal -0.0L.
5190         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
5191         (test_float, test_double, test_long_double): Avoid literals -0.0f,
5192         -0.0, -0.0L.
5193         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
5194         (test_signbitd): Avoid literal -0.0.
5195         (test_signbitl): Avoid literal -0.0L.
5196         * tests/test-ceilf1.c (zero): New variable.
5197         (main): Avoid literal -0.0f.
5198         * tests/test-ceill.c (zero): New variable.
5199         (main): Avoid literal -0.0L.
5200         * tests/test-floorf1.c (zero): New variable.
5201         (main): Avoid literal -0.0f.
5202         * tests/test-floorl.c (zero): New variable.
5203         (main): Avoid literal -0.0L.
5204         * tests/test-roundf1.c (zero): New variable.
5205         (main): Avoid literal -0.0f.
5206         * tests/test-round1.c (zero): New variable.
5207         (main): Avoid literal -0.0.
5208         * tests/test-roundl.c (zero): New variable.
5209         (main): Avoid literal -0.0L.
5210         * tests/test-truncf1.c (zero): New variable.
5211         (main): Avoid literal -0.0f.
5212         * tests/test-trunc1.c (zero): New variable.
5213         (main): Avoid literal -0.0.
5214         * tests/test-truncl.c (zero): New variable.
5215         (main): Avoid literal -0.0L.
5216         * tests/test-frexp.c (zero): New variable.
5217         (main): Avoid literal -0.0.
5218         * tests/test-frexpl.c (zero): New variable.
5219         (main): Avoid literal -0.0L.
5220         * tests/test-ldexpl.c (zero): New variable.
5221         (main): Avoid literal -0.0L.
5222         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
5223         (zerod, zerol): New variables.
5224         (test_function): Avoid literals -0.0, -0.0L.
5225         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
5226         (zerod, zerol): New variables.
5227         (test_function): Avoid literals -0.0, -0.0L.
5228         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
5229         (zerod, zerol): New variables.
5230         (test_function): Avoid literals -0.0, -0.0L.
5231         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
5232         (zerod, zerol): New variables.
5233         (test_function): Avoid literals -0.0, -0.0L.
5234         * tests/test-strtod.c (zero): New variable.
5235         (main): Avoid literal -0.0.
5236         Reported by Jonathan C. Patschke <jp@centtech.com>.
5237
5238 2008-07-31  Jim Meyering  <meyering@redhat.com>
5239
5240         sha256.h: correct definition of SHA224_DIGEST_SIZE
5241         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
5242         Reported by Paulie Pena IV <paulie4@gmail.com>.
5243         Define as 224 / 8, rather than as a literal.
5244         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
5245         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
5246         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
5247
5248 2008-07-31  Bruno Haible  <bruno@clisp.org>
5249
5250         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
5251         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
5252         Reported by Jonathan Patschke <jp@centtech.com>.
5253
5254 2008-07-31  Bruno Haible  <bruno@clisp.org>
5255
5256         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
5257         Reported by Paolo Bonzini <bonzini@gnu.org>.
5258
5259 2008-07-30  Eric Blake  <ebb9@byu.net>
5260
5261         test-strtod: allow compilation without -lm
5262         * tests/test-strtod.c (main): Avoid link dependence on fabs.
5263         Reported by Dennis Clarke <blastwave@gmail.com>.
5264
5265 2008-07-28  Jim Meyering  <meyering@redhat.com>
5266
5267         bootstrap: work also when there are no .po files in po/
5268         * build-aux/bootstrap (update_po_files): Complete the change
5269         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
5270
5271 2008-07-27  Jim Meyering  <meyering@redhat.com>
5272
5273         * users.txt: Add zile.
5274
5275 2008-07-26  Ben Pfaff  <blp@gnu.org>
5276
5277         Add missing dependencies on new m4/exponent[fdl].m4 files.
5278         * modules/isnanf-nolibm: Add m4/exponentf.m4.
5279         * modules/isnand-nolibm: Add m4/exponentd.m4.
5280         * modules/isnanl-nolibm: Add m4/exponentl.m4.
5281         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
5282         m4/isnan[fdl].m4, because the macros actually used moved.
5283         Reported by Jim Meyering.
5284
5285 2008-07-14  Ben Pfaff  <blp@gnu.org>
5286
5287         Add isinf module.
5288         * lib/isinf.c: New file.
5289         * lib/math.in.h: Define isinf macro if we have decided to replace
5290         it.
5291         * m4/isinf.m4: New file.
5292         * m4/math_h.m4: Initialize and substitute variables for isinf
5293         module.
5294         * modules/isinf: New file.
5295         * modules/isinf-tests: New file.
5296         * modules/math: Add substitutions for new module.
5297         * tests/test-isinf.c: New file.
5298         * doc/posix-functions/isinf.texi: Mention new module.
5299         * MODULES.html.sh: Mention new module.
5300
5301 2008-07-14  Ben Pfaff  <blp@gnu.org>
5302
5303         Factor out some macros for use by additional modules.
5304         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
5305         exponentf.m4.
5306         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
5307         exponentd.m4.
5308         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
5309         file exponentl.m4.
5310         * m4/exponentf.m4: New file.
5311         * m4/exponentd.m4: New file.
5312         * m4/exponentl.m4: New file.
5313         * modules/isnanf: Use new file m4/exponentf.m4.
5314         * modules/isnand: Use new file m4/exponentd.m4.
5315         * modules/isnanl: Use new file m4/exponentl.m4.
5316
5317 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
5318
5319         mktime.c: normalize tp->tm_isdst value to -1/0/1.
5320         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
5321         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
5322         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
5323
5324         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
5325         readlink on platforms without PATH_MAX.
5326
5327 2008-07-21  Eric Blake  <ebb9@byu.net>
5328
5329         Warn, not fail, on stale version.
5330         * top/GNUmakefile (_curr-ver): Tone down previous patch.
5331
5332         Don't allow installation with stale devel version number.
5333         * top/GNUmakefile (_is-install-target): New macro.
5334         (_curr-ver): Forbid installation with stale version number.
5335
5336 2008-07-20  Bruno Haible  <bruno@clisp.org>
5337
5338         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
5339         TESTS_ENVIRONMENT.
5340         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
5341
5342 2008-07-20  Bruno Haible  <bruno@clisp.org>
5343
5344         * lib/c-stack.h (c_stack_action): Add documentation.
5345         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
5346
5347 2008-07-20  Bruno Haible  <bruno@clisp.org>
5348
5349         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
5350         * modules/readlink (License): Likewise.
5351
5352 2008-07-17  Eric Blake  <ebb9@byu.net>
5353
5354         * modules/c-stack (Link): Fix typo.
5355
5356         Make c-stack use libsigsegv, when available.
5357         * modules/c-stack (Depends-on): Add libsigsegv.
5358         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
5359         needed.
5360         * lib/c-stack.c (SIGSTKSZ): Define fallback.
5361         (segv_handler, overflow_handler, c_stack_action)
5362         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
5363         implementation when libsigsegv is available, but only when using
5364         the library is necessary.
5365         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
5366         comment, explaining why XSI check fails on Linux.
5367         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
5368         * tests/test-c-stack2.sh: Tweak skip message.
5369         * NEWS: Document new link-time requirements.
5370
5371 2008-07-16  Eric Blake  <ebb9@byu.net>
5372
5373         c-stack: Expose false positives when not using libsigsegv.
5374         * modules/c-stack-tests (Files): Expand test.
5375         * tests/test-c-stack.c (main): Add means to conditionally trigger
5376         non-overflow SIGSEGV.
5377         * tests/test-c-stack2.sh: New file.
5378
5379 2008-07-14  Bruno Haible  <bruno@clisp.org>
5380
5381         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
5382         Reported by Eric Blake.
5383
5384 2008-07-14  Sam Steingold  <sds@gnu.org>
5385             Bruno Haible  <bruno@clisp.org>
5386
5387         New module libsigsegv.
5388         * modules/libsigsegv: New file.
5389         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
5390         modifications.
5391         * MODULES.html.sh (Signal handling): New section.
5392
5393 2008-07-14  Bruno Haible  <bruno@clisp.org>
5394
5395         * modules/unictype/ctype-* (Description): Add the word "function".
5396         Improves the resulting doc in MODULES.html.
5397
5398 2008-07-12  Ben Pfaff  <blp@gnu.org>
5399
5400         Add longlong module.
5401         * modules/longlong: New file.
5402
5403 2008-07-12  Bruno Haible  <bruno@clisp.org>
5404
5405         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
5406         to empty.
5407
5408 2008-07-10  Ben Pfaff  <blp@gnu.org>
5409
5410         Add isnan module.
5411         * doc/posix-functions/isnan.texi: Mention new module.
5412         * lib/math.in.h: Define isnan macro if we have decided to replace
5413         it.
5414         * m4/isnan.m4: New file.
5415         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
5416         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
5417         also.
5418         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
5419         redundancy.
5420         * m4/math_h.m4: Initialize and substitute variables for isnan
5421         module.
5422         * modules/isnan: New file.
5423         * modules/isnan-tests: New file.
5424         * modules/math: Add substitutions for new module.
5425         * tests/test-isnan.c: New file.
5426         * MODULES.html.sh: Mention new module.
5427
5428 2008-07-10  Ben Pfaff  <blp@gnu.org>
5429
5430         Add isnanf module.
5431         * lib/isnanf.m4: New file.
5432         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
5433         (gl_HAVE_ISNANF_IN_LIBM): New macro.
5434         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
5435         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
5436         * modules/isnanf: New file.
5437         * modules/isnanf-tests: New file.
5438         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
5439         files.
5440         * tests/test-isnanf-nolibm.c: factored most of its contents into
5441         new file tests/test-isnanf.h.
5442         * tests/test-isnanf.h: New file.
5443         * tests/test-isnanf.c: New file.
5444         * MODULES.html.sh: Mention new module.
5445         * doc/glibc-functions/isnanf.texi: Mention new module.
5446
5447 2008-07-10  Ben Pfaff  <blp@gnu.org>
5448
5449         Add isnand module.
5450         * lib/isnand.h: New file.
5451         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
5452         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
5453         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
5454         functionality also.
5455         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
5456         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
5457         (gl_HAVE_ISNAND_IN_LIBM): New macro.
5458         * modules/isnand: New file.
5459         * modules/isnand-tests: New file.
5460         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
5461         files.
5462         * tests/test-isnand-nolibm.c: factored most of its contents into
5463         new file tests/test-isnand.h.
5464         * tests/test-isnand.h: New file.
5465         * tests/test-isnand.c: New file.
5466         * MODULES.html.sh: Mention new module.
5467
5468 2008-07-10  Ben Pfaff  <blp@gnu.org>
5469
5470         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
5471         * lib/isnand.h: Rename lib/isnand-nolibm.h.
5472         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
5473         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
5474         * modules/isnanf-nolibm: Update references to renamed files.
5475         * modules/isnand-nolibm: Likewise.
5476         * modules/isnanf-nolibm-tests: Likewise.
5477         * modules/isnand-nolibm-tests: Likewise.
5478         * lib/frexp.c: Likewise.
5479         * lib/isfinite.c: Likewise.
5480         * lib/signbitd.c: Likewise.
5481         * lib/signbitf.c: Likewise.
5482         * lib/vasnprintf.c: Likewise.
5483         * tests/test-ceilf1.c: Likewise.
5484         * tests/test-ceilf2.c: Likewise.
5485         * tests/test-floorf1.c: Likewise.
5486         * tests/test-floorf2.c: Likewise.
5487         * tests/test-frexp.c: Likewise.
5488         * tests/test-round1.c: Likewise.
5489         * tests/test-round2.c: Likewise.
5490         * tests/test-roundf1.c: Likewise.
5491         * tests/test-strtod.c: Likewise.
5492         * tests/test-trunc1.c: Likewise.
5493         * tests/test-trunc2.c: Likewise.
5494         * tests/test-truncf1.c: Likewise.
5495         * tests/test-truncf2.c: Likewise.
5496         * NEWS: Mention the renamed header files.
5497
5498 2008-07-11  Jim Meyering  <meyering@redhat.com>
5499
5500         vc-list-files: make the last-resort awk code more portable
5501         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
5502         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
5503         does not support it.
5504
5505 2008-07-10  Eric Blake  <ebb9@byu.net>
5506
5507         Work with tar's bootstrap.
5508         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
5509         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
5510         an m4 comment.
5511
5512 2008-07-09  Jim Meyering  <meyering@redhat.com>
5513
5514         posix-shell.m4: fix typo that made this test malfunction
5515         * m4/posix-shell.m4: Remove capitalization in variable name.
5516
5517 2008-07-08  Bruno Haible  <bruno@clisp.org>
5518
5519         * m4/onceonly.m4: Update comments.
5520         Reported by Ben Pfaff <blp@cs.stanford.edu>.
5521
5522 2008-07-04  Jim Meyering  <meyering@redhat.com>
5523
5524         * users.txt: Add vc-dwim.
5525         (bison, coreutils): Use the gitweb URL.
5526
5527 2008-07-03  Jim Meyering  <meyering@redhat.com>
5528
5529         * users.txt: Add libffcall.  From Sam Steingold.
5530
5531 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
5532
5533         getdate.y: do not ignore TZ with relative day, month or year offset
5534         * lib/getdate.y (get_date): Move the tz-handling block to follow the
5535         relative-date-handling, since otherwise, the latter would clobber the
5536         sole output (an updated Start value) of the tz-handling block.
5537         * tests/test-getdate.c: Tests for the fix
5538
5539 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5540
5541         Recognize 'foo_LIBRARIES += libgnu.a'.
5542         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
5543         makefile snippet has already specified an installation location,
5544         also using '+='.
5545
5546 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
5547
5548         getdate.y: factor out common actions
5549         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
5550         Use them in place of open-coded actions.
5551
5552 2008-07-01  Simon Josefsson  <simon@josefsson.org>
5553
5554         Add self-test for getdate module.
5555         * modules/getdate-tests: New file.
5556         * tests/test-getdate.c: New file.
5557
5558 2008-06-29  Bruno Haible  <bruno@clisp.org>
5559
5560         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
5561         .gitignore.
5562         Reported by Sylvain Beucler <beuc@beuc.net>.
5563
5564 2008-06-29  Bruno Haible  <bruno@clisp.org>
5565
5566         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
5567         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
5568
5569 2008-06-29  Bruno Haible  <bruno@clisp.org>
5570
5571         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
5572         EXTRA_DIST.
5573         Reported by Sylvain Beucler <beuc@beuc.net>.
5574
5575 2008-06-26  Jim Meyering  <meyering@redhat.com>
5576
5577         make several modules depend on the "open" module
5578         This provides slightly increased consistency when opening-for-write
5579         the name of a non-directory spelled with a trailing slash.
5580         * modules/chdir-safer: Likewise.
5581         * modules/chown: Likewise.
5582         * modules/clean-temp: Likewise.
5583         * modules/copy-file: Likewise.
5584         * modules/fchdir: Likewise.
5585         * modules/fcntl-safer: Likewise.
5586         * modules/pipe: Likewise.
5587         * modules/utime: Likewise.
5588         Prompted by Eric Blake and Bruno Haible.
5589
5590 2008-06-24  Andreas Schwab  <schwab@suse.de>
5591
5592         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
5593         literals can be used as initializers for global variables.
5594
5595 2008-06-23  Eric Blake  <ebb9@byu.net>
5596
5597         Make gnulib-cache.m4 easier to diff.
5598         * gnulib-tool (func_import): Allow newlines when reading cached
5599         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
5600
5601 2008-06-23  Bruno Haible  <bruno@clisp.org>
5602
5603         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
5604         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
5605         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
5606         m4/signalblocking.m4.
5607         (gl_PREREQ_SIGACTION): Don't invoke it.
5608         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
5609         gl_PREREQ_SIG_HANDLER_H.
5610         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
5611         Don't check for sigaction here.
5612
5613 2008-06-23  Bruno Haible  <bruno@clisp.org>
5614
5615         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
5616         (install_handlers): Don't set the SA_RESETHAND flag.
5617
5618 2008-06-23  Bruno Haible  <bruno@clisp.org>
5619
5620         * m4/sigaction.m4: Comment fixes.
5621         * lib/signal.in.h: Likewise.
5622
5623 2008-06-23  Eric Blake  <ebb9@byu.net>
5624
5625         Fix typo.
5626         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
5627
5628         Avoid SA_ namespace.
5629         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
5630         Reported by Ralf Wildenhues.
5631
5632         Avoid test failure due to SA_RESTORER.
5633         * tests/test-sigaction.c (SA_MASK): New macro.
5634         (main): Avoid failing due to extension flags being set.
5635         Reported by Jim Meyering.
5636
5637         Revert use of sig-handler.h in sigprocmask.c.
5638         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
5639         it requires the existence of struct sigaction.
5640         * lib/sigprocmask.c (handler_t): Restore typedef.
5641         (rpl_signal, old_handlers): Use local type.
5642
5643 2008-06-22  Bruno Haible  <bruno@clisp.org>
5644
5645         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
5646         conditionally.
5647         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
5648
5649 2008-06-22  Bruno Haible  <bruno@clisp.org>
5650
5651         * doc/posix-functions/siginterrupt.texi: Move note.
5652
5653         * lib/signal.in.h (SA_RESTART): New macro.
5654         * lib/sigaction.c: Update comment.
5655
5656         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
5657
5658         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
5659         (gl_PREREQ_SIGPROCMASK): Invoke it.
5660         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
5661
5662         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
5663
5664         * lib/sigprocmask.c: Update a comment.
5665
5666 2008-06-21  Eric Blake  <ebb9@byu.net>
5667
5668         Use sigaction module rather than signal().
5669         * modules/c-stack (Depends-on): Add sigaction.
5670         * modules/fatal-signal (Depends-on): Likewise.
5671         * modules/nanosleep (Depends-on): Likewise.
5672         * modules/sigprocmask (Files): Add sig-handler.h.
5673         * modules/sigaction (Files): Likewise.
5674         * lib/sig-handler.h (get_handler): New file, suggested by Paul
5675         Eggert.
5676         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
5677         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
5678         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
5679         (init_fatal_signals): Likewise.
5680         * lib/nanosleep.c (rpl_nanosleep): Likewise.
5681         (siginterrupt): Delete fallback.
5682         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
5683         instead.
5684         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
5685         siginterrupt.
5686
5687         New module sigaction, for mingw.
5688         * modules/sigaction: New module...
5689         * modules/sigaction-tests: ...and its test.
5690         * m4/sigaction.m4: New file.
5691         * lib/sigaction.c: Likewise.
5692         * tests/test-sigaction.c: Likewise.
5693         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
5694         * modules/signal (Makefile.am): Likewise.
5695         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
5696         needed.
5697         * doc/posix-headers/signal.texi (signal.h): Mention provided
5698         types.
5699         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
5700         that sigaction is preferable.
5701         * doc/posix-functions/sigaction.texi (sigaction): Mention new
5702         module.
5703         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
5704         sigaction.
5705
5706         Improve robustness of sigprocmask by overriding signal.
5707         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
5708         is in use.
5709         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
5710         (SIGKILL, SIGSTOP): Provide fallbacks.
5711         (rpl_signal): Implement.
5712         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
5713         signal can be called inside handlers.
5714
5715         Fix nanosleep module on mingw.
5716         * modules/nanosleep (Depends-on): Add sys_select.
5717         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
5718
5719         Fix licensing of sigprocmask.
5720         * modules/raise (License): Relicense as LGPL.
5721
5722 2008-06-21  Bruno Haible  <bruno@clisp.org>
5723
5724         * lib/propername.c (proper_name_utf8): Don't use the transliterated
5725         result if it contains question marks.
5726         Reported by Michael Geng <linux@michaelgeng.de>.
5727
5728 2008-06-19  Bruno Haible  <bruno@clisp.org>
5729
5730         Fix CVS-ism.
5731         * doc/gnulib.texi: Include updated-stamp.texi.
5732         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
5733         (updated-stamp.texi): New rule.
5734         (gnulib.info): Depend on it.
5735         * doc/.gitignore: Add updated-stamp.texi.
5736         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
5737
5738 2008-06-19  Bruno Haible  <bruno@clisp.org>
5739
5740         * doc/Makefile (gnulib.info): Update and simplify dependencies.
5741         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
5742
5743 2008-06-19  Eric Blake  <ebb9@byu.net>
5744
5745         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
5746         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
5747         Reported by Stepan Kasal.
5748
5749 2008-06-18  Bruno Haible  <bruno@clisp.org>
5750
5751         * lib/fatal-signal.c (init_fatal_signals): Add comment.
5752         Reported by Eric Blake.
5753
5754 2008-06-18  Eric Blake  <ebb9@byu.net>
5755
5756         Work around cygwin 1.5.25 strsignal bug.
5757         * tests/test-strsignal.c: Allow for const char *.
5758         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
5759
5760 2008-06-18  Simon Josefsson  <simon@josefsson.org>
5761
5762         * users.txt: Update URL to article and add author/date
5763         information.
5764
5765 2008-06-17  Bruno Haible  <bruno@clisp.org>
5766
5767         New macro gl_DISABLE_THREADS.
5768         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
5769         if the user did not pass --enable-threads or --disable-threads option.
5770         (gl_DISABLE_THREADS): New macro.
5771         Reported by Eric Blake <ebb9@byu.net>.
5772
5773 2008-06-17  Bruno Haible  <bruno@clisp.org>
5774
5775         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
5776         when the macro ignores it.
5777         Based on a patch by Eric Blake <ebb9@byu.net>.
5778
5779 2008-06-17  Bruno Haible  <bruno@clisp.org>
5780
5781         * modules/tls (License): Change to LGPLv2+.
5782         Reported by Eric Blake.
5783
5784 2008-06-17  Eric Blake  <ebb9@byu.net>
5785
5786         Simplify c-stack prerequisites.
5787         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
5788         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
5789         no longer requires <ucontext.h> to exist.  Optimize setrlimit
5790         check.
5791         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
5792         <sys/resource.h>.
5793
5794         Move c-stack test into testsuite.
5795         * modules/c-stack-tests: New file.
5796         * lib/c-stack.c [DEBUG]: Move test program...
5797         * tests/test-c-stack.c: ...into this new file.  Skip rather than
5798         fail test if sigaltstack is lacking.
5799         * tests/test-c-stack.sh: New driver file.
5800
5801 2008-06-16  Eric Blake  <ebb9@byu.net>
5802
5803         Use raise module consistently.
5804         * modules/fatal-signal (Depends-on): Add raise.
5805         * modules/sigprocmask (Depends-on): Likewise.
5806         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
5807         * lib/sigprocmask.c (sigprocmask): Likewise.
5808         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
5809         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
5810
5811         Fix compliance bug in sigpending.
5812         * lib/sigprocmask.c (sigpending): Return pending array via
5813         parameter, not return value.
5814
5815 2008-06-14  Eric Blake  <ebb9@byu.net>
5816
5817         Improve obstack-printf test code.
5818         * tests/test-obstack-printf.c (test_function): Fix comment, and
5819         simplify usage of obstack_* in macros.  Add a test for coverage.
5820         Reported by Bruno Haible.
5821
5822 2008-06-14  Bruno Haible  <bruno@clisp.org>
5823
5824         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
5825         array size as a constant, not as a const variable.
5826         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
5827         AC_USE_SYSTEM_EXTENSIONS.
5828         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
5829         Test whether the obstack_printf function actually exists.
5830         * modules/obstack-printf (Depends-on): Add extensions.
5831         (Include): Remove obstack.h.
5832         * modules/obstack-printf-posix (Depends-on): Add extensions.
5833         (Include): Remove obstack.h.
5834
5835 2008-06-13  Eric Blake  <ebb9@byu.net>
5836
5837         Add obstack-printf and obstack-printf-posix modules.
5838         * modules/obstack-printf: New file.
5839         * modules/obstack-printf-posix: Likewise.
5840         * MODULES.html.sh (Misc): Mention them.
5841         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
5842         Likewise.
5843         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
5844         Likewise.
5845         * modules/stdio (Makefile.am): Accomodate new modules.
5846         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
5847         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
5848         Declare.
5849         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
5850         functions.
5851         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
5852         (gl_REPLACE_OBSTACK_PRINTF): New macros
5853         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
5854         * tests/test-obstack-printf.c: New file.
5855         * modules/obstack-printf-tests: Likewise.
5856         * modules/obstack-printf-posix-tests: Likewise.
5857
5858 2008-06-11  Bruno Haible  <bruno@clisp.org>
5859
5860         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
5861         * lib/open.c: Include errno.h.
5862         (open): Fail when attempting to write to a file that has a trailing
5863         slash.
5864         * tests/test-open.c (main): Test against trailing slash bug.
5865         * doc/posix-functions/open.texi: Mention the trailing slash bug.
5866
5867 2008-06-10  Bruno Haible  <bruno@clisp.org>
5868
5869         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
5870         for $? to work inside the trap command, with various /bin/sh-s.
5871         * tests/test-vc-list-files-cvs.sh: Likewise.
5872
5873 2008-06-10  Bruno Haible  <bruno@clisp.org>
5874
5875         * lib/acl-internal.h: Don't include gettext.h here.
5876         * lib/set-mode-acl.c: Include gettext.h here.
5877         * lib/copy-acl.c: Likewise.
5878
5879 2008-06-10  Bruno Haible  <bruno@clisp.org>
5880
5881         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
5882         * lib/wait-process.c (wait_subprocess): Likewise.
5883         * lib/execute.h (execute): Add termsigp argument.
5884         * lib/execute.c (execute): Likewise.
5885         * lib/csharpcomp.c (compile_csharp_using_pnet,
5886         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
5887         * lib/csharpexec.c (execute_csharp_using_pnet,
5888         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
5889         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
5890         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
5891         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
5892         is_jikes_present): Update.
5893         * lib/javaexec.c (execute_java_class): Update.
5894         * lib/javaversion.c (execute_and_read_line): Update.
5895         * NEWS: Document the changes.
5896         Reported by Eric Blake.
5897
5898 2008-06-10  Eric Blake  <ebb9@byu.net>
5899
5900         Add missing include.
5901         * tests/test-strstr.c (includes): Add <signal.h>.
5902         * tests/test-strcasestr.c (includes): Likewise.
5903         * tests/test-memmem.c (includes): Likewise.
5904
5905 2008-06-10  Bruno Haible  <bruno@clisp.org>
5906
5907         * lib/wait-process.c (wait_subprocess): Add an assertion.
5908
5909 2008-06-10  Bruno Haible  <bruno@clisp.org>
5910
5911         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
5912
5913 2008-06-10  Bruno Haible  <bruno@clisp.org>
5914
5915         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
5916         using alarm().
5917         * tests/test-strcasestr.c (main): Likewise.
5918         * tests/test-strstr.c (main): Likewise.
5919
5920 2008-06-09  Bruno Haible  <bruno@clisp.org>
5921
5922         Work around the Solaris 10 ACE ACLs ABI change.
5923         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
5924         declare if ACL_NO_TRIVIAL is present.
5925         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
5926         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
5927         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
5928         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
5929         define if ACL_NO_TRIVIAL is present.
5930         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
5931         and use the current ABI.
5932         (file_has_acl): Use same #if condition as elsewhere.
5933         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
5934         in use, and use the current ABI.
5935         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
5936         Reported by Jim Meyering.
5937
5938 2008-06-09  Eric Blake  <ebb9@byu.net>
5939
5940         Work around environments that (stupidly) ignore SIGALRM.
5941         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
5942         before using alarm().
5943         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
5944         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
5945         Reported by Ian Beckwith <ianb@erislabs.net>.
5946
5947         Produce autobuild blurb earlier in log.
5948         * modules/autobuild (configure.ac-early): Move AB_INIT here.
5949
5950 2008-06-09  Jim Meyering  <meyering@redhat.com>
5951         and OndÅ™ej Vašík  <ovasik@redhat.com>
5952
5953         utimens.c: correct kernel bug work-around
5954         OndÅ™ej Vašík found that the invalid return value of 280 indicates
5955         failure, not success, and the kernel bug we're trying to work
5956         around affects not just the utimensat call, but also the fallback
5957         futimens call.
5958         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
5959         not success.
5960         [HAVE_FUTIMENS]: Use the same work-around, here.
5961
5962 2008-06-09  Jim Meyering  <meyering@redhat.com>
5963
5964         add more guards around definition of ACE_-related code
5965         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
5966         ALLOW and ACE_OWNER are also defined.
5967
5968 2008-06-08  Bruno Haible  <bruno@clisp.org>
5969
5970         * lib/acl-internal.h: Add me as co-author.
5971         * lib/file-has-acl.c: Likewise.
5972         * lib/set-mode-acl.c: Likewise.
5973         * lib/copy-acl.c: Likewise.
5974
5975 2008-06-08  Bruno Haible  <bruno@clisp.org>
5976
5977         Add support for AIX ACLs.
5978         * lib/acl-internal.h (acl_nontrivial): New declaration.
5979         * lib/file-has-acl.c (acl_nontrivial): New function.
5980         (file_has_acl): Add implementation using AIX 4 ACL API.
5981         * lib/set-mode-acl.c (qset_acl): Likewise.
5982         * lib/copy-acl.c (qcopy_acl): Likewise.
5983
5984 2008-06-08  Bruno Haible  <bruno@clisp.org>
5985
5986         Add support for HP-UX ACLs.
5987         * lib/acl-internal.h (acl_nontrivial): New declaration.
5988         * lib/file-has-acl.c (acl_nontrivial): New function.
5989         (file_has_acl): Add implementation using HP-UX 11 ACL API.
5990         * lib/set-mode-acl.c (qset_acl): Likewise.
5991         * lib/copy-acl.c (qcopy_acl): Likewise.
5992
5993 2008-06-08  Bruno Haible  <bruno@clisp.org>
5994
5995         Add support for Cygwin ACLs.
5996         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
5997         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
5998         the chmod_or_fchmod call.
5999         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
6000
6001 2008-06-08  Bruno Haible  <bruno@clisp.org>
6002
6003         Fix bug with setuid modes in Solaris 10+ code.
6004         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
6005         succeeded, when the mode contains some special bits.
6006
6007 2008-06-08  Bruno Haible  <bruno@clisp.org>
6008
6009         Add support for Solaris 7..10 ACLs.
6010         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
6011         declarations.
6012         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
6013         functions.
6014         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
6015         * lib/set-mode-acl.c (qset_acl): Likewise.
6016         * lib/copy-acl.c (qcopy_acl): Likewise.
6017
6018 2008-06-08  Bruno Haible  <bruno@clisp.org>
6019
6020         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
6021         declaration.
6022         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
6023         (acl_access_nontrivial): Remove MacOS X case.
6024         (file_has_acl): Use acl_extended_nontrivial.
6025         * lib/copy-acl.c (qcopy_acl): Likewise.
6026
6027 2008-06-08  Bruno Haible  <bruno@clisp.org>
6028
6029         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
6030
6031 2008-06-08  Jim Meyering  <meyering@redhat.com>
6032
6033         * modules/acl (Maintainer): Add Bruno Haible.
6034
6035 2008-06-07  Bruno Haible  <bruno@clisp.org>
6036
6037         Improve support for Tru64 ACLs.
6038         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
6039         ACL on OSF/1.
6040
6041 2008-06-07  Bruno Haible  <bruno@clisp.org>
6042
6043         Add support for MacOS X ACLs.
6044         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
6045         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
6046         * lib/set-mode-acl.c (qset_acl): Likewise.
6047         * lib/copy-acl.c (qcopy_acl): Likewise.
6048
6049 2008-06-07  Bruno Haible  <bruno@clisp.org>
6050
6051         Fix memory leak introduced on 2008-05-22.
6052         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
6053         use.
6054
6055 2008-06-07  Bruno Haible  <bruno@clisp.org>
6056
6057         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
6058         to construct an empty ACL.
6059
6060 2008-06-07  Bruno Haible  <bruno@clisp.org>
6061
6062         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
6063         precisely.
6064         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
6065
6066 2008-06-07  Bruno Haible  <bruno@clisp.org>
6067
6068         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
6069         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
6070
6071 2008-06-07  Bruno Haible  <bruno@clisp.org>
6072
6073         * doc/posix-functions/_setjmp.texi: Explain the use of this function
6074         regardless of POSIX.
6075         * doc/posix-functions/_longjmp.texi: Likewise.
6076         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
6077         SystemV platform in this case.
6078
6079 2008-06-06  Eric Blake  <ebb9@byu.net>
6080
6081         Document abort() bugs.
6082         * doc/posix-functions/abort.texi (abort): Mention anomalies.
6083
6084         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
6085         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
6086         sigsetjmp.
6087         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
6088         siglongjmp, but only as a macro.
6089         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
6090         is obsolete.
6091         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
6092
6093         Tweak documentation to cover cygwin argz bugs.
6094         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
6095         argz bug fix; no code change needed since no cygwin releases
6096         occurred between the last fix and the bug being tested.
6097         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
6098         module and recently fixed cygwin bugs.
6099         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
6100         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
6101         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
6102         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
6103         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
6104         Likewise.
6105         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
6106         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
6107         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
6108         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
6109         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
6110         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
6111         Likewise.
6112
6113         Avoid gcc warning on cygwin.
6114         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
6115         !ACL_NO_TRIVIAL]: Avoid unused variable.
6116
6117 2008-06-05  Eric Blake  <ebb9@byu.net>
6118
6119         Be tolerant of UNKNOWN version in gnulib-tool test dir.
6120         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
6121         git-version-gen fails to come up with a version.
6122         Reported by Simon Josefsson.
6123
6124 2008-06-05  Jim Meyering  <meyering@redhat.com>
6125             Paul Eggert  <eggert@cs.ucla.edu>
6126
6127         utimens.c: work around a probable Linux kernel bug
6128         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
6129         appears to be a kernel bug that causes utimensat to return 280
6130         instead of 0, indicating success.
6131
6132 2008-06-04  Bruno Haible  <bruno@clisp.org>
6133
6134         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
6135         2008-06-01 commit.
6136
6137 2008-06-04  Bruno Haible  <bruno@clisp.org>
6138
6139         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
6140         * lib/file-has-acl.c (acl_access_nontrivial): New function.
6141         (file_has_acl): Use it. Save errno afterwards.
6142         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
6143
6144 2008-06-03  Bruno Haible  <bruno@clisp.org>
6145
6146         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
6147         draft code. Simplify #ifs.
6148         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
6149         Put Solaris code after POSIX-draft code. Fix comments regarding
6150         Solaris 10, HP-UX. Mention Cygwin.
6151         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
6152
6153 2008-06-03  Eric Blake  <ebb9@byu.net>
6154
6155         Provide fallback for older kernels.
6156         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
6157         Provide runtime fallback if kernel lacks support.
6158         Reported by Mike Frysinger.
6159
6160 2008-06-02  Bruno Haible  <bruno@clisp.org>
6161
6162         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
6163         it exists.
6164
6165 2008-06-02  Bruno Haible  <bruno@clisp.org>
6166
6167         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
6168         * lib/copy-acl.c (qcopy_acl): Update comment.
6169
6170 2008-06-02  Bruno Haible  <bruno@clisp.org>
6171
6172         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
6173         like ACL APIs.
6174
6175 2008-06-02  Bruno Haible  <bruno@clisp.org>
6176
6177         * tests/test-file-has-acl.sh: Use different code for Cygwin.
6178         * tests/test-set-mode-acl.sh: Likewise.
6179         * tests/test-copy-acl.sh: Likewise.
6180         * tests/test-copy-file.sh: Likewise.
6181
6182 2008-06-02  Bruno Haible  <bruno@clisp.org>
6183
6184         * tests/test-file-has-acl.sh: Remove unused code.
6185
6186 2008-06-01  Bruno Haible  <bruno@clisp.org>
6187
6188         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
6189         (copy_acl): Just a wrapper around qcopy_acl that emits the error
6190         messages.
6191         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
6192
6193 2008-06-01  Bruno Haible  <bruno@clisp.org>
6194
6195         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
6196         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
6197         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
6198         APIs.
6199         * modules/acl-tests (configure.ac): Remove tests now contained in
6200         m4/acl.m4.
6201
6202 2008-06-02  Jim Meyering  <meyering@redhat.com>
6203
6204         announce-gen: use a better key-server host name
6205         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
6206         it may be more consistently reliable.  Suggested by Werner Koch
6207         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
6208
6209 2008-06-01  Bruno Haible  <bruno@clisp.org>
6210
6211         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
6212         Reported by Voroskoi Andras <voroskoi@gmail.com>.
6213
6214 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
6215
6216         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
6217
6218 2008-06-01  Bruno Haible  <bruno@clisp.org>
6219
6220         New ACL tests.
6221         * tests/test-file-has-acl.sh: New file.
6222         * tests/test-file-has-acl.c: New file.
6223         * tests/test-set-mode-acl.sh: New file.
6224         * tests/test-set-mode-acl.c: New file.
6225         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
6226         * tests/test-copy-acl.c: New file.
6227         * modules/acl-tests: New file, based on modules/copy-file-tests.
6228         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
6229         (Depends-on): Add acl-tests.
6230         (configure.ac): Remove checks.
6231         (Makefile.am): Don't create test-sameacls program here any more.
6232
6233 2008-06-01  Bruno Haible  <bruno@clisp.org>
6234
6235         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
6236         * tests/test-sameacls.c: Include progname.h.
6237         (main): Invoke set_program_name. Portability fixes for MacOS X,
6238         Solaris, HP-UX.
6239
6240 2008-06-01  Bruno Haible  <bruno@clisp.org>
6241
6242         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
6243         function.
6244         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
6245
6246 2008-06-01  Bruno Haible  <bruno@clisp.org>
6247
6248         * modules/rpmatch (Depends-on): Add strdup.
6249
6250 2008-06-01  Bruno Haible  <bruno@clisp.org>
6251
6252         * lib/pipe.c: Include unistd-safer.h.
6253         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
6254         * modules/pipe (Depends-on): Add unistd-safer.
6255
6256 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6257
6258         * modules/autobuild (configure.ac): Call AB_INIT.
6259
6260 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6261
6262         * tests/test-getaddrinfo.c: Don't print debug messages by default.
6263         Suggested by Bruno Haible <bruno@clisp.org>.
6264
6265 2008-05-30  Simon Josefsson  <simon@josefsson.org>
6266
6267         * tests/test-base64.c: Cast size_t to unsigned long when invoking
6268         printf.  Use %lu instead of %d.  Reported by Bruno Haible
6269         <bruno@clisp.org>.
6270
6271 2008-05-29  Eric Blake  <ebb9@byu.net>
6272
6273         Prefer new POSIX 200x interfaces over futimesat.
6274         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
6275         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
6276         when available.
6277         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
6278
6279 2008-05-28  Bruno Haible  <bruno@clisp.org>
6280
6281         * modules/stpcpy (License): Change to LGPLv2+.
6282         Requested by David Lutterkort <dlutter@redhat.com>.
6283
6284 2008-05-27  Bruno Haible  <bruno@clisp.org>
6285
6286         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
6287         current mingw.
6288         Reported by Jose E. Marchesi <jemarch@gnu.org>.
6289
6290 2008-05-27  Bruno Haible  <bruno@clisp.org>
6291
6292         * modules/iconv_open (Link): New section, from module 'iconv'.
6293         * modules/striconv (Link): Likewise.
6294         * modules/striconveh (Link): Likewise.
6295         * modules/xstriconv (Link): Likewise.
6296         * modules/unicodeio (Link): Likewise.
6297         * modules/propername (Link): Likewise.
6298         Reported by Jim Meyering.
6299
6300 2008-05-26  Jim Meyering  <meyering@redhat.com>
6301
6302         sha256: do not artificially restrict buffer length to be < 2^32
6303         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
6304         uint32_t to size_t.
6305         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
6306         to match.
6307
6308         avoid unaligned access errors, e.g., on sparc
6309         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
6310         direct access through a possibly-unaligned uint64* pointer.
6311         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
6312         direct access through a possibly-unaligned uint32* pointer.
6313         Prompted by this patch from Tom "spot" Callaway:
6314         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
6315
6316         sha512.c: fix typo in comment
6317         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
6318
6319 2008-05-25  Bruno Haible  <bruno@clisp.org>
6320
6321         * lib/set-mode-acl.c: Renamed from lib/acl.c.
6322         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
6323         (Makefile.am): Update lib_SOURCES.
6324
6325 2008-05-25  Bruno Haible  <bruno@clisp.org>
6326
6327         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
6328
6329 2008-05-25  Jim Meyering  <meyering@redhat.com>
6330
6331         useless-if-before-free: freed expr may have white-space differences
6332         * build-aux/useless-if-before-free: Recognize cases in which the
6333         freed expression differs from the tested one in embedded white
6334         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
6335         $1 was used, so we can't make any regexp shy.  Improved tests now
6336         detect this.
6337
6338         useless-if-before-free: accept white space in the expression.
6339         * build-aux/useless-if-before-free: For now, any white space
6340         in the expression must be identical in the free argument.
6341
6342         useless-if-before-free: efficiency tweak
6343         * build-aux/useless-if-before-free: Make the expression-matching
6344         regexp "shy".
6345         Make the *outer* regexp shy, not the expr-matching one.
6346
6347         update code-in-comment to accept cast of free arg
6348         * build-aux/useless-if-before-free: Update regexp.
6349
6350 2008-05-25  Bruno Haible  <bruno@clisp.org>
6351
6352         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
6353         * modules/copy-file-tests (Files, Makefile.am): Update.
6354         * tests/test-copy-file.c (func_test_copy): Update.
6355
6356 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
6357
6358         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
6359
6360 2008-05-23  Bruno Haible  <bruno@clisp.org>
6361
6362         Improve support for ACLs on OSF/1.
6363         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
6364         Remove fallback for unknown flavors of ACLs.
6365
6366 2008-05-22  Bruno Haible  <bruno@clisp.org>
6367
6368         Add support for ACLs on OSF/1.
6369         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
6370         replacements.
6371         (acl_free_text): New macro fallback.
6372         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
6373         acl_free.
6374         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
6375         acl_free_text function. Require AC_C_INLINE.
6376
6377 2008-05-22  Bruno Haible  <bruno@clisp.org>
6378
6379         Make copy_acl work on MacOS X 10.5.
6380         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
6381         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
6382         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
6383         If MODE_INSIDE_ACL, don't assume that every system has the same text
6384         representation for ACLs as FreeBSD.
6385         * lib/copy-acl.c (copy_acl): Add support for platforms with
6386         !MODE_INSIDE_ACL.
6387         * lib/file-has-acl.c (file_has_acl): Likewise.
6388         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
6389         FreeBSD, MacOS X, or IRIX, respectively.
6390
6391 2008-05-22  Bruno Haible  <bruno@clisp.org>
6392
6393         * lib/acl.h: Don't include <sys/acl.h>.
6394         (GETACLCNT): Move fallback to lib/acl-internal.h.
6395         * lib/acl-internal.h: Include <sys/acl.h> here.
6396         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
6397
6398 2008-05-22  Bruno Haible  <bruno@clisp.org>
6399
6400         Split off copy_acl function to separate file.
6401         * lib/copy-acl.c: New file, extracted from lib/acl.c.
6402         * lib/acl.c (copy_acl): Moved function to separate file.
6403         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
6404         * modules/acl (Files): Add lib/copy-acl.c.
6405         (Makefiles.am): Augment lib_SOURCES.
6406
6407 2008-05-22  Bruno Haible  <bruno@clisp.org>
6408
6409         * modules/copy-file-tests: New file.
6410         * tests/test-copy-file.sh: New file.
6411         * tests/test-copy-file.c: New file.
6412         * tests/test-copy-file-sameacls.c: New file.
6413
6414 2008-05-22  Eric Blake  <ebb9@byu.net>
6415
6416         Avoid gcc warning.
6417         * tests/test-memcmp.c (main): Pass NULL indirectly.
6418
6419 2008-05-21  Bruno Haible  <bruno@clisp.org>
6420
6421         Add reference doc about ACLs.
6422         * doc/acl-resources.txt: New file.
6423         * doc/acl-cygwin.txt: New file.
6424
6425 2008-05-21  Bruno Haible  <bruno@clisp.org>
6426
6427         Avoid one more warning from gcc.
6428         * lib/vasnprintf.c (IF_LINT): Update comments.
6429         (VASNPRINTF): Use it also for the 'prefix' array initializer.
6430
6431 2008-05-21  Jim Meyering  <meyering@redhat.com>
6432
6433         avoid a warning from gcc
6434         * lib/vasnprintf.c (IF_LINT): Define.
6435         (scale10_round_decimal_long_double):
6436         Use it to avoid a "may be used uninitialized" warning.
6437         (scale10_round_decimal_double): Likewise.
6438
6439 2008-05-21  Simon Josefsson  <simon@josefsson.org>
6440
6441         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
6442         declared.
6443
6444 2008-05-20  Bruno Haible  <bruno@clisp.org>
6445
6446         * tests/test-memcmp.c (main): Test also the sign of the result. Test
6447         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
6448
6449 2008-05-20  Simon Josefsson  <simon@josefsson.org>
6450
6451         * modules/memcmp-tests: New file.
6452         * tests/test-memcmp.c: New file.
6453
6454 2008-05-19  Bruno Haible  <bruno@clisp.org>
6455
6456         * modules/propername (Notice, configure.ac): Put quoted "..." into
6457         --keyword option.
6458         * lib/propername.h: Update comments accordingly.
6459         Reported by Eric Blake.
6460
6461 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
6462
6463         * modules/getpass-gnu (Depends-on): Add fseeko.
6464
6465 2008-05-19  Simon Josefsson  <simon@josefsson.org>
6466
6467         * modules/base64-tests: New file.
6468
6469 2008-05-19  Bo Borgerson <gigabo@gmail.com>
6470
6471         * lib/base64.c (base64_decode_ctx): If a decode context structure
6472         was passed in use it to ignore newlines.  If a context structure
6473         was _not_ passed in, continue to treat newlines as garbage (this
6474         is the historical behavior).  Formerly base64_decode.
6475         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
6476         takes a decode context structure.
6477         * lib/base64.h (base64_decode): Macro for four-argument calls.
6478         (base64_decode_alloc): Likewise.
6479         * lib/base64.c (base64_decode_ctx): If a decode context structure
6480         was passed in use it to ignore newlines.  If a context structure
6481         was _not_ passed in, continue to treat newlines as garbage (this
6482         is the historical behavior).  Formerly base64_decode.
6483         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
6484         takes a decode context structure.
6485         * lib/base64.h (base64_decode): Macro for four-argument calls.
6486         (base64_decode_alloc): Likewise.
6487
6488 2008-05-19  Jim Meyering  <meyering@redhat.com>
6489
6490         avoid a warning from gcc
6491         * lib/trim.c (IF_LINT): Define.
6492         (trim2): Use it to avoid a "may be used uninitialized" warning.
6493
6494         Fix doc typo.
6495         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
6496
6497 2008-05-19  Bruno Haible  <bruno@clisp.org>
6498
6499         * doc/glibc-functions/getpass.texi: Document limits of other
6500         implementations.
6501
6502 2008-05-19  Simon Josefsson  <simon@josefsson.org>
6503             Bruno Haible <bruno@clisp.org>
6504
6505         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
6506
6507 2008-05-18  Bruno Haible  <bruno@clisp.org>
6508
6509         * modules/propername: New file, from GNU gettext.
6510         * lib/propername.h: New file, from GNU gettext.
6511         * lib/propername.c: New file, from GNU gettext.
6512         * MODULES.html.sh (Internationalization functions): Add propername.
6513
6514 2008-05-16  Jim Meyering  <meyering@redhat.com>
6515             Bruno Haible  <bruno@clisp.org>
6516
6517         Avoid some warnings from "gcc -Wshadow".
6518         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
6519
6520 2008-05-15  Eric Blake  <ebb9@byu.net>
6521
6522         Extend previous patch to cygwin 1.7.0.
6523         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
6524         fast implementation in cygwin >= 1.7.0.
6525         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
6526         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
6527
6528 2008-05-15  Bruno Haible  <bruno@clisp.org>
6529
6530         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
6531         implementation in glibc >= 2.9.
6532         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
6533         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
6534
6535 2008-05-15  Bruno Haible  <bruno@clisp.org>
6536
6537         * MODULES.html.sh (Internationalization functions): Remove linebreak.
6538         (Unicode string functions): Add unilbrk/*.
6539         Reported by Karl Berry.
6540
6541 2008-05-15  Eric Blake  <ebb9@byu.net>
6542
6543         Fix violation of <stdbool.h> replacement in regex.
6544         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
6545         * lib/regexec.c (re_search_internal): Likewise.
6546         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
6547
6548 2008-05-15  Jim Meyering  <meyering@redhat.com>
6549
6550         avoid distracting test output when git or cvs is not found
6551         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
6552         * tests/test-vc-list-files-git.sh: Likewise.
6553
6554 2008-05-15  Eric Blake  <ebb9@byu.net>
6555
6556         Glibc finally accepted the memmem speedup code, bugzilla #5514.
6557         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
6558         glibc version.
6559         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
6560         * doc/posix-functions/strstr.texi (strstr): Likewise.
6561         * lib/str-two-way.h (MAX): Sychronize with glibc.
6562
6563 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
6564
6565         * lib/regcomp.c (optimize_utf8): Add a note on why we test
6566         opr.ctx_type.
6567         (calc_first): Initialize constraint field.
6568         (duplicate_node_closure): Use it instead of special casing ANCHORS.
6569         Fix grammar.
6570         (duplicate_node): Merge constraint field for all node types.
6571         (calc_eclosure_iter): Look at constraint field for all node types.
6572         * lib/regex_internal.c (create_cd_newstate): Don't look at
6573         opr.ctx_type.
6574
6575 2008-05-14  Bruno Haible  <bruno@clisp.org>
6576
6577         Help GCC to do better code generation.
6578         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
6579         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
6580         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
6581         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
6582         Declare with attribute 'malloc' if supported.
6583
6584 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
6585
6586         use "echo STR|wc -c" rather than unportable "expr length STR"
6587         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
6588         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
6589
6590 2008-05-14  Jim Meyering  <meyering@redhat.com>
6591
6592         use dd ibs=$n count=1 ... rather than less-portable head -c$n
6593         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
6594         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
6595         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
6596         via Collin Lasse.
6597
6598 2008-05-14  Eric Blake  <ebb9@byu.net>
6599
6600         Avoid quadratic growth in gl_LIBSOURCES.
6601         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
6602         Suggested by Bruno Haible.
6603
6604         Test xmemdup0.
6605         * modules/xmemdup0-tests: New file.
6606         * tests/test-xmemdup0.c: Likewise.
6607
6608 2008-05-13  Eric Blake  <ebb9@byu.net>
6609
6610         Split xmemdup0 into its own module.
6611         * modules/xmemdup0: New file.
6612         * lib/xmemdup0.h: Likewise.
6613         * lib/xmemdup0.c: Likewise.
6614         * MODULES.html.sh (Memory management functions): Add xmemdup0.
6615         * lib/xalloc.h (xmemdup0): Remove.
6616         * lib/xmalloc.c (xmemdup0): Likewise.
6617
6618 2008-05-13  Eric Blake  <ebb9@byu.net>
6619             Bruno Haible  <bruno@clisp.org>
6620
6621         Reduce number of forks required during autoconf.
6622         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
6623         and gl_LIBSOURCES_DIR.
6624         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
6625         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
6626         m4_syscmd per file.
6627         <m4_foreach_w>: Move...
6628         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
6629
6630 2008-05-13  Eric Blake  <ebb9@byu.net>
6631
6632         * gnulib-tool: Fix various comment typos.
6633
6634 2008-05-12  Bruno Haible  <bruno@clisp.org>
6635
6636         Tailor the linebreaking algorithm.
6637         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
6638
6639 2008-05-12  Bruno Haible  <bruno@clisp.org>
6640
6641         Update to Unicode 5.0.0.
6642         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
6643         LBP_JV, LBP_JT. Redistribute values.
6644         (unilbrk_table): Change size.
6645         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
6646         Unicode TR#14 rev. 22.
6647         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
6648         LBP_JV, LBP_JT. Redistribute values.
6649         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
6650         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
6651         Update.
6652         * lib/unilbrk/lbrkprop1.h: Regenerated.
6653         * lib/unilbrk/lbrkprop2.h: Regenerated.
6654         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
6655         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
6656         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
6657         Likewise.
6658         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
6659         Likewise.
6660         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
6661         result.
6662         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
6663         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
6664         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
6665         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
6666         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
6667         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
6668
6669 2008-05-11  Bruno Haible  <bruno@clisp.org>
6670
6671         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
6672
6673 2008-05-11  Bruno Haible  <bruno@clisp.org>
6674
6675         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
6676         * modules/unilbrk/gen-lbrk: New file.
6677
6678 2008-05-11  Bruno Haible  <bruno@clisp.org>
6679
6680         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
6681         * m4/sha512.m4 (gl_SHA512): Likewise.
6682
6683 2008-05-11  Jim Meyering  <meyering@redhat.com>
6684
6685         New modules: crypto/sha256, crypto/sha512 (from coreutils)
6686         * modules/crypto/sha256: New file.
6687         * modules/crypto/sha512: Likewise.
6688         * lib/sha256.c: Likewise.
6689         * lib/sha256.h: Likewise.
6690         * lib/sha512.c: Likewise.
6691         * lib/sha512.h: Likewise.
6692         * lib/u64.h: Likewise.
6693         * m4/sha256.m4: Likewise.
6694         * m4/sha512.m4: Likewise.
6695         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
6696
6697 2008-05-10  Bruno Haible  <bruno@clisp.org>
6698
6699         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
6700         (Input/Output <stdio.h>): Add xprintf.
6701         (Signal handling <signal.h>): Add strsignal.
6702         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
6703         (Core language properties): Add func.
6704         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
6705         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
6706         strings.
6707         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
6708         (Input/output): New section.
6709         (File system functions): Add openat-die, stat-macros.
6710         (Networking functions): Add sockets.
6711         (Unicode string functions): Add unictype/*.
6712         (Support for building libraries and executables): Add gperf.
6713         (Support for building documentation): Add agpl-3.0.
6714         (Misc): Add nocrash.
6715
6716 2008-05-10  Bruno Haible  <bruno@clisp.org>
6717
6718         * modules/unictype/gen-ctype: New file.
6719
6720 2008-05-10  Jim Meyering  <meyering@redhat.com>
6721
6722         Make chdir-safer.c more efficient on a system with no symlinks.
6723         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
6724         also if ELOOP is zero.  Suggested by Bruno Haible.
6725
6726         Make chdir-safer.c slightly safer.
6727         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
6728         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
6729
6730         Avoid compile failure on systems without ELOOP (like mingw).
6731         * lib/chdir-safer.c (ELOOP): Define if not already defined.
6732         Reported by Bruno Haible.
6733
6734 2008-05-10  Bruno Haible  <bruno@clisp.org>
6735
6736         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
6737         (is_utf8_encoding): Use a case-insensitive comparison.
6738         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
6739         streq.
6740
6741 2008-05-10  Bruno Haible  <bruno@clisp.org>
6742
6743         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
6744         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
6745         * lib/unilbrk/ulc-common.h (iconv_string_length,
6746         iconv_string_keeping_offsets): Remove declarations.
6747         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
6748         Don't include <iconv.h>, streq.h, xsize.h.
6749         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
6750         conversion.
6751         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
6752         <iconv.h>, streq.h, xsize.h.
6753         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
6754         conversion.
6755         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
6756         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
6757         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
6758         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
6759
6760 2008-05-10  Bruno Haible  <bruno@clisp.org>
6761
6762         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
6763         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
6764
6765         * modules/unilbrk/u32-width-linebreaks-tests: New file.
6766         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
6767
6768         * modules/unilbrk/u16-width-linebreaks-tests: New file.
6769         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
6770
6771         * modules/unilbrk/u8-width-linebreaks-tests: New file.
6772         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
6773
6774         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
6775         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
6776
6777         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
6778         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
6779
6780         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
6781         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
6782
6783         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
6784         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
6785
6786 2008-05-10  Bruno Haible  <bruno@clisp.org>
6787
6788         Split up 'linebreak' module.
6789         * lib/unilbrk.h: New file, based on lib/linebreak.h.
6790         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
6791         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
6792         modifications.
6793         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
6794         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
6795         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
6796         lib/linebreak.c.
6797         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
6798         lib/linebreak.c.
6799         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
6800         lib/linebreak.c.
6801         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
6802         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
6803         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
6804         lib/linebreak.c.
6805         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
6806         lib/linebreak.c.
6807         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
6808         lib/linebreak.c.
6809         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
6810         lib/linebreak.c.
6811         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
6812         lib/linebreak.c.
6813         * modules/unilbrk/base: New file.
6814         * modules/unilbrk/tables: New file.
6815         * modules/unilbrk/u8-possible-linebreaks: New file.
6816         * modules/unilbrk/u16-possible-linebreaks: New file.
6817         * modules/unilbrk/u32-possible-linebreaks: New file.
6818         * modules/unilbrk/ulc-common: New file.
6819         * modules/unilbrk/ulc-possible-linebreaks: New file.
6820         * modules/unilbrk/u8-width-linebreaks: New file.
6821         * modules/unilbrk/u16-width-linebreaks: New file.
6822         * modules/unilbrk/u32-width-linebreaks: New file.
6823         * modules/unilbrk/ulc-width-linebreaks: New file.
6824         * lib/linebreak.h: Remove file.
6825         * lib/linebreak.c: Remove file.
6826         * m4/linebreak.m4: Remove file.
6827         * modules/linebreak: Remove file.
6828         * NEWS: Mention the changes.
6829
6830 2008-05-09  Eric Blake  <ebb9@byu.net>
6831
6832         Add xmemdup0.
6833         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
6834         implementation.
6835         * lib/xmalloc.c (xmemdup0): New C implementation.
6836
6837 2008-05-08  Bruno Haible  <bruno@clisp.org>
6838
6839         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
6840
6841 2008-05-07  Eric Blake  <ebb9@byu.net>
6842
6843         Support cross-compilation of <wctype.h>.
6844         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
6845         AC_CACHE_CHECK.
6846
6847 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
6848
6849         * build-aux/vc-list-files: Add support for bzr.
6850
6851 2008-05-03  Jim Meyering  <meyering@redhat.com>
6852
6853         avoid failed assertion with tight malloc
6854         * tests/test-getndelim2.c: Correct an off-by-one assertion.
6855
6856 2008-05-03  Simon Josefsson  <simon@josefsson.org>
6857
6858         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
6859         are needed from arpa/inet.h.
6860         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
6861         Reported by Bruno Haible.
6862
6863 2008-05-02  Jim Meyering  <meyering@redhat.com>
6864
6865         avoid compilation error on FreeBSD 6
6866         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
6867
6868 2008-05-01  Jim Meyering  <meyering@redhat.com>
6869
6870         useless-if-before-free: correct --help's exit status description
6871         * build-aux/useless-if-before-free (usage): Like grep, exit 0
6872         for one or more matches, etc.  Reported by Bruno Haible.
6873
6874         vc-list-files: make the stand-alone gnulib test work
6875         * modules/vc-list-files-tests (configure.ac):
6876         Define and AC_SUBST abs_aux_dir.
6877         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
6878         $(abs_top_srcdir) to each script and having each of them
6879         duplicate the work of setting PATH, set PATH here, using
6880         the new variable, abs_aux_dir instead.
6881         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
6882         * tests/test-vc-list-files-git.sh: Likewise.
6883         Reported by Bruno Haible.
6884
6885 2008-05-01  Bruno Haible  <bruno@clisp.org>
6886
6887         * lib/getndelim2.c (getndelim2): Fix newsize computation during
6888         reallocation. Rename 'done' to 'found_delimiter'.
6889
6890 2008-05-01  Jim Meyering  <meyering@redhat.com>
6891
6892         vc-list-files: accommodate /bin/sh like the one from Solaris 10
6893         * build-aux/vc-list-files: Use `...`, not $(...).
6894
6895 2008-04-30  Jim Meyering  <meyering@redhat.com>
6896
6897         add tests for vc-list-files
6898         * modules/vc-list-files-tests: New module.
6899         * tests/test-vc-list-files-cvs.sh: New file.
6900         * tests/test-vc-list-files-git.sh: New file.
6901
6902         avoid a warning from gcc
6903         * lib/getndelim2.c (IF_LINT): Define.
6904         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
6905
6906         vc-list-files: work properly with build-aux/cvsu, too
6907         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
6908         to all cvs-based clauses.
6909
6910         vc-list-files: work properly in the CVS+awk case, too
6911         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
6912
6913         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
6914         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
6915         take more than one file argument, so .  Add quotes, just in case $dir
6916         ever contains a shell meta-character.  Prompted by Soren Hansen in
6917         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
6918
6919 2008-04-29  Eric Blake  <ebb9@byu.net>
6920
6921         Optimize getndelim2 to use block operations when possible.
6922         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
6923         freadseek, and memchr2.
6924         * lib/getndelim2.c (getndelim2): Use them for block reads.
6925
6926 2008-04-29  Bruno Haible  <bruno@clisp.org>
6927
6928         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
6929         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
6930         * modules/inet_ntop (Depends-on): Add extensions.
6931         * modules/inet_pton (Depends-on): Likewise.
6932         Reported by Simon Josefsson.
6933
6934 2008-04-29  Jim Meyering  <meyering@redhat.com>
6935
6936         When the is more than one match in a block, match all of them.
6937         * build-aux/useless-if-before-free: Iterate through each block
6938         until there are no more matches.
6939
6940         Fix broken useless-if-before-free script.
6941         * build-aux/useless-if-before-free: Fix typo: missing "?" after
6942         the expression to match cast of argument to free-like function.
6943
6944 2008-04-29  Eric Blake  <ebb9@byu.net>
6945
6946         Use new header.
6947         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
6948
6949 2008-04-29  Jim Meyering  <meyering@redhat.com>
6950
6951         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
6952         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
6953         by gnulib to exist and to declare e.g., inet_ntop.
6954         Don't include "inet_ntop.h", now removed.
6955
6956         * m4/arpa_inet_h.m4: Remove trailing blanks.
6957
6958 2008-04-29  Eric Blake  <ebb9@byu.net>
6959
6960         Silence valgrind on safe reads beyond potential array bounds.
6961         * lib/rawmemchr.valgrind: New file.
6962         * lib/strchrnul.valgrind: Likewise.
6963         * modules/rawmemchr (Files): Distribute new file.
6964         * modules/strchrnul (Files): Likewise.
6965         Suggested by Bruno Haible.
6966
6967 2008-04-29  Bruno Haible  <bruno@clisp.org>
6968
6969         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
6970         (inet_ntop, inet_pton): Change portability warning's wording.
6971         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
6972         Invoke gl_CHECK_NEXT_HEADERS.
6973         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
6974         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
6975         set ARPA_INET_H.
6976         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
6977         * modules/arpa_inet (Description): No longer only for systems that
6978         lack it.
6979         (Depends-on): Add include_next.
6980         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
6981         HAVE_ARPA_INET_H.
6982
6983 2008-04-29  Jim Meyering  <meyering@redhat.com>
6984
6985         * modules/mkdir (License): Re-license as LGPLv2+.
6986
6987 2008-04-29  Bruno Haible  <bruno@clisp.org>
6988
6989         * modules/rawmemchr (Maintainer): Set to Eric.
6990         * modules/strchrnul (Maintainer): Likewise.
6991
6992 2008-04-29  Simon Josefsson  <simon@josefsson.org>
6993
6994         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
6995         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
6996
6997         * modules/arpa_inet (arpa/inet.h): Use them.
6998
6999 2008-04-28  Eric Blake  <ebb9@byu.net>
7000
7001         Test getndelim2.
7002         * modules/getndelim2-tests: New file.
7003         * tests/test-getndelim2.c: Likewise.
7004         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
7005         stream.
7006         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
7007
7008         * MODULES.html.sh: Document new module.
7009
7010 2008-04-20  Bruno Haible  <bruno@clisp.org>
7011
7012         * lib/c-stack.c (die): Use raise.
7013         * modules/c-stack (Depends-on): Add raise.
7014
7015 2008-04-28  Bruno Haible  <bruno@clisp.org>
7016
7017         Expect rpmatch to be declared.
7018         * lib/yesno.c (rpmatch): Remove declaration.
7019
7020         Declare rpmatch.
7021         * lib/stdlib.in.h (rpmatch): New declaration.
7022         * lib/rpmatch.c: Include <stdlib.h> first.
7023         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
7024         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
7025         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
7026         HAVE_RPMATCH.
7027         * modules/rpmatch (Depends-on): Add stdlib, extensions.
7028         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7029         (Include): Set to <stdlib.h>.
7030         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
7031         HAVE_RPMATCH.
7032         * NEWS: Document the change.
7033
7034 2008-04-28  Bruno Haible  <bruno@clisp.org>
7035
7036         Change rpmatch to use nl_langinfo when appropriate.
7037         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
7038         (N_): New macro.
7039         (localized_pattern): New function/macro.
7040         (try): Remove match, nomatch arguments. Copy the pattern into safe
7041         memory before caching it.
7042         (rpmatch): Use localized_pattern. Add translator comments.
7043         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
7044         Suggested by Eric Blake.
7045         * modules/rpmatch (Depends-on): Add stdbool.
7046
7047 2008-04-28  Eric Blake  <ebb9@byu.net>
7048
7049         Add rawmemchr module, matching glibc.
7050         * modules/string (Makefile.am): New indicator.
7051         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
7052         * lib/string.in.h (rawmemchr): Declare when appropriate.
7053         * modules/rawmemchr: New file.
7054         * m4/rawmemchr.m4: Likewise.
7055         * lib/rawmemchr.c: Likewise.
7056         * modules/rawmemchr-tests: Likewise.
7057         * tests/test-rawmemchr.c: Likewise.
7058         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
7059         module.
7060         * modules/strchrnul (Depends-on): Add rawmemchr.
7061         * lib/strchrnul.c (strchrnul): Optimize a corner case.
7062
7063         Whitespace cleanup.
7064         * tests/test-strchrnul.c: Reindent.
7065         * lib/strchrnul.c: Likewise.
7066
7067         Optimize and test strchrnul.
7068         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
7069         * modules/strchrnul-tests: New file.
7070         * tests/test-strchrnul.c: Likewise.
7071
7072         Remove intprops dependency.
7073         * modules/memchr (Depends-on): Remove intprops.
7074         * modules/memrchr (Depends-on): Likewise.
7075         * modules/memchr2 (Depends-on): Likewise.
7076         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
7077         * lib/memrchr.c (__memrchr): Likewise.
7078         * lib/memrchr2.c (memchr2): Likewise.
7079         Reported by Simon Josefsson.
7080
7081 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7082
7083         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
7084         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7085
7086 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7087
7088         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
7089
7090         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
7091
7092         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
7093
7094         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
7095         declarations.
7096         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
7097
7098         * m4/inet_pton.m4: Don't check for header files.
7099
7100         * m4/inet_ntop.m4: Don't check for header files.
7101
7102 2008-04-28  Simon Josefsson  <simon@josefsson.org>
7103
7104         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
7105         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
7106         trigger for cygwin).
7107         Reported by Bruno Haible  <bruno@clisp.org>.
7108
7109 2008-04-28  Bruno Haible  <bruno@clisp.org>
7110
7111         * doc/posix-functions/strdup.texi: Mention mingw problem.
7112
7113 2008-04-27  Bruno Haible  <bruno@clisp.org>
7114
7115         * modules/stat-time-tests (Depends-on): Add sleep.
7116         * tests/test-stat-time.c (force_unlink): New function.
7117         (cleanup): Use it.
7118         (test_mtime): Remove the ctime related tests.
7119         (test_ctime): New function, containing the ctime related tests.
7120         (main): Call test_ctime, except on native Windows platforms.
7121
7122 2008-04-27  Bruno Haible  <bruno@clisp.org>
7123
7124         * lib/rpmatch.c (rpmatch): Add some comments.
7125         Reported by James Youngman <jay@gnu.org>.
7126
7127 2008-04-27  Bruno Haible  <bruno@clisp.org>
7128
7129         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
7130         quiet NaNs.
7131
7132 2008-04-27  Bruno Haible  <bruno@clisp.org>
7133
7134         Make test-yesno.sh work on mingw.
7135         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
7136         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
7137         (main): Set stdin to binary mode.
7138         * modules/yesno-tests (Depends-on): Add binary-io.
7139
7140 2008-04-27  Bruno Haible  <bruno@clisp.org>
7141
7142         Fix 'isfinite' on x86, x86_64, ia64 platforms.
7143         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
7144         argument that lie outside the IEEE 854 domain.
7145         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
7146         (gl_ISFINITE): Use it.
7147         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
7148
7149 2008-04-27  Bruno Haible  <bruno@clisp.org>
7150
7151         Allow local renaming in config.h.
7152         * lib/memrchr.c (memrchr): Don't undefine outside libc.
7153
7154 2008-04-27  Bruno Haible  <bruno@clisp.org>
7155
7156         * lib/memchr.c (__memchr): Change type of 'i'.
7157         * lib/memchr2.c (memchr2): Likewise.
7158
7159 2008-04-26  Eric Blake  <ebb9@byu.net>
7160         and Bruno Haible  <bruno@clisp.org>
7161
7162         Optimize and test memrchr.
7163         * modules/memrchr (Depends-on): Add intprops.
7164         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
7165         * modules/memrchr-tests: New file.
7166         * tests/test-memrchr.c: New file.
7167
7168 2008-04-26  Bruno Haible  <bruno@clisp.org>
7169
7170         Add tentative support for DragonFly BSD.
7171         * lib/stdio-impl.h: Add macros for DragonFly BSD.
7172         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
7173         fp.
7174         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
7175         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
7176         * lib/fpurge.c (fpurge): Likewise.
7177         * lib/freadable.c (freaadable): Likewise.
7178         * lib/freadahead.c (freadahead): Likewise.
7179         * lib/freading.c (freading): Likewise.
7180         * lib/freadptr.c (freadptr): Likewise.
7181         * lib/freadseek.c (freadptrinc): Likewise.
7182         * lib/fseeko.c (fseeko): Likewise.
7183         * lib/fseterr.c (fseterr): Likewise.
7184         * lib/fwritable.c (fwritable): Likewise.
7185         * lib/fwriting.c (fwriting): Likewise.
7186
7187 2008-04-26  Bruno Haible  <bruno@clisp.org>
7188
7189         * lib/stdio-impl.h: New file.
7190         * lib/fbufmode.c: Include stdio-impl.h.
7191         (fbufmode): Use fp_, remove redundant #defines.
7192         * lib/fflush.c: Include stdio-impl.h.
7193         (clear_ungetc_buffer): Remove redundant #defines.
7194         * lib/fpurge.c: Include stdio-impl.h.
7195         (fpurge): Remove redundant #defines.
7196         * lib/freadable.c: Include stdio-impl.h.
7197         (freadable): Remove redundant #defines.
7198         * lib/freadahead.c: Include stdio-impl.h.
7199         (freadahead): Remove redundant #defines.
7200         * lib/freading.c: Include stdio-impl.h.
7201         (freading): Remove redundant #defines.
7202         * lib/freadptr.c: Include stdio-impl.h.
7203         (freadptr): Remove redundant #defines.
7204         * lib/freadseek.c: Include stdio-impl.h.
7205         (freadptrinc): Remove redundant #defines.
7206         * lib/fseeko.c: Include stdio-impl.h.
7207         (rpl_fseeko): Remove redundant #defines.
7208         * lib/fseterr.c: Include stdio-impl.h.
7209         (fseterr): Remove redundant #defines.
7210         * lib/fwritable.c: Include stdio-impl.h.
7211         (fwritable: Remove redundant #defines.
7212         * lib/fwriting.c: Include stdio-impl.h.
7213         (fwriting): Remove redundant #defines.
7214         * modules/fbufmode (Files): Add lib/stdio-impl.h.
7215         * modules/fflush (Files): Likewise.
7216         * modules/fpurge (Files): Likewise.
7217         * modules/freadable (Files): Likewise.
7218         * modules/freadahead (Files): Likewise.
7219         * modules/freading (Files): Likewise.
7220         * modules/freadptr (Files): Likewise.
7221         * modules/freadseek (Files): Likewise.
7222         * modules/fseeko (Files): Likewise.
7223         * modules/fseterr (Files): Likewise.
7224         * modules/fwritable (Files): Likewise.
7225         * modules/fwriting (Files): Likewise.
7226
7227 2008-04-26  Bruno Haible  <bruno@clisp.org>
7228
7229         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
7230         restore_seek_optimization, update_fpos_cache): New functions, extracted
7231         from rpl_fflush.
7232         (rpl_fflush): Use them.
7233         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
7234         (gl_REPLACE_FFLUSH): Use it.
7235
7236 2008-04-26  Bruno Haible  <bruno@clisp.org>
7237
7238         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
7239         on Solaris.
7240         * tests/test-xstrtoimax.sh: Likewise.
7241         * tests/test-xstrtoumax.sh: Likewise.
7242         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7243
7244 2008-04-26  Bruno Haible  <bruno@clisp.org>
7245
7246         * modules/memchr-tests: New file.
7247         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
7248
7249 2008-04-26  Eric Blake  <ebb9@byu.net>
7250             Bruno Haible  <bruno@clisp.org>
7251
7252         * lib/memchr.c: Include intprops.h.
7253         (__memchr): Optimize parallel detection of matching bytes. Rename local
7254         variables. Add explanatory comments.
7255
7256 2008-04-26  Bruno Haible  <bruno@clisp.org>
7257
7258         Fix module 'memchr', broken since 2000-10-28.
7259         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
7260
7261 2008-04-26  Bruno Haible  <bruno@clisp.org>
7262
7263         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
7264         comments.
7265
7266 2008-04-25  Eric Blake  <ebb9@byu.net>
7267
7268         Use native fstatat on cygwin 1.7.0.
7269         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
7270         first.
7271
7272 2008-04-23  Eric Blake  <ebb9@byu.net>
7273
7274         Improve memchr2 performance.
7275         * lib/memchr2.c (memchr2): Further optimize parallel detection of
7276         NUL bytes.
7277         * modules/memchr2 (Depends-on): Use intprops.h.
7278
7279 2008-04-23  Simon Josefsson  <simon@josefsson.org>
7280
7281         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
7282         an inline function instead of a CPP macro.  Patch by Ben Pfaff
7283         <blp@cs.stanford.edu>.
7284
7285 2008-04-23  Simon Josefsson  <simon@josefsson.org>
7286
7287         * lib/arpa_inet.in.h: New file.
7288
7289         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
7290         (Makefile.am): Sed in substitute header file.
7291
7292         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
7293         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
7294
7295         * modules/inet_ntop (configure.ac): Use
7296         gl_ARPA_INET_MODULE_INDICATOR.
7297
7298         * modules/inet_pton (configure.ac): Use
7299         gl_ARPA_INET_MODULE_INDICATOR.
7300
7301 2008-04-22  Jim Meyering  <meyering@redhat.com>
7302
7303         * modules/verify (License): Re-license as LGPLv2+.
7304
7305 2008-04-22  Simon Josefsson  <simon@josefsson.org>
7306
7307         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
7308         parameter to void* as per POSIX standard (MinGW uses char*).
7309
7310 2008-04-21  Bruno Haible  <bruno@clisp.org>
7311
7312         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
7313         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
7314         Define to replacements if REPLACE_ISWCNTRL is 1.
7315         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
7316         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
7317         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
7318         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
7319         what it fixes.
7320         * doc/posix-functions/iswalpha.texi: Likewise.
7321         * doc/posix-functions/iswblank.texi: Likewise.
7322         * doc/posix-functions/iswcntrl.texi: Likewise.
7323         * doc/posix-functions/iswdigit.texi: Likewise.
7324         * doc/posix-functions/iswgraph.texi: Likewise.
7325         * doc/posix-functions/iswlower.texi: Likewise.
7326         * doc/posix-functions/iswprint.texi: Likewise.
7327         * doc/posix-functions/iswpunct.texi: Likewise.
7328         * doc/posix-functions/iswspace.texi: Likewise.
7329         * doc/posix-functions/iswupper.texi: Likewise.
7330         * doc/posix-functions/iswxdigit.texi: Likewise.
7331         Reported by Alain Guibert.
7332
7333 2008-04-21  Bruno Haible  <bruno@clisp.org>
7334
7335         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
7336         Patch by Alain Guibert.
7337
7338 2008-04-21  Bruno Haible  <bruno@clisp.org>
7339
7340         Fix test failures on mingw.
7341         * tests/test-xstrtol.c (print_no_progname): New function.
7342         (main): Install it in error_print_progname hook.
7343         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
7344         * tests/test-xstrtoimax.sh: Likewise.
7345         * tests/test-xstrtoumax.sh: Likewise.
7346
7347 2008-04-21  Bruno Haible  <bruno@clisp.org>
7348
7349         Fix test failure on mingw.
7350         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
7351
7352 2008-04-21  Bruno Haible  <bruno@clisp.org>
7353
7354         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
7355         Actually assign a value.
7356
7357 2008-04-20  Bruno Haible  <bruno@clisp.org>
7358
7359         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
7360         take 2.
7361         * lib/canonicalize.c (canonicalize_file_name): Elide if the
7362         'canonicalize-lgpl' module is also used.
7363         * lib/canonicalize-lgpl.c: Undo last change.
7364         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
7365
7366 2008-04-20  Bruno Haible  <bruno@clisp.org>
7367
7368         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
7369         config.h. Provide _mkdir based fallback for mingw.
7370         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
7371         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
7372         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
7373         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
7374         rather than defining mkdir in config.h.
7375         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
7376         (gl_SYS_STAT_H_DEFAULTS): New macro.
7377         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
7378         HAVE_IO_H any more.
7379         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
7380         HAVE_DECL_MKDIR and HAVE_IO_H.
7381
7382 2008-04-20  Bruno Haible  <bruno@clisp.org>
7383
7384         * lib/isapipe.c: Port to native Windows platforms.
7385
7386 2008-04-20  Bruno Haible  <bruno@clisp.org>
7387
7388         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
7389
7390 2008-04-21  Eric Blake  <ebb9@byu.net>
7391
7392         Work around preprocessors that don't handle UINTMAX_MAX.
7393         * lib/memchr2.c (memchr2): Avoid embedded #if.
7394         Reported by Alain Guibert, fix suggested by Bruno Haible.
7395
7396 2008-04-21  Simon Josefsson  <simon@josefsson.org>
7397
7398         * doc/posix-functions/strftime.texi (strftime): Explain better
7399         Windows incompatibility.  Suggested by Micah Cowan
7400         <micah@cowan.name>.
7401
7402 2008-04-20  Bruno Haible  <bruno@clisp.org>
7403
7404         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
7405         unistr/u8-mblen.
7406
7407 2008-04-20  Bruno Haible  <bruno@clisp.org>
7408
7409         Fix test failure on platforms with non-GNU iconv.
7410         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
7411         (U_TO_U8): Use it, rather than u16_to_u8.
7412         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
7413         units at the end of the input string.
7414         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
7415
7416 2008-04-20  Bruno Haible  <bruno@clisp.org>
7417
7418         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
7419         when the resulting length is 0.
7420         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
7421
7422 2008-04-20  Bruno Haible  <bruno@clisp.org>
7423
7424         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
7425         works.
7426         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
7427
7428 2008-04-20  Bruno Haible  <bruno@clisp.org>
7429
7430         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
7431         * modules/tsearch-tests (configure.ac): Test for initstate function.
7432
7433 2008-04-20  Bruno Haible  <bruno@clisp.org>
7434
7435         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
7436         for nlink_t if missing.
7437         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
7438
7439 2008-04-19  Bruno Haible  <bruno@clisp.org>
7440
7441         Work around snprintf bug on Linux libc5.
7442         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
7443         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
7444         gl_SNPRINTF_SIZE1.
7445         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
7446         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
7447         that test failed.
7448         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
7449         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
7450         * modules/snprintf (Files): Add m4/printf.m4.
7451         * modules/vsnprintf (Files): Likewise.
7452         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
7453         * doc/posix-functions/vsnprintf.texi: Likewise.
7454
7455 2008-04-19  Bruno Haible  <bruno@clisp.org>
7456
7457         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
7458         from 0.0058 to less than 10^-7.
7459
7460 2008-04-19  Bruno Haible  <bruno@clisp.org>
7461
7462         Fix rounding when a precision is given.
7463         * lib/vasnprintf.c (is_borderline): New function.
7464         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
7465         9...9x.
7466         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
7467         %e, %g.
7468         * tests/test-vasprintf-posix.c (test_function): Likewise.
7469         * tests/test-snprintf-posix.h (test_function): Likewise.
7470         * tests/test-sprintf-posix.h (test_function): Likewise.
7471         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
7472         * tests/test-printf-posix.h (test_function): Likewise.
7473         * tests/test-printf-posix.output: Update.
7474         Reported by John Darrington <john@darrington.wattle.id.au> via
7475         Ben Pfaff <blp@cs.stanford.edu>.
7476
7477 2008-04-18  Simon Josefsson  <simon@josefsson.org>
7478
7479         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
7480         Suggested by Bruno Haible <bruno@clisp.org>.
7481
7482 2008-04-17  Bruno Haible  <bruno@clisp.org>
7483
7484         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
7485         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
7486         implementation.
7487         Patch by Bruce Merry <bmerry@gmail.com>.
7488
7489 2008-04-17  Simon Josefsson  <simon@josefsson.org>
7490
7491         * doc/posix-functions/strftime.texi (strftime): Mention that %e
7492         doesn't work under Windows.
7493
7494 2008-04-16  Bruno Haible  <bruno@clisp.org>
7495
7496         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
7497         New macros.
7498         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
7499         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
7500         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
7501         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
7502         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
7503         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
7504         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
7505         macros.
7506         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
7507         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
7508         Northern Sotho, Uighur.
7509
7510 2008-04-16  Bruno Haible  <bruno@clisp.org>
7511
7512         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
7513         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
7514         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
7515         Reported by Daniel Bergström <daniel@octocode.com>.
7516
7517 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
7518             Bruno Haible  <bruno@clisp.org>
7519
7520         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
7521         function.
7522         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
7523         New functions, mostly extracted from gl_locale_name_default.
7524         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
7525
7526 2008-04-16  Eric Blake  <ebb9@byu.net>
7527
7528         Adjust strtod detection to catch glibc 2.7 bug.
7529         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
7530         Reported by John Gatewood Ham.
7531
7532 2008-04-16  Bruno Haible  <bruno@clisp.org>
7533
7534         Add tentative support for Linux libc5.
7535         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
7536         * lib/fpurge.c (fpurge): Likewise.
7537         * lib/freadable.c (freadable): Likewise.
7538         * lib/freadahead.c (freadahead): Likewise.
7539         * lib/freading.c (freading): Likewise.
7540         * lib/freadptr.c (freadptr): Likewise.
7541         * lib/freadseek.c (freadptrinc): Likewise.
7542         * lib/fseeko.c (rpl_fseeko): Likewise.
7543         * lib/fseterr.c (fseterr): Likewise.
7544         * lib/fwritable.c (fwritable): Likewise.
7545         * lib/fwriting.c (fwriting): Likewise.
7546         Reported by Alain Guibert <alguibert+bts@free.fr>.
7547
7548 2008-04-15  Bruno Haible  <bruno@clisp.org>
7549
7550         * modules/mathl (configure.ac): Define module indicator.
7551
7552 2008-04-15  Bruno Haible  <bruno@clisp.org>
7553
7554         * lib/logl.c (logl): Remove unused variables.
7555
7556 2008-04-15  Bruno Haible  <bruno@clisp.org>
7557
7558         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
7559         fails.
7560
7561 2008-04-15  Bruno Haible  <bruno@clisp.org>
7562
7563         * lib/trim.c (trim2): Fix argument of isspace() macro.
7564
7565 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
7566
7567         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
7568         to 0.
7569         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
7570
7571 2008-04-14  Bruno Haible  <bruno@clisp.org>
7572
7573         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
7574         AC_LANG_PROGRAM argument.
7575         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
7576         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
7577         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
7578         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
7579         * m4/math_h.m4 (gl_MATH_H): Likewise.
7580         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
7581         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
7582         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
7583         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
7584         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
7585         * m4/regex.m4 (gl_REGEX): Likewise.
7586         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
7587         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
7588         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
7589         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
7590         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
7591         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
7592         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
7593         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
7594
7595 2008-04-14  Jim Meyering  <meyering@redhat.com>
7596
7597         test-strtod: fix typos: s/abs/fabs/
7598         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
7599
7600 2008-04-13  Bruno Haible  <bruno@clisp.org>
7601
7602         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
7603         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
7604         module is also used and while not building the reloc-wrapper.
7605
7606 2008-04-13  Bruno Haible  <bruno@clisp.org>
7607
7608         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
7609
7610 2008-04-13  Bruno Haible  <bruno@clisp.org>
7611
7612         Fix AIX compilation failure introduced on 2008-04-02.
7613         * tests/test-frexp.c (exp): Undefine before redefining.
7614         * tests/test-frexpl.c (exp): Likewise.
7615
7616 2008-04-13  Bruno Haible  <bruno@clisp.org>
7617
7618         Work around a HP-UX stdio bug.
7619         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
7620         * tests/test-ftello.c (main): Likewise.
7621         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
7622         * doc/posix-functions/ftello.texi: Likewise.
7623
7624 2008-04-13  Bruno Haible  <bruno@clisp.org>
7625
7626         Make test-signbit pass on HP-UX/hppa.
7627         * tests/test-signbit.c (minus_zerol): New variable.
7628         (test_signbitl): Use it.
7629
7630 2008-04-13  Bruno Haible  <bruno@clisp.org>
7631
7632         Make truncl work on OSF/1 4.0.
7633         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
7634         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
7635         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
7636         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
7637         HAVE_DECL_TRUNCL.
7638         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
7639         HAVE_DECL_TRUNCL.
7640         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
7641
7642 2008-04-13  Bruno Haible  <bruno@clisp.org>
7643
7644         * lib/unictype.h: Remove trailing comma from enumeration definitions.
7645
7646 2008-04-13  Bruno Haible  <bruno@clisp.org>
7647
7648         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
7649         expression, so as to avoid HP-UX 11 cc compiler bug.
7650
7651 2008-04-13  Bruno Haible  <bruno@clisp.org>
7652
7653         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
7654
7655 2008-04-13  Bruno Haible  <bruno@clisp.org>
7656
7657         * lib/git-merge-changelog.c: Remove empty declaration outside of
7658         functions.
7659
7660 2008-04-13  Bruno Haible  <bruno@clisp.org>
7661
7662         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
7663
7664 2008-04-13  Bruno Haible  <bruno@clisp.org>
7665
7666         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
7667         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
7668         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
7669         also if it exists but lacks definitions of the SHUT_* macros.
7670         * modules/sys_socket (Description): Update.
7671         Reported by Elbert Pol <e.pol@chello.nl>.
7672
7673 2008-04-13  Bruno Haible  <bruno@clisp.org>
7674
7675         * lib/localcharset.c (OS2): Don't redefine if already defined.
7676         Reported by Elbert Pol <e.pol@chello.nl>.
7677
7678 2008-04-13  Bruno Haible  <bruno@clisp.org>
7679
7680         * lib/binary-io.h [__EMX__]: Include <io.h>.
7681         Reported by Elbert Pol <e.pol@chello.nl>.
7682
7683 2008-04-12  Bruno Haible  <bruno@clisp.org>
7684
7685         * lib/fpucw.h: Enable the definitions also for x86_64.
7686         Needed for NetBSD/x86_64.
7687         Reported by Thomas Klausner <tk@giga.or.at>.
7688
7689 2008-04-12  Bruno Haible  <bruno@clisp.org>
7690
7691         * tests/test-strtod.c: Include isnand.h.
7692         (main): Use isnand instead of isnan.
7693         Reported by Jim Meyering.
7694
7695 2008-04-12  Bruno Haible  <bruno@clisp.org>
7696
7697         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
7698         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
7699
7700 2008-04-12  Jim Meyering  <meyering@redhat.com>
7701
7702         * m4/math_h.m4 (gl_MATH_H): Fix typos.
7703
7704 2008-04-12  Bruno Haible  <bruno@clisp.org>
7705
7706         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
7707         Reported by Elbert Pol <e.pol@chello.nl>.
7708
7709 2008-04-12  Eric Blake  <ebb9@byu.net>
7710
7711         Work around Solaris 10 math.h bug.
7712         * m4/math_h.m4 (gl_MATH_H): Check for bug.
7713         (gl_MATH_H_DEFAULTS): Set up default.
7714         * modules/math (Makefile.am): Replace new indicators.
7715         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
7716         * tests/test-math.c (main): Test this.
7717         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
7718         * doc/posix-headers/math.texi (math.h): Mention bug.
7719         Reported by Nelson H. F. Beebe and Jim Meyering.
7720
7721 2008-04-11  Bruno Haible  <bruno@clisp.org>
7722
7723         Adapt to future versions of Apple GCC.
7724         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
7725         Reported by Peter O'Gorman <peter@pogma.com>.
7726
7727 2008-04-11  Bruno Haible  <bruno@clisp.org>
7728
7729         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
7730
7731 2008-04-11  Bruno Haible  <bruno@clisp.org>
7732
7733         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
7734
7735         * modules/getaddrinfo-tests (Makefile.am): Define
7736         test_getaddrinfo_LDADD.
7737
7738 2008-04-11  Bruno Haible  <bruno@clisp.org>
7739
7740         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
7741         (init): Fix syntax error.
7742         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
7743         is declared.
7744
7745 2008-04-11  Bruno Haible  <bruno@clisp.org>
7746
7747         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
7748         * modules/glob (Depends-on): Add stdbool.
7749
7750 2008-04-11  Bruno Haible  <bruno@clisp.org>
7751
7752         * lib/trim.c: Include <string.h>.
7753
7754 2008-04-11  Eric Blake  <ebb9@byu.net>
7755
7756         Avoid compile failure on OS/2.
7757         * lib/regex_internal.h (internal_function): Disable optimization
7758         on OS/2 (__EMX__), where it caused compiler error.
7759         Reported by Elbert Pol.
7760
7761 2008-04-11  Bruno Haible  <bruno@clisp.org>
7762
7763         Flush the standard error stream before aborting. Needed on mingw.
7764         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
7765         * tests/test-array_list.c (ASSERT): Likewise.
7766         * tests/test-array_oset.c (ASSERT): Likewise.
7767         * tests/test-avltree_list.c (ASSERT): Likewise.
7768         * tests/test-avltree_oset.c (ASSERT): Likewise.
7769         * tests/test-avltreehash_list.c (ASSERT): Likewise.
7770         * tests/test-binary-io.c (ASSERT): Likewise.
7771         * tests/test-byteswap.c (ASSERT): Likewise.
7772         * tests/test-c-ctype.c (ASSERT): Likewise.
7773         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
7774         * tests/test-c-strcasestr.c (ASSERT): Likewise.
7775         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
7776         * tests/test-c-strstr.c (ASSERT): Likewise.
7777         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
7778         * tests/test-canonicalize.c (ASSERT): Likewise.
7779         * tests/test-carray_list.c (ASSERT): Likewise.
7780         * tests/test-ceilf1.c (ASSERT): Likewise.
7781         * tests/test-ceilf2.c (ASSERT): Likewise.
7782         * tests/test-ceill.c (ASSERT): Likewise.
7783         * tests/test-count-one-bits.c (ASSERT): Likewise.
7784         * tests/test-fbufmode.c (ASSERT): Likewise.
7785         * tests/test-fflush2.c (ASSERT): Likewise.
7786         * tests/test-floorf1.c (ASSERT): Likewise.
7787         * tests/test-floorf2.c (ASSERT): Likewise.
7788         * tests/test-floorl.c (ASSERT): Likewise.
7789         * tests/test-fopen.c (ASSERT): Likewise.
7790         * tests/test-fpending.c (ASSERT): Likewise.
7791         * tests/test-fprintf-posix.c (ASSERT): Likewise.
7792         * tests/test-fpurge.c (ASSERT): Likewise.
7793         * tests/test-freadable.c (ASSERT): Likewise.
7794         * tests/test-freadahead.c (ASSERT): Likewise.
7795         * tests/test-freading.c (ASSERT): Likewise.
7796         * tests/test-freadptr.c (ASSERT): Likewise.
7797         * tests/test-freadptr2.c (ASSERT): Likewise.
7798         * tests/test-freadseek.c (ASSERT): Likewise.
7799         * tests/test-freopen.c (ASSERT): Likewise.
7800         * tests/test-frexp.c (ASSERT): Likewise.
7801         * tests/test-frexpl.c (ASSERT): Likewise.
7802         * tests/test-fseek.c (ASSERT): Likewise.
7803         * tests/test-fseeko.c (ASSERT): Likewise.
7804         * tests/test-fstrcmp.c (ASSERT): Likewise.
7805         * tests/test-ftell.c (ASSERT): Likewise.
7806         * tests/test-ftello.c (ASSERT): Likewise.
7807         * tests/test-func.c (ASSERT): Likewise.
7808         * tests/test-fwritable.c (ASSERT): Likewise.
7809         * tests/test-fwriting.c (ASSERT): Likewise.
7810         * tests/test-getdelim.c (ASSERT): Likewise.
7811         * tests/test-getline.c (ASSERT): Likewise.
7812         * tests/test-i-ring.c (ASSERT): Likewise.
7813         * tests/test-iconv-utf.c (ASSERT): Likewise.
7814         * tests/test-iconv.c (ASSERT): Likewise.
7815         * tests/test-isfinite.c (ASSERT): Likewise.
7816         * tests/test-isnand.c (ASSERT): Likewise.
7817         * tests/test-isnanf.c (ASSERT): Likewise.
7818         * tests/test-isnanl.h (ASSERT): Likewise.
7819         * tests/test-ldexpl.c (ASSERT): Likewise.
7820         * tests/test-linked_list.c (ASSERT): Likewise.
7821         * tests/test-linkedhash_list.c (ASSERT): Likewise.
7822         * tests/test-localename.c (ASSERT): Likewise.
7823         * tests/test-lseek.c (ASSERT): Likewise.
7824         * tests/test-mbscasecmp.c (ASSERT): Likewise.
7825         * tests/test-mbscasestr1.c (ASSERT): Likewise.
7826         * tests/test-mbscasestr2.c (ASSERT): Likewise.
7827         * tests/test-mbscasestr3.c (ASSERT): Likewise.
7828         * tests/test-mbscasestr4.c (ASSERT): Likewise.
7829         * tests/test-mbschr.c (ASSERT): Likewise.
7830         * tests/test-mbscspn.c (ASSERT): Likewise.
7831         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
7832         * tests/test-mbspbrk.c (ASSERT): Likewise.
7833         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
7834         * tests/test-mbsrchr.c (ASSERT): Likewise.
7835         * tests/test-mbsspn.c (ASSERT): Likewise.
7836         * tests/test-mbsstr1.c (ASSERT): Likewise.
7837         * tests/test-mbsstr2.c (ASSERT): Likewise.
7838         * tests/test-mbsstr3.c (ASSERT): Likewise.
7839         * tests/test-memchr2.c (ASSERT): Likewise.
7840         * tests/test-memmem.c (ASSERT): Likewise.
7841         * tests/test-open.c (ASSERT): Likewise.
7842         * tests/test-printf-frexp.c (ASSERT): Likewise.
7843         * tests/test-printf-frexpl.c (ASSERT): Likewise.
7844         * tests/test-printf-posix.c (ASSERT): Likewise.
7845         * tests/test-quotearg.c (ASSERT): Likewise.
7846         * tests/test-rbtree_list.c (ASSERT): Likewise.
7847         * tests/test-rbtree_oset.c (ASSERT): Likewise.
7848         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
7849         * tests/test-round1.c (ASSERT): Likewise.
7850         * tests/test-roundf1.c (ASSERT): Likewise.
7851         * tests/test-roundl.c (ASSERT): Likewise.
7852         * tests/test-signbit.c (ASSERT): Likewise.
7853         * tests/test-sleep.c (ASSERT): Likewise.
7854         * tests/test-snprintf-posix.c (ASSERT): Likewise.
7855         * tests/test-snprintf.c (ASSERT): Likewise.
7856         * tests/test-sprintf-posix.c (ASSERT): Likewise.
7857         * tests/test-stat-time.c (ASSERT): Likewise.
7858         * tests/test-strcasestr.c (ASSERT): Likewise.
7859         * tests/test-strerror.c (ASSERT): Likewise.
7860         * tests/test-striconv.c (ASSERT): Likewise.
7861         * tests/test-striconveh.c (ASSERT): Likewise.
7862         * tests/test-striconveha.c (ASSERT): Likewise.
7863         * tests/test-strsignal.c (ASSERT): Likewise.
7864         * tests/test-strstr.c (ASSERT): Likewise.
7865         * tests/test-strtod.c (ASSERT): Likewise.
7866         * tests/test-trunc1.c (ASSERT): Likewise.
7867         * tests/test-trunc2.c (ASSERT): Likewise.
7868         * tests/test-truncf1.c (ASSERT): Likewise.
7869         * tests/test-truncf2.c (ASSERT): Likewise.
7870         * tests/test-truncl.c (ASSERT): Likewise.
7871         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
7872         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
7873         * tests/test-vasnprintf.c (ASSERT): Likewise.
7874         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
7875         * tests/test-vasprintf.c (ASSERT): Likewise.
7876         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
7877         * tests/test-vprintf-posix.c (ASSERT): Likewise.
7878         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
7879         * tests/test-vsnprintf.c (ASSERT): Likewise.
7880         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
7881         * tests/test-wcwidth.c (ASSERT): Likewise.
7882         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
7883         * tests/test-xprintf-posix.c (ASSERT): Likewise.
7884         * tests/test-xvasprintf.c (ASSERT): Likewise.
7885         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
7886         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
7887         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
7888         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
7889         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
7890         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
7891         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
7892         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
7893         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
7894         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
7895         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
7896         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
7897         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
7898         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
7899         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
7900         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
7901         * tests/unictype/test-block_list.c (ASSERT): Likewise.
7902         * tests/unictype/test-block_of.c (ASSERT): Likewise.
7903         * tests/unictype/test-block_test.c (ASSERT): Likewise.
7904         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
7905         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
7906         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
7907         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
7908         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
7909         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
7910         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
7911         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
7912         * tests/unictype/test-combining.c (ASSERT): Likewise.
7913         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
7914         * tests/unictype/test-digit.c (ASSERT): Likewise.
7915         * tests/unictype/test-mirror.c (ASSERT): Likewise.
7916         * tests/unictype/test-numeric.c (ASSERT): Likewise.
7917         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
7918         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
7919         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
7920         * tests/unictype/test-scripts.c (ASSERT): Likewise.
7921         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
7922         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
7923         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
7924         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
7925         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
7926         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
7927         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
7928         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
7929         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
7930         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
7931         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
7932         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
7933         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
7934         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
7935         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
7936         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
7937         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
7938         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
7939         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
7940         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
7941         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
7942         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
7943         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
7944         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
7945         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
7946         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
7947         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
7948         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
7949         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
7950         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
7951         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
7952         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
7953         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
7954         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
7955         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
7956         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
7957         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
7958         Reported by Eric Blake.
7959
7960 2008-04-11  Bruno Haible  <bruno@clisp.org>
7961
7962         * lib/wchar.in.h: Tweak comment.
7963
7964 2008-04-11  Bruno Haible  <bruno@clisp.org>
7965
7966         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
7967         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
7968         gl_COMMON.
7969         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
7970
7971 2008-04-11  Bruno Haible  <bruno@clisp.org>
7972
7973         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
7974
7975 2008-04-11  Simon Josefsson  <simon@josefsson.org>
7976
7977         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
7978         of attempting to use non-existing /dev/*random.  Based on patch
7979         from Adam Strzelecki <ono@java.pl> in
7980         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
7981
7982 2008-04-08  Bruno Haible  <bruno@clisp.org>
7983
7984         Add tentative support for emx+gcc.
7985         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
7986         * lib/fpurge.c (fpurge): Likewise.
7987         * lib/freadable.c (freadable): Likewise.
7988         * lib/freadahead.c (freadahead): Likewise.
7989         * lib/freading.c (freading): Likewise.
7990         * lib/freadptr.c (freadptr): Likewise.
7991         * lib/freadseek.c (freadptrinc): Likewise.
7992         * lib/fseeko.c (rpl_fseeko): Likewise.
7993         * lib/fseterr.c (fseterr): Likewise.
7994         * lib/fwritable.c (fwritable): Likewise.
7995         * lib/fwriting.c (fwriting): Likewise.
7996         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
7997
7998 2008-04-09  Eric Blake  <ebb9@byu.net>
7999
8000         Avoid some autoconf warnings.
8001         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
8002         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
8003         * m4/afs.m4 (gl_AFS): Likewise.
8004         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
8005         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
8006         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
8007         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
8008         (gl_INTEGER_TYPE_SUFFIX): Likewise.
8009         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
8010         (AC_CHECK_DECLS_ONCE): Likewise.
8011         Rename file...
8012         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
8013         gnulib-tool requires autoconf 2.59 or better.
8014         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
8015
8016 2008-04-08  Eric Blake  <ebb9@byu.net>
8017
8018         Use 'git describe --match' if present (added in git 1.5.5).
8019         * build-aux/git-version-gen: Limit result to tags that match 'v*'
8020         if possible.
8021
8022 2008-04-08  Bruno Haible  <bruno@clisp.org>
8023
8024         Add tentative support for OpenServer.
8025         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
8026         _ptr, _cnt.
8027         * lib/fpurge.c (fpurge): Likewise.
8028         * lib/freadable.c (freadable): Likewise.
8029         * lib/freadahead.c (freadahead): Likewise.
8030         * lib/freading.c (freading): Likewise.
8031         * lib/freadptr.c (freadptr): Likewise.
8032         * lib/freadseek.c (freadptrinc): Likewise.
8033         * lib/fseeko.c (rpl_fseeko): Likewise.
8034         * lib/fseterr.c (fseterr): Likewise.
8035         * lib/fwritable.c (fwritable): Likewise.
8036         * lib/fwriting.c (fwriting): Likewise.
8037         Reported by Roger Cornelius <rac@tenzing.org> and
8038         Brian K. White <brian@aljex.com>.
8039
8040 2008-04-06  Jim Meyering  <meyering@redhat.com>
8041
8042         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
8043
8044 2008-04-06  Bruno Haible  <bruno@clisp.org>
8045
8046         Avoid possible error with non-ASCII bytes in UTF-8 locales.
8047         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
8048         * tests/test-printf-posix.sh: Likewise.
8049         * tests/test-vfprintf-posix.sh: Likewise.
8050         * tests/test-vprintf-posix.sh: Likewise.
8051         * tests/test-xprintf-posix.sh: Likewise.
8052
8053 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8054
8055         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
8056         hide error from 'ls', needed on OS/2.
8057         Report by Elbert Pol <elbert.pol@gmail.com>.
8058
8059 2008-04-04  Eric Blake  <ebb9@byu.net>
8060
8061         Make test-fseeko.c failures meaningful.
8062         * tests/test-fseeko.c: Print line number on failure.
8063         * tests/test-fseek.c: Likewise.
8064         Reported by Nelson H. F. Beebe.
8065
8066         Improve strtod bug detection check.
8067         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
8068         required for Solaris 10.
8069         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
8070
8071 2008-04-04  Bruno Haible  <bruno@clisp.org>
8072
8073         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
8074         by m4/setenv.m4.
8075
8076 2008-04-03  Eric Blake  <ebb9@byu.net>
8077
8078         Ensure sane .version contents.
8079         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
8080         version string.
8081         * build-aux/git-version-gen: Improve documentation.
8082
8083         Make GNU make output nicer.
8084         * top/GNUmakefile [!_have-Makefile]: Add dependency on
8085         MAKECMDGOALS to enforce message for all command line targets.  Set
8086         srcdir for use in maint.mk.
8087
8088         Another maintainer tweak.
8089         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
8090         a target that regenerates version.
8091
8092 2008-04-03  Jim Meyering  <meyering@redhat.com>
8093
8094         vc-list-files: don't cause coreutils "make po-check" failure
8095         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
8096
8097 2008-04-03  Eric Blake  <ebb9@byu.net>
8098
8099         Allow VPATH usage of vc-list-files.
8100         * build-aux/vc-list-files (scriptversion): Add timestamp.
8101         (options): Add --help, --version, -C.
8102         (CVS): Support installed cvsu.
8103
8104 2008-04-02  Bruno Haible  <bruno@clisp.org>
8105
8106         Avoid some "statement with no effect" warnings from gcc.
8107         * tests/test-wctype.c (main): Explicitly ignore unused values.
8108         Reported by Jim Meyering.
8109
8110 2008-04-02  Jim Meyering  <meyering@redhat.com>
8111
8112         Avoid some warnings from "gcc -Wshadow".
8113         * tests/test-frexp.c (exp): Define to a different identifier.
8114         * tests/test-frexpl.c (exp): Likewise.
8115
8116 2008-04-03  Jim Meyering  <meyering@redhat.com>
8117
8118         bootstrap: remove dangling *.[ch] symlinks from lib
8119         * build-aux/bootstrap [dangling symlink removal]: Move find's
8120         -depth option to precede all others, to avoid a warning.
8121         Remove *.[ch] files too, and from "$source_base" (usually lib/).
8122
8123 2008-04-02  Bruno Haible  <bruno@clisp.org>
8124
8125         Avoid some warnings from "gcc -Wshadow".
8126         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
8127         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
8128         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
8129         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
8130         Reported by Jim Meyering.
8131
8132 2008-04-01  Bruno Haible  <bruno@clisp.org>
8133
8134         Fix test to work on IRIX 6.5 with cc.
8135         * tests/test-math.c (numeric_equal): New function.
8136         (main): Use it.
8137
8138 2008-04-01  Bruno Haible  <bruno@clisp.org>
8139
8140         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
8141
8142 2008-04-01  Bruno Haible  <bruno@clisp.org>
8143
8144         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
8145         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8146         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
8147         (Depends-on): Remove math.
8148
8149         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
8150         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8151         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
8152         (Depends-on): Remove math.
8153
8154         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
8155         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8156         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
8157         (Depends-on): Remove math.
8158         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
8159         (Depends-on): Remove math.
8160
8161         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
8162         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
8163         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
8164         (Depends-on): Remove math.
8165         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
8166         (Depends-on): Remove math.
8167
8168         * tests/test-round1.c: Include nan.h.
8169         (main): Use NaNd instead of NAN.
8170         * modules/round-tests (Files): Add tests/nan.h.
8171
8172         * tests/test-trunc1.c: Include nan.h.
8173         (main): Use NaNd instead of NAN.
8174         * modules/trunc-tests (Files): Add tests/nan.h.
8175
8176         * tests/test-roundf1.c: Include nan.h.
8177         (main): Use NaNf instead of NAN.
8178         * modules/roundf-tests (Files): Add tests/nan.h.
8179
8180         * tests/test-truncf1.c: Include nan.h.
8181         (main): Use NaNf instead of NAN.
8182         * modules/truncf-tests (Files): Add tests/nan.h.
8183
8184         * tests/test-ceilf1.c: Include nan.h.
8185         (main): Use NaNf instead of NAN.
8186         * modules/ceilf-tests (Files): Add tests/nan.h.
8187
8188         * tests/test-floorf1.c: Include nan.h.
8189         (main): Use NaNf instead of NAN.
8190         * modules/floorf-tests (Files): Add tests/nan.h.
8191
8192         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
8193         (main): Use NaNf instead of NAN.
8194         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
8195
8196         * tests/test-isnand.c: Include nan.h instead of <math.h>.
8197         (main): Use NaNd instead of NAN.
8198         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
8199
8200         * tests/test-frexp.c: Include nan.h.
8201         (main): Use NaNd instead of NAN.
8202         * modules/frexp-tests (Files): Add tests/nan.h.
8203
8204         * lib/isnan.c: Don't include <math.h>.
8205         (FUNC): Don't use NAN macro.
8206         * modules/isnand-nolibm (Depends-on): Remove math.
8207         * modules/isnanf-nolibm (Depends-on): Remove math.
8208         * modules/isnanl (Depends-on): Remove math.
8209         * modules/isnanl-nolibm (Depends-on): Remove math.
8210
8211         * tests/nan.h: New file.
8212
8213 2008-04-01  Eric Blake  <ebb9@byu.net>
8214
8215         Fix typos.
8216         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
8217         values to be the right type.
8218
8219         For now, cater to gnulib strtod inaccuracies.
8220         * tests/test-strtod.c (main): Allow 1-ulp error on expected
8221         fractional results.  While not as nice from a QoI perspective, it
8222         is a quicker patch than correctly implementing decimal to binary
8223         rounding.
8224
8225 2008-03-31  Eric Blake  <ebb9@byu.net>
8226
8227         Guarantee a definition of NAN.
8228         * lib/math.in.h (NAN): Define if missing.
8229         * tests/test-math.c (main): Test it.
8230         * doc/posix-headers/math.texi (math.h): Document this.
8231         * lib/isnan.c (rpl_isnand): Use it.
8232         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
8233         * tests/test-floorf1.c (NaN): Likewise.
8234         * tests/test-frexp.c (NaN): Likewise.
8235         * tests/test-isnand.c (NaN): Likewise.
8236         * tests/test-isnanf.c (NaN): Likewise.
8237         * tests/test-round1.c (NaN): Likewise.
8238         * tests/test-roundf1.c (NaN): Likewise.
8239         * tests/test-snprintf-posix.h (NaN): Likewise.
8240         * tests/test-sprintf-posix.h (NaN): Likewise.
8241         * tests/test-trunc1.c (NaN): Likewise.
8242         * tests/test-truncf1.c (NaN): Likewise.
8243         * tests/test-vasnprintf-posix.c (NaN): Likewise.
8244         * tests/test-vasprintf-posix.c (NaN): Likewise.
8245         * modules/isnand-nolibm (Depends-on): Add math.
8246         * modules/isnanf-nolibm (Depends-on): Likewise.
8247         * modules/isnanl (Depends-on): Likewise.
8248         * modules/isnanl-nolibm (Depends-on): Likewise.
8249         * modules/snprintf-posix-tests (Depends-on): Likewise.
8250         * modules/sprintf-posix-tests (Depends-on): Likewise.
8251         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
8252         * modules/vsprintf-posix-tests (Depends-on): Likewise.
8253         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
8254         * modules/vasprintf-posix-tests (Depends-on): Likewise.
8255
8256 2008-03-31  Bruno Haible  <bruno@clisp.org>
8257
8258         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
8259         * doc/posix-functions/strtod.texi: Likewise.
8260
8261 2008-03-31  Bruno Haible  <bruno@clisp.org>
8262
8263         * tests/test-strtod.c (main): Don't use C99 syntax.
8264
8265 2008-03-31  Bruno Haible  <bruno@clisp.org>
8266
8267         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
8268         Reported by Eric Blake.
8269
8270 2008-03-31  Jim Meyering  <meyering@redhat.com>
8271
8272         Don't compare actual signbit return values.
8273         * tests/test-strtod.c (main): Rather, compare only their
8274         zero/non-zero nature.
8275
8276 2008-03-31  Eric Blake  <ebb9@byu.net>
8277
8278         More strtod documentation.
8279         * doc/posix-functions/strtod.texi (strtod): Interpret more test
8280         failures as distinct bugs.
8281
8282 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
8283
8284         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
8285         Problem reported by Erik Benada in
8286         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
8287
8288 2008-03-30  Bruno Haible  <bruno@clisp.org>
8289
8290         * tests/test-strtod.c: Add comments about which assertion fails on which
8291         platform.
8292         * doc/posix-functions/strtod.texi: Add info about many more platforms.
8293
8294 2008-03-30  Eric Blake  <ebb9@byu.net>
8295
8296         Test signbit behavior on zeros.
8297         * tests/test-signbit.c (test_signbitf): Add tests for zero.
8298         (test_signbitd, test_signbitl): Likewise.
8299
8300         More strtod touchups.
8301         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
8302         sign of negative underflow, for now.  Use .5, not .1.
8303         * doc/posix-functions/strtod.texi (strtod): Mention these
8304         limitations.
8305         Reported by Jim Meyering.
8306
8307 2008-03-30  Bruno Haible  <bruno@clisp.org>
8308
8309         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
8310         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
8311
8312 2008-03-30  Bruno Haible  <bruno@clisp.org>
8313
8314         Avoid failure when attempting to return empty iconv results on some
8315         platforms.
8316         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
8317         allocation, don't report ENOMEM when the resulting string is empty.
8318
8319 2008-03-30  Bruno Haible  <bruno@clisp.org>
8320
8321         Fix buffer overrun.
8322         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
8323         Don't consider the width for tmp_length. Check count against tmp_length
8324         before doing the padding. Ensure enough allocation during padding.
8325
8326 2008-03-30  Eric Blake  <ebb9@byu.net>
8327
8328         strtod touchups.
8329         * lib/strtod.c (strtod): Avoid compiler warnings.
8330         Reported by Jim Meyering.
8331
8332 2008-03-30  Bruno Haible  <bruno@clisp.org>
8333
8334         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
8335         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
8336         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
8337         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
8338         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
8339         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
8340         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
8341         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
8342
8343         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
8344         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
8345         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
8346         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
8347         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
8348         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
8349         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
8350         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
8351
8352         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
8353         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
8354         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
8355         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
8356         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
8357         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
8358         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
8359         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
8360
8361         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
8362         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
8363
8364         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
8365         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
8366
8367         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
8368         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
8369
8370         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
8371         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
8372         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
8373
8374         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
8375         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
8376         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
8377
8378         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
8379         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
8380         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
8381
8382         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
8383         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
8384         * modules/vasprintf (Depends-on): Add EOVERFLOW.
8385
8386         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
8387         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
8388         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
8389         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
8390         (Depends-on): Add EOVERFLOW.
8391         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
8392         (Depends-on): Add EOVERFLOW.
8393         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
8394         (Depends-on): Add EOVERFLOW.
8395         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
8396         (Depends-on): Add EOVERFLOW.
8397         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
8398         (Depends-on): Add EOVERFLOW.
8399         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
8400         (Depends-on): Add EOVERFLOW.
8401         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
8402         (Depends-on): Add EOVERFLOW.
8403         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
8404         (Depends-on): Add EOVERFLOW.
8405
8406         * lib/sprintf.c (EOVERFLOW): Remove fallback.
8407         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
8408         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
8409
8410         * lib/snprintf.c (EOVERFLOW): Remove fallback.
8411         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
8412         * modules/snprintf (Depends-on): Add EOVERFLOW.
8413
8414         * lib/poll.c (EOVERFLOW): Remove fallback.
8415         * modules/poll (Depends-on): Add EOVERFLOW.
8416
8417         * lib/getugroups.c (EOVERFLOW): Remove fallback.
8418         * modules/getugroups (Depends-on): Add EOVERFLOW.
8419
8420         * lib/getdelim.c (EOVERFLOW): Remove fallback.
8421         * modules/getdelim (Depends-on): Add EOVERFLOW.
8422
8423         * lib/ftell.c (EOVERFLOW): Remove fallback.
8424         * modules/ftell (Depends-on): Add EOVERFLOW.
8425
8426         * lib/fprintf.c (EOVERFLOW): Remove fallback.
8427         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
8428         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
8429
8430         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
8431
8432         * modules/EOVERFLOW-tests: New file.
8433         * tests/test-EOVERFLOW.c: New file.
8434
8435         * modules/EOVERFLOW: New file.
8436         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
8437
8438 2008-03-30  Bruno Haible  <bruno@clisp.org>
8439
8440         Fix bug introduced on 2007-06-10.
8441         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
8442         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
8443
8444 2008-03-30  Bruno Haible  <bruno@clisp.org>
8445
8446         Improve freadseek's efficiency after ungetc.
8447         * lib/freadseek.c: Include freadahead.h.
8448         (freadptrinc): New function, extracted from freadseek.
8449         (freadseek): Use it in a loop. Use freadahead to determine the number
8450         of loop iterations.
8451         * modules/freadseek (Depends-on): Add freadahead.
8452         (configure.ac): Require AC_C_INLINE.
8453
8454 2008-03-30  Bruno Haible  <bruno@clisp.org>
8455
8456         * lib/freadseek.c (freadseek): Don't ignore the return value of
8457         freadptr.
8458
8459 2008-03-29  Eric Blake  <ebb9@byu.net>
8460
8461         Add hex float support.
8462         * modules/strtod (Depends-on): Add c-ctype.
8463         (Link): Mention POW_LIB.
8464         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
8465         whitespace between 'e' and exponent.
8466         * tests/test-strtod.c (main): Enable hex float tests.
8467         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
8468         now provides.
8469
8470         Document various strtod bugs, with some fixes.
8471         * doc/posix-functions/strtod.texi (strtod): Document bugs with
8472         "-0x", "inf", "nan", and hex constants.
8473         * doc/posix-functions/atof.texi (atof): Likewise.
8474         * modules/stdlib (Makefile.am): Support strtod.
8475         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
8476         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
8477         detect additional strtod bugs.
8478         * lib/stdlib.in.h (rpl_strtod): Add declarations.
8479         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
8480         bool where appropriate.  Parse 'inf' and 'nan'.
8481         * tests/test-strtod.c: New file.
8482         * modules/strtod (Depends-on): Add stdbool, stdlib.
8483         (configure.ac): Turn on module indicator.
8484         * modules/strtod-tests: New module.
8485
8486 2008-03-29  Eric Blake  <ebb9@byu.net>
8487
8488         Fix ftell on mingw.
8489         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
8490         * modules/ftell-tests (Depends-on): Add binary-io.
8491         * modules/ftello-tests (Depends-on): Likewise.
8492         * tests/test-ftell.c (main): Enhance test to cover behavior after
8493         ungetc.  Enforce binary mode.
8494         * tests/test-ftello.c (main): Likewise.
8495
8496         Pass test-freadseek on cygwin.
8497         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
8498         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
8499         ungetc buffer.
8500
8501         * tests/test-fflush2.c (main): Fix typo.
8502
8503 2008-03-29  Bruno Haible  <bruno@clisp.org>
8504
8505         * tests/test-fflush2.c (main): Temporarily disable the contents of
8506         this test.
8507         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
8508         Reported by Eric Blake.
8509
8510 2008-03-28  Simon Josefsson  <simon@josefsson.org>
8511
8512         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
8513         (GC_SHA224_DIGEST_SIZE): Add.
8514
8515         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
8516         (gc_hash_digest_length): Likewise.
8517         (gc_hash_buffer): Likewise.
8518
8519 2008-03-25  Bruno Haible  <bruno@clisp.org>
8520
8521         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
8522         detail which gettext release to use.
8523         Reported by Simon Josefsson.
8524
8525 2008-03-26  Jim Meyering  <meyering@redhat.com>
8526
8527         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
8528         * modules/gnumakefile (clean-GNUmakefile): Also, use
8529         test ... && ... || : syntax rather than if-then ... fi.
8530
8531         gnumakefile: Don't double-quote-expand $(VPATH) value.
8532         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
8533
8534 2008-03-24  Eric Blake  <ebb9@byu.net>
8535
8536         Alter GNUmakefile to install into top directory.
8537         * modules/maintainer-makefile: Split, and add dependency...
8538         * modules/gnumakefile: to this new module.
8539         * build-aux/GNUmakefile: Move...
8540         * top/GNUmakefile: ...here.
8541         * build-aux/maint.mk: Move...
8542         * top/maint.mk: ...here.
8543         * MODULES.html.sh (Support for maintaining...): Document new
8544         module.
8545
8546 2008-03-23  Bruno Haible  <bruno@clisp.org>
8547
8548         * gnulib-tool: New options --vc-files, --no-vc-files.
8549         (func_usage): Document them.
8550         (vc_files): New variable.
8551         (func_import): Consider vc_files.
8552         (func_create_testdir): Set vc_files to empty.
8553         Suggested by Jim Meyering and Karl Berry.
8554
8555 2008-03-23  Bruno Haible  <bruno@clisp.org>
8556
8557         Fix regex compilation error on HP-UX 11.
8558         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
8559         * modules/regex (Files): Add m4/mbstate_t.m4.
8560         Reported by Ton Voon <ton.voon@altinity.com>.
8561
8562 2008-03-23  Bruno Haible  <bruno@clisp.org>
8563
8564         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
8565
8566 2008-03-23  Eric Blake  <ebb9@byu.net>
8567             Bruno Haible  <bruno@clisp.org>
8568
8569         Install files from top/ in the destination directory.
8570         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
8571         augmentation also for the files from top/.
8572         (func_import, func_create_testdir): Rewrite file names:
8573         top/filename -> filename.
8574
8575 2008-03-23  Bruno Haible  <bruno@clisp.org>
8576
8577         Tweak "gnulib --version" output.
8578         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
8579
8580 2008-03-23  Bruno Haible  <bruno@clisp.org>
8581
8582         Tweak "gnulib --version" output.
8583         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
8584         rather than contents of ChangeLog, when possible.
8585
8586 2008-03-21  Eric Blake  <ebb9@byu.net>
8587
8588         More --version tweaks.
8589         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
8590         date of last ChangeLog entry.
8591
8592 2008-03-21  Jim Meyering  <meyering@redhat.com>
8593
8594         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
8595
8596 2008-03-20  Eric Blake  <ebb9@byu.net>
8597
8598         VPATH fix.
8599         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
8600
8601 2008-03-20  Simon Josefsson  <simon@josefsson.org>
8602
8603         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
8604         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
8605
8606 2008-03-20  Eric Blake  <ebb9@byu.net>
8607
8608         Sync GNUmakefile with coreutils.
8609         * build-aux/GNUmakefile (have-Makefile): Rename...
8610         (_have-Makefile): ...to this, for namespace consideration.
8611         (GNUmakefile.cfg): Include, if present.
8612         (_autoreconf): Define a default.
8613         (_is-dist-target): New rule for rebuilds to pick up intra-release
8614         version.
8615         (maint-cfg.mk): Rename...
8616         (cfg.mk): ...to this.
8617
8618 2008-03-18  Jim Meyering  <meyering@redhat.com>
8619
8620         New script and module: mktempd
8621         * MODULES.html.sh (maint+release support): Add mktempd.
8622         * build-aux/mktempd: New file.
8623         * modules/mktempd: New file.
8624
8625 2008-03-15  Jim Meyering  <meyering@redhat.com>
8626
8627         Undo last change.
8628         * lib/sha1.c, lib/md5.c: 63 != ~63.
8629         Reported by Andreas Schwab.
8630
8631         sha1.c, md5.c: Hoist a redundant expression.
8632         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
8633         "ctx->buflen" only once, before calling *_process_block.
8634         * lib/md5.c (md5_process_bytes): Likewise.
8635
8636 2008-03-14  Eric Blake  <ebb9@byu.net>
8637
8638         Bump copyright year in files generated by gnulib-tool.
8639         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
8640         gnulib-tool, rather than hard-coding it.
8641
8642         Fix 'gnulib-tool --version' output to work with git.
8643         * gnulib-tool (func_gnulib_dir): New function, extracted from...
8644         (startup): ...here.
8645         (func_version): Use it to invoke git-version-gen, rather than
8646         relying on CVS keyword expansion.  Modernize wording.
8647         (cvsdatestamp, last_checkin_date, version): Kill unused
8648         variables.
8649
8650 2008-03-12  Jim Meyering  <meyering@redhat.com>
8651
8652         Recognize optional cast of the argument to free.
8653         * build-aux/useless-if-before-free: Update regexps.
8654
8655         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
8656
8657 2008-03-11  Bruno Haible  <bruno@clisp.org>
8658
8659         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
8660         by a single package.
8661         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
8662         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
8663         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
8664         Reported by Sam Steingold <sds@gnu.org>.
8665
8666 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
8667
8668         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
8669         repositories.
8670
8671 2008-03-11  Bruno Haible  <bruno@clisp.org>
8672
8673         Avoid conflicts between local macro definitions.
8674         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
8675         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
8676
8677 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
8678             Bruno Haible  <bruno@clisp.org>
8679
8680         Make va_copy work with some version of xlc on AIX 5.1.
8681         * lib/stdarg.in.h: New file.
8682         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
8683         On AIX, use a <stdarg.h> file substitute.
8684         * modules/stdarg (Files): Add lib/stdarg.in.h.
8685         (Depends-on): Add include_next.
8686         (Makefile.am): Build a stdarg.h substitute if requested.
8687         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
8688
8689 2008-03-10  Bruno Haible  <bruno@clisp.org>
8690
8691         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
8692         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
8693         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
8694
8695 2008-03-10  Bruno Haible  <bruno@clisp.org>
8696
8697         * modules/stdlib (Depends-on): Add include_next, remove
8698         absolute-header.
8699
8700 2008-03-09  Bruno Haible  <bruno@clisp.org>
8701
8702         * lib/freadahead.h (freadahead): Document more precisely.
8703         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
8704         the sum of both buffer sizes.
8705         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
8706         * NEWS: Document the change.
8707
8708 2008-03-09  Bruno Haible  <bruno@clisp.org>
8709
8710         Extend freadptr to return also the buffer size.
8711         * lib/freadptr.h (freadptr): Add sizep argument.
8712         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
8713         (freadptr): Add sizep argument. Determine buffer size like freadahead
8714         does.
8715         * tests/test-freadptr.c: Don't include freadahead.h.
8716         (main): Adapt for new calling convention of freadptr.
8717         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
8718         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
8719         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
8720         tests/test-freadptr2.sh.
8721         (Depends): Remove freadahead.
8722         (TESTS): Add test-freadptr2.sh.
8723         (check_PROGRAMS): Add test-freadptr2.
8724
8725 2008-03-09  Bruno Haible  <bruno@clisp.org>
8726
8727         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
8728         Report and solution by Simon Josefsson.
8729
8730 2008-03-06  Bruno Haible  <bruno@clisp.org>
8731
8732         Make fflush after ungetc work on BSD platforms.
8733         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
8734         * tests/test-fflush2.c: New file.
8735         * tests/test-fflush2.sh: New file.
8736         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
8737         tests/test-fflush2.c.
8738         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
8739         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
8740
8741 2008-03-06  Eric Blake  <ebb9@byu.net>
8742
8743         Likewise for ftello.
8744         * modules/ftello (Dependencies): Add extensions.
8745         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
8746
8747 2008-03-06  Bruno Haible  <bruno@clisp.org>
8748
8749         * modules/fseeko (Dependencies): Add extensions.
8750         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
8751         Needed on glibc systems.
8752
8753 2008-03-06  Bruno Haible  <bruno@clisp.org>
8754
8755         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
8756         email address.
8757         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
8758
8759 2008-03-06  Bruno Haible  <bruno@clisp.org>
8760
8761         * users.txt: Add libgnupdf.
8762
8763 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
8764
8765         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
8766         (Header File Substitutes, Function Substitutes,
8767         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
8768         (Build robot for gnulib): Fix typo.
8769
8770 2008-03-06  Bruno Haible  <bruno@clisp.org>
8771
8772         * doc/gnulib-tool.texi (VCS Issues): Small updates.
8773         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
8774
8775 2008-03-06  Bruno Haible  <bruno@clisp.org>
8776
8777         * doc/func.texi: New file, extracted from doc/gnulib.texi.
8778         * doc/gnulib.texi: Include it.
8779
8780 2008-03-06  Simon Josefsson  <simon@josefsson.org>
8781
8782         * modules/func (License): Change license to unlimited; there was
8783         no LGPL parts in the module anyway.
8784
8785 2008-03-06  Simon Josefsson  <simon@josefsson.org>
8786
8787         * modules/__func__: Renamed to modules/func.
8788         * modules/__func__-tests: Renamed to modules/func-tests.
8789         * tests/test-__func__.c: Renamed to tests/test-func.c.
8790         * m4/__func__.m4: Renamed to m4/func.m4.
8791         * doc/gnulib.texi (__func__): Section renamed to func.
8792         Suggested by Eric Blake <ebb9@byu.net>.
8793
8794 2008-03-06  Simon Josefsson  <simon@josefsson.org>
8795
8796         * doc/gnulib.texi (__func__): Use C99 terminology when talking
8797         about __func__.  Make example self-contained.  Suggested by Eric
8798         Blake <ebb9@byu.net>.
8799
8800         * tests/test-__func__.c (main): Avoid extraneous () around __func.
8801         Suggested by Eric Blake <ebb9@byu.net>.
8802
8803 2008-03-06  Simon Josefsson  <simon@josefsson.org>
8804
8805         * modules/__func__: New file.
8806         * modules/__func__-tests: New file.
8807         * tests/test-__func__.c: New file.
8808         * m4/__func__.m4: New file.
8809         * doc/gnulib.texi (__func__): Document __func__ module.
8810
8811 2008-03-05  Simon Josefsson  <simon@josefsson.org>
8812
8813         * modules/byteswap (License): Re-license as LGPLv2+.
8814
8815 2008-03-05  Simon Josefsson  <simon@josefsson.org>
8816
8817         * doc/Makefile: Add pdf target.
8818
8819 2008-03-05  Simon Josefsson  <simon@josefsson.org>
8820
8821         * modules/inline (License): Use 'unlimited', since there are only
8822         *.m4 files in this module.
8823
8824 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
8825             Bruno Haible  <bruno@clisp.org>
8826
8827         Add support for HP C 7.1 on OpenVMS 8.3.
8828         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
8829
8830 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
8831
8832         Update VMS specifics.
8833         * lib/getopt.c [VMS]: Remove include of unixlib.h.
8834
8835 2008-03-02  Jim Meyering  <meyering@redhat.com>
8836
8837         Remove the last dependency on the "free" module.
8838         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
8839         Reported by Bob Proulx.
8840
8841         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
8842
8843         Remove useless "if" tests before free.  Deprecate "free" module.
8844         * doc/posix-functions/free.texi: Mention that this
8845         module is no longer useful.
8846         * modules/free (Notice): Say this module is obsolete.
8847         * modules/readutmp (Depends-on): Remove free.
8848         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
8849         * lib/putenv.c (putenv): Likewise.
8850         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
8851         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
8852         * tests/test-c-strcasestr.c (main): Likewise.
8853         * tests/test-c-strstr.c (main): Likewise.
8854         * tests/test-mbscasestr1.c (main): Likewise.
8855         * tests/test-mbscasestr2.c (main): Likewise.
8856         * tests/test-mbsstr1.c (main): Likewise.
8857         * tests/test-mbsstr2.c (main): Likewise.
8858         * tests/test-memmem.c (main): Likewise.
8859         * tests/test-strcasestr.c (main): Likewise.
8860         * tests/test-striconv.c (main): Likewise.
8861         * tests/test-striconveh.c (main): Likewise.
8862         * tests/test-striconveha.c (main): Likewise.
8863         * tests/test-strstr.c (main): Likewise.
8864
8865         * build-aux/git-version-gen: Adjust a comment and the Usage string.
8866
8867         bootstrap: sync from coreutils again
8868         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
8869
8870 2008-03-01  Jim Meyering  <meyering@redhat.com>
8871
8872         bootstrap: sync from coreutils
8873         * build-aux/bootstrap (update_po_files): Copy a .po file into place
8874         also when the target doesn't exist.
8875
8876 2008-03-01  Eric Blake  <ebb9@byu.net>
8877
8878         Fix bugs in last patch.
8879         * lib/memchr2.c (memchr2): Fix typo.
8880         * tests/test-memchr2.c: Test previous bug, and don't use GNU
8881         extension.
8882         Reported by Bruce Korb.
8883
8884         New module 'memchr2'.
8885         * modules/memchr2: New file.
8886         * modules/memchr2-tests: Likewise.
8887         * lib/memchr2.h: Likewise.
8888         * lib/memchr2.c: Likewise, based on memchr.c.
8889         * tests/test-memchr2.c: New test.
8890         * MODULES.html.sh (String handling): Add memchr2.
8891
8892 2008-02-29  Bruno Haible  <bruno@clisp.org>
8893
8894         * modules/freadseek-tests: New file.
8895         * tests/test-freadseek.sh: New file.
8896         * tests/test-freadseek.c: New file.
8897
8898         New module 'freadseek'.
8899         * modules/freadseek: New file.
8900         * lib/freadseek.h: New file.
8901         * lib/freadseek.c: New file.
8902         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
8903
8904 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
8905
8906         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
8907         wydawca.
8908
8909         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
8910         program_invocation_name and program_invocation_short_name are
8911         present.
8912
8913 2008-02-28  Bruno Haible  <bruno@clisp.org>
8914
8915         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
8916         * tests/test-freadptr.sh: Also test non-seekable stdin.
8917
8918 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
8919
8920         * build-aux/bootstrap (source_base, m4_base)
8921         (doc_base, tests_base): New variables.
8922         (gnulib_tool_options): Do not hardcode base directories, use
8923         the above variables instead.
8924
8925 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
8926
8927         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
8928
8929 2008-02-28  Bruno Haible  <bruno@clisp.org>
8930
8931         * modules/freadptr-tests: New file.
8932         * tests/test-freadptr.sh: New file.
8933         * tests/test-freadptr.c: New file.
8934
8935         New module 'freadptr'.
8936         * modules/freadptr: New file.
8937         * lib/freadptr.h: New file.
8938         * lib/freadptr.c: New file.
8939         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
8940
8941 2008-02-26  Karl Berry  <karl@freefriends.org>
8942
8943         Sync from Libtool:
8944         * libltdl/argz.c (argz_add, argz_count): New functions.
8945         * libltdl/argz.in.h: Declare them.
8946         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
8947
8948 2008-02-22  Bruno Haible  <bruno@clisp.org>
8949
8950         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
8951         is a pointer type.  Needed for HP-UX 10.
8952         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
8953         * doc/posix-functions/gmtime_r.texi: Likewise.
8954         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
8955
8956 2008-02-24  Bruno Haible  <bruno@clisp.org>
8957
8958         * modules/environ-tests: New file.
8959         * tests/test-environ.c: New file.
8960
8961         New module 'environ'.
8962         * modules/environ: New file.
8963         * lib/unistd.in.h (environ): New declaration.
8964         * m4/environ.m4: New file.
8965         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
8966         after use.
8967         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
8968         HAVE_DECL_ENVIRON.
8969         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
8970         HAVE_DECL_ENVIRON.
8971         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
8972         wrong claim that 'environ' is missing on some systems.
8973         * modules/execute (Depends-on): Add environ.
8974         * lib/execute.c (environ): Remove fallback declaration.
8975         * modules/pipe (Depends-on): Add environ.
8976         * lib/pipe.c (environ): Remove fallback declaration.
8977         * modules/setenv (Depends-on): Add environ.
8978         * lib/setenv.c (environ): Remove fallback declaration.
8979         * modules/unsetenv (Depends-on): Add environ.
8980         * lib/unsetenv.c (environ): Remove fallback declaration.
8981         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
8982         m4/environ.m4.
8983         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
8984         (gl_PREREQ_UNSETENV): Likewise.
8985
8986 2008-02-24  Bruno Haible  <bruno@clisp.org>
8987
8988         * doc/posix-functions/environ.texi: Document the MacOS X problem.
8989
8990 2008-02-20  Bob Proulx  <bob@proulx.com>
8991
8992         Enable use of older two part flavor 'git describe'.
8993         * build-aux/git-version-gen: If using the older two part flavor of
8994         git version then recreate the third part now present in the
8995         newer three part flavor of git describe.
8996
8997 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
8998
8999         * lib/fts.c (fts_build): Typo correction to comment.
9000
9001 2008-02-17  Bruno Haible  <bruno@clisp.org>
9002
9003         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
9004         generating no-op conflicts.
9005
9006 2008-02-17  Bruno Haible  <bruno@clisp.org>
9007
9008         Speed up by 10%.
9009         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
9010         result_entries, rather than an index-based loop.
9011
9012 2008-02-17  Bruno Haible  <bruno@clisp.org>
9013
9014         Speed up by 25%.
9015         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
9016         'hashcode_cached'.
9017         (entry_create): New function.
9018         (entry_hashcode): Use the cached hashcode if possible.
9019         (read_changelog_file, try_split_merged_entry): Use entry_create.
9020
9021 2008-02-17  Bruno Haible  <bruno@clisp.org>
9022
9023         Speed up from O(n^2) to O(n) for long ChangeLog files.
9024         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
9025         (read_changelog_file): Change implementation of entries_reversed list
9026         to rbtreehash.
9027         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
9028
9029 2008-02-17  Bruno Haible  <bruno@clisp.org>
9030
9031         New option --split-merged-entry.
9032         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
9033         (find_paragraph_end, try_split_merged_entry): New functions.
9034         (long_options): Add option --split-merged-entry.
9035         (usage): Document option --split-merged-entry.
9036         (main): Implement option --split-merged-entry.
9037         Reported by Eric Blake.
9038
9039 2008-02-17  Bruno Haible  <bruno@clisp.org>
9040
9041         * lib/git-merge-changelog.c: Include c-strstr.h.
9042         (main): Support the "git pull --rebase" situation.
9043         * modules/git-merge-changelog (Depends-on): Add c-strstr.
9044         Reported by Eric Blake.
9045
9046 2008-02-16  Eric Blake  <ebb9@byu.net>
9047
9048         Avoid doubling \ in common case of "c-maybe" quoting style.
9049         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
9050         eliding outer quotes.
9051         * lib/quotearg.h: Document this.
9052         * tests/test-quotearg.c (result_strings, inputs, results_g)
9053         (flag_results, locale_results): Test it by adding a new string to
9054         each test group.
9055         (compare_strings): Test new string.
9056
9057 2008-02-13  Eric Blake  <ebb9@byu.net>
9058
9059         Avoid trigraph quoting in default output.
9060         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
9061         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
9062         unless explicitly requested.
9063         * tests/test-quotearg.c (flag_results, main): Add additional tests.
9064
9065 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
9066
9067         Don't rely on signed integer overflowing to negative value.
9068         * lib/getugroups.c (getugroups): Include <limits.h>.
9069         Instead, compare against INT_MAX, and increment only if the test passes.
9070
9071 2008-02-13  Jim Meyering  <meyering@redhat.com>
9072         and Eric Blake  <ebb9@byu.net>
9073
9074         Avoid shadowing warning and compile errors on Linux.
9075         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
9076         forwarding macros on Linux.
9077         (dcgettext): Define a stub, for Linux.
9078         (results_g, main): Avoid warnings.
9079
9080 2008-02-12  Eric Blake  <ebb9@byu.net>
9081
9082         Silence warning in last patch.
9083         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
9084
9085         Quotearg part 4: add tests, fix c-maybe colon quoting.
9086         * lib/quotearg.h: Improve documentation.
9087         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
9088         escapes when adding outer quotes.  When quoting trigraphs, use
9089         valid C notation.  When quoting NUL, omit extra characters if next
9090         character is not digit.  Alter prototype.
9091         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
9092         callers.
9093         * modules/quotearg-tests: New module.
9094         * tests/test-quotearg.c: New test.
9095
9096 2008-02-07  Eric Blake  <ebb9@byu.net>
9097
9098         Quotearg part 3: add flag to control outer quote elision.
9099         * lib/quotearg.h (c_maybe_quoting_style): New style.
9100         (enum quoting_flags): Better documentation of flags.
9101         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
9102         c-maybe style.
9103         (quotearg_buffer_restyled): Handle new flag to elide outer
9104         quotes.
9105
9106         Quotearg part 2: add flag that can control NUL elision.
9107         * lib/quotearg.h (set_quoting_flags): New prototype.
9108         * lib/quotearg.c (struct quoting_options): Add flag field.
9109         (set_quoting_flags): New function.
9110         (quotearg_buffer_restyled): Add flags parameter.
9111         (quotearg_alloc_mem): Set the flag if length cannot be returned.
9112         (quotearg_n_options): Set the flag, since length cannot be
9113         returned.
9114         (quoting_options_from_style): Default flags correctly.
9115
9116         Quotearg part 1: more wrappers, restore quotearg_char state.
9117         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
9118         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
9119         (quotearg_colon_mem): New wrappers.
9120         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
9121         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
9122         functions.
9123         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
9124         (quotearg_colon_mem): New functions.
9125
9126 2008-02-11  Bruno Haible  <bruno@clisp.org>
9127
9128         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
9129         library in the current directory: it does not work with parallel make.
9130         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
9131
9132 2008-02-11  Bruno Haible  <bruno@clisp.org>
9133
9134         * .gitattributes: New file.
9135
9136 2008-02-11  Jim Meyering  <meyering@redhat.com>
9137
9138         useless-if-before-free: Fix reversed exit values.
9139         * build-aux/useless-if-before-free: Use correct values
9140         for EXIT_MATCH and EXIT_NO_MATCH.
9141
9142         * build-aux/useless-if-before-free: Close stdout carefully.
9143
9144 2008-02-10  Bruno Haible  <bruno@clisp.org>
9145
9146         New module 'git-merge-changelog'.
9147         * modules/git-merge-changelog: New file.
9148         * lib/git-merge-changelog.c: New file.
9149
9150 2008-02-10  Jim Meyering  <meyering@redhat.com>
9151
9152         useless-if-before-free: New option: --list (-l).
9153
9154         useless-if-before-free: Don't exit immediately upon open failure.
9155         * build-aux/useless-if-before-free: Exit 2 for errors.
9156         Upon failure to open a file, don't exit immediately.
9157         Rather, just warn and continue with any remaining files.
9158
9159 2008-02-10  Bruno Haible  <bruno@clisp.org>
9160
9161         New abstract list operation 'node_set_value'.
9162         * lib/gl_list.h (gl_list_node_set_value): New function.
9163         (struct gl_list_implementation): New field node_set_value.
9164         * lib/gl_list.c (gl_list_node_set_value): New function.
9165         * lib/gl_array_list.c (gl_array_node_set_value): New function.
9166         (gl_array_list_implementation): Update.
9167         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
9168         (gl_carray_list_implementation): Update.
9169         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
9170         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
9171         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
9172         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
9173         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
9174         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
9175         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
9176         Update.
9177         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
9178         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
9179         (gl_sublist_list_implementation): Update.
9180
9181 2008-02-10  Bruno Haible  <bruno@clisp.org>
9182
9183         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
9184         Needed when ELEMENT is #defined to 'some_type *'.
9185
9186 2008-02-10  Jim Meyering  <meyering@redhat.com>
9187
9188         New script and module: useless-if-before-free
9189         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
9190         * build-aux/useless-if-before-free: New file.
9191         * modules/useless-if-before-free: New file.
9192
9193         * build-aux/gitlog-to-changelog: Use committer date, not author date.
9194
9195         xstrtol_error: Fix typo.
9196         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
9197         s/exit_failure/exit_status/.
9198
9199 2008-02-09  Jim Meyering  <meyering@redhat.com>
9200
9201         New script and module: gitlog-to-changelog
9202         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
9203         * modules/gitlog-to-changelog: New file.
9204         * build-aux/gitlog-to-changelog: New file.
9205
9206 2008-02-08  Jim Meyering  <meyering@redhat.com>
9207
9208         Avoid two "parameter unused" warnings.
9209         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
9210         Mark "st" as used.
9211
9212         Use "git COMMAND", not "git-COMMAND".
9213         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
9214         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
9215         * build-aux/git-version-gen: Use "git status", not "git-status".
9216
9217 2008-02-07  Bruno Haible  <bruno@clisp.org>
9218
9219         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
9220         Avoids a crash on Windows Vista.
9221         Reported by Adam Strzelecki <ono@java.pl> via
9222         Simon Josefsson <simon@josefsson.org>.
9223
9224 2008-02-06  Bruno Haible  <bruno@clisp.org>
9225
9226         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
9227         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
9228         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
9229         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
9230         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
9231         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
9232         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
9233         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
9234         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
9235         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
9236         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
9237         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
9238         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
9239         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
9240         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
9241         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
9242         left-adjust flag.
9243         * tests/test-snprintf-posix.h (test_function): Likewise.
9244         * tests/test-sprintf-posix.h (test_function): Likewise.
9245         * tests/test-vasprintf-posix.c (test_function): Likewise.
9246         * doc/posix-functions/fprintf.texi: Update.
9247         * doc/posix-functions/printf.texi: Update.
9248         * doc/posix-functions/snprintf.texi: Update.
9249         * doc/posix-functions/sprintf.texi: Update.
9250         * doc/posix-functions/vfprintf.texi: Update.
9251         * doc/posix-functions/vprintf.texi: Update.
9252         * doc/posix-functions/vsnprintf.texi: Update.
9253         * doc/posix-functions/vsprintf.texi: Update.
9254         Reported by Peter Fales <psfales@alcatel-lucent.com>.
9255
9256 2008-02-06  Bruno Haible  <bruno@clisp.org>
9257
9258         Fix bug introduced on 2008-01-26.
9259         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
9260
9261 2008-02-06  Bruno Haible  <bruno@clisp.org>
9262
9263         Fix bug introduced on 2007-06-10.
9264         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
9265         !NEED_PRINTF_FLAG_ZERO.
9266
9267 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
9268
9269         getloadavg: use libperfstat on AIX5
9270         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
9271
9272 2008-02-03  Bruno Haible  <bruno@clisp.org>
9273
9274         * lib/diffseq.h: Add comments about required #includes.
9275         Reported by Michael Biggs <gnulib@doubleplum.net>.
9276
9277 2008-02-01  Bruno Haible  <bruno@clisp.org>
9278
9279         * users.txt: Add gnuit.
9280
9281 2008-01-31  Bruno Haible  <bruno@clisp.org>
9282
9283         * lib/md4.c (set_uint32): Mark as inline.
9284         * lib/md5.c (set_uint32): Likewise.
9285         * lib/sha1.c (set_uint32): Likewise.
9286         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
9287         * m4/md5.m4 (gl_MD5): Likewise.
9288         * m4/sha1.m4 (gl_SHA1): Likewise.
9289
9290 2008-01-31  Jim Meyering  <meyering@redhat.com>
9291
9292         Use "sizeof VAR", rather than a literal "4".
9293         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
9294         * lib/md4.c (md4_read_ctx): Likewise.
9295         * lib/sha1.c (sha1_read_ctx): Likewise.
9296
9297 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9298
9299         * tests/test-sha1.c: New file, based on test-md5.c.
9300
9301         * modules/crypto/sha1-tests: New file.
9302
9303 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9304
9305         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
9306
9307 2008-01-31  Jim Meyering  <meyering@redhat.com>
9308
9309         Prefer "sizeof v" over the equivalent "4".
9310         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
9311         * lib/md5.c (set_uint32): Likewise.
9312         * lib/sha1.c (set_uint32): Likewise.
9313
9314 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9315
9316         * lib/sha1.c (set_uint32): Mark function as static.
9317
9318 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9319
9320         md2: clarify comments to say that alignment is not required.
9321         * lib/md2.h: Remove warning about alignment in comment.
9322         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
9323         never been required.
9324
9325 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9326
9327         md4: adapt alignment constraint fix from sha1.
9328         * lib/md4.c (set_uint32): New function, from sha1.c
9329         (md4_read_ctx): Use it.
9330         (md4_finish_ctx): Doc fix.
9331         * lib/md4.h: Doc fix.
9332
9333 2008-01-31  Simon Josefsson  <simon@josefsson.org>
9334
9335         md5: adapt alignment constraint fix from sha1.
9336         * lib/md5.c (set_uint32): New function, from sha1.c
9337         (md5_read_ctx): Use it.
9338         (md5_finish_ctx): Doc fix.
9339         * lib/md5.h: Doc fix.
9340
9341 2008-01-30  Peter Palfrader  <weasel@debian.org>
9342
9343         sha1: remove the result buffer alignment constraint
9344         * lib/sha1.c (set_uint32): New function.
9345         (sha1_read_ctx): Rewrite to remove the result buffer alignment
9346         constraint.
9347         (sha1_finish_ctx): Remove comment warning about alignment constraint.
9348         * lib/sha1.h: Likewise.
9349
9350 2008-01-30  Andreas Schwab  <schwab@suse.de>
9351             Bruno Haible  <bruno@clisp.org>
9352
9353         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
9354         correct definition of LDBL_MIN_EXP.
9355
9356 2008-01-30  Karl Berry  <karl@gnu.org>
9357
9358         * config/srclist-update: try to preserve x bit on updates.
9359         * config/srclistvars.sh: update for karl.
9360
9361 2008-01-29  Jim Meyering  <meyering@redhat.com>
9362
9363         vasnprintf.c: Avoid warning about unused label
9364         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
9365         "overflow" label definition and associated code with the
9366         same cpp condition that guards the sole use of that label.
9367
9368 2008-01-26  Bruno Haible  <bruno@clisp.org>
9369
9370         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
9371         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
9372         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
9373         * lib/isnanl-nolibm.h (isnanl): Likewise.
9374         Reported by Paul Eggert <eggert@cs.ucla.edu>.
9375
9376 2008-01-26  Bruno Haible  <bruno@clisp.org>
9377
9378         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
9379         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
9380
9381 2008-01-26  Bruno Haible  <bruno@clisp.org>
9382
9383         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
9384         GCC >= 4.0 built-in.
9385         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
9386
9387 2008-01-26  Bruno Haible  <bruno@clisp.org>
9388
9389         Rename isnan, applicable to 'double' only, to isnand.
9390         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
9391         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
9392         (configure.ac): Update.
9393         (Include): Replace "isnan.h" with "isnand.h".
9394         * m4/isnand.m4: Renamed from m4/isnan.m4.
9395         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
9396         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
9397         instead of isnan.c.
9398         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
9399         instead of HAVE_ISNAN_IN_LIBC.
9400         (isnand): Renamed from isnan.
9401         * lib/isnand.c: New file.
9402         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
9403         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
9404         (Makefile.am): Update.
9405         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
9406         Include isnand.h instead of isnan.h.
9407         (main): Test isnand instead of isnan.
9408         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
9409         isnan-nolibm.
9410         * modules/frexp (Depends-on): Likewise.
9411         * modules/frexp-tests (Depends-on): Likewise.
9412         * modules/frexp-nolibm (Depends-on): Likewise.
9413         * modules/frexp-nolibm-tests (Depends-on): Likewise.
9414         * modules/isfinite (Depends-on): Likewise.
9415         * modules/round-tests (Depends-on): Likewise.
9416         * modules/signbit (Depends-on): Likewise.
9417         * modules/signbit-tests (Depends-on): Likewise.
9418         * modules/snprintf-posix (Depends-on): Likewise.
9419         * modules/sprintf-posix (Depends-on): Likewise.
9420         * modules/trunc-tests (Depends-on): Likewise.
9421         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
9422         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
9423         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
9424         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
9425         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
9426         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
9427         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
9428         * modules/vasnprintf-posix (Depends-on): Likewise.
9429         * modules/vasprintf-posix (Depends-on): Likewise.
9430         * modules/vfprintf-posix (Depends-on): Likewise.
9431         * modules/vsnprintf-posix (Depends-on): Likewise.
9432         * modules/vsprintf-posix (Depends-on): Likewise.
9433         * lib/frexp.c: Include isnand.h instead of isnan.h.
9434         (ISNAN): Set to isnand instead of isnan.
9435         * lib/isfinite.c: Include isnand.h instead of isnan.h.
9436         (gl_isfinited): Use isnand instead of isnan.
9437         * lib/signbitd.c: Include isnand.h instead of isnan.h.
9438         (gl_signbitd): Use isnand instead of isnan.
9439         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
9440         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
9441         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
9442         (main): Use isnand instead of isnan.
9443         * tests/test-round1.c: Include isnand.h.
9444         (main): Use isnand instead of isnan.
9445         * tests/test-round2.c: Include isnand.h instead of isnan.h.
9446         (ISNAN): Set to isnand instead of isnan.
9447         * tests/test-trunc1.c: Include isnand.h.
9448         (main): Use isnand instead of isnan.
9449         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
9450         (equal): Use isnand instead of isnan.
9451         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
9452         isnand-nolibm.
9453         * NEWS: Mention the change.
9454
9455 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
9456             Bruno Haible  <bruno@clisp.org>
9457
9458         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
9459         the GCC builtins for signbits are present and set
9460         REPLACE_SIGNBIT_USING_GCC if so.
9461         * lib/math.in.h (signbit): Define using GCC builtins if
9462         REPLACE_SIGNBIT_USING_GCC is set.
9463         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
9464         REPLACE_SIGNBIT_USING_GCC.
9465         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
9466
9467 2008-01-25  Jim Meyering  <meyering@redhat.com>
9468
9469         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
9470         * lib/poll.c: Include <config.h>, not "config.h".
9471         * tests/test-getaddrinfo.c: Likewise.
9472
9473 2008-01-25  Simon Josefsson  <simon@josefsson.org>
9474
9475         * modules/sockets-tests: New file.
9476
9477 2008-01-24  Simon Josefsson  <simon@josefsson.org>
9478
9479         * modules/sockets: New module, can be used to call WSA_Startup and
9480         WSA_Cleanup when needed.
9481
9482         * lib/sockets.h, lib/sockets.c: New files.
9483
9484         * m4/sockets.m4: New file.
9485
9486         * tests/test-sockets.c: New file.
9487
9488 2008-01-19  Bruno Haible  <bruno@clisp.org>
9489
9490         * doc/posix-headers: Renamed from doc/headers.
9491         * doc/posix-functions: Renamed from doc/functions.
9492         * doc/gnulib.texi: Update.
9493
9494 2008-01-19  Bruno Haible  <bruno@clisp.org>
9495
9496         * doc/glibc-functions/strcasestr.texi: Include contents of
9497         doc/functions/strcasestr.texi, fixing the list of platforms.
9498         * doc/functions/strcasestr.texi: Remove file.
9499
9500 2008-01-19  Bruno Haible  <bruno@clisp.org>
9501
9502         * doc/glibc-functions/memmem.texi: Include contents of
9503         doc/functions/memmem.texi.
9504         * doc/functions/memmem.texi: Remove file.
9505
9506 2008-01-18  Bruno Haible  <bruno@clisp.org>
9507
9508         * doc/glibc-functions/*.texi: New files.
9509         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
9510         to use the new files.
9511
9512 2008-01-17  Bruno Haible  <bruno@clisp.org>
9513
9514         * tests/test-gethostname.c (main): Fix printf statement.
9515
9516 2008-01-17  Simon Josefsson  <simon@josefsson.org>
9517
9518         * modules/gethostname-tests: New file.
9519
9520         * tests/test-gethostname.c: New file.
9521
9522 2008-01-17  Simon Josefsson  <simon@josefsson.org>
9523
9524         * lib/gethostname.c: Include string.h unconditionally, strncpy is
9525         used by the UNAME case.  Reported by Bruno Haible
9526         <bruno@clisp.org>.
9527
9528 2008-01-17  Eric Blake  <ebb9@byu.net>
9529
9530         Convert c-strcasestr to be more efficient.
9531         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
9532         (Depends-on): Add c-strcase, remove malloca, strnlen.
9533         * tests/test-c-strcasestr.c (main): Enhance test.
9534         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
9535
9536 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
9537
9538         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
9539         Use it in creating po/Makevars.
9540
9541 2008-01-15  Simon Josefsson  <simon@josefsson.org>
9542
9543         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
9544         Applications that requires it should initialize libgcrypt
9545         manually.
9546
9547 2008-01-16  Simon Josefsson  <simon@josefsson.org>
9548
9549         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
9550
9551 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
9552
9553         Fix problem with getdate on mingw32 reported by Simon Josefsson
9554         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
9555         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
9556         tzname", when deciding whether to declare tzname.
9557         * lib/strftime.c (tzname): Likewise.
9558
9559 2008-01-15  Bruno Haible  <bruno@clisp.org>
9560
9561         Work around a MacOS X 10.5 bug in frexpl().
9562         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
9563         * doc/functions/frexpl.texi: Document the bug.
9564         Reported by Elias Pipping <pipping@gentoo.org>.
9565
9566 2008-01-14  Eric Blake  <ebb9@byu.net>
9567
9568         Touch up previous patch.
9569         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
9570         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
9571
9572         Convert strcasestr module to use Two-Way algorithm.
9573         * modules/strcasestr-simple: New module, based on the old
9574         strcasestr, but with Two-Way rather than KMP.
9575         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
9576         * lib/string.in.h (rpl_strcasestr): Declare.
9577         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
9578         performance.
9579         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
9580         * modules/string (Makefile.am): Support strcasestr.
9581         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
9582         * modules/strcasestr-tests (Depends-on): Check for alarm.
9583         * tests/test-strcasestr.c: Augment test.
9584         * lib/str-two-way.h: Clean up stray macro.
9585         * NEWS: Document new module.
9586         * MODULES.html.sh (string handling): Likewise.
9587         * doc/functions/strcasestr.texi: New file.
9588         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
9589         here, since it is not a POSIX function.
9590
9591 2008-01-14  Colin Watson  <cjwatson@debian.org>
9592             Bruno Haible  <bruno@clisp.org>
9593
9594         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
9595         works fine; if not, set REPLACE_STRSIGNAL.
9596         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
9597         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9598         REPLACE_STRSIGNAL.
9599         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
9600         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
9601         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
9602
9603 2008-01-14  Bruno Haible  <bruno@clisp.org>
9604
9605         * modules/strsignal (Include): Change to <string.h>.
9606
9607 2008-01-14  Colin Watson  <cjwatson@debian.org>
9608
9609         * modules/argp (Notice): Add a notice recommending to change
9610         XGETTEXT_OPTIONS.
9611         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
9612
9613 2008-01-13  Colin Watson  <cjwatson@debian.org>
9614
9615         * modules/strsignal-tests: New file.
9616         * tests/test-strsignal.c: New file.
9617
9618         * lib/strsignal.c: New file, from glibc with modifications.
9619         * lib/siglist.h: New file, from glibc with modifications.
9620         * lib/string.in.h (strsignal): New declaration.
9621         * m4/strsignal.m4: New file.
9622         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9623         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
9624         * modules/strsignal: New file.
9625         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
9626         HAVE_DECL_STRSIGNAL.
9627
9628 2008-01-13  Bruno Haible  <bruno@clisp.org>
9629
9630         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
9631         locale encoding is not ASCII. Needed for OpenBSD 4.0.
9632         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
9633         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
9634
9635 2008-01-13  Bruno Haible  <bruno@clisp.org>
9636
9637         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
9638         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
9639         * lib/argp.h (__attribute__): Likewise.
9640         * lib/c-stack.c (__attribute__): Likewise.
9641         * lib/error.h (__attribute__): Likewise.
9642         * lib/fts.c (__attribute__): Likewise.
9643         * lib/openat.h (__attribute__): Likewise.
9644         * lib/stdio.in.h (__attribute__): Likewise.
9645         * lib/string.in.h (__attribute__): Likewise.
9646         * lib/utimens.c (__attribute__): Likewise.
9647         * lib/vasnprintf.h (__attribute__): Likewise.
9648         * lib/xalloc.h (__attribute__): Likewise.
9649         * lib/xprintf.h (__attribute__): Likewise.
9650         * lib/xstrtol.h (__attribute__): Likewise.
9651         * lib/xvasprintf.h (__attribute__): Likewise.
9652
9653 2008-01-12  Bruno Haible  <bruno@clisp.org>
9654
9655         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
9656         * doc/glibc-headers/a.out.texi: New file.
9657         * doc/glibc-headers/aliases.texi: New file.
9658         * doc/glibc-headers/alloca.texi: New file.
9659         * doc/glibc-headers/ar.texi: New file.
9660         * doc/glibc-headers/argp.texi: New file.
9661         * doc/glibc-headers/argz.texi: New file.
9662         * doc/glibc-headers/byteswap.texi: New file.
9663         * doc/glibc-headers/crypt.texi: New file.
9664         * doc/glibc-headers/endian.texi: New file.
9665         * doc/glibc-headers/envz.texi: New file.
9666         * doc/glibc-headers/err.texi: New file.
9667         * doc/glibc-headers/error.texi: New file.
9668         * doc/glibc-headers/execinfo.texi: New file.
9669         * doc/glibc-headers/fpu_control.texi: New file.
9670         * doc/glibc-headers/fstab.texi: New file.
9671         * doc/glibc-headers/fts.texi: New file.
9672         * doc/glibc-headers/getopt.texi: New file.
9673         * doc/glibc-headers/ieee754.texi: New file.
9674         * doc/glibc-headers/ifaddrs.texi: New file.
9675         * doc/glibc-headers/libintl.texi: New file.
9676         * doc/glibc-headers/mcheck.texi: New file.
9677         * doc/glibc-headers/mntent.texi: New file.
9678         * doc/glibc-headers/obstack.texi: New file.
9679         * doc/glibc-headers/paths.texi: New file.
9680         * doc/glibc-headers/printf.texi: New file.
9681         * doc/glibc-headers/pty.texi: New file.
9682         * doc/glibc-headers/resolv.texi: New file.
9683         * doc/glibc-headers/shadow.texi: New file.
9684         * doc/glibc-headers/sysexits.texi: New file.
9685         * doc/glibc-headers/ttyent.texi: New file.
9686
9687 2008-01-12  Jim Meyering  <meyering@redhat.com>
9688
9689         announce-gen: emit Gnulib's git-based version string.
9690         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
9691         New option --gnulib-version=V, where V is expected to be
9692         the output of running git describe in the gnulib directory.
9693         (get_tool_versions): Request feedback on xdelta.  I suspect it's
9694         not useful, and plan to stop publishing an xdelta file with each
9695         coreutils release.
9696
9697         * build-aux/announce-gen: Also check for lzma-compressed files.
9698
9699 2008-01-11  Bruno Haible  <bruno@clisp.org>
9700
9701         * tests/test-memmem.c (main): Increase maximum allowed time.
9702         * tests/test-strstr.c (main): Likewise.
9703
9704 2008-01-11  Bruno Haible  <bruno@clisp.org>
9705
9706         * doc/functions/memmem.texi: Add more precisions about platforms.
9707         * doc/functions/strstr.texi: Likewise.
9708
9709 2008-01-10  Eric Blake  <ebb9@byu.net>
9710
9711         * m4/strstr.m4: Delete cruft from copy-n-paste.
9712         Reported by Bruno Haible.
9713
9714 2008-01-10  Bruno Haible  <bruno@clisp.org>
9715
9716         Make c-strstr rely on strstr.
9717         * lib/c-strstr.c: Don't include str-kmp.h.
9718         (c_strstr): Define in terms of strstr.
9719         * modules/c-strstr (Files): Remove lib/str-kmp.h.
9720         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
9721
9722 2008-01-10  Bruno Haible  <bruno@clisp.org>
9723
9724         * doc/gnulib.texi (String Functions in C Locale): New section.
9725         * doc/c-ctype.texi: New file.
9726         * doc/c-strcase.texi: New file.
9727         * doc/c-strcaseeq.texi: New file.
9728         * doc/c-strcasestr.texi: New file.
9729         * doc/c-strstr.texi: New file.
9730         * doc/c-strtod.texi: New file.
9731         * doc/c-strtold.texi: New file.
9732
9733 2008-01-10  Eric Blake  <ebb9@byu.net>
9734
9735         * lib/relocatable.h: Fix a comment.
9736
9737 2008-01-10  Eric Blake  <ebb9@byu.net>
9738
9739         Share two-way algorithm.
9740         * lib/str-two-way.h: New file, merged from...
9741         * lib/memmem.c: ...here...
9742         * lib/strstr.c: ...and here.
9743         * modules/memmem (Files): Use it.
9744         * modules/strstr (Files): Likewise.
9745
9746         Avoid quadratic strstr implementations.
9747         * lib/strstr.c: New file.
9748         * m4/strstr.m4: Likewise.
9749         * modules/strstr: Likewise.
9750         * modules/strstr-tests: Likewise.
9751         * tests/test-strstr.c: Likewise.
9752         * lib/string.in.h (rpl_strstr): Declare.
9753         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
9754         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
9755         * modules/string (Makefile.am): Likewise.
9756         * MODULES.html.sh (string handling): Mention new module.
9757         * doc/functions/strstr.texi (strstr): Document the bug.
9758
9759 2008-01-10  Bruno Haible  <bruno@clisp.org>
9760
9761         * lib/relocatable.h (relocate): State whether result is freshly
9762         allocated or not.
9763         * lib/relocatable.c (relocate): Return a freshly allocated string
9764         instead of a pointer to a privately held string.
9765         Reported by Sylvain Beucler <beuc@gnu.org>.
9766
9767 2008-01-10  Colin Watson  <cjwatson@debian.org>
9768
9769         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
9770         s/S_ISNLK/S_ISLNK/.
9771
9772 2008-01-09  Bruno Haible  <bruno@clisp.org>
9773
9774         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
9775         and other files.
9776         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
9777         if it's only a guess.
9778         * modules/memmem: Simplify by depending on memmem-simple.
9779
9780 2008-01-09  Bruno Haible  <bruno@clisp.org>
9781
9782         Work around OpenBSD 4.0 tdelete() bug.
9783         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
9784         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
9785         macros and don't redefine the enum values.
9786         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
9787         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
9788         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
9789
9790 2008-01-09  Bruno Haible  <bruno@clisp.org>
9791
9792         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
9793         (main): Don't perform the tests if setlocale did not install a UTF-8
9794         locale. Needed on OpenBSD 4.0.
9795         * modules/wcwidth-tests (Depends-on): Add localcharset.
9796
9797 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
9798
9799         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
9800         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
9801         * NEWS: announce this.
9802         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
9803
9804 2008-01-09  Simon Josefsson  <simon@josefsson.org>
9805         and Eric Blake  <ebb9@byu.net>
9806
9807         Add memmem-simple module.
9808         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
9809         (gl_FUNC_MEMMEM): Separate performance from presence checks.
9810         * modules/memmem-simple: New file.
9811         * modules/memmem (Description): Tweak.
9812         * MODULES.html.sh (string handling): Mention new module.
9813         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
9814         addressed by memmem-simple.
9815         * NEWS: Document the difference.
9816
9817 2008-01-09  Eric Blake  <ebb9@byu.net>
9818
9819         Give gcc some memmem optimization hints.
9820         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
9821         (strcasestr): Declare as pure.
9822         * modules/memmem (Maintainer): Claim my implementation.
9823
9824 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9825
9826         Support AIX 6.1 and higher.
9827         * build-aux/config.libpath: Likewise.
9828         * build-aux/config.rpath: Likewise.
9829
9830 2008-01-08  Jim Meyering  <meyering@redhat.com>
9831             Bruno Haible  <bruno@clisp.org>
9832
9833         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
9834         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
9835         Reported by Peter Fales in
9836         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
9837
9838 2008-01-08  Bruno Haible  <bruno@clisp.org>
9839
9840         * modules/unictype/category-of (Depends-on): Add
9841         unictype/category-none.
9842         * modules/unictype/category-and-tests (Depends-on): Add
9843         unictype/category-{L,N,Lu,Nd}.
9844         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
9845         * modules/unictype/category-or-tests (Depends-on): Add
9846         unictype/category-{L,N}.
9847         * modules/unictype/category-name-tests (Depends-on): Add
9848         unictype/category-{Z,Nl}.
9849         Reported by Simon Josefsson.
9850
9851 2008-01-08  Bruno Haible  <bruno@clisp.org>
9852
9853         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
9854         convention better.
9855         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
9856         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
9857         Reported by Peter Miller <millerp@canb.auug.org.au>.
9858
9859 2008-01-08  Eric Blake  <ebb9@byu.net>
9860
9861         Rewrite memmem to guarantee linear complexity without malloc.
9862         * lib/memmem.c (memmem): Use Two-Way rather than
9863         Knuth-Morris-Pratt, to allow O(1) space usage.
9864         (critical_factorization, two_way_short_needle)
9865         (two_way_long_needle): New functions.
9866         (knuth_morris_pratt): Delete.
9867         * modules/memmem (Depends-on): No longer need malloca or stdbool.
9868         Add stdint.
9869         * tests/test-memmem.c (main): Add tests for periodic needle and
9870         sublinear performance.
9871         * doc/functions/memmem.texi (memmem): Document other deficiencies
9872         in cygwin and older glibc.
9873
9874 2008-01-08  Bruno Haible  <bruno@clisp.org>
9875
9876         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
9877         augmentation.
9878
9879 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
9880
9881         Add a configure time option: --disable-acl.
9882         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
9883         AC_ARG_ENABLE(acl).
9884
9885 2008-01-06  Simon Josefsson  <simon@josefsson.org>
9886
9887         * tests/test-localename.c: Don't include obsolete "setenv.h".
9888
9889         * modules/localename-tests (Depends-on): Need unsetenv.
9890
9891 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9892
9893         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
9894
9895 2008-01-06  Colin Watson  <cjwatson@debian.org>
9896
9897         * users.txt: Add man-db.
9898
9899 2008-01-07  Bruno Haible  <bruno@clisp.org>
9900
9901         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
9902         previous section name.
9903
9904 2008-01-07  Bruno Haible  <bruno@clisp.org>
9905
9906         * lib/progname.c (set_program_name): Don't strip off a leading
9907         "lt-" prefix outside a .libs directory.
9908         Suggested by Paul Eggert.
9909
9910 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
9911             Bruno Haible  <bruno@clisp.org>
9912
9913         Improve memory cleanup in 'relocatable' module.
9914         * lib/relocatable.h (compute_curr_prefix): Change return type to
9915         'char *'.
9916         * lib/relocatable.c (compute_curr_prefix): Change return type to
9917         'char *'. Free curr_installdir after use.
9918         (relocate): Free curr_prefix_better after use.
9919         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
9920
9921 2008-01-01  Bruno Haible  <bruno@clisp.org>
9922
9923         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
9924         failure on older glibc systems.
9925         Reported by Peter Fales <psfales@alcatel-lucent.com>.
9926
9927 2008-01-05  Eric Blake  <ebb9@byu.net>
9928
9929         Avoid quadratic system memmem.
9930         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
9931         Reported by Ralf Wildenhues.
9932
9933         Fix memmem test for mingw.
9934         * modules/memmem-tests (configure.ac): Check for alarm.
9935         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
9936         it.
9937         * doc/functions/memmem.texi: New file.
9938         * doc/gnulib.texi (Function Substitutes): Add memmem.
9939         Reported by Bruno Haible.
9940
9941 2008-01-04  Bruno Haible  <bruno@clisp.org>
9942
9943         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
9944         Require gl_HEADER_STRINGS_H_DEFAULTS, not
9945         gl_HEADER_STRING_H_DEFAULTS.
9946
9947 2008-01-04  Eric Blake  <ebb9@byu.net>
9948
9949         Shorten duration of memmem test.
9950         * tests/test-memmem.c (main): Use alarm to declare failure if test
9951         is taking too long.
9952         Reported by Ralf Wildenhues.
9953
9954 2007-12-21  Simon Josefsson  <simon@josefsson.org>
9955
9956         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
9957         string, needed by strerror.
9958
9959 2008-01-03  Colin Watson  <cjwatson@debian.org>
9960             Bruno Haible  <bruno@clisp.org>
9961
9962         * doc/gnulib-tool.texi (Localization): New section.
9963
9964 2008-01-02  Bruno Haible  <bruno@clisp.org>
9965
9966         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
9967         variables to 'unsigned char *' type.
9968         Reported by Paul Eggert.
9969
9970 2008-01-02  Jim Meyering  <jim@meyering.net>
9971
9972         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
9973
9974 2007-12-31  Jim Meyering  <jim@meyering.net>
9975
9976         Avoid use of private FTS type name.
9977         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
9978
9979 2007-12-30  Karl Berry  <karl@gnu.org>
9980
9981         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
9982         work around defect in Texinfo and/or the standalone Info browser.
9983
9984 2007-12-30  Bruno Haible  <bruno@clisp.org>
9985
9986         Unify 5 copies of the KMP code.
9987         * lib/str-kmp.h: New file.
9988         * lib/c-strcasestr.c: Include str-kmp.h.
9989         (knuth_morris_pratt): Remove function.
9990         (c_strcasestr): Update.
9991         * lib/c-strstr.c: Include str-kmp.h.
9992         (knuth_morris_pratt): Remove function.
9993         (c_strcasestr): Update.
9994         * lib/mbscasestr.c: Include str-kmp.h.
9995         (knuth_morris_pratt_unibyte): Remove function.
9996         * lib/mbsstr.c: Include str-kmp.h.
9997         (knuth_morris_pratt_unibyte): Remove function.
9998         * lib/strcasestr.c: Include str-kmp.h.
9999         (knuth_morris_pratt): Remove function.
10000         (strcasestr): Update.
10001         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
10002         * modules/c-strstr (Files): Likewise.
10003         * modules/mbscasestr (Files): Likewise.
10004         * modules/mbsstr (Files): Likewise.
10005         * modules/strcasestr (Files): Likewise.
10006         Suggested by Paul Eggert.
10007
10008 2007-12-30  Bruno Haible  <bruno@clisp.org>
10009
10010         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
10011         defined.
10012
10013 2007-12-30  Bruno Haible  <bruno@clisp.org>
10014
10015         * lib/xmalloca.h: Include xalloc.h.
10016         (xnmalloca): New macro.
10017
10018 2007-12-30  Bruno Haible  <bruno@clisp.org>
10019
10020         * lib/malloca.h (nmalloca): New macro.
10021         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
10022         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
10023         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
10024         knuth_morris_pratt_multibyte): Likewise.
10025         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
10026         knuth_morris_pratt_multibyte): Likewise.
10027         * lib/memmem.c (knuth_morris_pratt): Likewise.
10028         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
10029
10030 2007-12-25  Bruno Haible  <bruno@clisp.org>
10031
10032         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
10033         * lib/glob.c: Don't include openat.h.
10034         (link_exists2_p): Add back the code that deals with the
10035         !GLOB_ALTDIRFUNC case.
10036         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
10037         let it do the filename concatenation.
10038         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
10039         * modules/glob (Depends-on): Remove openat.
10040
10041 2007-12-31  Bruno Haible  <bruno@clisp.org>
10042
10043         * modules/dirfd (License): Change to LGPLv2+.
10044         Approved by Jim Meyering.
10045
10046 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
10047
10048         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
10049         when multiplying M by sizeof (size_t).
10050
10051 2007-12-10  Martin Lambers  <marlam@marlam.de>
10052
10053         Override getpagesize on mingw.
10054         * lib/getpagesize.c: New file.
10055         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
10056         * modules/getpagesize (Files): Add lib/getpagesize.c.
10057         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
10058         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10059         REPLACE_GETPAGESIZE.
10060         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
10061
10062 2007-12-25  Bruno Haible  <bruno@clisp.org>
10063
10064         * modules/localcharset (Notice): New field.
10065         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
10066         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
10067
10068 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
10069             Bruno Haible  <bruno@clisp.org>
10070
10071         Avoid using the syntax symbol() in formatted documentation.
10072         * MODULES.html.sh (func_module): When replacing symbol() with a
10073         hyperlink, remove the parentheses. Show an error if some remain.
10074         Recognize and render the '...' syntax.
10075         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
10076         Rework. Add paragraph about GCC's inlining.
10077         * doc/alloca.texi: Likewise.
10078         * doc/error.texi: Remove parentheses from symbol reference.
10079         * doc/gnulib-intro.texi: Likewise.
10080         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
10081         * modules/fnmatch (Description): Reword to say "the ... function".
10082         * modules/full-read (Description): Likewise.
10083         * modules/full-write (Description): Likewise.
10084         * modules/safe-read (Description): Likewise.
10085         * modules/safe-write (Description): Likewise.
10086         * modules/strchrnul (Description): Likewise.
10087         * modules/trim (Description): Likewise.
10088         * modules/error (Description): Remove parentheses from symbol
10089         references.
10090         * modules/verror (Description): Likewise.
10091         Reported by Karl Berry.
10092
10093 2007-12-25  Bruno Haible  <bruno@clisp.org>
10094
10095         Fixup after 2007-10-16 commit.
10096         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
10097
10098 2007-12-24  Bruno Haible  <bruno@clisp.org>
10099
10100         Make --enable-relocatable work with DESTDIR.
10101         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
10102         to compute installdir from destprog.
10103         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
10104         also set the RELOC_DESTDIR variable.
10105         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10106
10107 2007-12-24  Bruno Haible  <bruno@clisp.org>
10108
10109         Fix link error due to xalloc_die().
10110         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
10111         of xreadlink.
10112         * lib/relocwrapper.c: Update comments.
10113         * build-aux/install-reloc: Remove xreadlink.c from file list.
10114         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
10115         xreadlink.c.
10116         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10117
10118 2007-12-24  Bruno Haible  <bruno@clisp.org>
10119
10120         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
10121         * lib/setenv.h: Remove file.
10122         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
10123         lib/setenv.h.
10124         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
10125         (Depends-on): Add stdlib.
10126         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
10127         gl_FUNC_UNSETENV.
10128         (Include): Replace setenv.h with <stdlib.h>.
10129         * modules/unsetenv: New file.
10130         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
10131         * lib/unsetenv.c: Include <stdlib.h> first.
10132         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
10133         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
10134         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
10135         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
10136         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
10137         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
10138         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
10139         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
10140         * doc/functions/unsetenv.texi: Update.
10141         * modules/xsetenv (Depends-on): Add unsetenv.
10142         * modules/getdate (Depends-on): Likewise.
10143         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
10144         * lib/xsetenv.c: Don't include setenv.h.
10145         * lib/getdate.y: Likewise.
10146         * lib/relocwrapper.c: Likewise.
10147         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
10148         (Depends-on): Add stdlib.
10149         * NEWS: Mention the changes.
10150         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
10151
10152 2007-12-23  Bruno Haible  <bruno@clisp.org>
10153
10154         * lib/memmem.c (memmem): Use lowercase variable names. Tab
10155         indentation.
10156
10157 2007-12-23  Bruno Haible  <bruno@clisp.org>
10158
10159         * lib/c-strcasestr.c: Add more comments.
10160         * lib/c-strstr.c: Likewise.
10161         * lib/mbscasestr.c: Likewise.
10162         * lib/mbsstr.c: Likewise.
10163         * lib/strcasestr.c: Likewise.
10164         * lib/memmem.c: Likewise.
10165
10166 2007-12-23  Bruno Haible  <bruno@clisp.org>
10167
10168         * tests/test-memmem.c: Include <string.h> first.
10169
10170 2007-12-22  Bruno Haible  <bruno@clisp.org>
10171
10172         * gnulib-tool (func_create_testdir): Change $auxdir while generating
10173         the contents of $testsbase.
10174         Reported by Ralf Wildenhues.
10175
10176 2007-12-22  Bruno Haible  <bruno@clisp.org>
10177
10178         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
10179         two variables local_ldadd_before, local_ldadd_last.
10180
10181 2007-12-20  Eric Blake  <ebb9@byu.net>
10182
10183         Work around circular library issue when cross-compiling.
10184         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
10185         that progname.o does not need to pull in rpl_memcmp.
10186
10187 2007-12-19  Eric Blake  <ebb9@byu.net>
10188
10189         Fix memmem to avoid O(n^2) worst-case complexity.
10190         * lib/memmem.c (knuth_morris_pratt): New function.
10191         (memmem): Use it if first few naive iterations fail.
10192         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
10193         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
10194         * modules/memchr (License): Likewise.
10195         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
10196         malloca.
10197         * tests/test-memmem.c: Rewrite, borrowing ideas from
10198         test-mbsstr1.c; the old version wouldn't even compile!
10199         * modules/memmem-tests: New file.
10200         * lib/string.in.h (rpl_memmem): Add declaration.
10201         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
10202         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
10203         REPLACE_MEMMEM.
10204
10205 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
10206
10207         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
10208         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
10209         before any system include files, and undef after them all.  This
10210         should fix a problem on VMS reported by John E. Malmberg in
10211         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
10212
10213 2007-12-17  Eric Blake  <ebb9@byu.net>
10214
10215         Revert addition of verify, for BSD/OS.
10216         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
10217         can't handle large files, for the sake of obsolete platforms.
10218         * modules/fseeko (Depends-on): Remove verify.
10219         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
10220         * doc/functions/ftello.texi (ftello): Likewise.
10221         * doc/functions/fgetpos.texi (fgetpos): Likewise.
10222         Reported by Larry Jones.
10223
10224 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
10225
10226         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
10227         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
10228
10229 2007-12-17  Jim Meyering  <meyering@redhat.com>
10230
10231         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
10232         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
10233         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
10234         * modules/getcwd (Depends-on): Add openat.
10235         Reported by Petr Salinger.
10236
10237 2007-12-17  Bruno Haible  <bruno@clisp.org>
10238
10239         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
10240         avoid a segmentation fault of the configure test on x86_64 systems.
10241
10242 2007-12-15  Jim Meyering  <meyering@redhat.com>
10243
10244         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
10245
10246 2007-12-13  Eric Blake  <ebb9@byu.net>
10247
10248         Another fseek test.
10249         * tests/test-fseek.c (main): Also test ungetc handling.
10250         * tests/test-fseeko.c (main): Likewise.
10251         * modules/fseeko (Depends-on): Add verify.
10252         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
10253         large.
10254         Reported by Larry Jones.
10255
10256         Fix fseeko on mingw.
10257         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
10258         seek.
10259
10260         Beef up fseek tests.
10261         * tests/test-fseek.c (main): Also test eof handling.
10262         * tests/test-fseeko.c (main): Likewise.
10263         Reported by Larry Jones.
10264
10265 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
10266
10267         Fix fseeko on BSD-based platforms.
10268         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
10269         successful seek.
10270
10271 2007-12-12  Eric Blake  <ebb9@byu.net>
10272
10273         Allow circular dependency of separate libtests.a
10274         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
10275         when use_libtests.
10276
10277 2007-12-11  Eric Blake  <ebb9@byu.net>
10278
10279         Fix bug with -0.0L in previous patch.
10280         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
10281         * tests/test-isnan.c (main): Also test on zeroes.
10282         * tests/test-isnanf.c (main): Likewise.
10283         * tests/test-isnanl.h (main): Likewise.
10284
10285         Detect pseudo-denormals on x86 even when cross-compiling.
10286         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
10287         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
10288         invalid bit patterns that happen to satisfy ==.
10289
10290         Avoid link failures with separate libtests.a.
10291         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
10292         last, to satisfy circular dependencies.
10293
10294 2007-12-11  Eric Blake  <ebb9@byu.net>
10295         and Bruno Haible  <bruno@clisp.org>
10296
10297         Fix OpenBSD 4.0 <float.h> handling of long double.
10298         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
10299         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
10300         * doc/headers/float.texi (float.h): Document OpenBSD bug.
10301
10302 2007-12-11  Jim Meyering  <meyering@redhat.com>
10303
10304         * users.txt: Add libvirt.
10305
10306         Support versions of autoconf prior to 2.59c.
10307         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
10308         if it is not already defined.
10309
10310 2007-12-09  Bruno Haible  <bruno@clisp.org>
10311
10312         Let 'gnulib-tool --import' collect sources needed for the tests in
10313         tests/ rather than in lib/.
10314         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
10315         argument. If true, add rules to generate libtests.a, and put libtests.a
10316         into $(LDADD). Consider source files in subdirectories and set
10317         uses_subdirs.
10318         (func_emit_initmacro_start, func_emit_initmacro_end,
10319         func_emit_initmacro_done): Pass all arguments explicitly.
10320         (func_import): Determine two module lists main_modules,
10321         testsrelated_modules. Determine use_libtests. Determine two variables
10322         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
10323         instead of just sed_transform_lib_file. Determine two variables
10324         main_files and testsrelated_files. Compute 'files' as the union of
10325         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
10326         func_add_or_update. In the generated gnulib-comp.m4, collect the
10327         object files for tests/ in different variables than those for lib/.
10328         Substitute LIBTESTS_LIBDEPS.
10329         (func_create_testdir): Combine the uses_subdirs results from
10330         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
10331
10332 2007-12-09  Bruno Haible  <bruno@clisp.org>
10333
10334         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
10335         the build-aux directory.
10336
10337 2007-12-09  Bruno Haible  <bruno@clisp.org>
10338
10339         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
10340         introduced on 2006-09-09.
10341
10342 2007-12-07  Jim Meyering  <meyering@redhat.com>
10343
10344         Let these macros work also with autoconf-2.59.
10345         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
10346         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
10347         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
10348
10349 2007-12-06  Jim Meyering  <meyering@redhat.com>
10350
10351         Avoid a configure-time syntax error in gl_FUNC_ACL.
10352         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
10353         function in each branch, before testing the cache variable.
10354
10355 2007-12-04  Eric Blake  <ebb9@byu.net>
10356
10357         Make scripts executable.
10358         * build-aux/config.guess: Add execute permissions.
10359         * build-aux/config.sub: Likewise.
10360         * build-aux/gendocs.sh: Likewise.
10361
10362         Fix frexp on mingw.
10363         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
10364         cross-compiling.
10365         * doc/functions/frexp.texi (frexp): Document the bug.
10366
10367         Make cygwin fseeko check more reliable.
10368         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
10369         version numbers, rather than unrelated feature check.
10370         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
10371         * doc/functions/ftello.texi (ftello): Likewise.
10372         Reported by Bruno Haible.
10373
10374         * m4/strerror.m4: Bump version number.
10375
10376 2007-12-03  Bruno Haible  <bruno@clisp.org>
10377
10378         * doc/functions/mprotect.texi: Mention the mingw problem.
10379
10380 2007-12-03  Eric Blake  <ebb9@byu.net>
10381
10382         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
10383         REPLACE_STRERROR is initialized before this macro.
10384
10385 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
10386
10387         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
10388         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
10389         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
10390         put -lsec in even for programs other than 'ls'.  This fixes a problem
10391         for gettext reported by Bruno Haible in
10392         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
10393         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
10394         Add support for Solaris 10.  This isn't efficient, but should get the
10395         job done for now.
10396
10397 2007-12-03  James Youngman  <jay@gnu.org>
10398
10399         * doc/regexprops-generic.texi: change "an close-group" to "a
10400         close-group" and "illegal" to "not allowed".
10401
10402 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10403
10404         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
10405         pr_byname.h. Needed for the rare case when the maintainer has done
10406         "make maintainer-clean" in the source directory and then attempts a
10407         build outside the source directory.
10408         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
10409         scripts_byname.h.
10410
10411 2007-12-02  Martin Lambers <marlam@marlam.de>
10412             Bruno Haible  <bruno@clisp.org>
10413
10414         * lib/getpagesize.h: Remove file.
10415         * lib/unistd.in.h: Include declaration of getpagesize here.
10416         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
10417         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
10418         HAVE_SYS_PARAM_H.
10419         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
10420         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
10421         * modules/getpagesize (Files): Remove lib/getpagesize.h.
10422         (Depends-on): Add unistd.
10423         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
10424         (Include): Use <unistd.h> instead of getpagesize.h.
10425         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
10426         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
10427         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
10428         gl_GETPAGESIZE invocation, already handled by module dependency.
10429         * lib/pagealign_alloc.c: Don't include getpagesize.h.
10430
10431 2007-12-02  Bruno Haible  <bruno@clisp.org>
10432
10433         * modules/strings-tests: New file.
10434         * tests/test-strings.c: New file.
10435
10436         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
10437         * lib/strings.in.h: New file.
10438         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
10439         * m4/strings_h.m4: New file.
10440         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
10441         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
10442         * modules/strings: New file.
10443         * modules/string (Makefile.am): Update.
10444         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
10445         Reported by Karl Berry.
10446
10447 2007-12-01  Eric Blake  <ebb9@byu.net>
10448
10449         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
10450         accomodate fix in cygwin 1.5.25.
10451
10452 2007-12-01  Jim Meyering  <meyering@redhat.com>
10453
10454         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
10455         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
10456         that would inhibit utf8-optimization of a regexp containing line-
10457         or buffer-anchors, e.g., `^', `$'.
10458
10459 2007-11-30  Bruno Haible  <bruno@clisp.org>
10460
10461         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
10462         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
10463         glthread_recursive_lock_init.
10464         * lib/lock.c (glthread_recursive_lock_init)
10465         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
10466         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
10467
10468 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
10469
10470         New function qset_acl, like set_acl but with syscall semantics.
10471         * lib/acl.h (qset_acl): New decl.
10472         * lib/acl.c (qset_acl): New function.
10473         (set_acl): Use new function.  Use more-consistent diagnostics.
10474
10475 2007-11-28  Jim Meyering  <meyering@redhat.com>
10476
10477         * modules/physmem (License): Change from GPL to LGPLv2+.
10478
10479 2007-11-26  Bruno Haible  <bruno@clisp.org>
10480
10481         * lib/vasnprintf.c (decode_long_double): Don't abort if the
10482         'long double' type has excess precision.
10483         Reported by Jim Meyering in
10484         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
10485
10486 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10487
10488         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
10489         Sync from <http://gnu.org/licenses>.
10490         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
10491         with license text from same location.
10492         * doc/maintain.texi, doc/standards.texi:  Sync from
10493         <http://savannah.gnu.org/projects/gnustandards>.
10494
10495 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
10496         and Jim Meyering  <meyering@redhat.com>
10497
10498         Adjust getdate' grammar to accept a slightly more regular language.
10499         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
10500         Before, the former was rejected.
10501         * lib/getdate.y (digits_to_date_time): New function, factored
10502         out of ...
10503         (number): ...here.  Just call digits_to_date_time.
10504         (hybrid): New non-terminal to handle an <unsigned number,
10505         signed relative offset> sequence consistently.
10506
10507 2007-11-18  Jim Meyering  <meyering@redhat.com>
10508
10509         Pull my changes from coreutils:
10510         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
10511         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
10512         use of $gnulib_tool_option_extras, so that it's separated from the
10513         preceding argument.
10514
10515         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
10516         * build-aux/bootstrap (cp_mark_as_generated): Create any required
10517         parent destination directories before copying a file into place.
10518
10519 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
10520
10521         bootstrap: work also with 4-argument variant of AC_INIT
10522         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
10523
10524 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
10525
10526         Port test-getaddrinfo to Solaris.
10527         Problem reported by Bruno Haible in
10528         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
10529         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
10530         explanation of setting 'hints'.
10531         Don't reject an implementation merely because it returns EAI_SERVICE.
10532         (EAI_SERVICE): Define to 0 if not defined.
10533
10534 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
10535
10536         The license of gnu-make and posix-shell is now "GPLed build tool".
10537         * modules/gnu-make (License): Likewise.
10538         * modules/posix-shell (License): Likewise.
10539
10540         New module posix-shell, for determining a POSIX shell
10541         or perhaps something that is close enough to a POSIX shell.
10542         * m4/posix-shell.m4: New file.
10543         * modules/posix-shell: New file.
10544
10545         * MODULES.html.sh: Mention new module.
10546
10547         New module gnu-make, for determining whether we're using GNU Make.
10548         * m4/gnu-make.m4: New file.
10549         * modules/gnu-make: New file.
10550         * MODULES.html.sh: Mention new module.
10551
10552 2007-11-14  Jim Meyering  <meyering@redhat.com>
10553
10554         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
10555         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
10556         use this macro to create a function _definition_.
10557         Remove useless "#undef ARGMATCH_DIE".
10558
10559 2007-11-14  Bruno Haible  <bruno@clisp.org>
10560
10561         * lib/config.charset: Update for OpenBSD 4.1.
10562         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
10563
10564 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
10565
10566         Document 64-bit #if problems in stdint.texi.
10567         * doc/headers/stdint.texi (stdint.h): Mention problems with
10568         64-bit-#if, and how to work around them.
10569
10570         Don't insist on 'long long int' support in the preprocessor.  It
10571         breaks too many things.  For example, PRIdMAX still uses a 'long
10572         long int' format with the latest Sun compiler, even though
10573         HAVE_LONG_LONG_INT isn't defined due to that compiler's
10574         preprocessor problem.  This causes the latest coreutils to dump
10575         core on Solaris 10 sparc with the Sun C compiler.
10576         Instead, fix the 2007-10-16 problem in a different way, by evaluating
10577         the troublesome expressions at configure-time, not at #if-time.
10578         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
10579         preprocessor.
10580         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
10581         compile-time C checks, done at 'configure'-time.
10582         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
10583         * modules/inttypes (Makefile): Substitute the new symbols that
10584         gl_INTTYPES_H now generates.
10585         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
10586
10587 2007-11-12  Bruno Haible  <bruno@clisp.org>
10588
10589         Tests for Unicode character classification functions.
10590
10591         * modules/unictype/bidicategory-byname-tests: New file.
10592         * modules/unictype/bidicategory-name-tests: New file.
10593         * modules/unictype/bidicategory-of-tests: New file.
10594         * modules/unictype/bidicategory-test-tests: New file.
10595         * modules/unictype/block-list-tests: New file.
10596         * modules/unictype/block-of-tests: New file.
10597         * modules/unictype/block-test-tests: New file.
10598         * modules/unictype/category-C-tests: New file.
10599         * modules/unictype/category-Cc-tests: New file.
10600         * modules/unictype/category-Cf-tests: New file.
10601         * modules/unictype/category-Cn-tests: New file.
10602         * modules/unictype/category-Co-tests: New file.
10603         * modules/unictype/category-Cs-tests: New file.
10604         * modules/unictype/category-L-tests: New file.
10605         * modules/unictype/category-Ll-tests: New file.
10606         * modules/unictype/category-Lm-tests: New file.
10607         * modules/unictype/category-Lo-tests: New file.
10608         * modules/unictype/category-Lt-tests: New file.
10609         * modules/unictype/category-Lu-tests: New file.
10610         * modules/unictype/category-M-tests: New file.
10611         * modules/unictype/category-Mc-tests: New file.
10612         * modules/unictype/category-Me-tests: New file.
10613         * modules/unictype/category-Mn-tests: New file.
10614         * modules/unictype/category-N-tests: New file.
10615         * modules/unictype/category-Nd-tests: New file.
10616         * modules/unictype/category-Nl-tests: New file.
10617         * modules/unictype/category-No-tests: New file.
10618         * modules/unictype/category-P-tests: New file.
10619         * modules/unictype/category-Pc-tests: New file.
10620         * modules/unictype/category-Pd-tests: New file.
10621         * modules/unictype/category-Pe-tests: New file.
10622         * modules/unictype/category-Pf-tests: New file.
10623         * modules/unictype/category-Pi-tests: New file.
10624         * modules/unictype/category-Po-tests: New file.
10625         * modules/unictype/category-Ps-tests: New file.
10626         * modules/unictype/category-S-tests: New file.
10627         * modules/unictype/category-Sc-tests: New file.
10628         * modules/unictype/category-Sk-tests: New file.
10629         * modules/unictype/category-Sm-tests: New file.
10630         * modules/unictype/category-So-tests: New file.
10631         * modules/unictype/category-Z-tests: New file.
10632         * modules/unictype/category-Zl-tests: New file.
10633         * modules/unictype/category-Zp-tests: New file.
10634         * modules/unictype/category-Zs-tests: New file.
10635         * modules/unictype/category-and-not-tests: New file.
10636         * modules/unictype/category-and-tests: New file.
10637         * modules/unictype/category-byname-tests: New file.
10638         * modules/unictype/category-name-tests: New file.
10639         * modules/unictype/category-none-tests: New file.
10640         * modules/unictype/category-of-tests: New file.
10641         * modules/unictype/category-or-tests: New file.
10642         * modules/unictype/category-test-withtable-tests: New file.
10643         * modules/unictype/combining-class-tests: New file.
10644         * modules/unictype/ctype-alnum-tests: New file.
10645         * modules/unictype/ctype-alpha-tests: New file.
10646         * modules/unictype/ctype-blank-tests: New file.
10647         * modules/unictype/ctype-cntrl-tests: New file.
10648         * modules/unictype/ctype-digit-tests: New file.
10649         * modules/unictype/ctype-graph-tests: New file.
10650         * modules/unictype/ctype-lower-tests: New file.
10651         * modules/unictype/ctype-print-tests: New file.
10652         * modules/unictype/ctype-punct-tests: New file.
10653         * modules/unictype/ctype-space-tests: New file.
10654         * modules/unictype/ctype-upper-tests: New file.
10655         * modules/unictype/ctype-xdigit-tests: New file.
10656         * modules/unictype/decimal-digit-tests: New file.
10657         * modules/unictype/digit-tests: New file.
10658         * modules/unictype/mirror-tests: New file.
10659         * modules/unictype/numeric-tests: New file.
10660         * modules/unictype/property-alphabetic-tests: New file.
10661         * modules/unictype/property-ascii-hex-digit-tests: New file.
10662         * modules/unictype/property-bidi-arabic-digit-tests: New file.
10663         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
10664         * modules/unictype/property-bidi-block-separator-tests: New file.
10665         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
10666         * modules/unictype/property-bidi-common-separator-tests: New file.
10667         * modules/unictype/property-bidi-control-tests: New file.
10668         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
10669         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
10670         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
10671         * modules/unictype/property-bidi-european-digit-tests: New file.
10672         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
10673         * modules/unictype/property-bidi-left-to-right-tests: New file.
10674         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
10675         * modules/unictype/property-bidi-other-neutral-tests: New file.
10676         * modules/unictype/property-bidi-pdf-tests: New file.
10677         * modules/unictype/property-bidi-segment-separator-tests: New file.
10678         * modules/unictype/property-bidi-whitespace-tests: New file.
10679         * modules/unictype/property-byname-tests: New file.
10680         * modules/unictype/property-combining-tests: New file.
10681         * modules/unictype/property-composite-tests: New file.
10682         * modules/unictype/property-currency-symbol-tests: New file.
10683         * modules/unictype/property-dash-tests: New file.
10684         * modules/unictype/property-decimal-digit-tests: New file.
10685         * modules/unictype/property-default-ignorable-code-point-tests: New file.
10686         * modules/unictype/property-deprecated-tests: New file.
10687         * modules/unictype/property-diacritic-tests: New file.
10688         * modules/unictype/property-extender-tests: New file.
10689         * modules/unictype/property-format-control-tests: New file.
10690         * modules/unictype/property-grapheme-base-tests: New file.
10691         * modules/unictype/property-grapheme-extend-tests: New file.
10692         * modules/unictype/property-grapheme-link-tests: New file.
10693         * modules/unictype/property-hex-digit-tests: New file.
10694         * modules/unictype/property-hyphen-tests: New file.
10695         * modules/unictype/property-id-continue-tests: New file.
10696         * modules/unictype/property-id-start-tests: New file.
10697         * modules/unictype/property-ideographic-tests: New file.
10698         * modules/unictype/property-ids-binary-operator-tests: New file.
10699         * modules/unictype/property-ids-trinary-operator-tests: New file.
10700         * modules/unictype/property-ignorable-control-tests: New file.
10701         * modules/unictype/property-iso-control-tests: New file.
10702         * modules/unictype/property-join-control-tests: New file.
10703         * modules/unictype/property-left-of-pair-tests: New file.
10704         * modules/unictype/property-line-separator-tests: New file.
10705         * modules/unictype/property-logical-order-exception-tests: New file.
10706         * modules/unictype/property-lowercase-tests: New file.
10707         * modules/unictype/property-math-tests: New file.
10708         * modules/unictype/property-non-break-tests: New file.
10709         * modules/unictype/property-not-a-character-tests: New file.
10710         * modules/unictype/property-numeric-tests: New file.
10711         * modules/unictype/property-other-alphabetic-tests: New file.
10712         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
10713         * modules/unictype/property-other-grapheme-extend-tests: New file.
10714         * modules/unictype/property-other-id-continue-tests: New file.
10715         * modules/unictype/property-other-id-start-tests: New file.
10716         * modules/unictype/property-other-lowercase-tests: New file.
10717         * modules/unictype/property-other-math-tests: New file.
10718         * modules/unictype/property-other-uppercase-tests: New file.
10719         * modules/unictype/property-paired-punctuation-tests: New file.
10720         * modules/unictype/property-paragraph-separator-tests: New file.
10721         * modules/unictype/property-pattern-syntax-tests: New file.
10722         * modules/unictype/property-pattern-white-space-tests: New file.
10723         * modules/unictype/property-private-use-tests: New file.
10724         * modules/unictype/property-punctuation-tests: New file.
10725         * modules/unictype/property-quotation-mark-tests: New file.
10726         * modules/unictype/property-radical-tests: New file.
10727         * modules/unictype/property-sentence-terminal-tests: New file.
10728         * modules/unictype/property-soft-dotted-tests: New file.
10729         * modules/unictype/property-space-tests: New file.
10730         * modules/unictype/property-terminal-punctuation-tests: New file.
10731         * modules/unictype/property-test-tests: New file.
10732         * modules/unictype/property-titlecase-tests: New file.
10733         * modules/unictype/property-unassigned-code-value-tests: New file.
10734         * modules/unictype/property-unified-ideograph-tests: New file.
10735         * modules/unictype/property-uppercase-tests: New file.
10736         * modules/unictype/property-variation-selector-tests: New file.
10737         * modules/unictype/property-white-space-tests: New file.
10738         * modules/unictype/property-xid-continue-tests: New file.
10739         * modules/unictype/property-xid-start-tests: New file.
10740         * modules/unictype/property-zero-width-tests: New file.
10741         * modules/unictype/scripts-tests: New file.
10742         * modules/unictype/syntax-c-ident-tests: New file.
10743         * modules/unictype/syntax-c-whitespace-tests: New file.
10744         * modules/unictype/syntax-java-ident-tests: New file.
10745         * modules/unictype/syntax-java-whitespace-tests: New file.
10746         * tests/unictype/test-bidi_byname.c: New file.
10747         * tests/unictype/test-bidi_name.c: New file.
10748         * tests/unictype/test-bidi_of.c: New file.
10749         * tests/unictype/test-bidi_test.c: New file.
10750         * tests/unictype/test-block_list.c: New file.
10751         * tests/unictype/test-block_of.c: New file.
10752         * tests/unictype/test-block_test.c: New file.
10753         * tests/unictype/test-categ_and.c: New file.
10754         * tests/unictype/test-categ_and_not.c: New file.
10755         * tests/unictype/test-categ_byname.c: New file.
10756         * tests/unictype/test-categ_name.c: New file.
10757         * tests/unictype/test-categ_none.c: New file.
10758         * tests/unictype/test-categ_of.c: New file.
10759         * tests/unictype/test-categ_or.c: New file.
10760         * tests/unictype/test-categ_test_withtable.c: New file.
10761         * tests/unictype/test-combining.c: New file.
10762         * tests/unictype/test-decdigit.c: New file.
10763         * tests/unictype/test-digit.c: New file.
10764         * tests/unictype/test-mirror.c: New file.
10765         * tests/unictype/test-numeric.c: New file.
10766         * tests/unictype/test-pr_byname.c: New file.
10767         * tests/unictype/test-pr_test.c: New file.
10768         * tests/unictype/test-predicate-part1.h: New file.
10769         * tests/unictype/test-predicate-part2.h: New file.
10770         * tests/unictype/test-scripts.c: New file.
10771         * tests/unictype/test-sy_c_ident.c: New file.
10772         * tests/unictype/test-sy_java_ident.c: New file.
10773
10774         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
10775         for Unicode 5.0.0.
10776         * tests/unictype/test-categ_Cc.c: Likewise.
10777         * tests/unictype/test-categ_Cf.c: Likewise.
10778         * tests/unictype/test-categ_Cn.c: Likewise.
10779         * tests/unictype/test-categ_Co.c: Likewise.
10780         * tests/unictype/test-categ_Cs.c: Likewise.
10781         * tests/unictype/test-categ_L.c: Likewise.
10782         * tests/unictype/test-categ_Ll.c: Likewise.
10783         * tests/unictype/test-categ_Lm.c: Likewise.
10784         * tests/unictype/test-categ_Lo.c: Likewise.
10785         * tests/unictype/test-categ_Lt.c: Likewise.
10786         * tests/unictype/test-categ_Lu.c: Likewise.
10787         * tests/unictype/test-categ_M.c: Likewise.
10788         * tests/unictype/test-categ_Mc.c: Likewise.
10789         * tests/unictype/test-categ_Me.c: Likewise.
10790         * tests/unictype/test-categ_Mn.c: Likewise.
10791         * tests/unictype/test-categ_N.c: Likewise.
10792         * tests/unictype/test-categ_Nd.c: Likewise.
10793         * tests/unictype/test-categ_Nl.c: Likewise.
10794         * tests/unictype/test-categ_No.c: Likewise.
10795         * tests/unictype/test-categ_P.c: Likewise.
10796         * tests/unictype/test-categ_Pc.c: Likewise.
10797         * tests/unictype/test-categ_Pd.c: Likewise.
10798         * tests/unictype/test-categ_Pe.c: Likewise.
10799         * tests/unictype/test-categ_Pf.c: Likewise.
10800         * tests/unictype/test-categ_Pi.c: Likewise.
10801         * tests/unictype/test-categ_Po.c: Likewise.
10802         * tests/unictype/test-categ_Ps.c: Likewise.
10803         * tests/unictype/test-categ_S.c: Likewise.
10804         * tests/unictype/test-categ_Sc.c: Likewise.
10805         * tests/unictype/test-categ_Sk.c: Likewise.
10806         * tests/unictype/test-categ_Sm.c: Likewise.
10807         * tests/unictype/test-categ_So.c: Likewise.
10808         * tests/unictype/test-categ_Z.c: Likewise.
10809         * tests/unictype/test-categ_Zl.c: Likewise.
10810         * tests/unictype/test-categ_Zp.c: Likewise.
10811         * tests/unictype/test-categ_Zs.c: Likewise.
10812         * tests/unictype/test-ctype_alnum.c: Likewise.
10813         * tests/unictype/test-ctype_alpha.c: Likewise.
10814         * tests/unictype/test-ctype_blank.c: Likewise.
10815         * tests/unictype/test-ctype_cntrl.c: Likewise.
10816         * tests/unictype/test-ctype_digit.c: Likewise.
10817         * tests/unictype/test-ctype_graph.c: Likewise.
10818         * tests/unictype/test-ctype_lower.c: Likewise.
10819         * tests/unictype/test-ctype_print.c: Likewise.
10820         * tests/unictype/test-ctype_punct.c: Likewise.
10821         * tests/unictype/test-ctype_space.c: Likewise.
10822         * tests/unictype/test-ctype_upper.c: Likewise.
10823         * tests/unictype/test-ctype_xdigit.c: Likewise.
10824         * tests/unictype/test-decdigit.h: Likewise.
10825         * tests/unictype/test-digit.h: Likewise.
10826         * tests/unictype/test-numeric.h: Likewise.
10827         * tests/unictype/test-pr_alphabetic.c: Likewise.
10828         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
10829         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
10830         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
10831         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
10832         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
10833         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
10834         * tests/unictype/test-pr_bidi_control.c: Likewise.
10835         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
10836         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
10837         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
10838         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
10839         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
10840         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
10841         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
10842         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
10843         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
10844         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
10845         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
10846         * tests/unictype/test-pr_combining.c: Likewise.
10847         * tests/unictype/test-pr_composite.c: Likewise.
10848         * tests/unictype/test-pr_currency_symbol.c: Likewise.
10849         * tests/unictype/test-pr_dash.c: Likewise.
10850         * tests/unictype/test-pr_decimal_digit.c: Likewise.
10851         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
10852         * tests/unictype/test-pr_deprecated.c: Likewise.
10853         * tests/unictype/test-pr_diacritic.c: Likewise.
10854         * tests/unictype/test-pr_extender.c: Likewise.
10855         * tests/unictype/test-pr_format_control.c: Likewise.
10856         * tests/unictype/test-pr_grapheme_base.c: Likewise.
10857         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
10858         * tests/unictype/test-pr_grapheme_link.c: Likewise.
10859         * tests/unictype/test-pr_hex_digit.c: Likewise.
10860         * tests/unictype/test-pr_hyphen.c: Likewise.
10861         * tests/unictype/test-pr_id_continue.c: Likewise.
10862         * tests/unictype/test-pr_id_start.c: Likewise.
10863         * tests/unictype/test-pr_ideographic.c: Likewise.
10864         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
10865         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
10866         * tests/unictype/test-pr_ignorable_control.c: Likewise.
10867         * tests/unictype/test-pr_iso_control.c: Likewise.
10868         * tests/unictype/test-pr_join_control.c: Likewise.
10869         * tests/unictype/test-pr_left_of_pair.c: Likewise.
10870         * tests/unictype/test-pr_line_separator.c: Likewise.
10871         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
10872         * tests/unictype/test-pr_lowercase.c: Likewise.
10873         * tests/unictype/test-pr_math.c: Likewise.
10874         * tests/unictype/test-pr_non_break.c: Likewise.
10875         * tests/unictype/test-pr_not_a_character.c: Likewise.
10876         * tests/unictype/test-pr_numeric.c: Likewise.
10877         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
10878         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
10879         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
10880         * tests/unictype/test-pr_other_id_continue.c: Likewise.
10881         * tests/unictype/test-pr_other_id_start.c: Likewise.
10882         * tests/unictype/test-pr_other_lowercase.c: Likewise.
10883         * tests/unictype/test-pr_other_math.c: Likewise.
10884         * tests/unictype/test-pr_other_uppercase.c: Likewise.
10885         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
10886         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
10887         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
10888         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
10889         * tests/unictype/test-pr_private_use.c: Likewise.
10890         * tests/unictype/test-pr_punctuation.c: Likewise.
10891         * tests/unictype/test-pr_quotation_mark.c: Likewise.
10892         * tests/unictype/test-pr_radical.c: Likewise.
10893         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
10894         * tests/unictype/test-pr_soft_dotted.c: Likewise.
10895         * tests/unictype/test-pr_space.c: Likewise.
10896         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
10897         * tests/unictype/test-pr_titlecase.c: Likewise.
10898         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
10899         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
10900         * tests/unictype/test-pr_uppercase.c: Likewise.
10901         * tests/unictype/test-pr_variation_selector.c: Likewise.
10902         * tests/unictype/test-pr_white_space.c: Likewise.
10903         * tests/unictype/test-pr_xid_continue.c: Likewise.
10904         * tests/unictype/test-pr_xid_start.c: Likewise.
10905         * tests/unictype/test-pr_zero_width.c: Likewise.
10906         * tests/unictype/test-sy_c_whitespace.c: Likewise.
10907         * tests/unictype/test-sy_java_whitespace.c: Likewise.
10908
10909 2007-11-12  Bruno Haible  <bruno@clisp.org>
10910
10911         Unicode character classification functions.
10912         * lib/unictype.h: New file.
10913         * modules/unictype/base: New file.
10914         * modules/unictype/category-L: New file.
10915         * modules/unictype/category-Lu: New file.
10916         * modules/unictype/category-Ll: New file.
10917         * modules/unictype/category-Lt: New file.
10918         * modules/unictype/category-Lm: New file.
10919         * modules/unictype/category-Lo: New file.
10920         * modules/unictype/category-M: New file.
10921         * modules/unictype/category-Mn: New file.
10922         * modules/unictype/category-Mc: New file.
10923         * modules/unictype/category-Me: New file.
10924         * modules/unictype/category-N: New file.
10925         * modules/unictype/category-Nd: New file.
10926         * modules/unictype/category-Nl: New file.
10927         * modules/unictype/category-No: New file.
10928         * modules/unictype/category-P: New file.
10929         * modules/unictype/category-Pc: New file.
10930         * modules/unictype/category-Pd: New file.
10931         * modules/unictype/category-Ps: New file.
10932         * modules/unictype/category-Pe: New file.
10933         * modules/unictype/category-Pi: New file.
10934         * modules/unictype/category-Pf: New file.
10935         * modules/unictype/category-Po: New file.
10936         * modules/unictype/category-S: New file.
10937         * modules/unictype/category-Sm: New file.
10938         * modules/unictype/category-Sc: New file.
10939         * modules/unictype/category-Sk: New file.
10940         * modules/unictype/category-So: New file.
10941         * modules/unictype/category-Z: New file.
10942         * modules/unictype/category-Zs: New file.
10943         * modules/unictype/category-Zl: New file.
10944         * modules/unictype/category-Zp: New file.
10945         * modules/unictype/category-C: New file.
10946         * modules/unictype/category-Cc: New file.
10947         * modules/unictype/category-Cf: New file.
10948         * modules/unictype/category-Cs: New file.
10949         * modules/unictype/category-Co: New file.
10950         * modules/unictype/category-Cn: New file.
10951         * modules/unictype/category-or: New file.
10952         * modules/unictype/category-of: New file.
10953         * modules/unictype/category-test: New file.
10954         * modules/unictype/category-test-withtable: New file.
10955         * modules/unictype/category-byname: New file.
10956         * modules/unictype/category-none: New file.
10957         * modules/unictype/category-and: New file.
10958         * modules/unictype/category-and-not: New file.
10959         * modules/unictype/category-name: New file.
10960         * modules/unictype/combining-class: New file.
10961         * modules/unictype/category-all: New file.
10962         * modules/unictype/bidicategory-all: New file.
10963         * modules/unictype/bidicategory-byname: New file.
10964         * modules/unictype/bidicategory-name: New file.
10965         * modules/unictype/bidicategory-of: New file.
10966         * modules/unictype/bidicategory-test: New file.
10967         * modules/unictype/decimal-digit: New file.
10968         * modules/unictype/digit: New file.
10969         * modules/unictype/numeric: New file.
10970         * modules/unictype/mirror: New file.
10971         * modules/unictype/property-white-space: New file.
10972         * modules/unictype/property-alphabetic: New file.
10973         * modules/unictype/property-other-alphabetic: New file.
10974         * modules/unictype/property-not-a-character: New file.
10975         * modules/unictype/property-default-ignorable-code-point: New file.
10976         * modules/unictype/property-other-default-ignorable-code-point: New
10977         file.
10978         * modules/unictype/property-deprecated: New file.
10979         * modules/unictype/property-logical-order-exception: New file.
10980         * modules/unictype/property-variation-selector: New file.
10981         * modules/unictype/property-private-use: New file.
10982         * modules/unictype/property-unassigned-code-value: New file.
10983         * modules/unictype/property-uppercase: New file.
10984         * modules/unictype/property-other-uppercase: New file.
10985         * modules/unictype/property-lowercase: New file.
10986         * modules/unictype/property-other-lowercase: New file.
10987         * modules/unictype/property-titlecase: New file.
10988         * modules/unictype/property-soft-dotted: New file.
10989         * modules/unictype/property-id-start: New file.
10990         * modules/unictype/property-other-id-start: New file.
10991         * modules/unictype/property-id-continue: New file.
10992         * modules/unictype/property-other-id-continue: New file.
10993         * modules/unictype/property-xid-start: New file.
10994         * modules/unictype/property-xid-continue: New file.
10995         * modules/unictype/property-pattern-white-space: New file.
10996         * modules/unictype/property-pattern-syntax: New file.
10997         * modules/unictype/property-join-control: New file.
10998         * modules/unictype/property-grapheme-base: New file.
10999         * modules/unictype/property-grapheme-extend: New file.
11000         * modules/unictype/property-other-grapheme-extend: New file.
11001         * modules/unictype/property-grapheme-link: New file.
11002         * modules/unictype/property-bidi-control: New file.
11003         * modules/unictype/property-bidi-left-to-right: New file.
11004         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
11005         * modules/unictype/property-bidi-arabic-right-to-left: New file.
11006         * modules/unictype/property-bidi-european-digit: New file.
11007         * modules/unictype/property-bidi-eur-num-separator: New file.
11008         * modules/unictype/property-bidi-eur-num-terminator: New file.
11009         * modules/unictype/property-bidi-arabic-digit: New file.
11010         * modules/unictype/property-bidi-common-separator: New file.
11011         * modules/unictype/property-bidi-block-separator: New file.
11012         * modules/unictype/property-bidi-segment-separator: New file.
11013         * modules/unictype/property-bidi-whitespace: New file.
11014         * modules/unictype/property-bidi-non-spacing-mark: New file.
11015         * modules/unictype/property-bidi-boundary-neutral: New file.
11016         * modules/unictype/property-bidi-pdf: New file.
11017         * modules/unictype/property-bidi-embedding-or-override: New file.
11018         * modules/unictype/property-bidi-other-neutral: New file.
11019         * modules/unictype/property-hex-digit: New file.
11020         * modules/unictype/property-ascii-hex-digit: New file.
11021         * modules/unictype/property-ideographic: New file.
11022         * modules/unictype/property-unified-ideograph: New file.
11023         * modules/unictype/property-radical: New file.
11024         * modules/unictype/property-ids-binary-operator: New file.
11025         * modules/unictype/property-ids-trinary-operator: New file.
11026         * modules/unictype/property-zero-width: New file.
11027         * modules/unictype/property-space: New file.
11028         * modules/unictype/property-non-break: New file.
11029         * modules/unictype/property-iso-control: New file.
11030         * modules/unictype/property-format-control: New file.
11031         * modules/unictype/property-dash: New file.
11032         * modules/unictype/property-hyphen: New file.
11033         * modules/unictype/property-punctuation: New file.
11034         * modules/unictype/property-line-separator: New file.
11035         * modules/unictype/property-paragraph-separator: New file.
11036         * modules/unictype/property-quotation-mark: New file.
11037         * modules/unictype/property-sentence-terminal: New file.
11038         * modules/unictype/property-terminal-punctuation: New file.
11039         * modules/unictype/property-currency-symbol: New file.
11040         * modules/unictype/property-math: New file.
11041         * modules/unictype/property-other-math: New file.
11042         * modules/unictype/property-paired-punctuation: New file.
11043         * modules/unictype/property-left-of-pair: New file.
11044         * modules/unictype/property-combining: New file.
11045         * modules/unictype/property-composite: New file.
11046         * modules/unictype/property-decimal-digit: New file.
11047         * modules/unictype/property-numeric: New file.
11048         * modules/unictype/property-diacritic: New file.
11049         * modules/unictype/property-extender: New file.
11050         * modules/unictype/property-ignorable-control: New file.
11051         * modules/unictype/property-test: New file.
11052         * modules/unictype/property-byname: New file.
11053         * modules/unictype/property-all: New file.
11054         * modules/unictype/scripts: New file.
11055         * modules/unictype/scripts-all: New file.
11056         * modules/unictype/block-of: New file.
11057         * modules/unictype/block-test: New file.
11058         * modules/unictype/block-list: New file.
11059         * modules/unictype/block-all: New file.
11060         * modules/unictype/syntax-c-whitespace: New file.
11061         * modules/unictype/syntax-java-whitespace: New file.
11062         * modules/unictype/syntax-c-ident: New file.
11063         * modules/unictype/syntax-java-ident: New file.
11064         * modules/unictype/ctype-alnum: New file.
11065         * modules/unictype/ctype-alpha: New file.
11066         * modules/unictype/ctype-cntrl: New file.
11067         * modules/unictype/ctype-digit: New file.
11068         * modules/unictype/ctype-graph: New file.
11069         * modules/unictype/ctype-lower: New file.
11070         * modules/unictype/ctype-print: New file.
11071         * modules/unictype/ctype-punct: New file.
11072         * modules/unictype/ctype-space: New file.
11073         * modules/unictype/ctype-upper: New file.
11074         * modules/unictype/ctype-xdigit: New file.
11075         * modules/unictype/ctype-blank: New file.
11076         * lib/unictype/bidi_byname.c: New file.
11077         * lib/unictype/bidi_name.c: New file.
11078         * lib/unictype/bidi_of.c: New file.
11079         * lib/unictype/bidi_test.c: New file.
11080         * lib/unictype/bitmap.h: New file.
11081         * lib/unictype/block_test.c: New file.
11082         * lib/unictype/blocks.c: New file.
11083         * lib/unictype/categ_C.c: New file.
11084         * lib/unictype/categ_Cc.c: New file.
11085         * lib/unictype/categ_Cf.c: New file.
11086         * lib/unictype/categ_Cn.c: New file.
11087         * lib/unictype/categ_Co.c: New file.
11088         * lib/unictype/categ_Cs.c: New file.
11089         * lib/unictype/categ_L.c: New file.
11090         * lib/unictype/categ_Ll.c: New file.
11091         * lib/unictype/categ_Lm.c: New file.
11092         * lib/unictype/categ_Lo.c: New file.
11093         * lib/unictype/categ_Lt.c: New file.
11094         * lib/unictype/categ_Lu.c: New file.
11095         * lib/unictype/categ_M.c: New file.
11096         * lib/unictype/categ_Mc.c: New file.
11097         * lib/unictype/categ_Me.c: New file.
11098         * lib/unictype/categ_Mn.c: New file.
11099         * lib/unictype/categ_N.c: New file.
11100         * lib/unictype/categ_Nd.c: New file.
11101         * lib/unictype/categ_Nl.c: New file.
11102         * lib/unictype/categ_No.c: New file.
11103         * lib/unictype/categ_P.c: New file.
11104         * lib/unictype/categ_Pc.c: New file.
11105         * lib/unictype/categ_Pd.c: New file.
11106         * lib/unictype/categ_Pe.c: New file.
11107         * lib/unictype/categ_Pf.c: New file.
11108         * lib/unictype/categ_Pi.c: New file.
11109         * lib/unictype/categ_Po.c: New file.
11110         * lib/unictype/categ_Ps.c: New file.
11111         * lib/unictype/categ_S.c: New file.
11112         * lib/unictype/categ_Sc.c: New file.
11113         * lib/unictype/categ_Sk.c: New file.
11114         * lib/unictype/categ_Sm.c: New file.
11115         * lib/unictype/categ_So.c: New file.
11116         * lib/unictype/categ_Z.c: New file.
11117         * lib/unictype/categ_Zl.c: New file.
11118         * lib/unictype/categ_Zp.c: New file.
11119         * lib/unictype/categ_Zs.c: New file.
11120         * lib/unictype/categ_and.c: New file.
11121         * lib/unictype/categ_and_not.c: New file.
11122         * lib/unictype/categ_byname.c: New file.
11123         * lib/unictype/categ_name.c: New file.
11124         * lib/unictype/categ_none.c: New file.
11125         * lib/unictype/categ_of.c: New file.
11126         * lib/unictype/categ_or.c: New file.
11127         * lib/unictype/categ_test.c: New file.
11128         * lib/unictype/combining.c: New file.
11129         * lib/unictype/ctype_alnum.c: New file.
11130         * lib/unictype/ctype_alpha.c: New file.
11131         * lib/unictype/ctype_blank.c: New file.
11132         * lib/unictype/ctype_cntrl.c: New file.
11133         * lib/unictype/ctype_digit.c: New file.
11134         * lib/unictype/ctype_graph.c: New file.
11135         * lib/unictype/ctype_lower.c: New file.
11136         * lib/unictype/ctype_print.c: New file.
11137         * lib/unictype/ctype_punct.c: New file.
11138         * lib/unictype/ctype_space.c: New file.
11139         * lib/unictype/ctype_upper.c: New file.
11140         * lib/unictype/ctype_xdigit.c: New file.
11141         * lib/unictype/decdigit.c: New file.
11142         * lib/unictype/digit.c: New file.
11143         * lib/unictype/identsyntaxmap.h: New file.
11144         * lib/unictype/mirror.c: New file.
11145         * lib/unictype/numeric.c: New file.
11146         * lib/unictype/pr_alphabetic.c: New file.
11147         * lib/unictype/pr_ascii_hex_digit.c: New file.
11148         * lib/unictype/pr_bidi_arabic_digit.c: New file.
11149         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
11150         * lib/unictype/pr_bidi_block_separator.c: New file.
11151         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
11152         * lib/unictype/pr_bidi_common_separator.c: New file.
11153         * lib/unictype/pr_bidi_control.c: New file.
11154         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
11155         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
11156         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
11157         * lib/unictype/pr_bidi_european_digit.c: New file.
11158         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
11159         * lib/unictype/pr_bidi_left_to_right.c: New file.
11160         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
11161         * lib/unictype/pr_bidi_other_neutral.c: New file.
11162         * lib/unictype/pr_bidi_pdf.c: New file.
11163         * lib/unictype/pr_bidi_segment_separator.c: New file.
11164         * lib/unictype/pr_bidi_whitespace.c: New file.
11165         * lib/unictype/pr_byname.c: New file.
11166         * lib/unictype/pr_byname.gperf: New file.
11167         * lib/unictype/pr_combining.c: New file.
11168         * lib/unictype/pr_composite.c: New file.
11169         * lib/unictype/pr_currency_symbol.c: New file.
11170         * lib/unictype/pr_dash.c: New file.
11171         * lib/unictype/pr_decimal_digit.c: New file.
11172         * lib/unictype/pr_default_ignorable_code_point.c: New file.
11173         * lib/unictype/pr_deprecated.c: New file.
11174         * lib/unictype/pr_diacritic.c: New file.
11175         * lib/unictype/pr_extender.c: New file.
11176         * lib/unictype/pr_format_control.c: New file.
11177         * lib/unictype/pr_grapheme_base.c: New file.
11178         * lib/unictype/pr_grapheme_extend.c: New file.
11179         * lib/unictype/pr_grapheme_link.c: New file.
11180         * lib/unictype/pr_hex_digit.c: New file.
11181         * lib/unictype/pr_hyphen.c: New file.
11182         * lib/unictype/pr_id_continue.c: New file.
11183         * lib/unictype/pr_id_start.c: New file.
11184         * lib/unictype/pr_ideographic.c: New file.
11185         * lib/unictype/pr_ids_binary_operator.c: New file.
11186         * lib/unictype/pr_ids_trinary_operator.c: New file.
11187         * lib/unictype/pr_ignorable_control.c: New file.
11188         * lib/unictype/pr_iso_control.c: New file.
11189         * lib/unictype/pr_join_control.c: New file.
11190         * lib/unictype/pr_left_of_pair.c: New file.
11191         * lib/unictype/pr_line_separator.c: New file.
11192         * lib/unictype/pr_logical_order_exception.c: New file.
11193         * lib/unictype/pr_lowercase.c: New file.
11194         * lib/unictype/pr_math.c: New file.
11195         * lib/unictype/pr_non_break.c: New file.
11196         * lib/unictype/pr_not_a_character.c: New file.
11197         * lib/unictype/pr_numeric.c: New file.
11198         * lib/unictype/pr_other_alphabetic.c: New file.
11199         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
11200         * lib/unictype/pr_other_grapheme_extend.c: New file.
11201         * lib/unictype/pr_other_id_continue.c: New file.
11202         * lib/unictype/pr_other_id_start.c: New file.
11203         * lib/unictype/pr_other_lowercase.c: New file.
11204         * lib/unictype/pr_other_math.c: New file.
11205         * lib/unictype/pr_other_uppercase.c: New file.
11206         * lib/unictype/pr_paired_punctuation.c: New file.
11207         * lib/unictype/pr_paragraph_separator.c: New file.
11208         * lib/unictype/pr_pattern_syntax.c: New file.
11209         * lib/unictype/pr_pattern_white_space.c: New file.
11210         * lib/unictype/pr_private_use.c: New file.
11211         * lib/unictype/pr_punctuation.c: New file.
11212         * lib/unictype/pr_quotation_mark.c: New file.
11213         * lib/unictype/pr_radical.c: New file.
11214         * lib/unictype/pr_sentence_terminal.c: New file.
11215         * lib/unictype/pr_soft_dotted.c: New file.
11216         * lib/unictype/pr_space.c: New file.
11217         * lib/unictype/pr_terminal_punctuation.c: New file.
11218         * lib/unictype/pr_test.c: New file.
11219         * lib/unictype/pr_titlecase.c: New file.
11220         * lib/unictype/pr_unassigned_code_value.c: New file.
11221         * lib/unictype/pr_unified_ideograph.c: New file.
11222         * lib/unictype/pr_uppercase.c: New file.
11223         * lib/unictype/pr_variation_selector.c: New file.
11224         * lib/unictype/pr_white_space.c: New file.
11225         * lib/unictype/pr_xid_continue.c: New file.
11226         * lib/unictype/pr_xid_start.c: New file.
11227         * lib/unictype/pr_zero_width.c: New file.
11228         * lib/unictype/scripts.c: New file.
11229         * lib/unictype/sy_c_ident.c: New file.
11230         * lib/unictype/sy_c_whitespace.c: New file.
11231         * lib/unictype/sy_java_ident.c: New file.
11232         * lib/unictype/sy_java_whitespace.c: New file.
11233
11234         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
11235         Unicode 5.0.0.
11236         * lib/unictype/blocks.h: Likewise.
11237         * lib/unictype/categ_C.h: Likewise.
11238         * lib/unictype/categ_Cc.h: Likewise.
11239         * lib/unictype/categ_Cf.h: Likewise.
11240         * lib/unictype/categ_Cn.h: Likewise.
11241         * lib/unictype/categ_Co.h: Likewise.
11242         * lib/unictype/categ_Cs.h: Likewise.
11243         * lib/unictype/categ_L.h: Likewise.
11244         * lib/unictype/categ_Ll.h: Likewise.
11245         * lib/unictype/categ_Lm.h: Likewise.
11246         * lib/unictype/categ_Lo.h: Likewise.
11247         * lib/unictype/categ_Lt.h: Likewise.
11248         * lib/unictype/categ_Lu.h: Likewise.
11249         * lib/unictype/categ_M.h: Likewise.
11250         * lib/unictype/categ_Mc.h: Likewise.
11251         * lib/unictype/categ_Me.h: Likewise.
11252         * lib/unictype/categ_Mn.h: Likewise.
11253         * lib/unictype/categ_N.h: Likewise.
11254         * lib/unictype/categ_Nd.h: Likewise.
11255         * lib/unictype/categ_Nl.h: Likewise.
11256         * lib/unictype/categ_No.h: Likewise.
11257         * lib/unictype/categ_P.h: Likewise.
11258         * lib/unictype/categ_Pc.h: Likewise.
11259         * lib/unictype/categ_Pd.h: Likewise.
11260         * lib/unictype/categ_Pe.h: Likewise.
11261         * lib/unictype/categ_Pf.h: Likewise.
11262         * lib/unictype/categ_Pi.h: Likewise.
11263         * lib/unictype/categ_Po.h: Likewise.
11264         * lib/unictype/categ_Ps.h: Likewise.
11265         * lib/unictype/categ_S.h: Likewise.
11266         * lib/unictype/categ_Sc.h: Likewise.
11267         * lib/unictype/categ_Sk.h: Likewise.
11268         * lib/unictype/categ_Sm.h: Likewise.
11269         * lib/unictype/categ_So.h: Likewise.
11270         * lib/unictype/categ_Z.h: Likewise.
11271         * lib/unictype/categ_Zl.h: Likewise.
11272         * lib/unictype/categ_Zp.h: Likewise.
11273         * lib/unictype/categ_Zs.h: Likewise.
11274         * lib/unictype/categ_of.h: Likewise.
11275         * lib/unictype/combining.h: Likewise.
11276         * lib/unictype/ctype_alnum.h: Likewise.
11277         * lib/unictype/ctype_alpha.h: Likewise.
11278         * lib/unictype/ctype_blank.h: Likewise.
11279         * lib/unictype/ctype_cntrl.h: Likewise.
11280         * lib/unictype/ctype_digit.h: Likewise.
11281         * lib/unictype/ctype_graph.h: Likewise.
11282         * lib/unictype/ctype_lower.h: Likewise.
11283         * lib/unictype/ctype_print.h: Likewise.
11284         * lib/unictype/ctype_punct.h: Likewise.
11285         * lib/unictype/ctype_space.h: Likewise.
11286         * lib/unictype/ctype_upper.h: Likewise.
11287         * lib/unictype/ctype_xdigit.h: Likewise.
11288         * lib/unictype/decdigit.h: Likewise.
11289         * lib/unictype/digit.h: Likewise.
11290         * lib/unictype/mirror.h: Likewise.
11291         * lib/unictype/numeric.h: Likewise.
11292         * lib/unictype/pr_alphabetic.h: Likewise.
11293         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
11294         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
11295         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
11296         * lib/unictype/pr_bidi_block_separator.h: Likewise.
11297         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
11298         * lib/unictype/pr_bidi_common_separator.h: Likewise.
11299         * lib/unictype/pr_bidi_control.h: Likewise.
11300         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
11301         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
11302         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
11303         * lib/unictype/pr_bidi_european_digit.h: Likewise.
11304         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
11305         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
11306         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
11307         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
11308         * lib/unictype/pr_bidi_pdf.h: Likewise.
11309         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
11310         * lib/unictype/pr_bidi_whitespace.h: Likewise.
11311         * lib/unictype/pr_combining.h: Likewise.
11312         * lib/unictype/pr_composite.h: Likewise.
11313         * lib/unictype/pr_currency_symbol.h: Likewise.
11314         * lib/unictype/pr_dash.h: Likewise.
11315         * lib/unictype/pr_decimal_digit.h: Likewise.
11316         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
11317         * lib/unictype/pr_deprecated.h: Likewise.
11318         * lib/unictype/pr_diacritic.h: Likewise.
11319         * lib/unictype/pr_extender.h: Likewise.
11320         * lib/unictype/pr_format_control.h: Likewise.
11321         * lib/unictype/pr_grapheme_base.h: Likewise.
11322         * lib/unictype/pr_grapheme_extend.h: Likewise.
11323         * lib/unictype/pr_grapheme_link.h: Likewise.
11324         * lib/unictype/pr_hex_digit.h: Likewise.
11325         * lib/unictype/pr_hyphen.h: Likewise.
11326         * lib/unictype/pr_id_continue.h: Likewise.
11327         * lib/unictype/pr_id_start.h: Likewise.
11328         * lib/unictype/pr_ideographic.h: Likewise.
11329         * lib/unictype/pr_ids_binary_operator.h: Likewise.
11330         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
11331         * lib/unictype/pr_ignorable_control.h: Likewise.
11332         * lib/unictype/pr_iso_control.h: Likewise.
11333         * lib/unictype/pr_join_control.h: Likewise.
11334         * lib/unictype/pr_left_of_pair.h: Likewise.
11335         * lib/unictype/pr_line_separator.h: Likewise.
11336         * lib/unictype/pr_logical_order_exception.h: Likewise.
11337         * lib/unictype/pr_lowercase.h: Likewise.
11338         * lib/unictype/pr_math.h: Likewise.
11339         * lib/unictype/pr_non_break.h: Likewise.
11340         * lib/unictype/pr_not_a_character.h: Likewise.
11341         * lib/unictype/pr_numeric.h: Likewise.
11342         * lib/unictype/pr_other_alphabetic.h: Likewise.
11343         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
11344         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
11345         * lib/unictype/pr_other_id_continue.h: Likewise.
11346         * lib/unictype/pr_other_id_start.h: Likewise.
11347         * lib/unictype/pr_other_lowercase.h: Likewise.
11348         * lib/unictype/pr_other_math.h: Likewise.
11349         * lib/unictype/pr_other_uppercase.h: Likewise.
11350         * lib/unictype/pr_paired_punctuation.h: Likewise.
11351         * lib/unictype/pr_paragraph_separator.h: Likewise.
11352         * lib/unictype/pr_pattern_syntax.h: Likewise.
11353         * lib/unictype/pr_pattern_white_space.h: Likewise.
11354         * lib/unictype/pr_private_use.h: Likewise.
11355         * lib/unictype/pr_punctuation.h: Likewise.
11356         * lib/unictype/pr_quotation_mark.h: Likewise.
11357         * lib/unictype/pr_radical.h: Likewise.
11358         * lib/unictype/pr_sentence_terminal.h: Likewise.
11359         * lib/unictype/pr_soft_dotted.h: Likewise.
11360         * lib/unictype/pr_space.h: Likewise.
11361         * lib/unictype/pr_terminal_punctuation.h: Likewise.
11362         * lib/unictype/pr_titlecase.h: Likewise.
11363         * lib/unictype/pr_unassigned_code_value.h: Likewise.
11364         * lib/unictype/pr_unified_ideograph.h: Likewise.
11365         * lib/unictype/pr_uppercase.h: Likewise.
11366         * lib/unictype/pr_variation_selector.h: Likewise.
11367         * lib/unictype/pr_white_space.h: Likewise.
11368         * lib/unictype/pr_xid_continue.h: Likewise.
11369         * lib/unictype/pr_xid_start.h: Likewise.
11370         * lib/unictype/pr_zero_width.h: Likewise.
11371         * lib/unictype/scripts.h: Likewise.
11372         * lib/unictype/scripts_byname.gperf: Likewise.
11373         * lib/unictype/sy_c_ident.h: Likewise.
11374         * lib/unictype/sy_c_whitespace.h: Likewise.
11375         * lib/unictype/sy_java_ident.h: Likewise.
11376         * lib/unictype/sy_java_whitespace.h: Likewise.
11377
11378         * lib/unictype/Makefile: New file.
11379         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
11380         glibc.
11381         * lib/unictype/3level.h: New file, copied from glibc.
11382         * lib/unictype/3levelbit.h: New file.
11383
11384 2007-11-11  Bruno Haible  <bruno@clisp.org>
11385
11386         * modules/gperf: New file.
11387         * modules/iconv_open (Depends-on): Add it.
11388         (Makefile.am): Remove the GPERF definition.
11389
11390 2007-11-11  Bruno Haible  <bruno@clisp.org>
11391
11392         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
11393         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
11394
11395 2007-11-11  Bruno Haible  <bruno@clisp.org>
11396
11397         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
11398         (usage): Remove function.
11399
11400 2007-11-11  Bruno Haible  <bruno@clisp.org>
11401
11402         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
11403         gl_FUNC_CEILF_LIBS.
11404         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
11405         gl_FUNC_CEIL_LIBS.
11406         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
11407         gl_FUNC_CEILL_LIBS.
11408         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
11409         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
11410         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
11411
11412 2007-11-11  Bruno Haible  <bruno@clisp.org>
11413
11414         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
11415         roundf were declared but do not exist on functions.
11416         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
11417         roundl were declared but do not exist on functions.
11418         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
11419         HAVE_FLOORL_AND_CEILL, respectively.
11420         Needed for Sun C on Solaris 10.
11421
11422 2007-11-11  Bruno Haible  <bruno@clisp.org>
11423
11424         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
11425         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
11426         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
11427         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
11428         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
11429         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
11430         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
11431         HAVE_DECL_ROUNDF.
11432         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
11433         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
11434         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
11435         of HAVE_DECL_ROUND*.
11436         * modules/math (Makefile.am): Update.
11437
11438 2007-11-10  Bruno Haible  <bruno@clisp.org>
11439
11440         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
11441         ptrdiff_t as m4/intl.m4.
11442
11443 2007-11-10  Jim Meyering  <meyering@redhat.com>
11444
11445         Avoid link failure for the argmatch test.
11446         * tests/test-argmatch.c (usage): Define function to avoid a link
11447         failure: argmatch_die requires a usage function.
11448
11449 2007-11-09  Bruno Haible  <bruno@clisp.org>
11450
11451         * doc/functions/snprintf.texi: Mention BeOS deficiency.
11452         * doc/functions/vsnprintf.texi: Likewise.
11453         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
11454         with a size argument < 2.
11455
11456 2007-11-09  Bruno Haible  <bruno@clisp.org>
11457
11458         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
11459         buffer. Fixes an inefficiency introduced on 2007-11-03.
11460
11461 2007-11-09  Bruno Haible  <bruno@clisp.org>
11462
11463         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
11464         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
11465
11466 2007-11-08  Jim Meyering  <meyering@redhat.com>
11467
11468         Change cache variable name prefix "jm_" to "gl_" everywhere.
11469         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
11470         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
11471         * m4/uptime.m4: s/gl_/jm_/
11472
11473 2007-11-07  Bruno Haible  <bruno@clisp.org>
11474
11475         Update to GNU gettext 0.17.
11476         * m4/intl.m4: Update to GNU gettext 0.17.
11477         * m4/po.m4: Likewise.
11478         * modules/gettext (Files): Remove m4/ulonglong.m4.
11479         (configure.ac): Require gettext infrastructure from version 0.17.
11480
11481 2007-11-06  Bruno Haible  <bruno@clisp.org>
11482
11483         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
11484         symbolic values are not defined in a public header.
11485         * lib/freadable.c (freadable) [QNX]: Likewise.
11486         * lib/freadahead.c (freadahead) [QNX]: Likewise.
11487         * lib/freading.c (freading) [QNX]: Likewise.
11488         * lib/fseterr.c (fseterr) [QNX]: Likewise.
11489         * lib/fwritable.c (fwritable) [QNX]: Likewise.
11490         * lib/fwriting.c (fwriting) [QNX]: Likewise.
11491         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
11492         Reported by Alain Magloire.
11493
11494         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
11495
11496 2007-11-05  Bruno Haible  <bruno@clisp.org>
11497
11498         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
11499         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
11500         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
11501         Reported by Eric Blake.
11502
11503 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11504             Bruno Haible  <bruno@clisp.org>
11505
11506         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
11507         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
11508         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
11509         (malloc): Undefine also before including <stdlib.h>.
11510         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
11511         Needed on OSF/1 4.0.
11512
11513 2007-11-05  Jim Meyering  <meyering@redhat.com>
11514
11515         git-version-gen: sync from coreutils.
11516         * build-aux/git-version-gen: Add comments.
11517         Change the first '-' to '.' in the snapshot version string,
11518         e.g., 6.9-377-08144 -> 6.9.377-08144
11519         Remove first parameter.
11520         Don't declare a version "-dirty" merely because a time
11521         stamp has changed.
11522
11523 2007-11-04  Bruno Haible  <bruno@clisp.org>
11524
11525         * lib/lock.h: Protect all macro definitions containing an 'if'
11526         statement through a "do { ... } while (0)".
11527         * lib/tls.h: Likewise.
11528
11529 2007-11-04  Bruno Haible  <bruno@clisp.org>
11530
11531         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
11532
11533 2007-11-04  Bruno Haible  <bruno@clisp.org>
11534
11535         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
11536         * modules/fprintf-posix (Depends-on): Add nocrash.
11537         * modules/snprintf-posix (Depends-on): Likewise.
11538         * modules/sprintf-posix (Depends-on): Likewise.
11539         * modules/vasnprintf-posix (Depends-on): Likewise.
11540         * modules/vasprintf-posix (Depends-on): Likewise.
11541         * modules/vfprintf-posix (Depends-on): Likewise.
11542         * modules/vsnprintf-posix (Depends-on): Likewise.
11543         * modules/vsprintf-posix (Depends-on): Likewise.
11544         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11545         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11546         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11547         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11548         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11549         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11550         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11551
11552 2007-11-04  Bruno Haible  <bruno@clisp.org>
11553
11554         * modules/nocrash: New file.
11555         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
11556         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
11557
11558 2007-11-04  Bruno Haible  <bruno@clisp.org>
11559
11560         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
11561         precision handling.
11562         * tests/test-vasprintf-posix.c (test_function): Likewise.
11563         * tests/test-snprintf-posix.h (test_function): Likewise.
11564         * tests/test-sprintf-posix.h (test_function): Likewise.
11565
11566         Fix *printf behaviour for large precisions on mingw and BeOS.
11567         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
11568         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
11569         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
11570         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
11571         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11572         gl_PRINTF_PRECISION and test its result. Invoke
11573         gl_PREREQ_VASNPRINTF_PRECISION.
11574         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11575         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11576         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11577         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11578         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11579         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11580         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11581         * doc/functions/fprintf.texi: Update.
11582         * doc/functions/printf.texi: Update.
11583         * doc/functions/snprintf.texi: Update.
11584         * doc/functions/sprintf.texi: Update.
11585         * doc/functions/vfprintf.texi: Update.
11586         * doc/functions/vprintf.texi: Update.
11587         * doc/functions/vsnprintf.texi: Update.
11588         * doc/functions/vsprintf.texi: Update.
11589
11590 2007-11-04  Bruno Haible  <bruno@clisp.org>
11591
11592         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
11593
11594 2007-11-04  Bruno Haible  <bruno@clisp.org>
11595
11596         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
11597         Reported by Sylvain Beucler <beuc@gnu.org>.
11598
11599 2007-11-03  Bruno Haible  <bruno@clisp.org>
11600
11601         * tests/test-fprintf-posix2.sh: New file.
11602         * tests/test-fprintf-posix2.c: New file.
11603         * modules/fprintf-posix-tests (Files): Add them.
11604         (TESTS): Add test-fprintf-posix2.sh.
11605         (configure.ac): Check for getrlimit and setrlimit.
11606         (check_PROGRAMS): Add test-fprintf-posix2.
11607
11608         * tests/test-printf-posix2.sh: New file.
11609         * tests/test-printf-posix2.c: New file.
11610         * modules/printf-posix-tests (Files): Add them.
11611         (TESTS): Add test-printf-posix2.sh.
11612         (configure.ac): Check for getrlimit and setrlimit.
11613         (check_PROGRAMS): Add test-printf-posix2.
11614
11615         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
11616         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
11617         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
11618         (decode_double): New function, copied from decode_long_double.
11619         (scale10_round_decimal_decoded): New function, extracted from
11620         scale10_round_decimal_long_double.
11621         (scale10_round_decimal_long_double): Use it.
11622         (scale10_round_decimal_double): New function.
11623         (floorlog10): New function.
11624         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
11625         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
11626         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
11627         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11628         gl_PRINTF_ENOMEM and test its result. Invoke
11629         gl_PREREQ_VASNPRINTF_ENOMEM.
11630         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11631         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11632         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11633         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11634         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11635         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11636         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11637         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
11638         * modules/snprintf-posix (Depends-on): Likewise.
11639         * modules/sprintf-posix (Depends-on): Likewise.
11640         * modules/vasnprintf-posix (Depends-on): Likewise.
11641         * modules/vasprintf-posix (Depends-on): Likewise.
11642         * modules/vfprintf-posix (Depends-on): Likewise.
11643         * modules/vsnprintf-posix (Depends-on): Likewise.
11644         * modules/vsprintf-posix (Depends-on): Likewise.
11645         * doc/functions/fprintf.texi: Update.
11646         * doc/functions/printf.texi: Update.
11647         * doc/functions/snprintf.texi: Update.
11648         * doc/functions/sprintf.texi: Update.
11649         * doc/functions/vfprintf.texi: Update.
11650         * doc/functions/vprintf.texi: Update.
11651         * doc/functions/vsnprintf.texi: Update.
11652         * doc/functions/vsprintf.texi: Update.
11653
11654 2007-11-03  Bruno Haible  <bruno@clisp.org>
11655
11656         * modules/frexp-nolibm-tests: New file.
11657
11658         * modules/frexp-nolibm: New file.
11659         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
11660
11661 2007-11-03  Bruno Haible  <bruno@clisp.org>
11662
11663         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
11664         value is C99 compliant.
11665         Needed for OSF/1 5.1.
11666
11667 2007-11-03  Bruno Haible  <bruno@clisp.org>
11668
11669         Fix out-of-memory handling of vasnprintf.
11670         * lib/printf-parse.c: Include <errno.h>.
11671         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
11672         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
11673         is already set.
11674
11675 2007-11-02  Eric Blake  <ebb9@byu.net>
11676
11677         Fix tests on cygwin.
11678         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
11679
11680 2007-11-01  Bruno Haible  <bruno@clisp.org>
11681
11682         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
11683         warning.
11684         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
11685         needed for POSIX compatibility.
11686
11687 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
11688
11689         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
11690         for compatibility with GNU.
11691
11692 2007-11-01  Bruno Haible  <bruno@clisp.org>
11693
11694         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
11695         (putenv): Renamed from rpl_putenv. Change argument type from
11696         'const char *' to 'char *'.
11697         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
11698         of defining putenv in config.h, just set REPLACE_PUTENV.
11699         * modules/putenv (Depends-on): Add stdlib.
11700         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
11701         (Include): Use <stdlib.h>.
11702         * lib/stdlib.in.h (putenv): New declaration.
11703         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
11704         REPLACE_PUTENV.
11705         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
11706         REPLACE_PUTENV.
11707         Needed for MacOS X 10.5.0.
11708         Reported by Peter O'Gorman <peter@pogma.com>.
11709
11710 2007-11-01  Jim Meyering  <meyering@redhat.com>
11711
11712         Treat an empty date string exactly like "0".
11713         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
11714         if the remaining date string (to be parsed) is empty, use "0".
11715         Reported by Mischa Molhoek and discussed in this thread:
11716         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
11717
11718 2007-10-31  Bruno Haible  <bruno@clisp.org>
11719
11720         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
11721         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
11722         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
11723         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
11724         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
11725         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
11726
11727 2007-10-31  Bruno Haible  <bruno@clisp.org>
11728
11729         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
11730         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
11731         (AC_TYPE_LONG_LONG_INT): Use it.
11732         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
11733         it as well.
11734         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
11735         to m4/longlong.m4.
11736         * modules/stdint (Files): Remove m4/ulonglong.m4.
11737         * modules/strtoull (Files): Use m4/longlong.m4 instead of
11738         m4/ulonglong.m4.
11739         * modules/strtoumax (Files): Likewise.
11740
11741 2007-10-30  Bruno Haible  <bruno@clisp.org>
11742
11743         * modules/xvasprintf-posix: New file.
11744         Suggested by Eric Blake.
11745
11746 2007-10-30  Bruno Haible  <bruno@clisp.org>
11747
11748         * modules/xprintf-posix-tests: New file.
11749         * tests/test-xprintf-posix.sh: New file.
11750         * tests/test-xprintf-posix.c: New file.
11751         * tests/test-xfprintf-posix.c: New file.
11752
11753         * modules/xprintf-posix: New file.
11754
11755 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11756
11757         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
11758         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
11759         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
11760
11761 2007-10-29  Bruno Haible  <bruno@clisp.org>
11762
11763         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
11764         contain the special marker '_cv_'.
11765         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
11766         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
11767         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
11768         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
11769         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
11770         Reported by Ralf Wildenhues.
11771
11772 2007-10-29  Bruno Haible  <bruno@clisp.org>
11773
11774         * gnulib-tool (func_import): When --lgpl is not specified, set
11775         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
11776         GPLv3.
11777         Reported by Simon Josefsson.
11778
11779 2007-10-28  Bruno Haible  <bruno@clisp.org>
11780
11781         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
11782         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
11783         HAVE_DECL_ISFINITE.
11784         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
11785         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
11786         HAVE_DECL_ISFINITE.
11787
11788 2007-10-28  Bruno Haible  <bruno@clisp.org>
11789
11790         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
11791         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
11792
11793 2007-10-28  Bruno Haible  <bruno@clisp.org>
11794
11795         Fix link errors with Sun C 5.0 on Solaris 10.
11796         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
11797         function is declared but not present in the compiler's libm.
11798         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
11799         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
11800         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
11801         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
11802         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
11803         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
11804         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
11805         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
11806         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
11807         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
11808         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
11809         HAVE_DECL_FLOORL.
11810
11811 2007-10-28  Bruno Haible  <bruno@clisp.org>
11812
11813         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
11814         gl_FUNC_FLOORL. Cache the result.
11815         (gl_FUNC_FLOORL): Use it.
11816         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
11817         gl_FUNC_CEILL. Cache the result.
11818         (gl_FUNC_CEILL): Use it.
11819
11820         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
11821         gl_FUNC_FLOOR. Cache the result.
11822         (gl_FUNC_FLOOR): Use it.
11823         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
11824         gl_FUNC_CEIL. Cache the result.
11825         (gl_FUNC_CEIL): Use it.
11826
11827         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
11828         gl_FUNC_FLOORF. Cache the result.
11829         (gl_FUNC_FLOORF): Use it.
11830         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
11831         gl_FUNC_CEILF. Cache the result.
11832         (gl_FUNC_CEILF): Use it.
11833
11834 2007-10-28  Bruno Haible  <bruno@clisp.org>
11835
11836         * gnulib-tool: Allow specifying the LGPL version number through
11837         --lgpl=2 or --lgpl=3.
11838         (func_usage): Document --lgpl with argument.
11839         Handle --lgpl=... arguments.
11840         (func_import): Recognize also gl_LGPL calls with an argument. When
11841         --lgpl=2 is used and the module's license is just LGPL, report an
11842         error. Set sed_transform_lib_file according to the lgpl variable. In
11843         the generated files, use --lgpl or gl_LGPL invocations with argument,
11844         if necessary.
11845         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
11846         an LGPv2+ license.
11847         * doc/gnulib-tool.texi (Modified imports): Update explanation of
11848         gl_LGPL macro.
11849
11850 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11851             Bruno Haible  <bruno@clisp.org>
11852
11853         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
11854         (u16_uctomb_aux): Likewise.
11855         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
11856         !HAVE_INLINE.
11857         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
11858
11859 2007-10-28  Bruno Haible  <bruno@clisp.org>
11860
11861         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
11862         Invoke AM_GETTEXT_OPTION if it exists.
11863         * modules/vasprintf: Likewise.
11864         * modules/verror: Likewise.
11865         * modules/xprintf: Likewise.
11866         * modules/xvasprintf: Likewise.
11867
11868 2007-10-27  Ben Pfaff  <blp@gnu.org>
11869
11870         * lib/math.in.h: Define isfinite macro and prototypes for
11871         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
11872         implementations.
11873         * m4/math_h.m4: New substitutions for isfinite module.
11874         * lib/isfinite.c: New file.
11875         * m4/isfinite.m4: New file.
11876         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
11877         * modules/isfinite: New file.
11878         * modules/isfinite-tests: New file.
11879         * tests/tests-isfinite.c: New file.
11880         * doc/functions/isfinite.texi: Mention isfinite module.
11881         * MODULES.html.sh: Mention new module.
11882
11883 2007-10-27  Ben Pfaff  <blp@gnu.org>
11884
11885         Ralf Wildenhues reported that Tru64 4.0D declares the round
11886         functions but does not have definitions.
11887         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
11888         cannot be found in any library, set the output variable to
11889         "missing" instead of "".
11890         * m4/round.m4: Also use our substitute if we cannot find round in
11891         any library, even if it is declared.
11892         * m4/roundf.m4: Likewise for roundf.
11893         * m4/roundl.m4: Likewise for roundl.
11894         * lib/math.in.h: Undefine roundf, round, roundl before defining
11895         their replacements, to allow for hypothetical systems where these
11896         may be defined as macros but not available in libraries.
11897
11898 2007-10-27  Bruno Haible  <bruno@clisp.org>
11899
11900         * doc/gnulib.texi: Invoke @firstparagraphindent.
11901         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
11902         changes in gnulib.
11903         (Source changes): New section.
11904
11905 2007-10-26  Bruno Haible  <bruno@clisp.org>
11906
11907         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
11908         borrowed from autoconf.
11909
11910 2007-10-26  Bruno Haible  <bruno@clisp.org>
11911
11912         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
11913         strerror returned the empty string. Needed on HP-UX 11.00.
11914
11915 2007-10-24  Micah Cowan  <micah@cowan.name>
11916
11917         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
11918         * build-aux/bootstrap: Remove support for now-unnecessary option,
11919         --cvs-user, and envvars CVS_USER, CVS_RSH.
11920
11921 2007-10-24  Jim Meyering  <meyering@redhat.com>
11922
11923         Avoid diagnostics from sha1sum when there is no cached checksum.
11924         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
11925         if the po.s1 file hasn't been created yet.
11926
11927         * build-aux/bootstrap: Sync from coreutils:
11928         2007-10-24  Jim Meyering  <meyering@redhat.com>
11929         Get gnulib from the git repository, not from an obsolete cvs one.
11930         * build-aux/bootstrap: Suggestion from Micah Cowan.
11931         2007-10-04  Jim Meyering  <jim@meyering.net>
11932         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
11933         (update_po_files): Work also when there are no .po files in po/.
11934
11935 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
11936
11937         * README: Append ".git" to git and cg examples.
11938         Problem reported by Benoit Sigoure.
11939
11940 2007-10-23  Micah Cowan  <micah@cowan.name>
11941
11942         * users.txt: Add wget.
11943
11944 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11945
11946         Fix linking of some unistdio tests on FreeBSD.
11947         * modules/unistdio/u16-vsnprintf-tests
11948         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
11949         * modules/unistdio/u16-vsprintf-tests
11950         (test_u16_vsnprintf1_LDADD): Likewise.
11951         * modules/unistdio/u32-vsnprintf-tests
11952         (test_u32_vsnprintf1_LDADD): Likewise.
11953         * modules/unistdio/u32-vsprintf-tests
11954         (test_u32_vsprintf1_LDADD): Likewise.
11955         * modules/unistdio/u8-vsnprintf-tests
11956         (test_u8_vsnprintf1_LDADD): Likewise.
11957         * modules/unistdio/u8-vsprintf-tests
11958         (test_u8_vsprintf1_LDADD): Likewise.
11959         * modules/unistdio/ulc-vsnprintf-tests
11960         (test_ulc_vsnprintf1_LDADD): Likewise.
11961         * modules/unistdio/ulc-vsprintf-tests
11962         (test_ulc_vsprintf1_LDADD): Likewise.
11963
11964         Fix linking of some uniconv tests on FreeBSD.
11965         * modules/uniconv/u16-conv-from-enc-tests
11966         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
11967         * modules/uniconv/u16-conv-to-enc-tests
11968         (test_u16_conv_to_enc_LDADD): Likewise.
11969         * modules/uniconv/u16-strconv-from-enc-tests
11970         (test_u16_strconv_from_enc_LDADD): Likewise.
11971         * modules/uniconv/u16-strconv-to-enc-tests
11972         (test_u16_strconv_to_enc_LDADD): Likewise.
11973         * modules/uniconv/u32-conv-from-enc-tests
11974         (test_u32_conv_from_enc_LDADD): Likewise.
11975         * modules/uniconv/u32-conv-to-enc-tests
11976         (test_u32_conv_to_enc_LDADD): Likewise.
11977         * modules/uniconv/u32-strconv-from-enc-tests
11978         (test_u32_strconv_from_enc_LDADD): Likewise.
11979         * modules/uniconv/u32-strconv-to-enc-tests
11980         (test_u32_strconv_to_enc_LDADD): Likewise.
11981         * modules/uniconv/u8-conv-from-enc-tests
11982         (test_u8_conv_from_enc_LDADD): Likewise.
11983         * modules/uniconv/u8-conv-to-enc-tests
11984         (test_u8_conv_to_enc_LDADD): Likewise.
11985         * modules/uniconv/u8-strconv-from-enc-tests
11986         (test_u8_strconv_from_enc_LDADD): Likewise.
11987         * modules/uniconv/u8-strconv-to-enc-tests
11988         (test_u8_strconv_to_enc_LDADD): Likewise.
11989
11990 2007-10-22  Bruno Haible  <bruno@clisp.org>
11991
11992         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
11993         size.
11994
11995 2007-10-22  Eric Blake  <ebb9@byu.net>
11996
11997         Tweak x*printf documentation.
11998         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
11999         variable name and comments.
12000         Suggested by Bruno Haible.
12001
12002 2007-10-22  Bruno Haible  <bruno@clisp.org>
12003
12004         * lib/acl.c (copy_acl): Fix file name in comment.
12005
12006 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12007
12008         Fix Tru64 problem with stdbool.h.
12009         * lib/stdbool.in.h (false, true):
12010         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
12011         Don't declare as an enum in this situation; it runs afoul of Tru64.
12012         Problem reported by Steven M. Schweda in
12013         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
12014
12015 2007-10-22  Eric Blake  <ebb9@byu.net>
12016
12017         Also wrap vf?printf.
12018         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
12019         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
12020         (xvprintf, xvfprintf): New functions.
12021
12022 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12023
12024         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
12025         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
12026
12027         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
12028         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
12029
12030 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
12031
12032         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
12033         by Bruno Haible.
12034
12035 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12036
12037         * lib/getloadavg.c
12038         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
12039         Undef `sys' after including sys/table.h, for Tru64 4.0D.
12040
12041         * tests/test-i-ring.c: Work for C89.
12042
12043 2007-10-22  Bruno Haible  <bruno@clisp.org>
12044
12045         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
12046         -1u, in preprocessor expression, so that we don't test for the bug
12047         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
12048         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
12049
12050 2007-10-22  Eric Blake  <ebb9@byu.net>
12051
12052         * tests/test-yesno.sh: Silence stderr during test.
12053
12054 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12055
12056         * modules/crypto/gc-camellia: New file.
12057
12058         * m4/gc-camellia.m4: New file.
12059
12060         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
12061
12062         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
12063
12064 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12065
12066         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
12067         --help to stdout.  Reported by sms@antinode.org (Steven
12068         M. Schweda).
12069
12070 2007-10-22  Simon Josefsson  <simon@josefsson.org>
12071
12072         * users.txt: Fix link to libksba.
12073
12074 2007-10-21  Ben Pfaff  <blp@gnu.org>
12075
12076         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
12077         round.c roundf implementation that depends on floorf and ceilf to
12078         be tested unconditionally.
12079
12080 2007-10-21  Ben Pfaff  <blp@gnu.org>
12081
12082         * m4/check-libm-func.m4: Removed.
12083         * m4/check-math-lib.m4: New file.
12084         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
12085         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
12086         definition and lack of AC_LIBOBJ([roundf]).
12087         * m4/roundl.m4: Ditto, and similarly for roundl.
12088         * modules/round: Reference new m4 file.
12089         * modules/roundf: Ditto.
12090         * modules/roundl: Ditto.
12091         * tests/test-round2.c (main): Use ROUND instead of round.
12092         Bug report from Bruno Haible.
12093
12094 2007-10-21  Bruno Haible  <bruno@clisp.org>
12095
12096         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
12097         context.
12098
12099 2007-10-21  Bruno Haible  <bruno@clisp.org>
12100
12101         * tests/test-wcwidth.c (main): Allow negative result for some control
12102         characters.
12103
12104         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
12105         Needed on OSF/1 5.1.
12106
12107 2007-10-21  Bruno Haible  <bruno@clisp.org>
12108
12109         * tests/test-floorf1.c: Include isnanf.h.
12110         (main): Use isnanf() instead of isnan().
12111         * tests/test-ceilf1.c: Include isnanf.h.
12112         (main): Use isnanf() instead of isnan().
12113         * tests/test-truncf1.c: Include isnanf.h.
12114         (main): Use isnanf() instead of isnan().
12115         * tests/test-roundf1.c: Include isnanf.h.
12116         (main): Use isnanf() instead of isnan().
12117
12118 2007-10-21  Eric Blake  <ebb9@byu.net>
12119
12120         * users.txt: Update URL for m4.
12121
12122 2007-10-21  Bruno Haible  <bruno@clisp.org>
12123
12124         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
12125
12126 2007-10-21  Bruno Haible  <bruno@clisp.org>
12127
12128         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
12129         Git's management files if the CVS files are not present.
12130
12131 2007-10-20  Bruno Haible  <bruno@clisp.org>
12132
12133         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
12134         gcc-3.4.x.
12135
12136 2007-10-20  Ben Pfaff  <blp@gnu.org>
12137
12138         * lib/math.in.h: Declare round, roundf, roundl if we are providing
12139         implementations.
12140         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
12141         * lib/round.c: New file.
12142         * lib/roundf.c: New file.
12143         * lib/roundl.c: New file.
12144         * m4/round.m4: New file.
12145         * m4/roundf.m4: New file.
12146         * m4/roundl.m4: New file.
12147         * m4/check-libm-func-m4: New file.
12148         * modules/math: Replace round, roundf, roundl related @VARS@ in
12149         math.in.h.
12150         * modules/round: New file.
12151         * modules/round-tests: New file.
12152         * modules/roundf: New file.
12153         * modules/roundf-tests: New file.
12154         * modules/roundl: New file.
12155         * modules/roundl-tests: New file.
12156         * tests/test-round1.c: New file.
12157         * tests/test-round2.c: New file.
12158         * tests/test-roundf1.c: New file.
12159         * tests/test-roundf2.c: New file.
12160         * tests/test-roundl.c: New file.
12161         * doc/functions/round.texi: Mention round module.
12162         * doc/functions/roundf.texi: Mention roundf module.
12163         * doc/functions/roundl.texi: Mention roundl module.
12164         * MODULES.html.sh: Mention new modules.
12165         Thanks to Bruno Haible for suggestions.
12166
12167 2007-10-20  Jim Meyering  <meyering@redhat.com>
12168
12169         * lib/xprintf.c: Include <config.h> unconditionally.
12170
12171         Change xprintf's license to GPL.
12172         * modules/xprintf (License): s/LGPL/GPL/, since this module
12173         depends on modules (exit and exitfail) which are GPL.
12174         Suggestion from Bruno Haible.
12175
12176         xprintf fixes.
12177         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
12178         Use a clearer diagnostic.
12179         Patch from Bruno Haible.
12180
12181 2007-10-20  Bruno Haible  <bruno@clisp.org>
12182
12183         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
12184         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
12185         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12186
12187 2007-10-20  Bruno Haible  <bruno@clisp.org>
12188
12189         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
12190         precision in the comparison result > x - 1 or similar.
12191         * tests/test-ceilf2.c (correct_result_p): Likewise.
12192         * tests/test-truncf2.c (correct_result_p): Likewise.
12193         * tests/test-trunc2.c (correct_result_p): Likewise.
12194         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12195
12196 2007-10-20  Bruno Haible  <bruno@clisp.org>
12197
12198         * modules/ceil: New file.
12199         * m4/ceil.m4: New file.
12200         * doc/functions/ceil.texi: Mention the 'ceil' module.
12201
12202 2007-10-20  Bruno Haible  <bruno@clisp.org>
12203
12204         * modules/floor: New file.
12205         * m4/floor.m4: New file.
12206         * doc/functions/floor.texi: Mention the 'floor' module.
12207
12208 2007-10-20  Bruno Haible  <bruno@clisp.org>
12209
12210         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
12211         of %a.
12212         * modules/floorf-tests (Depends-on): Likewise.
12213         * modules/truncf-tests (Depends-on): Likewise.
12214         * modules/trunc-tests (Depends-on): Likewise.
12215         Reported by Ben Pfaff.
12216
12217 2007-10-19  Jim Meyering  <meyering@redhat.com>
12218
12219         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
12220         Don't bother testing specific errno values.  Just test ferror.
12221
12222         New module: xprintf
12223         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
12224
12225 2007-10-19  Bruno Haible  <bruno@clisp.org>
12226
12227         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
12228         syntax.
12229         * modules/javaexec (Makefile.am): Likewise.
12230         * modules/relocatable-prog (Makefile.am): Likewise.
12231         Suggested by Jim Meyering.
12232
12233 2007-10-18  Bruno Haible  <bruno@clisp.org>
12234
12235         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
12236         Reported by Jim Meyering.
12237
12238 2007-10-18  Eric Blake  <ebb9@byu.net>
12239
12240         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
12241
12242 2007-10-18  Bruno Haible  <bruno@clisp.org>
12243
12244         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
12245         the format string into writable memory. Needed in Fortify conditions.
12246
12247 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
12248             Bruno Haible  <bruno@clisp.org>
12249
12250         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
12251         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
12252         * modules/trim (Depends-on): Add mbchar.
12253         (configure.ac): Add gl_FUNC_MBRTOWC.
12254         (Makefile.am): Augment lib_SOURCES.
12255
12256 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
12257
12258         Modify glob.c to use fstatat and dirfd, to simplify it.
12259         Suggested by Eric Blake.
12260         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
12261         Don't include <stdbool.h>; not used.
12262         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
12263         (link_exists_p): Simplify implementation, since we can now assume
12264         dirfd and fstatat.
12265         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
12266
12267 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12268
12269         * gnulib-tool (func_get_dependencies): Fix sed script to
12270         match only tests.
12271
12272 2007-10-17  Bruno Haible  <bruno@clisp.org>
12273
12274         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
12275         allow locale names without encoding suffix.
12276         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
12277         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
12278
12279 2007-10-16  Bruno Haible  <bruno@clisp.org>
12280
12281         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
12282         * lib/getgroups.c (getgroups): Likewise.
12283         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
12284
12285 2007-10-16  Bruno Haible  <bruno@clisp.org>
12286
12287         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
12288         * modules/malloc-posix (License): Likewise.
12289         * modules/realloc-posix (License): Likewise.
12290         * modules/calloc-posix (License): Likewise.
12291         * modules/intprops (License): Change from GPL to LGPL, with
12292         Paul Eggert's approval.
12293
12294 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12295
12296         Merge glibc changes into lib/glob.c.
12297
12298         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
12299         2007-10-15 04:59:03 UTC.  Here are the changes:
12300
12301         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
12302
12303         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
12304
12305         * lib/glob.c: Add some branch prediction throughout.
12306
12307         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
12308
12309         [BZ #5103]
12310         * lib/glob.c (glob): Recognize patterns starting \/.
12311
12312         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
12313
12314         [BZ #3996]
12315         * lib/glob.c (attribute_hidden): Define if not defined.
12316         (glob): Unescape dirname, filename or username when needed and not
12317         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
12318         is NULL.  Handle unescaped [ in pattern without closing ].
12319         Don't pass GLOB_CHECK down to recursive glob for directories.
12320         (__glob_pattern_type): New function.
12321         (__glob_pattern_p): Implement using __glob_pattern_type.
12322         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
12323         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
12324         Remove unreachable code.
12325
12326         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
12327
12328         * lib/glob.c (glob_in_dir): Add some comments and asserts to
12329         explain why there are no leaks.
12330
12331         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
12332
12333         [BZ #3253]
12334         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
12335         time, rather allocate increasingly bigger arrays of pointers, if
12336         possible with alloca, if too large with malloc.
12337
12338 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
12339
12340         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
12341         Problem reported by H.Merijn Brand in
12342         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
12343         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
12344         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
12345
12346 2007-10-15  Bruno Haible  <bruno@clisp.org>
12347
12348         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
12349         with explicit rpl_ prefix.
12350         * lib/fopen.c (fopen): Likewise.
12351         * lib/freopen.c (freopen): Likewise.
12352         * lib/iconv.c (iconv): Likewise.
12353         * lib/iconv_close.c (iconv_close): Likewise.
12354
12355 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12356
12357         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
12358
12359 2007-10-15  Bruno Haible  <bruno@clisp.org>
12360
12361         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
12362         <stddef.h> instead of <stdlib.h> since we only need NULL.
12363         Reported by Ben Pfaff <blp@cs.stanford.edu>.
12364
12365 2007-10-15  Bruno Haible  <bruno@clisp.org>
12366
12367         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
12368         Replace paragraph talking about LIBOBJS.
12369         Reported by Colin Watson <cjwatson@debian.org>.
12370
12371 2007-10-15  Bruno Haible  <bruno@clisp.org>
12372
12373         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
12374         <stdlib.h> before using NULL.
12375
12376 2007-10-15  Simon Josefsson  <simon@josefsson.org>
12377
12378         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
12379         Reported by Albert Chin <china@thewrittenword.com>.
12380
12381 2007-10-14  Bruno Haible  <bruno@clisp.org>
12382
12383         * modules/iconv_open-utf-tests: New file.
12384         * tests/test-iconv-utf.c: New file.
12385
12386         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
12387         * modules/iconv_open-utf: New file.
12388         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
12389         (iconv, iconv_close): New declarations.
12390         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
12391         be defined.
12392         (iconv_open): Add special handling of conversion between UTF-8 and
12393         UTF-{16,32}{BE,LE}.
12394         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
12395         * lib/iconv_close.c: New file.
12396         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
12397         gl_FUNC_ICONV_OPEN.
12398         (gl_FUNC_ICONV_OPEN): Use it.
12399         (gl_FUNC_ICONV_OPEN_UTF): New macro.
12400         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
12401         and REPLACE_ICONV_UTF.
12402         * modules/iconv_open (Depends-on): Add c-strcase.
12403         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
12404         ICONV_CONST.
12405         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
12406
12407 2007-10-13  Albert Chin  <china@thewrittenword.com>
12408             Bruno Haible  <bruno@clisp.org>
12409
12410         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
12411         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
12412
12413 2007-10-13  Bruno Haible  <bruno@clisp.org>
12414
12415         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
12416         defined, use the ISO C99 inline semantics.
12417         * lib/argp.h (ARGP_EI): Likewise.
12418
12419 2007-10-13  Bruno Haible  <bruno@clisp.org>
12420
12421         Handle 'inline' change in gcc 4.3.0.
12422         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
12423         argp_fmtstream_write, argp_fmtstream_set_lmargin,
12424         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
12425         argp_fmtstream_point): Disable 'extern' declaration if the function
12426         definition is going to be provided inline.
12427         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
12428         semantics, not the ISO C99 inline semantics.
12429         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
12430         'extern' declaration if the function definition is going to be provided
12431         inline.
12432         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
12433         the GNU C inline semantics, not the ISO C99 inline semantics. With
12434         GCC 4.2, avoid a warning.
12435
12436 2007-10-13  Bruno Haible  <bruno@clisp.org>
12437
12438         * lib/freading.h (freading): Enable the use of __freading for
12439         glibc >= 2.7.
12440         * lib/freading.c (freading): Likewise.
12441
12442 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
12443
12444         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
12445         "warning: C99 inline functions are not supported; using GNU89".
12446
12447 2007-10-12  Bruno Haible  <bruno@clisp.org>
12448
12449         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
12450         of 2.
12451         * tests/test-ceilf2.c: New file.
12452         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
12453
12454         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
12455         * modules/ceilf-tests: Update.
12456
12457 2007-10-12  Bruno Haible  <bruno@clisp.org>
12458
12459         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
12460         of 2.
12461         * tests/test-floorf2.c: New file.
12462         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
12463
12464         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
12465         * modules/floorf-tests: Update.
12466
12467 2007-10-12  Bruno Haible  <bruno@clisp.org>
12468
12469         * tests/test-trunc2.c: New file.
12470         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
12471
12472         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
12473         * modules/trunc-tests: Update.
12474
12475 2007-10-12  Bruno Haible  <bruno@clisp.org>
12476
12477         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
12478         of 2.
12479         * tests/test-truncf2.c: New file.
12480         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
12481
12482         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
12483         * modules/truncf-tests: Update.
12484
12485 2007-10-11  Eric Blake  <ebb9@byu.net>
12486
12487         Don't claim strerror is broken on Interix.
12488         * doc/functions/strerror.texi (strerror): Known broken systems are
12489         now Solaris 8, and not Interix.
12490         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
12491         Interix on cross-compile.
12492         Reported by Martin Koeppe in
12493         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
12494
12495 2007-10-11  Bruno Haible  <bruno@clisp.org>
12496
12497         * modules/i-ring-tests: New file.
12498         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
12499         instead of assert.
12500
12501 2007-10-11  Bruno Haible  <bruno@clisp.org>
12502
12503         * modules/filenamecat-tests: New file.
12504         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
12505         * lib/filenamecat.c: Remove test code.
12506
12507 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
12508
12509         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
12510
12511         * lib/strerror.c: Include <string.h> always, to test interface,
12512         and to remove the need for the dummy.
12513         Include intprops.h to compute width instead of doing it ourselves
12514         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
12515         (strerror): Define it to return NULL if there's no system strerror.
12516         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
12517         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
12518         ancient pre-strerror Unix systems well any more.  Saying "unknown
12519         system error" is enough.
12520         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
12521         simpler strerror.c implementation.
12522         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
12523         Simplify the tests to reflect the simpler strerror implementation.
12524         * modules/strerror (Depends-on): Add intprops.
12525
12526 2007-10-09  Eric Blake  <ebb9@byu.net>
12527
12528         Silence test-fpending.
12529         * modules/fpending-tests (Files): Add wrapper script.
12530         * tests/test-fpending.sh: New file.
12531
12532 2007-10-09  Bruno Haible  <bruno@clisp.org>
12533
12534         * MODULES.html.sh (func_module): Don't create a hyperlink for
12535         function names like 'printf_frexp'.
12536         (Misc): Add crc, memxor.
12537         (Characteristics of floating types): New section.
12538         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
12539         isnanf-nolibm, signbit, trunc, truncf, truncl.
12540         (Enhancements for ISO C 99 functions): New subsection Input/output.
12541         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
12542         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
12543         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
12544         (Compatibility checks for POSIX:2001 functions): Add clock-time.
12545         (Enhancements for POSIX:2001 functions): Add chdir-long.
12546         (File system functions): Add areadlink, chdir-safer, read-file.
12547         Remove cycle-check.
12548         (File system as inode set): New section.
12549         (Date and time): Add gethrxtime.
12550         (Multithreading): Add openmp.
12551         (Internationalization functions): Add localename.
12552         (Unicode string functions): Add unistr/u*-mbsnlen.
12553         (Support for maintaining and releasing projects): Add git-version-gen.
12554         (Lone files): Remove directories.
12555
12556 2007-10-08  Ben Pfaff  <blp@gnu.org>
12557
12558         * lib/xmalloca.h: Fix typo in comment.
12559
12560 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
12561
12562         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
12563         when avoiding problems with integer overflow.  Use a portable test
12564         instead.
12565
12566 2007-10-08  Simon Josefsson  <simon@josefsson.org>
12567
12568         * modules/dummy (License): Change to LGPLv2+.
12569         * modules/float (License): Likewise
12570         * modules/realloc (License): Likewise
12571         * modules/stdlib (License): Likewise
12572
12573 2007-10-07  Bruno Haible  <bruno@clisp.org>
12574
12575         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
12576         * floor.c (TWO_MANT_DIG): Likewise.
12577         * ceil.c (TWO_MANT_DIG): Likewise.
12578         Reported by Ben Pfaff.
12579
12580 2007-10-07  Bruno Haible  <bruno@clisp.org>
12581
12582         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
12583         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
12584         * lib/frexp.c (FUNC): Likewise.
12585         * lib/printf-frexp.h (printf_frexp): Likewise.
12586         * lib/printf-frexpl.h (printf_frexpl): Likewise.
12587         * lib/printf-frexp.c (FUNC): Likewise.
12588         Suggested by Jim Meyering.
12589
12590 2007-10-07  Jim Meyering  <meyering@redhat.com>
12591
12592         Make xnanosleep's integer overflow test more robust.
12593         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
12594         so that gcc-4.3.0 doesn't optimize away this test for overflow.
12595
12596 2007-10-07  Bruno Haible  <bruno@clisp.org>
12597
12598         * NEWS: Mention the license change.
12599
12600         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
12601         abbreviations in the modules files.
12602
12603         Change copyright notice from GPLv2+ to GPLv3+.
12604         * README: Change copyright notice.
12605         * MODULES.html.sh: Likewise.
12606         * build-aux/bootstrap.conf: Likewise.
12607         * build-aux/config.libpath: Likewise.
12608         * build-aux/csharpcomp.sh.in: Likewise.
12609         * build-aux/csharpexec.sh.in: Likewise.
12610         * build-aux/install-reloc: Likewise.
12611         * build-aux/javacomp.sh.in: Likewise.
12612         * build-aux/javaexec.sh.in: Likewise.
12613         * build-aux/ldd.sh.in: Likewise.
12614         * build-aux/reloc-ldflags: Likewise.
12615         * build-aux/relocatable.sh.in: Likewise.
12616         * build-aux/x-to-1.in: Likewise.
12617         * check-module: Likewise.
12618         * config/srclistvars.sh: Likewise.
12619         * gnulib-tool: Likewise.
12620         * lib/acl-internal.h: Likewise.
12621         * lib/acl.c: Likewise.
12622         * lib/acl.h: Likewise.
12623         * lib/acl_entries.c: Likewise.
12624         * lib/areadlink-with-size.c: Likewise.
12625         * lib/areadlink.c: Likewise.
12626         * lib/areadlink.h: Likewise.
12627         * lib/argmatch.c: Likewise.
12628         * lib/argmatch.h: Likewise.
12629         * lib/argp-ba.c: Likewise.
12630         * lib/argp-eexst.c: Likewise.
12631         * lib/argp-fmtstream.c: Likewise.
12632         * lib/argp-fmtstream.h: Likewise.
12633         * lib/argp-fs-xinl.c: Likewise.
12634         * lib/argp-help.c: Likewise.
12635         * lib/argp-namefrob.h: Likewise.
12636         * lib/argp-parse.c: Likewise.
12637         * lib/argp-pin.c: Likewise.
12638         * lib/argp-pv.c: Likewise.
12639         * lib/argp-pvh.c: Likewise.
12640         * lib/argp-xinl.c: Likewise.
12641         * lib/argp.h: Likewise.
12642         * lib/at-func.c: Likewise.
12643         * lib/atanl.c: Likewise.
12644         * lib/backupfile.c: Likewise.
12645         * lib/backupfile.h: Likewise.
12646         * lib/basename.c: Likewise.
12647         * lib/binary-io.h: Likewise.
12648         * lib/byteswap.in.h: Likewise.
12649         * lib/c-stack.c: Likewise.
12650         * lib/c-stack.h: Likewise.
12651         * lib/c-strcasestr.c: Likewise.
12652         * lib/c-strcasestr.h: Likewise.
12653         * lib/c-strstr.c: Likewise.
12654         * lib/c-strstr.h: Likewise.
12655         * lib/c-strtod.c: Likewise.
12656         * lib/calloc.c: Likewise.
12657         * lib/canon-host.c: Likewise.
12658         * lib/canon-host.h: Likewise.
12659         * lib/canonicalize-lgpl.c: Likewise.
12660         * lib/canonicalize.c: Likewise.
12661         * lib/canonicalize.h: Likewise.
12662         * lib/ceil.c: Likewise.
12663         * lib/ceilf.c: Likewise.
12664         * lib/ceill.c: Likewise.
12665         * lib/chdir-long.c: Likewise.
12666         * lib/chdir-long.h: Likewise.
12667         * lib/chdir-safer.c: Likewise.
12668         * lib/chdir-safer.h: Likewise.
12669         * lib/chown.c: Likewise.
12670         * lib/classpath.c: Likewise.
12671         * lib/classpath.h: Likewise.
12672         * lib/clean-temp.c: Likewise.
12673         * lib/clean-temp.h: Likewise.
12674         * lib/cloexec.c: Likewise.
12675         * lib/close-stream.c: Likewise.
12676         * lib/closein.c: Likewise.
12677         * lib/closein.h: Likewise.
12678         * lib/closeout.c: Likewise.
12679         * lib/closeout.h: Likewise.
12680         * lib/concat-filename.c: Likewise.
12681         * lib/copy-file.c: Likewise.
12682         * lib/copy-file.h: Likewise.
12683         * lib/count-one-bits.h: Likewise.
12684         * lib/crc.c: Likewise.
12685         * lib/crc.h: Likewise.
12686         * lib/creat-safer.c: Likewise.
12687         * lib/csharpcomp.c: Likewise.
12688         * lib/csharpcomp.h: Likewise.
12689         * lib/csharpexec.c: Likewise.
12690         * lib/csharpexec.h: Likewise.
12691         * lib/cycle-check.c: Likewise.
12692         * lib/cycle-check.h: Likewise.
12693         * lib/diacrit.c: Likewise.
12694         * lib/diacrit.h: Likewise.
12695         * lib/diffseq.h: Likewise.
12696         * lib/dirchownmod.c: Likewise.
12697         * lib/dirent.in.h: Likewise.
12698         * lib/dirfd.c: Likewise.
12699         * lib/dirfd.h: Likewise.
12700         * lib/dirname.c: Likewise.
12701         * lib/dirname.h: Likewise.
12702         * lib/dummy.c: Likewise.
12703         * lib/dup-safer.c: Likewise.
12704         * lib/dup2.c: Likewise.
12705         * lib/eealloc.h: Likewise.
12706         * lib/error.c: Likewise.
12707         * lib/error.h: Likewise.
12708         * lib/euidaccess.c: Likewise.
12709         * lib/exclude.c: Likewise.
12710         * lib/exclude.h: Likewise.
12711         * lib/execute.c: Likewise.
12712         * lib/execute.h: Likewise.
12713         * lib/exitfail.c: Likewise.
12714         * lib/exitfail.h: Likewise.
12715         * lib/expl.c: Likewise.
12716         * lib/fatal-signal.c: Likewise.
12717         * lib/fatal-signal.h: Likewise.
12718         * lib/fbufmode.c: Likewise.
12719         * lib/fbufmode.h: Likewise.
12720         * lib/fchdir.c: Likewise.
12721         * lib/fchmodat.c: Likewise.
12722         * lib/fchownat.c: Likewise.
12723         * lib/fcntl--.h: Likewise.
12724         * lib/fcntl-safer.h: Likewise.
12725         * lib/fcntl.in.h: Likewise.
12726         * lib/fd-safer.c: Likewise.
12727         * lib/fflush.c: Likewise.
12728         * lib/file-has-acl.c: Likewise.
12729         * lib/file-set.c: Likewise.
12730         * lib/file-type.c: Likewise.
12731         * lib/file-type.h: Likewise.
12732         * lib/fileblocks.c: Likewise.
12733         * lib/filemode.c: Likewise.
12734         * lib/filemode.h: Likewise.
12735         * lib/filename.h: Likewise.
12736         * lib/filenamecat.c: Likewise.
12737         * lib/filenamecat.h: Likewise.
12738         * lib/findprog.c: Likewise.
12739         * lib/findprog.h: Likewise.
12740         * lib/float.in.h: Likewise.
12741         * lib/floor.c: Likewise.
12742         * lib/floorf.c: Likewise.
12743         * lib/floorl.c: Likewise.
12744         * lib/fopen-safer.c: Likewise.
12745         * lib/fopen.c: Likewise.
12746         * lib/fpending.c: Likewise.
12747         * lib/fpending.h: Likewise.
12748         * lib/fprintf.c: Likewise.
12749         * lib/fprintftime.h: Likewise.
12750         * lib/fpucw.h: Likewise.
12751         * lib/fpurge.c: Likewise.
12752         * lib/fpurge.h: Likewise.
12753         * lib/freadable.c: Likewise.
12754         * lib/freadable.h: Likewise.
12755         * lib/freadahead.c: Likewise.
12756         * lib/freadahead.h: Likewise.
12757         * lib/freading.c: Likewise.
12758         * lib/freading.h: Likewise.
12759         * lib/free.c: Likewise.
12760         * lib/freopen.c: Likewise.
12761         * lib/frexp.c: Likewise.
12762         * lib/frexpl.c: Likewise.
12763         * lib/fseek.c: Likewise.
12764         * lib/fseterr.c: Likewise.
12765         * lib/fseterr.h: Likewise.
12766         * lib/fstatat.c: Likewise.
12767         * lib/fstrcmp.c: Likewise.
12768         * lib/fstrcmp.h: Likewise.
12769         * lib/fsusage.c: Likewise.
12770         * lib/fsusage.h: Likewise.
12771         * lib/ftell.c: Likewise.
12772         * lib/ftello.c: Likewise.
12773         * lib/fts-cycle.c: Likewise.
12774         * lib/fts.c: Likewise.
12775         * lib/fts_.h: Likewise.
12776         * lib/full-read.c: Likewise.
12777         * lib/full-read.h: Likewise.
12778         * lib/full-write.c: Likewise.
12779         * lib/full-write.h: Likewise.
12780         * lib/fwritable.c: Likewise.
12781         * lib/fwritable.h: Likewise.
12782         * lib/fwriteerror.c: Likewise.
12783         * lib/fwriteerror.h: Likewise.
12784         * lib/fwriting.c: Likewise.
12785         * lib/fwriting.h: Likewise.
12786         * lib/gcd.c: Likewise.
12787         * lib/gcd.h: Likewise.
12788         * lib/getcwd.c: Likewise.
12789         * lib/getdate.h: Likewise.
12790         * lib/getdate.y: Likewise.
12791         * lib/getdomainname.c: Likewise.
12792         * lib/getdomainname.h: Likewise.
12793         * lib/getgroups.c: Likewise.
12794         * lib/gethostname.c: Likewise.
12795         * lib/gethrxtime.c: Likewise.
12796         * lib/gethrxtime.h: Likewise.
12797         * lib/getloadavg.c: Likewise.
12798         * lib/getndelim2.c: Likewise.
12799         * lib/getndelim2.h: Likewise.
12800         * lib/getnline.c: Likewise.
12801         * lib/getnline.h: Likewise.
12802         * lib/getopt.c: Likewise.
12803         * lib/getopt.in.h: Likewise.
12804         * lib/getopt1.c: Likewise.
12805         * lib/getopt_int.h: Likewise.
12806         * lib/getpagesize.h: Likewise.
12807         * lib/getsubopt.c: Likewise.
12808         * lib/gettime.c: Likewise.
12809         * lib/getugroups.c: Likewise.
12810         * lib/getugroups.h: Likewise.
12811         * lib/getusershell.c: Likewise.
12812         * lib/gl_anyavltree_list1.h: Likewise.
12813         * lib/gl_anyavltree_list2.h: Likewise.
12814         * lib/gl_anyhash_list1.h: Likewise.
12815         * lib/gl_anyhash_list2.h: Likewise.
12816         * lib/gl_anylinked_list1.h: Likewise.
12817         * lib/gl_anylinked_list2.h: Likewise.
12818         * lib/gl_anyrbtree_list1.h: Likewise.
12819         * lib/gl_anyrbtree_list2.h: Likewise.
12820         * lib/gl_anytree_list1.h: Likewise.
12821         * lib/gl_anytree_list2.h: Likewise.
12822         * lib/gl_anytree_oset.h: Likewise.
12823         * lib/gl_anytreehash_list1.h: Likewise.
12824         * lib/gl_anytreehash_list2.h: Likewise.
12825         * lib/gl_array_list.c: Likewise.
12826         * lib/gl_array_list.h: Likewise.
12827         * lib/gl_array_oset.c: Likewise.
12828         * lib/gl_array_oset.h: Likewise.
12829         * lib/gl_avltree_list.c: Likewise.
12830         * lib/gl_avltree_list.h: Likewise.
12831         * lib/gl_avltree_oset.c: Likewise.
12832         * lib/gl_avltree_oset.h: Likewise.
12833         * lib/gl_avltreehash_list.c: Likewise.
12834         * lib/gl_avltreehash_list.h: Likewise.
12835         * lib/gl_carray_list.c: Likewise.
12836         * lib/gl_carray_list.h: Likewise.
12837         * lib/gl_linked_list.c: Likewise.
12838         * lib/gl_linked_list.h: Likewise.
12839         * lib/gl_linkedhash_list.c: Likewise.
12840         * lib/gl_linkedhash_list.h: Likewise.
12841         * lib/gl_list.c: Likewise.
12842         * lib/gl_list.h: Likewise.
12843         * lib/gl_oset.c: Likewise.
12844         * lib/gl_oset.h: Likewise.
12845         * lib/gl_rbtree_list.c: Likewise.
12846         * lib/gl_rbtree_list.h: Likewise.
12847         * lib/gl_rbtree_oset.c: Likewise.
12848         * lib/gl_rbtree_oset.h: Likewise.
12849         * lib/gl_rbtreehash_list.c: Likewise.
12850         * lib/gl_rbtreehash_list.h: Likewise.
12851         * lib/gl_sublist.c: Likewise.
12852         * lib/gl_sublist.h: Likewise.
12853         * lib/group-member.c: Likewise.
12854         * lib/group-member.h: Likewise.
12855         * lib/hard-locale.c: Likewise.
12856         * lib/hard-locale.h: Likewise.
12857         * lib/hash-pjw.c: Likewise.
12858         * lib/hash-pjw.h: Likewise.
12859         * lib/hash-triple.c: Likewise.
12860         * lib/hash.c: Likewise.
12861         * lib/hash.h: Likewise.
12862         * lib/human.c: Likewise.
12863         * lib/human.h: Likewise.
12864         * lib/i-ring.c: Likewise.
12865         * lib/i-ring.h: Likewise.
12866         * lib/idcache.c: Likewise.
12867         * lib/imaxabs.c: Likewise.
12868         * lib/imaxdiv.c: Likewise.
12869         * lib/inet_pton.c: Likewise.
12870         * lib/inet_pton.h: Likewise.
12871         * lib/intprops.h: Likewise.
12872         * lib/inttostr.c: Likewise.
12873         * lib/inttostr.h: Likewise.
12874         * lib/inttypes.in.h: Likewise.
12875         * lib/isapipe.c: Likewise.
12876         * lib/isdir.c: Likewise.
12877         * lib/isnan.c: Likewise.
12878         * lib/isnan.h: Likewise.
12879         * lib/isnanf.c: Likewise.
12880         * lib/isnanf.h: Likewise.
12881         * lib/isnanl-nolibm.h: Likewise.
12882         * lib/isnanl.c: Likewise.
12883         * lib/isnanl.h: Likewise.
12884         * lib/javacomp.c: Likewise.
12885         * lib/javacomp.h: Likewise.
12886         * lib/javaexec.c: Likewise.
12887         * lib/javaexec.h: Likewise.
12888         * lib/javaversion.c: Likewise.
12889         * lib/javaversion.h: Likewise.
12890         * lib/javaversion.java: Likewise.
12891         * lib/lbrkprop.h: Likewise.
12892         * lib/lchmod.h: Likewise.
12893         * lib/lchown.c: Likewise.
12894         * lib/ldexpl.c: Likewise.
12895         * lib/linebreak.c: Likewise.
12896         * lib/linebreak.h: Likewise.
12897         * lib/linebuffer.c: Likewise.
12898         * lib/linebuffer.h: Likewise.
12899         * lib/locale.in.h: Likewise.
12900         * lib/logl.c: Likewise.
12901         * lib/long-options.c: Likewise.
12902         * lib/long-options.h: Likewise.
12903         * lib/lstat.c: Likewise.
12904         * lib/lstat.h: Likewise.
12905         * lib/math.in.h: Likewise.
12906         * lib/mbchar.c: Likewise.
12907         * lib/mbchar.h: Likewise.
12908         * lib/mbfile.h: Likewise.
12909         * lib/mbiter.h: Likewise.
12910         * lib/mbscasecmp.c: Likewise.
12911         * lib/mbscasestr.c: Likewise.
12912         * lib/mbschr.c: Likewise.
12913         * lib/mbscspn.c: Likewise.
12914         * lib/mbslen.c: Likewise.
12915         * lib/mbsncasecmp.c: Likewise.
12916         * lib/mbsnlen.c: Likewise.
12917         * lib/mbspbrk.c: Likewise.
12918         * lib/mbspcasecmp.c: Likewise.
12919         * lib/mbsrchr.c: Likewise.
12920         * lib/mbssep.c: Likewise.
12921         * lib/mbsspn.c: Likewise.
12922         * lib/mbsstr.c: Likewise.
12923         * lib/mbstok_r.c: Likewise.
12924         * lib/mbswidth.c: Likewise.
12925         * lib/mbswidth.h: Likewise.
12926         * lib/mbuiter.h: Likewise.
12927         * lib/memcasecmp.c: Likewise.
12928         * lib/memcasecmp.h: Likewise.
12929         * lib/memchr.c: Likewise.
12930         * lib/memcmp.c: Likewise.
12931         * lib/memcoll.c: Likewise.
12932         * lib/memcoll.h: Likewise.
12933         * lib/memcpy.c: Likewise.
12934         * lib/memrchr.c: Likewise.
12935         * lib/mkancesdirs.c: Likewise.
12936         * lib/mkdir-p.c: Likewise.
12937         * lib/mkdir-p.h: Likewise.
12938         * lib/mkdir.c: Likewise.
12939         * lib/mkdirat.c: Likewise.
12940         * lib/mkdtemp.c: Likewise.
12941         * lib/mkstemp-safer.c: Likewise.
12942         * lib/mkstemp.c: Likewise.
12943         * lib/modechange.c: Likewise.
12944         * lib/modechange.h: Likewise.
12945         * lib/mountlist.c: Likewise.
12946         * lib/mountlist.h: Likewise.
12947         * lib/mpsort.c: Likewise.
12948         * lib/nanosleep.c: Likewise.
12949         * lib/obstack.c: Likewise.
12950         * lib/obstack.h: Likewise.
12951         * lib/open-safer.c: Likewise.
12952         * lib/open.c: Likewise.
12953         * lib/openat-die.c: Likewise.
12954         * lib/openat-priv.h: Likewise.
12955         * lib/openat-proc.c: Likewise.
12956         * lib/openat.c: Likewise.
12957         * lib/openat.h: Likewise.
12958         * lib/pagealign_alloc.c: Likewise.
12959         * lib/pagealign_alloc.h: Likewise.
12960         * lib/physmem.c: Likewise.
12961         * lib/physmem.h: Likewise.
12962         * lib/pipe-safer.c: Likewise.
12963         * lib/pipe.c: Likewise.
12964         * lib/pipe.h: Likewise.
12965         * lib/posixtm.c: Likewise.
12966         * lib/posixtm.h: Likewise.
12967         * lib/posixver.c: Likewise.
12968         * lib/printf-frexp.c: Likewise.
12969         * lib/printf-frexp.h: Likewise.
12970         * lib/printf-frexpl.c: Likewise.
12971         * lib/printf-frexpl.h: Likewise.
12972         * lib/printf.c: Likewise.
12973         * lib/progname.c: Likewise.
12974         * lib/progname.h: Likewise.
12975         * lib/progreloc.c: Likewise.
12976         * lib/putenv.c: Likewise.
12977         * lib/quote.c: Likewise.
12978         * lib/quote.h: Likewise.
12979         * lib/quotearg.c: Likewise.
12980         * lib/quotearg.h: Likewise.
12981         * lib/raise.c: Likewise.
12982         * lib/readline.c: Likewise.
12983         * lib/readline.h: Likewise.
12984         * lib/readlink.c: Likewise.
12985         * lib/readtokens.c: Likewise.
12986         * lib/readtokens.h: Likewise.
12987         * lib/readtokens0.c: Likewise.
12988         * lib/readtokens0.h: Likewise.
12989         * lib/readutmp.c: Likewise.
12990         * lib/readutmp.h: Likewise.
12991         * lib/realloc.c: Likewise.
12992         * lib/relocwrapper.c: Likewise.
12993         * lib/rename-dest-slash.c: Likewise.
12994         * lib/rename.c: Likewise.
12995         * lib/rmdir.c: Likewise.
12996         * lib/rpmatch.c: Likewise.
12997         * lib/safe-read.c: Likewise.
12998         * lib/safe-read.h: Likewise.
12999         * lib/safe-write.c: Likewise.
13000         * lib/safe-write.h: Likewise.
13001         * lib/same-inode.h: Likewise.
13002         * lib/same.c: Likewise.
13003         * lib/same.h: Likewise.
13004         * lib/save-cwd.c: Likewise.
13005         * lib/save-cwd.h: Likewise.
13006         * lib/savedir.c: Likewise.
13007         * lib/savedir.h: Likewise.
13008         * lib/savewd.c: Likewise.
13009         * lib/savewd.h: Likewise.
13010         * lib/search.in.h: Likewise.
13011         * lib/setenv.c: Likewise.
13012         * lib/setenv.h: Likewise.
13013         * lib/settime.c: Likewise.
13014         * lib/sh-quote.c: Likewise.
13015         * lib/sh-quote.h: Likewise.
13016         * lib/sig2str.c: Likewise.
13017         * lib/sig2str.h: Likewise.
13018         * lib/signal.in.h: Likewise.
13019         * lib/signbitd.c: Likewise.
13020         * lib/signbitf.c: Likewise.
13021         * lib/signbitl.c: Likewise.
13022         * lib/sigprocmask.c: Likewise.
13023         * lib/sincosl.c: Likewise.
13024         * lib/sleep.c: Likewise.
13025         * lib/sprintf.c: Likewise.
13026         * lib/sqrtl.c: Likewise.
13027         * lib/stat-time.h: Likewise.
13028         * lib/stdio--.h: Likewise.
13029         * lib/stdio-safer.h: Likewise.
13030         * lib/stdlib--.h: Likewise.
13031         * lib/stdlib-safer.h: Likewise.
13032         * lib/stdlib.in.h: Likewise.
13033         * lib/stpcpy.c: Likewise.
13034         * lib/stpncpy.c: Likewise.
13035         * lib/strchrnul.c: Likewise.
13036         * lib/strcspn.c: Likewise.
13037         * lib/strerror.c: Likewise.
13038         * lib/strftime.c: Likewise.
13039         * lib/strftime.h: Likewise.
13040         * lib/striconveh.c: Likewise.
13041         * lib/striconveh.h: Likewise.
13042         * lib/striconveha.c: Likewise.
13043         * lib/striconveha.h: Likewise.
13044         * lib/stripslash.c: Likewise.
13045         * lib/strnlen1.c: Likewise.
13046         * lib/strnlen1.h: Likewise.
13047         * lib/strtod.c: Likewise.
13048         * lib/strtoimax.c: Likewise.
13049         * lib/strtok_r.c: Likewise.
13050         * lib/strtol.c: Likewise.
13051         * lib/strtoll.c: Likewise.
13052         * lib/strtoul.c: Likewise.
13053         * lib/strtoull.c: Likewise.
13054         * lib/sysexits.in.h: Likewise.
13055         * lib/tempname.c: Likewise.
13056         * lib/tempname.h: Likewise.
13057         * lib/timespec.h: Likewise.
13058         * lib/tls.c: Likewise.
13059         * lib/tls.h: Likewise.
13060         * lib/tmpdir.c: Likewise.
13061         * lib/tmpdir.h: Likewise.
13062         * lib/tmpfile-safer.c: Likewise.
13063         * lib/tmpfile.c: Likewise.
13064         * lib/trigl.c: Likewise.
13065         * lib/trigl.h: Likewise.
13066         * lib/trim.c: Likewise.
13067         * lib/trim.h: Likewise.
13068         * lib/trunc.c: Likewise.
13069         * lib/truncf.c: Likewise.
13070         * lib/truncl.c: Likewise.
13071         * lib/tsearch.c: Likewise.
13072         * lib/unicodeio.c: Likewise.
13073         * lib/unicodeio.h: Likewise.
13074         * lib/unistd--.h: Likewise.
13075         * lib/unistd-safer.h: Likewise.
13076         * lib/unistdio/ulc-fprintf.c: Likewise.
13077         * lib/unistdio/ulc-vfprintf.c: Likewise.
13078         * lib/unlinkdir.c: Likewise.
13079         * lib/unlinkdir.h: Likewise.
13080         * lib/unlocked-io.h: Likewise.
13081         * lib/unsetenv.c: Likewise.
13082         * lib/userspec.c: Likewise.
13083         * lib/utime.c: Likewise.
13084         * lib/utimecmp.c: Likewise.
13085         * lib/utimecmp.h: Likewise.
13086         * lib/utimens.c: Likewise.
13087         * lib/verify.h: Likewise.
13088         * lib/verror.c: Likewise.
13089         * lib/verror.h: Likewise.
13090         * lib/version-etc-fsf.c: Likewise.
13091         * lib/version-etc.c: Likewise.
13092         * lib/version-etc.h: Likewise.
13093         * lib/vfprintf.c: Likewise.
13094         * lib/vprintf.c: Likewise.
13095         * lib/vsprintf.c: Likewise.
13096         * lib/w32spawn.h: Likewise.
13097         * lib/wait-process.c: Likewise.
13098         * lib/wait-process.h: Likewise.
13099         * lib/wcwidth.c: Likewise.
13100         * lib/write-any-file.c: Likewise.
13101         * lib/xalloc-die.c: Likewise.
13102         * lib/xalloc.h: Likewise.
13103         * lib/xasprintf.c: Likewise.
13104         * lib/xgetcwd.c: Likewise.
13105         * lib/xgetcwd.h: Likewise.
13106         * lib/xgetdomainname.c: Likewise.
13107         * lib/xgetdomainname.h: Likewise.
13108         * lib/xgethostname.c: Likewise.
13109         * lib/xmalloc.c: Likewise.
13110         * lib/xmalloca.c: Likewise.
13111         * lib/xmalloca.h: Likewise.
13112         * lib/xmemcoll.c: Likewise.
13113         * lib/xnanosleep.c: Likewise.
13114         * lib/xreadlink.c: Likewise.
13115         * lib/xreadlink.h: Likewise.
13116         * lib/xsetenv.c: Likewise.
13117         * lib/xsetenv.h: Likewise.
13118         * lib/xstriconv.c: Likewise.
13119         * lib/xstriconv.h: Likewise.
13120         * lib/xstrndup.c: Likewise.
13121         * lib/xstrndup.h: Likewise.
13122         * lib/xstrtod.c: Likewise.
13123         * lib/xstrtod.h: Likewise.
13124         * lib/xstrtol-error.c: Likewise.
13125         * lib/xstrtol.c: Likewise.
13126         * lib/xstrtol.h: Likewise.
13127         * lib/xtime.h: Likewise.
13128         * lib/xvasprintf.c: Likewise.
13129         * lib/xvasprintf.h: Likewise.
13130         * lib/yesno.c: Likewise.
13131         * lib/yesno.h: Likewise.
13132         * posix-modules: Likewise.
13133         * tests/test-alloca-opt.c: Likewise.
13134         * tests/test-arcfour.c: Likewise.
13135         * tests/test-arctwo.c: Likewise.
13136         * tests/test-argmatch.c: Likewise.
13137         * tests/test-argp-2.sh: Likewise.
13138         * tests/test-argp.c: Likewise.
13139         * tests/test-arpa_inet.c: Likewise.
13140         * tests/test-array_list.c: Likewise.
13141         * tests/test-array_oset.c: Likewise.
13142         * tests/test-atexit.c: Likewise.
13143         * tests/test-avltree_list.c: Likewise.
13144         * tests/test-avltree_oset.c: Likewise.
13145         * tests/test-avltreehash_list.c: Likewise.
13146         * tests/test-base64.c: Likewise.
13147         * tests/test-binary-io.c: Likewise.
13148         * tests/test-byteswap.c: Likewise.
13149         * tests/test-c-ctype.c: Likewise.
13150         * tests/test-c-strcasecmp.c: Likewise.
13151         * tests/test-c-strcasestr.c: Likewise.
13152         * tests/test-c-strncasecmp.c: Likewise.
13153         * tests/test-c-strstr.c: Likewise.
13154         * tests/test-canonicalize-lgpl.c: Likewise.
13155         * tests/test-canonicalize.c: Likewise.
13156         * tests/test-carray_list.c: Likewise.
13157         * tests/test-ceilf.c: Likewise.
13158         * tests/test-ceill.c: Likewise.
13159         * tests/test-count-one-bits.c: Likewise.
13160         * tests/test-crc.c: Likewise.
13161         * tests/test-dirname.c: Likewise.
13162         * tests/test-fbufmode.c: Likewise.
13163         * tests/test-fcntl.c: Likewise.
13164         * tests/test-fflush.c: Likewise.
13165         * tests/test-floorf.c: Likewise.
13166         * tests/test-floorl.c: Likewise.
13167         * tests/test-fopen.c: Likewise.
13168         * tests/test-fprintf-posix.c: Likewise.
13169         * tests/test-fprintf-posix.h: Likewise.
13170         * tests/test-fpurge.c: Likewise.
13171         * tests/test-freadable.c: Likewise.
13172         * tests/test-freadahead.c: Likewise.
13173         * tests/test-freading.c: Likewise.
13174         * tests/test-freopen.c: Likewise.
13175         * tests/test-frexp.c: Likewise.
13176         * tests/test-frexpl.c: Likewise.
13177         * tests/test-fseek.c: Likewise.
13178         * tests/test-fseeko.c: Likewise.
13179         * tests/test-fseterr.c: Likewise.
13180         * tests/test-fstrcmp.c: Likewise.
13181         * tests/test-ftell.c: Likewise.
13182         * tests/test-ftello.c: Likewise.
13183         * tests/test-fwritable.c: Likewise.
13184         * tests/test-fwriting.c: Likewise.
13185         * tests/test-getaddrinfo.c: Likewise.
13186         * tests/test-getpass.c: Likewise.
13187         * tests/test-gettimeofday.c: Likewise.
13188         * tests/test-hmac-md5.c: Likewise.
13189         * tests/test-hmac-sha1.c: Likewise.
13190         * tests/test-iconv.c: Likewise.
13191         * tests/test-iconvme.c: Likewise.
13192         * tests/test-inttypes.c: Likewise.
13193         * tests/test-isnan.c: Likewise.
13194         * tests/test-isnanf.c: Likewise.
13195         * tests/test-isnanl-nolibm.c: Likewise.
13196         * tests/test-isnanl.c: Likewise.
13197         * tests/test-isnanl.h: Likewise.
13198         * tests/test-ldexpl.c: Likewise.
13199         * tests/test-linked_list.c: Likewise.
13200         * tests/test-linkedhash_list.c: Likewise.
13201         * tests/test-locale.c: Likewise.
13202         * tests/test-localename.c: Likewise.
13203         * tests/test-lock.c: Likewise.
13204         * tests/test-lseek.c: Likewise.
13205         * tests/test-malloca.c: Likewise.
13206         * tests/test-math.c: Likewise.
13207         * tests/test-mbscasecmp.c: Likewise.
13208         * tests/test-mbscasestr1.c: Likewise.
13209         * tests/test-mbscasestr2.c: Likewise.
13210         * tests/test-mbscasestr3.c: Likewise.
13211         * tests/test-mbscasestr4.c: Likewise.
13212         * tests/test-mbschr.c: Likewise.
13213         * tests/test-mbscspn.c: Likewise.
13214         * tests/test-mbsncasecmp.c: Likewise.
13215         * tests/test-mbspbrk.c: Likewise.
13216         * tests/test-mbspcasecmp.c: Likewise.
13217         * tests/test-mbsrchr.c: Likewise.
13218         * tests/test-mbsspn.c: Likewise.
13219         * tests/test-mbsstr1.c: Likewise.
13220         * tests/test-mbsstr2.c: Likewise.
13221         * tests/test-mbsstr3.c: Likewise.
13222         * tests/test-md5.c: Likewise.
13223         * tests/test-memmem.c: Likewise.
13224         * tests/test-netinet_in.c: Likewise.
13225         * tests/test-open.c: Likewise.
13226         * tests/test-printf-frexp.c: Likewise.
13227         * tests/test-printf-frexpl.c: Likewise.
13228         * tests/test-printf-posix.c: Likewise.
13229         * tests/test-printf-posix.h: Likewise.
13230         * tests/test-rbtree_list.c: Likewise.
13231         * tests/test-rbtree_oset.c: Likewise.
13232         * tests/test-rbtreehash_list.c: Likewise.
13233         * tests/test-read-file.c: Likewise.
13234         * tests/test-rijndael.c: Likewise.
13235         * tests/test-search.c: Likewise.
13236         * tests/test-signbit.c: Likewise.
13237         * tests/test-sleep.c: Likewise.
13238         * tests/test-snprintf-posix.c: Likewise.
13239         * tests/test-snprintf-posix.h: Likewise.
13240         * tests/test-snprintf.c: Likewise.
13241         * tests/test-sprintf-posix.c: Likewise.
13242         * tests/test-sprintf-posix.h: Likewise.
13243         * tests/test-stat-time.c: Likewise.
13244         * tests/test-stdbool.c: Likewise.
13245         * tests/test-stdint.c: Likewise.
13246         * tests/test-stdio.c: Likewise.
13247         * tests/test-stdlib.c: Likewise.
13248         * tests/test-stpncpy.c: Likewise.
13249         * tests/test-strcasestr.c: Likewise.
13250         * tests/test-striconv.c: Likewise.
13251         * tests/test-striconveh.c: Likewise.
13252         * tests/test-striconveha.c: Likewise.
13253         * tests/test-string.c: Likewise.
13254         * tests/test-sys_select.c: Likewise.
13255         * tests/test-sys_socket.c: Likewise.
13256         * tests/test-sys_stat.c: Likewise.
13257         * tests/test-sys_time.c: Likewise.
13258         * tests/test-sysexits.c: Likewise.
13259         * tests/test-time.c: Likewise.
13260         * tests/test-tls.c: Likewise.
13261         * tests/test-trunc.c: Likewise.
13262         * tests/test-truncf.c: Likewise.
13263         * tests/test-truncl.c: Likewise.
13264         * tests/test-unistd.c: Likewise.
13265         * tests/test-vasnprintf-posix.c: Likewise.
13266         * tests/test-vasnprintf-posix2.c: Likewise.
13267         * tests/test-vasnprintf.c: Likewise.
13268         * tests/test-vasprintf-posix.c: Likewise.
13269         * tests/test-vasprintf.c: Likewise.
13270         * tests/test-verify.c: Likewise.
13271         * tests/test-vfprintf-posix.c: Likewise.
13272         * tests/test-vprintf-posix.c: Likewise.
13273         * tests/test-vsnprintf-posix.c: Likewise.
13274         * tests/test-vsnprintf.c: Likewise.
13275         * tests/test-vsprintf-posix.c: Likewise.
13276         * tests/test-wchar.c: Likewise.
13277         * tests/test-wctype.c: Likewise.
13278         * tests/test-wcwidth.c: Likewise.
13279         * tests/test-xstrtol.c: Likewise.
13280         * tests/test-xvasprintf.c: Likewise.
13281         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
13282         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
13283         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
13284         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
13285         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
13286         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
13287         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
13288         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
13289         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
13290         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
13291         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
13292         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
13293         * tests/uniname/test-uninames.c: Likewise.
13294         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
13295         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
13296         * tests/unistdio/test-u16-printf1.h: Likewise.
13297         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
13298         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
13299         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
13300         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
13301         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
13302         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
13303         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
13304         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
13305         * tests/unistdio/test-u32-printf1.h: Likewise.
13306         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
13307         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
13308         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
13309         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
13310         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
13311         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
13312         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
13313         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
13314         * tests/unistdio/test-u8-printf1.h: Likewise.
13315         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
13316         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
13317         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
13318         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
13319         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
13320         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
13321         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
13322         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
13323         * tests/unistdio/test-ulc-printf1.h: Likewise.
13324         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
13325         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
13326         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
13327         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
13328         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
13329         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
13330         * tests/uniwidth/test-u16-strwidth.c: Likewise.
13331         * tests/uniwidth/test-u16-width.c: Likewise.
13332         * tests/uniwidth/test-u32-strwidth.c: Likewise.
13333         * tests/uniwidth/test-u32-width.c: Likewise.
13334         * tests/uniwidth/test-u8-strwidth.c: Likewise.
13335         * tests/uniwidth/test-u8-width.c: Likewise.
13336         * tests/uniwidth/test-uc_width.c: Likewise.
13337         * config/srclist-update: Likewise.
13338         (fixlicense): Update to GPLv3+.
13339
13340         Change copyright notice from LGPLv2.1+ to LGPLv3+.
13341         * tests/test-tsearch.c: Change copyright notice.
13342
13343         Change copyright notice from LGPLv2.0+ to LGPLv3+.
13344         * lib/c-strcaseeq.h: Change copyright notice.
13345         * lib/streq.h: Likewise.
13346         * lib/uniconv.h: Likewise.
13347         * lib/uniconv/u-conv-from-enc.h: Likewise.
13348         * lib/uniconv/u-conv-to-enc.h: Likewise.
13349         * lib/uniconv/u-strconv-from-enc.h: Likewise.
13350         * lib/uniconv/u-strconv-to-enc.h: Likewise.
13351         * lib/uniconv/u16-conv-from-enc.c: Likewise.
13352         * lib/uniconv/u16-conv-to-enc.c: Likewise.
13353         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
13354         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
13355         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
13356         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
13357         * lib/uniconv/u32-conv-from-enc.c: Likewise.
13358         * lib/uniconv/u32-conv-to-enc.c: Likewise.
13359         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
13360         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
13361         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
13362         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
13363         * lib/uniconv/u8-conv-from-enc.c: Likewise.
13364         * lib/uniconv/u8-conv-to-enc.c: Likewise.
13365         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
13366         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
13367         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
13368         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
13369         * lib/uniname.h: Likewise.
13370         * lib/uniname/uniname.c: Likewise.
13371         * lib/unistdio.h: Likewise.
13372         * lib/unistdio/u-asnprintf.h: Likewise.
13373         * lib/unistdio/u-asprintf.h: Likewise.
13374         * lib/unistdio/u-printf-args.c: Likewise.
13375         * lib/unistdio/u-printf-args.h: Likewise.
13376         * lib/unistdio/u-printf-parse.h: Likewise.
13377         * lib/unistdio/u-snprintf.h: Likewise.
13378         * lib/unistdio/u-sprintf.h: Likewise.
13379         * lib/unistdio/u-vasprintf.h: Likewise.
13380         * lib/unistdio/u-vsnprintf.h: Likewise.
13381         * lib/unistdio/u-vsprintf.h: Likewise.
13382         * lib/unistdio/u16-asnprintf.c: Likewise.
13383         * lib/unistdio/u16-asprintf.c: Likewise.
13384         * lib/unistdio/u16-printf-parse.c: Likewise.
13385         * lib/unistdio/u16-snprintf.c: Likewise.
13386         * lib/unistdio/u16-sprintf.c: Likewise.
13387         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
13388         * lib/unistdio/u16-u16-asprintf.c: Likewise.
13389         * lib/unistdio/u16-u16-snprintf.c: Likewise.
13390         * lib/unistdio/u16-u16-sprintf.c: Likewise.
13391         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
13392         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
13393         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
13394         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
13395         * lib/unistdio/u16-vasnprintf.c: Likewise.
13396         * lib/unistdio/u16-vasprintf.c: Likewise.
13397         * lib/unistdio/u16-vsnprintf.c: Likewise.
13398         * lib/unistdio/u16-vsprintf.c: Likewise.
13399         * lib/unistdio/u32-asnprintf.c: Likewise.
13400         * lib/unistdio/u32-asprintf.c: Likewise.
13401         * lib/unistdio/u32-printf-parse.c: Likewise.
13402         * lib/unistdio/u32-snprintf.c: Likewise.
13403         * lib/unistdio/u32-sprintf.c: Likewise.
13404         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
13405         * lib/unistdio/u32-u32-asprintf.c: Likewise.
13406         * lib/unistdio/u32-u32-snprintf.c: Likewise.
13407         * lib/unistdio/u32-u32-sprintf.c: Likewise.
13408         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
13409         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
13410         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
13411         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
13412         * lib/unistdio/u32-vasnprintf.c: Likewise.
13413         * lib/unistdio/u32-vasprintf.c: Likewise.
13414         * lib/unistdio/u32-vsnprintf.c: Likewise.
13415         * lib/unistdio/u32-vsprintf.c: Likewise.
13416         * lib/unistdio/u8-asnprintf.c: Likewise.
13417         * lib/unistdio/u8-asprintf.c: Likewise.
13418         * lib/unistdio/u8-printf-parse.c: Likewise.
13419         * lib/unistdio/u8-snprintf.c: Likewise.
13420         * lib/unistdio/u8-sprintf.c: Likewise.
13421         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
13422         * lib/unistdio/u8-u8-asprintf.c: Likewise.
13423         * lib/unistdio/u8-u8-snprintf.c: Likewise.
13424         * lib/unistdio/u8-u8-sprintf.c: Likewise.
13425         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
13426         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
13427         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
13428         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
13429         * lib/unistdio/u8-vasnprintf.c: Likewise.
13430         * lib/unistdio/u8-vasprintf.c: Likewise.
13431         * lib/unistdio/u8-vsnprintf.c: Likewise.
13432         * lib/unistdio/u8-vsprintf.c: Likewise.
13433         * lib/unistdio/ulc-asnprintf.c: Likewise.
13434         * lib/unistdio/ulc-asprintf.c: Likewise.
13435         * lib/unistdio/ulc-printf-parse.c: Likewise.
13436         * lib/unistdio/ulc-snprintf.c: Likewise.
13437         * lib/unistdio/ulc-sprintf.c: Likewise.
13438         * lib/unistdio/ulc-vasnprintf.c: Likewise.
13439         * lib/unistdio/ulc-vasprintf.c: Likewise.
13440         * lib/unistdio/ulc-vsnprintf.c: Likewise.
13441         * lib/unistdio/ulc-vsprintf.c: Likewise.
13442         * lib/unistr.h: Likewise.
13443         * lib/unistr/u-cpy-alloc.h: Likewise.
13444         * lib/unistr/u-cpy.h: Likewise.
13445         * lib/unistr/u-endswith.h: Likewise.
13446         * lib/unistr/u-move.h: Likewise.
13447         * lib/unistr/u-set.h: Likewise.
13448         * lib/unistr/u-startswith.h: Likewise.
13449         * lib/unistr/u-stpcpy.h: Likewise.
13450         * lib/unistr/u-stpncpy.h: Likewise.
13451         * lib/unistr/u-strcat.h: Likewise.
13452         * lib/unistr/u-strcpy.h: Likewise.
13453         * lib/unistr/u-strcspn.h: Likewise.
13454         * lib/unistr/u-strdup.h: Likewise.
13455         * lib/unistr/u-strlen.h: Likewise.
13456         * lib/unistr/u-strncat.h: Likewise.
13457         * lib/unistr/u-strncpy.h: Likewise.
13458         * lib/unistr/u-strnlen.h: Likewise.
13459         * lib/unistr/u-strpbrk.h: Likewise.
13460         * lib/unistr/u-strspn.h: Likewise.
13461         * lib/unistr/u-strstr.h: Likewise.
13462         * lib/unistr/u-strtok.h: Likewise.
13463         * lib/unistr/u16-check.c: Likewise.
13464         * lib/unistr/u16-chr.c: Likewise.
13465         * lib/unistr/u16-cmp.c: Likewise.
13466         * lib/unistr/u16-cpy-alloc.c: Likewise.
13467         * lib/unistr/u16-cpy.c: Likewise.
13468         * lib/unistr/u16-endswith.c: Likewise.
13469         * lib/unistr/u16-mblen.c: Likewise.
13470         * lib/unistr/u16-mbsnlen.c: Likewise.
13471         * lib/unistr/u16-mbtouc-aux.c: Likewise.
13472         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
13473         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
13474         * lib/unistr/u16-mbtouc.c: Likewise.
13475         * lib/unistr/u16-mbtoucr.c: Likewise.
13476         * lib/unistr/u16-move.c: Likewise.
13477         * lib/unistr/u16-next.c: Likewise.
13478         * lib/unistr/u16-prev.c: Likewise.
13479         * lib/unistr/u16-set.c: Likewise.
13480         * lib/unistr/u16-startswith.c: Likewise.
13481         * lib/unistr/u16-stpcpy.c: Likewise.
13482         * lib/unistr/u16-stpncpy.c: Likewise.
13483         * lib/unistr/u16-strcat.c: Likewise.
13484         * lib/unistr/u16-strchr.c: Likewise.
13485         * lib/unistr/u16-strcmp.c: Likewise.
13486         * lib/unistr/u16-strcpy.c: Likewise.
13487         * lib/unistr/u16-strcspn.c: Likewise.
13488         * lib/unistr/u16-strdup.c: Likewise.
13489         * lib/unistr/u16-strlen.c: Likewise.
13490         * lib/unistr/u16-strmblen.c: Likewise.
13491         * lib/unistr/u16-strmbtouc.c: Likewise.
13492         * lib/unistr/u16-strncat.c: Likewise.
13493         * lib/unistr/u16-strncmp.c: Likewise.
13494         * lib/unistr/u16-strncpy.c: Likewise.
13495         * lib/unistr/u16-strnlen.c: Likewise.
13496         * lib/unistr/u16-strpbrk.c: Likewise.
13497         * lib/unistr/u16-strrchr.c: Likewise.
13498         * lib/unistr/u16-strspn.c: Likewise.
13499         * lib/unistr/u16-strstr.c: Likewise.
13500         * lib/unistr/u16-strtok.c: Likewise.
13501         * lib/unistr/u16-to-u32.c: Likewise.
13502         * lib/unistr/u16-to-u8.c: Likewise.
13503         * lib/unistr/u16-uctomb-aux.c: Likewise.
13504         * lib/unistr/u16-uctomb.c: Likewise.
13505         * lib/unistr/u32-check.c: Likewise.
13506         * lib/unistr/u32-chr.c: Likewise.
13507         * lib/unistr/u32-cmp.c: Likewise.
13508         * lib/unistr/u32-cpy-alloc.c: Likewise.
13509         * lib/unistr/u32-cpy.c: Likewise.
13510         * lib/unistr/u32-endswith.c: Likewise.
13511         * lib/unistr/u32-mblen.c: Likewise.
13512         * lib/unistr/u32-mbsnlen.c: Likewise.
13513         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
13514         * lib/unistr/u32-mbtouc.c: Likewise.
13515         * lib/unistr/u32-mbtoucr.c: Likewise.
13516         * lib/unistr/u32-move.c: Likewise.
13517         * lib/unistr/u32-next.c: Likewise.
13518         * lib/unistr/u32-prev.c: Likewise.
13519         * lib/unistr/u32-set.c: Likewise.
13520         * lib/unistr/u32-startswith.c: Likewise.
13521         * lib/unistr/u32-stpcpy.c: Likewise.
13522         * lib/unistr/u32-stpncpy.c: Likewise.
13523         * lib/unistr/u32-strcat.c: Likewise.
13524         * lib/unistr/u32-strchr.c: Likewise.
13525         * lib/unistr/u32-strcmp.c: Likewise.
13526         * lib/unistr/u32-strcpy.c: Likewise.
13527         * lib/unistr/u32-strcspn.c: Likewise.
13528         * lib/unistr/u32-strdup.c: Likewise.
13529         * lib/unistr/u32-strlen.c: Likewise.
13530         * lib/unistr/u32-strmblen.c: Likewise.
13531         * lib/unistr/u32-strmbtouc.c: Likewise.
13532         * lib/unistr/u32-strncat.c: Likewise.
13533         * lib/unistr/u32-strncmp.c: Likewise.
13534         * lib/unistr/u32-strncpy.c: Likewise.
13535         * lib/unistr/u32-strnlen.c: Likewise.
13536         * lib/unistr/u32-strpbrk.c: Likewise.
13537         * lib/unistr/u32-strrchr.c: Likewise.
13538         * lib/unistr/u32-strspn.c: Likewise.
13539         * lib/unistr/u32-strstr.c: Likewise.
13540         * lib/unistr/u32-strtok.c: Likewise.
13541         * lib/unistr/u32-to-u16.c: Likewise.
13542         * lib/unistr/u32-to-u8.c: Likewise.
13543         * lib/unistr/u32-uctomb.c: Likewise.
13544         * lib/unistr/u8-check.c: Likewise.
13545         * lib/unistr/u8-chr.c: Likewise.
13546         * lib/unistr/u8-cmp.c: Likewise.
13547         * lib/unistr/u8-cpy-alloc.c: Likewise.
13548         * lib/unistr/u8-cpy.c: Likewise.
13549         * lib/unistr/u8-endswith.c: Likewise.
13550         * lib/unistr/u8-mblen.c: Likewise.
13551         * lib/unistr/u8-mbsnlen.c: Likewise.
13552         * lib/unistr/u8-mbtouc-aux.c: Likewise.
13553         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
13554         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
13555         * lib/unistr/u8-mbtouc.c: Likewise.
13556         * lib/unistr/u8-mbtoucr.c: Likewise.
13557         * lib/unistr/u8-move.c: Likewise.
13558         * lib/unistr/u8-next.c: Likewise.
13559         * lib/unistr/u8-prev.c: Likewise.
13560         * lib/unistr/u8-set.c: Likewise.
13561         * lib/unistr/u8-startswith.c: Likewise.
13562         * lib/unistr/u8-stpcpy.c: Likewise.
13563         * lib/unistr/u8-stpncpy.c: Likewise.
13564         * lib/unistr/u8-strcat.c: Likewise.
13565         * lib/unistr/u8-strchr.c: Likewise.
13566         * lib/unistr/u8-strcmp.c: Likewise.
13567         * lib/unistr/u8-strcpy.c: Likewise.
13568         * lib/unistr/u8-strcspn.c: Likewise.
13569         * lib/unistr/u8-strdup.c: Likewise.
13570         * lib/unistr/u8-strlen.c: Likewise.
13571         * lib/unistr/u8-strmblen.c: Likewise.
13572         * lib/unistr/u8-strmbtouc.c: Likewise.
13573         * lib/unistr/u8-strncat.c: Likewise.
13574         * lib/unistr/u8-strncmp.c: Likewise.
13575         * lib/unistr/u8-strncpy.c: Likewise.
13576         * lib/unistr/u8-strnlen.c: Likewise.
13577         * lib/unistr/u8-strpbrk.c: Likewise.
13578         * lib/unistr/u8-strrchr.c: Likewise.
13579         * lib/unistr/u8-strspn.c: Likewise.
13580         * lib/unistr/u8-strstr.c: Likewise.
13581         * lib/unistr/u8-strtok.c: Likewise.
13582         * lib/unistr/u8-to-u16.c: Likewise.
13583         * lib/unistr/u8-to-u32.c: Likewise.
13584         * lib/unistr/u8-uctomb-aux.c: Likewise.
13585         * lib/unistr/u8-uctomb.c: Likewise.
13586         * lib/unitypes.h: Likewise.
13587         * lib/uniwidth.h: Likewise.
13588         * lib/uniwidth/cjk.h: Likewise.
13589         * lib/uniwidth/u16-strwidth.c: Likewise.
13590         * lib/uniwidth/u16-width.c: Likewise.
13591         * lib/uniwidth/u32-strwidth.c: Likewise.
13592         * lib/uniwidth/u32-width.c: Likewise.
13593         * lib/uniwidth/u8-strwidth.c: Likewise.
13594         * lib/uniwidth/u8-width.c: Likewise.
13595         * lib/uniwidth/width.c: Likewise.
13596
13597 2007-10-07  Bruno Haible  <bruno@clisp.org>
13598
13599         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
13600         The file is still under LGPL (see modules/inttypes).
13601
13602 2007-10-06  Bruno Haible  <bruno@clisp.org>
13603
13604         * modules/trunc (Dependencies): Add 'extensions'.
13605         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
13606         Reported by Ben Pfaff <blp@gnu.org>.
13607
13608 2007-10-06  Bruno Haible  <bruno@clisp.org>
13609
13610         * modules/freopen-tests: New file.
13611         * tests/test-freopen.c: New file.
13612
13613         * modules/fopen-tests: New file.
13614         * tests/test-fopen.c: New file.
13615
13616         * modules/fopen: New file.
13617         * lib/fopen.c: New file.
13618         * m4/fopen.m4: New file.
13619         * modules/freopen: New file.
13620         * lib/freopen.c: New file.
13621         * m4/freopen.m4: New file.
13622         * lib/stdio.in.h (fopen, freopen): New declarations.
13623         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
13624         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
13625         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
13626         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
13627         * doc/functions/fopen.texi: Mention the 'fopen' module.
13628         * doc/functions/freopen.texi: Mention the 'freopen' module.
13629
13630 2007-10-06  Bruno Haible  <bruno@clisp.org>
13631
13632         * modules/open-tests: New file.
13633         * tests/test-open.c: New file.
13634
13635         * modules/open: New file.
13636         * lib/open.c: New file.
13637         * m4/open.m4: New file.
13638         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
13639         lib/open.c does.
13640         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
13641         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
13642         macros.
13643         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
13644         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
13645         REPLACE_OPEN.
13646         * doc/functions/open.texi: Mention the 'open' module.
13647
13648 2007-10-04  Bruno Haible  <bruno@clisp.org>
13649
13650         * modules/ceill-tests: New file.
13651         * tests/test-ceill.c: New file.
13652
13653         * modules/ceill: New file.
13654         * lib/ceill.c: Replace entire file.
13655         * m4/ceill.m4: New file.
13656         * lib/math.in.h (ceill): Replace declaration.
13657         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
13658         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
13659         * doc/functions/ceill.texi: Mention the 'ceill' module.
13660         * modules/mathl (Files): Remove lib/ceill.c.
13661         (Depends-on): Add ceill.
13662
13663 2007-10-04  Bruno Haible  <bruno@clisp.org>
13664
13665         * modules/ceilf-tests: New file.
13666         * tests/test-ceilf.c: New file.
13667
13668         * modules/ceilf: New file.
13669         * lib/ceil.c: New file.
13670         * lib/ceilf.c: New file.
13671         * m4/ceilf.m4: New file.
13672         * lib/math.in.h (ceilf): New declaration.
13673         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
13674         HAVE_DECL_CEILF.
13675         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
13676         HAVE_DECL_CEILF.
13677         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
13678
13679 2007-10-04  Bruno Haible  <bruno@clisp.org>
13680
13681         * modules/floorl-tests: New file.
13682         * tests/test-floorl.c: New file.
13683
13684         * modules/floorl: New file.
13685         * lib/floorl.c: Replace entire file.
13686         * m4/floorl.m4: New file.
13687         * lib/math.in.h (floorl): Replace declaration.
13688         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
13689         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
13690         * doc/functions/floorl.texi: Mention the 'floorl' module.
13691         * modules/mathl (Files): Remove lib/floorl.c.
13692         (Depends-on): Add floorl.
13693
13694 2007-10-04  Bruno Haible  <bruno@clisp.org>
13695
13696         * modules/floorf-tests: New file.
13697         * tests/test-floorf.c: New file.
13698
13699         * modules/floorf: New file.
13700         * lib/floor.c: New file.
13701         * lib/floorf.c: New file.
13702         * m4/floorf.m4: New file.
13703         * lib/math.in.h (floorf): New declaration.
13704         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
13705         HAVE_DECL_FLOORF.
13706         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
13707         HAVE_DECL_FLOORF.
13708         * doc/functions/floorf.texi: Mention the 'floorf' module.
13709
13710 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
13711             Bruno Haible  <bruno@clisp.org>
13712
13713         Advertise for the Git server instead of the CVS server.
13714         * doc/gnulib-intro.texi (Steady Development): Mention the Git
13715         repository instead of the CVS one.
13716         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
13717         about all VCS systems generically.
13718         * doc/gnulib.texi (Introduction): Capitalize `Git'.
13719
13720 2007-10-04  Bruno Haible  <bruno@clisp.org>
13721
13722         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
13723         means.
13724         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
13725
13726 2007-10-04  Bruno Haible  <bruno@clisp.org>
13727
13728         * modules/truncl-tests: New file.
13729         * tests/test-truncl.c: New file.
13730
13731         * modules/truncl: New file.
13732         * lib/truncl.c: New file.
13733         * m4/truncl.m4: New file.
13734         * lib/math.in.h (truncl): New declaration.
13735         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
13736         HAVE_DECL_TRUNCL.
13737         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
13738         HAVE_DECL_TRUNCL.
13739         * doc/functions/truncl.texi: Mention the 'truncl' module.
13740
13741 2007-10-04  Bruno Haible  <bruno@clisp.org>
13742
13743         * modules/truncf-tests: New file.
13744         * tests/test-truncf.c: New file.
13745
13746         * modules/truncf: New file.
13747         * lib/trunc.c: Make paramerizable through USE_* macros.
13748         * lib/truncf.c: New file.
13749         * m4/truncf.m4: New file.
13750         * lib/math.in.h (truncf): New declaration.
13751         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
13752         HAVE_DECL_TRUNCF.
13753         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
13754         HAVE_DECL_TRUNCF.
13755         * doc/functions/truncf.texi: Mention the 'truncf' module.
13756
13757 2007-10-03  Bruno Haible  <bruno@clisp.org>
13758
13759         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
13760         augmentation also for tests modules.
13761         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
13762         * modules/atexit-tests (Makefile.am): Likewise.
13763         * modules/binary-io-tests (Makefile.am): Likewise.
13764         * modules/c-strcase-tests (Makefile.am): Likewise.
13765         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
13766         * modules/canonicalize-tests (Makefile.am): Likewise.
13767         * modules/closein-tests (Makefile.am): Likewise.
13768         * modules/fprintf-posix-tests (Makefile.am): Likewise.
13769         * modules/freadahead-tests (Makefile.am): Likewise.
13770         * modules/fseek-tests (Makefile.am): Likewise.
13771         * modules/fseeko-tests (Makefile.am): Likewise.
13772         * modules/ftell-tests (Makefile.am): Likewise.
13773         * modules/ftello-tests (Makefile.am): Likewise.
13774         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
13775         * modules/isnanl-tests (Makefile.am): Likewise.
13776         * modules/lseek-tests (Makefile.am): Likewise.
13777         * modules/mbscasecmp-tests (Makefile.am): Likewise.
13778         * modules/mbscasestr-tests (Makefile.am): Likewise.
13779         * modules/mbschr-tests (Makefile.am): Likewise.
13780         * modules/mbscspn-tests (Makefile.am): Likewise.
13781         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
13782         * modules/mbspbrk-tests (Makefile.am): Likewise.
13783         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
13784         * modules/mbsrchr-tests (Makefile.am): Likewise.
13785         * modules/mbsspn-tests (Makefile.am): Likewise.
13786         * modules/mbsstr-tests (Makefile.am): Likewise.
13787         * modules/printf-posix-tests (Makefile.am): Likewise.
13788         * modules/snprintf-posix-tests (Makefile.am): Likewise.
13789         * modules/sprintf-posix-tests (Makefile.am): Likewise.
13790         * modules/tsearch-tests (Makefile.am): Likewise.
13791         * modules/uniname/uniname-tests (Makefile.am): Likewise.
13792         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
13793         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
13794         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
13795         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
13796         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
13797         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
13798         * modules/vprintf-posix-tests (Makefile.am): Likewise.
13799         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
13800         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
13801         * modules/xstrtoimax-tests (Makefile.am): Likewise.
13802         * modules/xstrtol-tests (Makefile.am): Likewise.
13803         * modules/xstrtoumax-tests (Makefile.am): Likewise.
13804         * modules/yesno-tests (Makefile.am): Likewise.
13805
13806 2007-10-03  Bruno Haible  <bruno@clisp.org>
13807
13808         * modules/trunc-tests: New file.
13809         * tests/test-trunc.c: New file.
13810
13811         * modules/trunc: New file.
13812         * lib/trunc.c: New file.
13813         * m4/trunc.m4: New file.
13814         * lib/math.in.h (trunc): New declaration.
13815         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
13816         HAVE_DECL_TRUNC.
13817         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
13818         HAVE_DECL_TRUNC.
13819         * doc/functions/trunc.texi: Mention the 'trunc' module.
13820
13821 2007-10-03  Bruno Haible  <bruno@clisp.org>
13822
13823         * tests/test-fpending.c: New file, mostly copied
13824         from coreutils/lib/t-fpending.c.
13825         * modules/fpending-tests: New file.
13826
13827 2007-10-03  Bruno Haible  <bruno@clisp.org>
13828
13829         Port the stdio extensions to QNX (untested).
13830         * lib/fseterr.c (fseterr): Add support for QNX.
13831         * lib/fbufmode.c (fbufmode): Likewise.
13832         * lib/freadable.c (freadable): Likewise.
13833         * lib/fwritable.c (fwritable): Likewise.
13834         * lib/freading.c (freading): Likewise.
13835         * lib/fwriting.c (fwriting): Likewise.
13836         * lib/freadahead.c (freadahed): Likewise.
13837         * lib/fpurge.c (fpurge): Likewise.
13838         * lib/fseeko.c (rpl_fseeko): Likewise.
13839
13840 2007-10-03  Bruno Haible  <bruno@clisp.org>
13841             Jim Meyering  <jim@meyering.net>
13842             Eric Blake  <ebb9@byu.net>
13843
13844         * doc/relocatable.texi: Use @command instead of @program.
13845
13846 2007-10-02  Jim Meyering  <jim@meyering.net>
13847
13848         Perform one more "_.h" -> ".in.h" substitution.
13849         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
13850         instead of unistd_.h here, too.
13851
13852 2007-10-01  Bruno Haible  <bruno@clisp.org>
13853
13854         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
13855         Needed for the alloca-opt module.
13856
13857 2007-09-30  Bruno Haible  <bruno@clisp.org>
13858
13859         * lib/alloca.in.h: Renamed from lib/alloca_.h.
13860         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
13861         alloca_.h.
13862         * lib/argz.in.h: Renamed from lib/argz_.h.
13863         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
13864         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
13865         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
13866         byteswap_.h.
13867         * lib/dirent.in.h: Renamed from lib/dirent_.h.
13868         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
13869         dirent_.h.
13870         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
13871         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
13872         fcntl_.h.
13873         * lib/float.in.h: Renamed from lib/float_.h.
13874         * modules/float (Files, Makefile.am): Use float.in.h instead of
13875         float_.h.
13876         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
13877         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
13878         fnmatch_.h.
13879         * lib/getopt.in.h: Renamed from lib/getopt_.h.
13880         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
13881         getopt_.h.
13882         * lib/glob.in.h: Renamed from lib/glob_.h.
13883         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
13884         * lib/iconv.in.h: Renamed from lib/iconv_.h.
13885         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
13886         iconv_.h.
13887         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
13888         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
13889         inttypes_.h.
13890         * lib/locale.in.h: Renamed from lib/locale_.h.
13891         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
13892         locale_.h.
13893         * lib/math.in.h: Renamed from lib/math_.h.
13894         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
13895         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
13896         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
13897         of netinet_in_.h. Add dependency.
13898         * lib/poll.in.h: Renamed from lib/poll_.h.
13899         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
13900         * lib/search.in.h: Renamed from lib/search_.h.
13901         * modules/search (Files, Makefile.am): Use search.in.h instead of
13902         search_.h.
13903         * lib/signal.in.h: Renamed from lib/signal_.h.
13904         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
13905         _signal.h.
13906         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
13907         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
13908         stdbool_.h.
13909         * lib/stdint.in.h: Renamed from lib/stdint_.h.
13910         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
13911         stdint_.h.
13912         * lib/stdio.in.h: Renamed from lib/stdio_.h.
13913         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
13914         stdio_.h.
13915         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
13916         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
13917         stdlib_.h.
13918         * lib/string.in.h: Renamed from lib/string_.h.
13919         * modules/string (Files, Makefile.am): Use string.in.h instead of
13920         string_.h.
13921         * doc/gnulib-tool.texi (Initial import): Update.
13922         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
13923         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
13924         of sys_select_.h. Add dependency.
13925         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
13926         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
13927         of sys_socket_.h.
13928         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
13929         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
13930         sys_stat_.h.
13931         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
13932         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
13933         sys_time_.h.
13934         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
13935         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
13936         sysexits_.h.
13937         * lib/time.in.h: Renamed from lib/time_.h.
13938         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
13939         * lib/unistd.in.h: Renamed from lib/unistd_.h.
13940         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
13941         unistd_.h.
13942         * lib/wchar.in.h: Renamed from lib/wchar_.h.
13943         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
13944         wchar_.h.
13945         * lib/wctype.in.h: Renamed from lib/wctype_.h.
13946         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
13947         wctype_.h.
13948         * build-aux/bootstrap (slurp): Update.
13949         * lib/.cppi-disable: Update.
13950
13951 2007-09-30  Bruno Haible  <bruno@clisp.org>
13952
13953         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
13954         Needed on BeOS.
13955
13956 2007-09-30  Bruno Haible  <bruno@clisp.org>
13957
13958         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
13959
13960 2007-09-29  Bruno Haible  <bruno@clisp.org>
13961
13962         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
13963
13964 2007-09-29  Bruno Haible  <bruno@clisp.org>
13965
13966         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
13967         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
13968         * build-aux/install-reloc: Compile also areadlink.c.
13969         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
13970
13971 2007-09-29  Bruno Haible  <bruno@clisp.org>
13972
13973         * gnulib-tool (func_emit_initmacro_done): Indentation.
13974
13975 2007-09-29  Bruno Haible  <bruno@clisp.org>
13976
13977         * README: Add CVS checkout update instructions.
13978         Info from Bob Proulx <bob@proulx.com>.
13979
13980 2007-09-28  Eric Blake  <ebb9@byu.net>
13981
13982         Provide move-if-change.
13983         * build-aux/move-if-change: New file, based on best practice
13984         rather than any canonical upstream location.
13985
13986 2007-09-28  Jim Meyering  <jim@meyering.net>
13987
13988         Fix canonicalize loop-detection corner case.
13989         Do not attempt to stat the symlink values stored via seen_triple.
13990         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
13991         on linux-2.6.18, (but not 2.6.22).
13992         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
13993         triple_compare.  The former compares dev,ino,filename, while the latter
13994         would actually stat dirname(filename) when dev and ino were equal.
13995         * lib/hash-triple.c: Install <string.h>.
13996         (STREQ): Define.
13997         (triple_compare_ino_str): New function.
13998         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
13999
14000 2007-09-28  Eric Blake  <ebb9@byu.net>
14001
14002         Enforce that AC_REPLACE_FUNCS files exist.
14003         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
14004         override check for typos.
14005
14006         Fix test-closein on Solaris 10.
14007         * tests/test-closein.c (main): Don't assume stdin can be inherited
14008         closed on all systems.
14009         * tests/test-closein.sh: Likewise.
14010         Reported by Piotr Tarnowski.
14011
14012 2007-09-28  Jim Meyering  <jim@meyering.net>
14013
14014         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
14015
14016 2007-09-27  Jim Meyering  <jim@meyering.net>
14017
14018         canonicalize: Avoid a false-positive cycle failure.
14019         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
14020         Sort.  Remove cycle-check.
14021         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
14022         not cycle-check.h.
14023         (seen_triple): New function.
14024         (canonicalize_filename_mode): Use it instead of cycle-check.
14025         * tests/test-canonicalize.c: Add a test for this bug.
14026         * tests/test-canonicalize.sh: Set up and run the test.
14027
14028         New module, file-set, from coreutils.
14029         * modules/file-set: Define it.
14030         * lib/file-set.c, lib/file-set.h: Implement.
14031
14032         New module, hash-triple, from coreutils.
14033         * modules/hash-triple: Define it.
14034         * lib/hash-triple.c, lib/hash-triple.h: Implement.
14035
14036 2007-09-25  Eric Blake  <ebb9@byu.net>
14037
14038         Fix strerror on Interix.
14039         * lib/string_.h (strerror): Declare replacement.
14040         * doc/functions/strerror.texi (strerror): Document the Interix
14041         shortcoming.
14042         * modules/string (Makefile.am): Support new hooks.
14043         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
14044         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
14045         gl_FUNC_STRERROR_SEPARATE.
14046         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
14047         * lib/strerror.c (rpl_strerror): Provide replacement.
14048         * modules/strerror (Depends-on): Add string.
14049         (configure.ac): Detect use of module.
14050         * tests/test-strerror.c: New file.
14051         * modules/strerror-tests: New test module.
14052         * modules/argp (Depends-on): Add strerror.
14053         * modules/error (Depends-on): Likewise.
14054         Reported by Martin Koeppe.
14055
14056 2007-09-24  Bruno Haible  <bruno@clisp.org>
14057
14058         * README: Update git instructions.
14059
14060 2007-09-24  Eric Blake  <ebb9@byu.net>
14061
14062         Revert fpending breakage from 2007-09-08.
14063         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
14064         __fpending.c.
14065
14066 2007-09-24  Jim Meyering  <jim@meyering.net>
14067
14068         filenamecat.c: Add a test.
14069         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
14070         showing how the function works when DIR is the empty string.
14071
14072 2007-09-21  Simon Josefsson  <simon@josefsson.org>
14073
14074         * tests/test-canonicalize.sh: Turn on executable bit.
14075
14076 2007-09-19  Eric Blake  <ebb9@byu.net>
14077
14078         * README: Update CVS instructions.
14079
14080 2007-09-18  Bruno Haible  <bruno@clisp.org>
14081
14082         * modules/areadlink: New file.
14083         * lib/areadlink.h (areadlink): New declaration.
14084         * lib/areadlink.c: New file, based on lib/xreadlink.c.
14085
14086 2007-09-17  Jim Meyering  <jim@meyering.net>
14087
14088         * lib/savewd.c (ESTALE) [!defined]: Define.
14089         Reported to be required on Interix by Martin Koeppe.
14090
14091 2007-09-17  Bruno Haible  <bruno@clisp.org>
14092
14093         * gnulib-tool (func_version): Use $version.
14094
14095 2007-09-16  Bruno Haible  <bruno@clisp.org>
14096
14097         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
14098         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
14099         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
14100         Reported by Greg Schafer <gschafer@zip.com.au>.
14101
14102 2007-09-15  Bruno Haible  <bruno@clisp.org>
14103
14104         * gnulib-tool (sed): Try a little harder to make bash understand the
14105         alias.
14106         Reported by Bruce Korb <bruce.korb@gmail.com>.
14107
14108 2007-09-13  Eric Blake  <ebb9@byu.net>
14109
14110         * ChangeLog: Remove conflict markers.
14111
14112 2007-09-13  Simon Josefsson  <simon@josefsson.org>
14113
14114         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
14115         Reported by Bruno Haible <bruno@clisp.org>.
14116
14117 2007-09-12  Bruno Haible  <bruno@clisp.org>
14118
14119         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
14120         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
14121         is not defined.
14122
14123 2007-09-12  Eric Blake  <ebb9@byu.net>
14124
14125         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
14126         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
14127         Autoconf definition.
14128         * modules/euidaccess (Depends-on): Add extensions, for
14129         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
14130         * modules/fnmatch (Depends-on): Likewise.
14131         * modules/getaddrinfo (Depends-on): Likewise.
14132         * modules/getdelim (Depends-on): Likewise.
14133         * modules/getline (Depends-on): Likewise.
14134         * modules/getsubopt (Depends-on): Likewise.
14135         * modules/gettext (Depends-on): Likewise.
14136         * modules/group-member (Depends-on): Likewise.
14137         * modules/mbchar (Depends-on): Likewise.
14138         * modules/memmem (Depends-on): Likewise.
14139         * modules/mempcpy (Depends-on): Likewise.
14140         * modules/memrchr (Depends-on): Likewise.
14141         * modules/pagealign_alloc (Depends-on): Likewise.
14142         * modules/readutmp (Depends-on): Likewise.
14143         * modules/stpcpy (Depends-on): Likewise.
14144         * modules/stpncpy (Depends-on): Likewise.
14145         * modules/strchrnul (Depends-on): Likewise.
14146         * modules/strndup (Depends-on): Likewise.
14147         * modules/strsep (Depends-on): Likewise.
14148         * modules/strverscmp (Depends-on): Likewise.
14149         * modules/vasprintf (Depends-on): Likewise.
14150         * modules/wcwidth (Depends-on): Likewise.
14151         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
14152         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
14153         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
14154         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
14155         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
14156         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
14157         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
14158         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
14159         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
14160         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
14161         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
14162         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
14163         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
14164         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
14165         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
14166         * m4/readutmp.m4 (gl_READUTMP): Likewise.
14167         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
14168         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
14169         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
14170         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
14171         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14172         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
14173         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
14174         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
14175         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
14176         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
14177         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
14178         so that lock.m4 can be used in gettext without extensions module.
14179
14180 2007-09-11  Bruno Haible  <bruno@clisp.org>
14181
14182         * m4/isc-posix.m4: Remove file.
14183         Suggested by Eric Blake.
14184
14185 2007-09-11  Eric Blake  <ebb9@byu.net>
14186
14187         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
14188
14189 2007-09-10  Bruno Haible  <bruno@clisp.org>
14190
14191         * posix-modules: Fix typo in error message.
14192         Reported by Matt <mkraai@beckman.com>.
14193
14194 2007-09-09  Bruno Haible  <bruno@clisp.org>
14195
14196         * doc/functions/getdelim.texi: Update list of platforms lacking the
14197         function.
14198         * doc/functions/getline.texi: Likewise.
14199
14200 2007-09-09  Jim Meyering  <jim@meyering.net>
14201
14202         * lib/hash.c (hash_initialize): Detect calloc failure.
14203         Reported by Bruno Haible.
14204
14205 2007-09-09  Bruno Haible  <bruno@clisp.org>
14206
14207         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
14208         malloc or realloc fails.
14209
14210 2007-09-09  Bruno Haible  <bruno@clisp.org>
14211
14212         * modules/getcwd (Depends-on): Add malloc-posix.
14213         * modules/glob (Depends-on): Likewise.
14214         * modules/putenv (Depends-on): Likewise.
14215         * modules/strdup (Depends-on): Likewise.
14216         * modules/getdelim (Depends-on): Add realloc-posix.
14217         * modules/read-file (Depends-on): Likewise.
14218
14219 2007-09-09  Bruno Haible  <bruno@clisp.org>
14220
14221         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
14222         (gl_FUNC_MALLOC_POSIX): Require it.
14223         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
14224         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
14225         * modules/realloc (Files): Add m4/malloc.m4.
14226         * modules/calloc (Files): Likewise.
14227
14228 2007-09-09  Bruno Haible  <bruno@clisp.org>
14229
14230         * modules/malloc-posix: New file.
14231         * modules/malloc (Depends-on): Add malloc-posix.
14232         * lib/malloc.c: Include errno.h.
14233         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
14234         and a POSIX-compatible malloc into a single function. Set ENOMEM
14235         when returning NULL.
14236         * m4/malloc.m4: New file.
14237         * doc/functions/malloc.texi: Mention the malloc-posix module.
14238         * lib/stdlib_.h (malloc): New declaration.
14239         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14240         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
14241         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
14242         and HAVE_MALLOC_POSIX.
14243
14244 2007-09-09  Bruno Haible  <bruno@clisp.org>
14245
14246         * modules/realloc-posix: New file.
14247         * modules/realloc (Depends-on): Add realloc-posix.
14248         * lib/realloc.c: Include errno.h.
14249         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
14250         and a POSIX-compatible realloc into a single function. Set ENOMEM
14251         when returning NULL.
14252         * m4/realloc.m4: New file.
14253         * doc/functions/realloc.texi: Mention the realloc-posix module.
14254         * lib/stdlib_.h (realloc): New declaration.
14255         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14256         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
14257         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
14258         and HAVE_REALLOC_POSIX.
14259
14260 2007-09-09  Bruno Haible  <bruno@clisp.org>
14261
14262         * modules/calloc-posix: New file.
14263         * modules/calloc (Depends-on): Add calloc-posix.
14264         * lib/calloc.c: Include errno.h.
14265         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
14266         and a POSIX-compatible calloc into a single function. Set ENOMEM
14267         when returning NULL.
14268         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
14269         * doc/functions/calloc.texi: Mention the calloc-posix module.
14270         * lib/stdlib_.h (calloc): New declaration.
14271         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
14272         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
14273         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
14274         and HAVE_CALLOC_POSIX.
14275
14276 2007-09-09  Bruno Haible  <bruno@clisp.org>
14277
14278         Allow for modules to show an arbitrary notice.
14279         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
14280         * gnulib-tool: New option --extract-notice.
14281         (func_usage): Document it.
14282         (sed_extract_prog): Update.
14283         (func_get_notice): New function.
14284         (func_modules_notice): New function.
14285         (func_import, func_create_testdir): Invoke it.
14286         Suggested by Jim Meyering.
14287
14288 2007-09-09  Bruno Haible  <bruno@clisp.org>
14289
14290         * gnulib-tool: New options --verbose, --quiet.
14291         (func_usage): Document them.
14292         (verbose): New variable.
14293         (func_execute_command): New function.
14294         (func_import): Don't show the module list and the file list if
14295         $verbose < 0.
14296         (func_create_testdir): Likewise. Use func_execute_command.
14297         (func_create_megatestdir): Use func_execute_command.
14298
14299 2007-09-08  Bruno Haible  <bruno@clisp.org>
14300
14301         * gnulib-tool (func_import): Prefer rsync over wget when available,
14302         for fetching the PO files.
14303
14304 2007-09-08  Bruno Haible  <bruno@clisp.org>
14305
14306         * posix-modules: New file. Portions copied from gnulib-tool.
14307         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
14308
14309 2007-09-08  Jim Meyering  <jim@meyering.net>
14310
14311         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
14312         * lib/fpending.h: Rename from __fpending.h.
14313         * lib/fpending.c: Rename from __fpending.c.
14314         Include "fpending.h", not "__fpending.h".
14315         * lib/__fpending.h, lib/__fpending.c: Remove files.
14316         * modules/fpending (Files): Reflect new file names.
14317         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
14318
14319 2007-09-08  Bruno Haible  <bruno@clisp.org>
14320
14321         * m4/inttypes-h.m4: Remove stub file.
14322
14323 2007-09-07  Simon Josefsson  <simon@josefsson.org>
14324
14325         * doc/headers/stdint.texi: Discuss #include_next issue.
14326
14327 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
14328
14329         * build-aux/bootstrap: Remove obsolete comment about wget --help.
14330
14331 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14332
14333         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
14334         in variable name.
14335
14336 2007-09-03  Jim Meyering  <jim@meyering.net>
14337
14338         New module: git-version-gen.
14339         * modules/git-version-gen: New file.
14340
14341         Import changes from coreutils for bootstrap script.
14342
14343         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
14344
14345         bootstrap: uses rsync to download the .po files
14346         * build-aux/bootstrap (po_download_command_format): New global.
14347         (download_po_files): Use rsync.
14348         (update_po_files): Don't remove .po files after download,
14349         so future rsync runs can take advantage of the copies.
14350
14351         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
14352
14353         Solve the unnecessary-.po-file-regeneration problem once and for all.
14354         * build-aux/bootstrap (download_po_files): New function, renamed from
14355         get_translations.  Now, downloads, but doesn't update LINGUAS.
14356         (update_po_files): New function.
14357
14358         bootstrap: Ignore more.
14359         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
14360         uniwidth to e.g., lib/.gitignore.
14361         (slurp): Handle the sys_stat_.h -> sys mapping, too.
14362
14363         * build-aux/bootstrap: New setting: vc_ignore.
14364         (insert_sorted_if_absent): Create $file if absent.
14365         Adapt to new, possibly empty, list: $vc_ignore.
14366
14367         bootstrap: generate more ignorable names
14368         * build-aux/bootstrap (slurp): When generating ignorable names,
14369         also map .sin to .sed, .gperf to .c, and .y to .c.
14370
14371 2007-09-03  Jim Meyering  <jim@meyering.net>
14372
14373         * build-aux/git-version-gen: New file, from coreutils.  For details, see
14374         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
14375
14376 2007-09-02  Bruno Haible  <bruno@clisp.org>
14377
14378         Fix mis-recognition of 'mcs' on QNX 6.
14379         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
14380         output contains the string "Mono".
14381         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
14382         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
14383
14384 2007-09-01  Bruno Haible  <bruno@clisp.org>
14385
14386         Fix collision between uniwidth/* and linebreak modules.
14387         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
14388         u32_width): Remove declarations.
14389         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
14390         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
14391         streq3, streq2, streq1, streq0): Remove functions.
14392         (STREQ): Remove macro.
14393         (is_cjk_encoding): Remove function.
14394         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
14395         (uc_width, u8_width, u16_width, u32_width): Remove functions.
14396         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
14397         * NEWS: Document the change.
14398
14399 2007-09-01  Bruno Haible  <bruno@clisp.org>
14400
14401         * lib/streq.h: Add double-inclusion guard.
14402
14403 2007-09-01  Karl Berry  <karl@gnu.org>
14404
14405         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
14406
14407 2007-08-28  Jim Meyering  <jim@meyering.net>
14408
14409         Rename mreadlink_with_size to areadlink_with_size.
14410         * NEWS: Document the change.
14411         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
14412         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
14413         * lib/mreadlink.h: Rename this to...
14414         * lib/areadlink.h: ...this.
14415         * modules/mreadlink-with-size: Rename this to...
14416         * modules/areadlink-with-size: ...this.
14417         * lib/canonicalize.c: Reflect the renaming.
14418         * modules/canonicalize: Likewise.
14419
14420 2007-08-26  Bruno Haible  <bruno@clisp.org>
14421
14422         * gnulib-tool (func_import): When deciding which files to remove,
14423         consider also dangling symbolic links.
14424         Reported by Eric Blake.
14425
14426 2007-08-26  Bruno Haible  <bruno@clisp.org>
14427
14428         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
14429
14430 2007-08-23  Simon Josefsson  <simon@josefsson.org>
14431
14432         * lib/readline.c: Don't include getline.h, the prototype is now
14433         found in stdio.h.
14434
14435 2007-08-23  Jim Meyering  <jim@meyering.net>
14436
14437         Getdelim touchup.
14438         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
14439         around the funlockfile call, since funlockfile never sets errno.
14440         Don't set errno upon failed realloc.
14441
14442 2007-08-22  Eric Blake  <ebb9@byu.net>
14443
14444         Getline touchups.
14445         * lib/getdelim.c (getdelim): Revert regression that required *n to
14446         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
14447         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
14448         getdelim, rather than whether implementation is missing.
14449         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
14450         * lib/stdio_.h (getline): Also declare if replacement is
14451         required.
14452         * doc/functions/getdelim.texi: New file.
14453         * doc/functions/getline.texi: Likewise.
14454         * doc/gnulib.texi (Function Substitutes): Add new files.
14455         Reported by Bruno Haible.
14456
14457 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
14458
14459         * users.txt: Add Guile.
14460
14461 2007-08-22  Eric Blake  <ebb9@byu.net>
14462
14463         * tests/test-getdelim.c (main): Use remove, not unlink.
14464         * tests/test-getline.c (main): Likewise.
14465
14466         Move getline and getdelim into stdio.h, per POSIX 200x.
14467         * modules/getline (Files): Remove getline.h.
14468         (Depends-on): Add stdio.
14469         (configure.ac): Add module indicator.
14470         * modules/getdelim (Files): Remove getdelim.h.
14471         (Depends-on): Add stdio.
14472         (configure.ac): Add module indicator.
14473         * modules/stdio (Makefile.am): Work with new indicators.
14474         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
14475         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
14476         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
14477         * lib/getdelim.h: Delete.
14478         * lib/getline.h: Delete.
14479         * lib/stdio_.h (getdelim, getline): Declare.
14480         * modules/getdelim-tests: New module.
14481         * modules/getline-tests: Likewise.
14482         * tests/test-getdelim.c: New file.
14483         * tests/test-getline.c: Likewise.
14484         * NEWS: Document the change.
14485         * lib/getline.c: Update choice of header.
14486         * lib/csharpcomp.c: Likewise.
14487         * lib/getpass.c: Likewise.
14488         * lib/javacomp.c: Likewise.
14489         * lib/javaversion.c: Likewise.
14490         * lib/yesno.c: Likewise.
14491         * lib/getdelim.c: Likewise.
14492         (getdelim): Set errno on failure, and avoid memory leak.
14493
14494 2007-08-19  Bruno Haible  <bruno@clisp.org>
14495
14496         * modules/closein (Depends-on): Add freadahead.
14497         * lib/closein.c: Include freadahead.h.
14498         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
14499         is zero.
14500
14501 2007-08-19  Bruno Haible  <bruno@clisp.org>
14502
14503         * modules/freadahead-tests: New file.
14504         * tests/test-freadahead.sh: New file.
14505         * tests/test-freadahead.c: New file.
14506
14507         * modules/freadahead: New file.
14508         * lib/freadahead.h: New file.
14509         * lib/freadahead.c: New file.
14510         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
14511         fbufmode, fpurge, freadable, fwritable.
14512
14513 2007-08-19  Eric Blake  <ebb9@byu.net>
14514
14515         Test yesno in combination with closein.
14516         * lib/yesno.c (yesno): Document use of stdin.
14517         * modules/yesno-tests (Files): New module.
14518         * tests/test-yesno.c (main): New file.
14519         * tests/test-yesno.sh: Likewise.
14520
14521 2007-08-19  Bruno Haible  <bruno@clisp.org>
14522
14523         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
14524         * lib/fseeko.c (rpl_fseeko): Likewise.
14525         * lib/fseterr.c (fseterr): Likewise.
14526
14527 2007-08-19  Bruno Haible  <bruno@clisp.org>
14528
14529         * tests/test-lseek.c (main): Disable a test for BeOS.
14530         * doc/functions/lseek.texi: Document the BeOS bug.
14531
14532 2007-08-19  Bruno Haible  <bruno@clisp.org>
14533             Eric Blake  <ebb9@byu.net>
14534
14535         * lib/lseek.c: Include <sys/stat.h>.
14536         (rpl_lseek): Add workaround code also for Unix platforms.
14537         Needed for BeOS.
14538         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
14539         * doc/functions/lseek.texi: Document BeOS definiency.
14540
14541 2007-08-18  Bruno Haible  <bruno@clisp.org>
14542
14543         * modules/fstrcmp-tests: New file.
14544         * tests/test-fstrcmp.c: New file.
14545
14546 2007-08-18  Bruno Haible  <bruno@clisp.org>
14547
14548         * modules/fstrcmp: New file, from GNU gettext with modifications.
14549         * lib/fstrcmp.h: New file, from GNU gettext.
14550         * lib/fstrcmp.c: New file, from GNU gettext.
14551         * MODULES.html.sh (String handling): Add fstrcmp.
14552
14553 2007-08-18  Bruno Haible  <bruno@clisp.org>
14554
14555         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
14556         'bool'.
14557         (diag, compareseq): Remove const from the ctxt argument.
14558         (USE_HEURISTIC): Undefine at the end.
14559
14560 2007-08-18  Jim Meyering  <jim@meyering.net>
14561
14562         New file: lib/idcache.h
14563         * NEWS: Mention the addition.
14564         * modules/idcache (Files): Add lib/idcache.h
14565         * lib/idcache.c: Include "idcache.h".
14566         Don't include <sys/types.h>.
14567         Add a FIXME comment.
14568         Move file-scoped "static" declarations to the top.
14569         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
14570
14571 2007-08-17  Bruno Haible  <bruno@clisp.org>
14572         and Paul Eggert  <eggert@cs.ucla.edu>
14573
14574         * MODULES.html.sh: Add diffseq.
14575         * modules/diffseq: New file.
14576         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
14577         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
14578
14579 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
14580
14581         Import changes from coreutils for bootstrap script.
14582
14583         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
14584
14585         * build-aux/bootstrap (slurp): Work even in environments where
14586         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
14587         current code does not slurp files whose names start with ".", and
14588         this looks like it might be a troublesome area.
14589
14590         2007-07-11  Jim Meyering  <jim@meyering.net>
14591
14592         If there's a GPL vN copyright comment, require that N == 3.
14593
14594         2007-07-08  Jim Meyering  <jim@meyering.net>
14595
14596         Run the coreutils-specific code only if tests/Makefile.am.in exists.
14597         * build-aux/bootstrap (mam_template): Move definition out of loop.
14598
14599         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
14600
14601         * build-aux/bootstrap (symlink_to_dir): Rename function from
14602         symlink_to_gnulib.  Add a directory parameter.  Update all
14603         callers.
14604         (cp_mark_as_generated): Also check for -- and link to -- files in
14605         gl/.
14606
14607         2007-07-08  Jim Meyering  <jim@meyering.net>
14608
14609         Adapt to deeper hierarchy in gnulib.
14610         * build-aux/bootstrap (symlink_to_dir): If the destination
14611         directory doesn't exist, create it. This is required at least for
14612         "lib/uniwidth/cjk.h".
14613
14614         2007-05-15  Jim Meyering  <jim@meyering.net>
14615
14616         * build-aux/bootstrap: Now that generated Makefile.am files
14617         are no longer under version control, they must be created at
14618         bootstrap time.
14619
14620 2007-08-14  Ben Pfaff  <blp@gnu.org>
14621
14622         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
14623
14624 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
14625
14626         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
14627         given the changes below.
14628         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
14629         even on hosts that have padding bits beyond the supported 64.
14630
14631 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
14632
14633         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
14634         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
14635         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
14636         depends on it.
14637         (xstrtol_error): Remove.
14638         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
14639         but with a different signature.
14640         (ATTRIBUTE_NORETURN, __attribute__): New macros.
14641         * lib/xstrtol-error.c: Include exitfail.h.
14642         (xstrtol_fatal): New function, with a different signature from the
14643         old xstrtol_error, so that the caller need not worry about passing
14644         in an exit status, or about storage management of the option argument.
14645         (xstrtol_error): Now a static function.  Redo signature to
14646         implement xstrtol_fatal.  Output the correct number of hyphens in
14647         front of the option so that the caller need not worry about
14648         storage management.
14649         (N_): New macro.
14650         (_): Remove; not used now.
14651         * modules/xstrtol: Depend on getopt.
14652         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
14653         of old STRTOL_FATAL_ERROR macro.
14654         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
14655         of test program.
14656         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
14657         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
14658
14659 2007-08-08  Eric Blake  <ebb9@byu.net>
14660
14661         * lib/xstrtol-error.c: Add missing include.
14662
14663         Move xstrtol messages into gnulib domain, when --pobase is used.
14664         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
14665         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
14666         * modules/xstrtol (Files): Distribute new file.
14667         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
14668         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
14669         * tests/test-xstrtol.c: ...into new file.
14670         * tests/test-xstrtoul.c: Also test xstrtoul.
14671         * tests/test-xstrtoimax.c: Also test xstrtoimax.
14672         * tests/test-xstrtoumax.c: Also test xstrtoumax.
14673         * tests/test-xstrtol.sh: Drive the tests.
14674         * tests/test-xstrtoimax.sh: Likewise.
14675         * tests/test-xstrtoumax.sh: Likewise.
14676         * modules/xstrtol-tests: New module.
14677         * modules/xstrtoimax-tests: Likewise.
14678         * modules/xstrtoumax-tests: Likewise.
14679
14680 2007-08-08  Jim Meyering  <jim@meyering.net>
14681
14682         New function: mfile_name_concat.
14683         * lib/filenamecat.c (mfile_name_concat): New function, just like
14684         file_name_concat, but return NULL upon failure rather than exiting
14685         with a diagnostic.
14686         * lib/filenamecat.h: Declare it.
14687
14688 2007-08-07  Bruno Haible  <bruno@clisp.org>
14689
14690         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
14691         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
14692         warning from gcc.
14693         Reported by Eric Blake.
14694
14695 2007-08-07  Simon Josefsson  <simon@josefsson.org>
14696
14697         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
14698         * modules/crypto/arcfour (License): Likewise.
14699         * modules/crypto/des-tests (License): Likewise.
14700         * modules/crypto/gc-arctwo-tests (License): Likewise.
14701         * modules/crypto/gc-des-tests (License): Likewise.
14702         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
14703         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
14704         * modules/crypto/gc-md2-tests (License): Likewise.
14705         * modules/crypto/gc-md4-tests (License): Likewise.
14706         * modules/crypto/gc-md5-tests (License): Likewise.
14707         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
14708         * modules/crypto/gc-rijndael-tests (License): Likewise.
14709         * modules/crypto/gc-sha1-tests (License): Likewise.
14710         * modules/crypto/gc-tests (License): Likewise.
14711         * modules/crypto/hmac-md5 (License): Likewise.
14712         * modules/crypto/hmac-sha1 (License): Likewise.
14713         * modules/crypto/md2-tests (License): Likewise.
14714         * modules/crypto/md4-tests (License): Likewise.
14715         * modules/crypto/md5 (License): Likewise.
14716         * modules/crypto/rijndael (License): Likewise.
14717         * modules/crypto/sha1 (License): Likewise.
14718         * modules/memxor (License): Likewise.
14719
14720 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
14721         and Bruno Haible  <bruno@clisp.org>
14722
14723         * NEWS: Describe interface changes to human, xstrtol.
14724         * lib/human.h: Include <xstrtol.h>.
14725         (human_options): Return enum strtol_error, not int.  Remove
14726         bool arg; take int * instead.
14727         * lib/human.c: Don't include "gettext.h".
14728         (_): Remove; no longer used.
14729         Don't include <xstrtol.h>, since human.h does it.
14730         (human_options): Adjust to abovementioned interface changes.
14731         Do not report error to stderr; that's now the caller's
14732         responsibility.
14733         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
14734         interface change.
14735         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
14736         Str, Argument_type_string.  All uses changed.  Put " argument"
14737         in diagnostics to make them clearer.  Change wording of suffix
14738         message for clarity.
14739         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
14740         Argument_type_string.
14741         (STRTOL_FATAL_WARN): Remove; no longer used.
14742         * modules/human (Depends-on): Remove gettext-h.
14743
14744 2007-08-06  Simon Josefsson  <simon@josefsson.org>
14745
14746         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
14747
14748 2007-07-31  Bruno Haible  <bruno@clisp.org>
14749
14750         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
14751         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
14752         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
14753
14754 2007-07-31  Bruno Haible  <bruno@clisp.org>
14755
14756         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
14757         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
14758
14759 2007-07-30  Bruno Haible  <bruno@clisp.org>
14760
14761         * modules/base64 (License): Use the synonymous term "LGPLv2+".
14762         * modules/c-ctype (License): Likewise.
14763         * modules/c-strcase (License): Likewise.
14764         * modules/check-version (License): Likewise.
14765         * modules/iconv (License): Likewise.
14766         * modules/iconv_open (License): Likewise.
14767         * modules/read-file (License): Likewise.
14768         * modules/striconv (License): Likewise.
14769         * modules/strverscmp (License): Likewise.
14770         * modules/vasprintf (License): Likewise.
14771         * modules/crypto/des (License): Likewise.
14772         * modules/crypto/gc (License): Likewise.
14773         * modules/crypto/gc-arcfour (License): Likewise.
14774         * modules/crypto/gc-arctwo (License): Likewise.
14775         * modules/crypto/gc-des (License): Likewise.
14776         * modules/crypto/gc-hmac-md5 (License): Likewise.
14777         * modules/crypto/gc-hmac-sha1 (License): Likewise.
14778         * modules/crypto/gc-md2 (License): Likewise.
14779         * modules/crypto/gc-md4 (License): Likewise.
14780         * modules/crypto/gc-md5 (License): Likewise.
14781         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
14782         * modules/crypto/gc-random (License): Likewise.
14783         * modules/crypto/gc-rijndael (License): Likewise.
14784         * modules/crypto/gc-sha1 (License): Likewise.
14785         * modules/crypto/md2 (License): Likewise.
14786         * modules/crypto/md4 (License): Likewise.
14787
14788 2007-07-30  Jim Meyering  <jim@meyering.net>
14789
14790         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
14791         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
14792         it has valid stat data.  This bug would cause du not to count the
14793         sizes of inaccessible directories.
14794         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
14795         in <http://bugzilla.redhat.com/250077>.
14796
14797 2007-07-25  Peter O'Gorman  <peter@pogma.com>
14798             Bruno Haible  <bruno@clisp.org>
14799
14800         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
14801         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
14802         #include_next, gives a diagnostic about it, but reports no error in
14803         the exit code.
14804         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
14805
14806 2007-07-24  Ben Pfaff  <blp@gnu.org>
14807
14808         Improve name: "count-one-bits" is better than "popcount".
14809         * MODULES.html.sh: Update name.
14810         * lib/popcount.h: Renamed lib/count-one-bits.h.
14811         (popcount): Renamed count_one_bits.
14812         (popcountl): Renamed count_one_bits_l.
14813         (popcountll): Renamed count_one_bits_ll.
14814         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
14815         * modules/popcount: Renamed module/count-one-bits.
14816         * modules/popcount-tests: Renamed module/count-one-bits-tests.
14817         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
14818
14819 2007-07-23  Ben Pfaff  <blp@gnu.org>
14820
14821         * lib/popcount.h (popcount32): Reduce size of constants, to allow
14822         better code generation, and add U to large constants to avoid
14823         warnings, in non-GCC case.
14824         Suggested by Bruno Haible.
14825
14826 2007-07-23  Ben Pfaff  <blp@gnu.org>
14827
14828         * lib/popcount.h: Use verify_true instead of if...abort.
14829         * modules/popcount: Depend on verify module.
14830         Suggested by Jim Meyering.
14831
14832 2007-07-23  Bruno Haible  <bruno@clisp.org>
14833
14834         * gnulib-tool (func_import): Create a .cvsignore file also when the
14835         directory is not yet in CVS but the toplevel directory is. When
14836         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
14837         Reported by Karl Berry.
14838
14839 2007-07-22  Ben Pfaff  <blp@gnu.org>
14840
14841         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
14842         case.
14843         Suggested by Eric Blake.
14844
14845 2007-07-22  Ben Pfaff  <blp@gnu.org>
14846
14847         New module: popcount.
14848         * MODULES.html.sh: Add popcount.
14849         * modules/popcount: New file.
14850         * modules/popcount-tests: New file.
14851         * tests/test-popcount.c: New file.
14852         * lib/popcount.h: New file.
14853         * m4/popcount.m4: New file.
14854
14855 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
14856
14857         * build-aux/announce-gen: Update to GPLv3.
14858
14859         * build-aux/config.guess: Update from config.
14860
14861 2007-07-21  Bruno Haible  <bruno@clisp.org>
14862
14863         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
14864         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
14865
14866 2007-07-20  Jim Meyering  <jim@meyering.net>
14867
14868         * check-module: Diagnose a self-dependency.
14869
14870 2007-07-19  Bruno Haible  <bruno@clisp.org>
14871
14872         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
14873         empty.
14874         Reported by Eric Blake.
14875
14876 2007-07-18  Bruno Haible  <bruno@clisp.org>
14877
14878         * gnulib-tool: New options --po-base, --po-domain.
14879         (func_usage): Document them.
14880         (pobase, po_domain): New variables.
14881         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
14882         DEFAULT_TEXT_DOMAIN.
14883         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
14884         (func_import): Consider pobase and po_domain. Create a po/ directory.
14885         (func_create_testdir): Set pobase and po_domain to empty.
14886         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
14887         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
14888
14889 2007-07-18  Bruno Haible  <bruno@clisp.org>
14890
14891         * gnulib-tool (func_get_automake_snippet): Synthesize also an
14892         EXTRA_DIST augmentation for files in build-aux/.
14893
14894 2007-07-16  Bruno Haible  <bruno@clisp.org>
14895
14896         * modules/lseek (License): Use the synonymous term "LGPLv2+".
14897         * modules/getdelim (License): Likewise.
14898
14899 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14900
14901         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
14902         * modules/d-type (License): Likewise.
14903         * modules/extensions (License): Likewise.
14904         * modules/fnmatch (License): Likewise.
14905         * modules/fseeko (License): Likewise.
14906         * modules/getaddrinfo (License): Likewise.
14907         * modules/getline (License): Likewise.
14908         * modules/getlogin_r (License): Likewise.
14909         * modules/getpass (License): Likewise.
14910         * modules/gettimeofday (License): Likewise.
14911         * modules/glob (License): Likewise.
14912         * modules/inet_ntop (License): Likewise.
14913         * modules/malloc (License): Likewise.
14914         * modules/malloca (License): Likewise.
14915         * modules/memmem (License): Likewise.
14916         * modules/mempcpy (License): Likewise.
14917         * modules/memset (License): Likewise.
14918         * modules/minmax (License): Likewise.
14919         * modules/mktime (License): Likewise.
14920         * modules/netinet_in (License): Likewise.
14921         * modules/pathmax (License): Likewise.
14922         * modules/poll (License): Likewise.
14923         * modules/regex (License): Likewise.
14924         * modules/snprintf (License): Likewise.
14925         * modules/stdbool (License): Likewise.
14926         * modules/stdint (License): Likewise.
14927         * modules/stdio (License): Likewise.
14928         * modules/strcase (License): Likewise.
14929         * modules/strcasestr (License): Likewise.
14930         * modules/strdup (License): Likewise.
14931         * modules/string (License): Likewise.
14932         * modules/strndup (License): Likewise.
14933         * modules/strnlen (License): Likewise.
14934         * modules/strpbrk (License): Likewise.
14935         * modules/strptime (License): Likewise.
14936         * modules/strsep (License): Likewise.
14937         * modules/sys_select (License): Likewise.
14938         * modules/sys_socket (License): Likewise.
14939         * modules/sys_stat (License): Likewise.
14940         * modules/sys_time (License): Likewise.
14941         * modules/time (License): Likewise.
14942         * modules/time_r (License): Likewise.
14943         * modules/timegm (License): Likewise.
14944         * modules/unistd (License): Likewise.
14945         * modules/vsnprintf (License): Likewise.
14946         * modules/wctype (License): Likewise.
14947
14948 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14949
14950         * modules/argz (License): LGPLv2+.
14951
14952 2007-07-15  Karl Berry  <karl@gnu.org>
14953
14954         * doc/gnulib.texi: revise node structure per new fdl.texi.
14955
14956 2007-07-14  Bruno Haible  <bruno@clisp.org>
14957
14958         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
14959         the output file.
14960         * lib/uniname/uninames.h: Regenerated.
14961
14962 2007-07-14  Karl Berry  <karl@gnu.org>
14963
14964         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
14965         omitting sectioning and index commands.
14966
14967 2007-07-13  Bruno Haible  <bruno@clisp.org>
14968
14969         New gnulib-tool option --more-symlinks.
14970         * gnulib-tool (func_usage): Document --more-symlinks.
14971         (do_copyrights): New variable.
14972         Recognize option --more-symlinks.
14973         (func_import): Don't add a copyright notice transform to
14974         sed_transform_lib_file if do_copyrights is empty.
14975
14976 2007-07-13  Bruno Haible  <bruno@clisp.org>
14977
14978         * lib/vasnprintf.c (decimal_point_char): Define also if
14979         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
14980         && !NEED_PRINTF_DIRECTIVE_A.
14981         Reported by Clemens Koller <clemens.koller@anagramm.de> via
14982         Gary V. Vaughan <gary@gnu.org>.
14983
14984 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
14985
14986         * lib/inttypes_.h: Undo previous change, since it was fixed
14987         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
14988
14989 2007-07-13  Bruno Haible  <bruno@clisp.org>
14990
14991         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
14992         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
14993
14994 2007-07-13  Jim Meyering  <jim@meyering.net>
14995
14996         df: Don't fail for Tru64's "file-on-file mount".
14997         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
14998         so we fall through and use statfs instead.  Details here:
14999         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
15000         Reported by Albert Chin.
15001
15002 2007-07-13  Bruno Haible  <bruno@clisp.org>
15003
15004         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
15005         * modules/configmake (License): Likewise.
15006         * modules/gettext (License): Likewise.
15007         * modules/gettext-h (License): Likewise.
15008         * modules/include_next (License): Likewise.
15009         * modules/link-warning (License): Likewise.
15010         * modules/localcharset (License): Likewise.
15011         * modules/localename (License): Likewise.
15012         * modules/lock (License): Likewise.
15013         * modules/relocatable-lib-lgpl (License): Likewise.
15014         * modules/size_max (License): Likewise.
15015         * modules/vasnprintf (License): Likewise.
15016         * modules/wchar (License): Likewise.
15017         * modules/xsize (License): Likewise.
15018
15019 2007-07-13  Bruno Haible  <bruno@clisp.org>
15020
15021         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
15022         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
15023
15024 2007-07-12  Bruno Haible  <bruno@clisp.org>
15025
15026         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
15027         in the modules files.
15028
15029 2007-07-11  Karl Berry  <karl@gnu.org>
15030
15031         * MODULES.html.sh (func_module): use
15032          sed -e '\|^'"${includefile}"'$|d'
15033          instead of /.../d, to avoid errors on $includefile's containing /.
15034
15035 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
15036
15037         * gnulib-tool (func_import): Avoid duplication of --avoid
15038         statements
15039         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
15040         names to `_' in variable names.
15041
15042 2007-07-10  Eric Blake  <ebb9@byu.net>
15043
15044         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
15045         * NEWS: Document this change.
15046
15047 2007-07-08  Bruno Haible  <bruno@clisp.org>
15048
15049         Update to Unicode 5.0.
15050         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
15051         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
15052         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
15053         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
15054         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
15055         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
15056         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
15057         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
15058         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
15059         U+10A3F, U+1D242..U+1D244.
15060         (nonspacing_table_ind): Update.
15061         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
15062         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
15063
15064 2007-07-08  Bruno Haible  <bruno@clisp.org>
15065
15066         Update to Unicode 5.0.
15067         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
15068         code transform. Extend the name index field of unicode_name_to_code and
15069         unicode_code_to_name from 16 to 24 bits.
15070         * lib/uniname/uniname.c (unicode_character_name,
15071         unicode_name_character): Add the range 0x12xxx to the code transform.
15072         * lib/uniname/uninames.h: Regenerated.
15073         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
15074
15075 2007-07-07  Bruno Haible  <bruno@clisp.org>
15076
15077         * modules/wcwidth-tests: New file.
15078         * tests/test-wcwidth.c: New file.
15079
15080         Work around MacOS X wcwidth() bug.
15081         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
15082         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
15083         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
15084         original wcwidth in non-UTF-8 locales.
15085         * modules/wcwidth (Depends-on): Add localcharset, streq,
15086         uniwidth/width.
15087         * doc/functions/wcwidth.texi: Update.
15088
15089 2007-07-07  Bruno Haible  <bruno@clisp.org>
15090
15091         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
15092         (wcwidth): New declaration.
15093         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
15094         macros.
15095         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
15096         here. Prepare for creating <wchar.h> unconditionally.
15097         * modules/wchar (Depends-on): Add link-warning.
15098         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
15099         REPLACE_WCWIDTH, and GL_LINK_WARNING.
15100         * lib/wcwidth.h: Remove file.
15101         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
15102         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
15103         * modules/wcwidth (Files): Remove lib/wcwidth.h.
15104         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
15105         (Include): Replace wcwidth.h with <wchar.h>.
15106         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
15107         * lib/mbchar.h: Don't include wcwidth.h.
15108         * lib/mbswidth.c: Likewise.
15109         * NEWS: Mention the change.
15110
15111 2007-07-07  Bruno Haible  <bruno@clisp.org>
15112
15113         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
15114         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
15115         definition with an external declaration.
15116         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
15117         defined as a function. Remove AC_C_INLINE requirement.
15118         * modules/wcwidth (Files): Add lib/wcwidth.c.
15119         (Makefile.am): Remove redundant statement.
15120
15121 2007-07-07  Bruno Haible  <bruno@clisp.org>
15122
15123         * MODULES.html.sh (Unicode string functions): Add the new modules.
15124
15125         * tests/uniwidth/test-u32-strwidth.c: New file.
15126         * modules/uniwidth/u32-strwidth-tests: New file.
15127
15128         * lib/uniwidth/u32-strwidth.c: New file.
15129         * modules/uniwidth/u32-strwidth: New file.
15130
15131         * tests/uniwidth/test-u16-strwidth.c: New file.
15132         * modules/uniwidth/u16-strwidth-tests: New file.
15133
15134         * lib/uniwidth/u16-strwidth.c: New file.
15135         * modules/uniwidth/u16-strwidth: New file.
15136
15137         * tests/uniwidth/test-u8-strwidth.c: New file.
15138         * modules/uniwidth/u8-strwidth-tests: New file.
15139
15140         * lib/uniwidth/u8-strwidth.c: New file.
15141         * modules/uniwidth/u8-strwidth: New file.
15142
15143         * tests/uniwidth/test-u32-width.c: New file.
15144         * modules/uniwidth/u32-width-tests: New file.
15145
15146         * lib/uniwidth/u32-width.c: New file.
15147         * modules/uniwidth/u32-width: New file.
15148
15149         * tests/uniwidth/test-u16-width.c: New file.
15150         * modules/uniwidth/u16-width-tests: New file.
15151
15152         * lib/uniwidth/u16-width.c: New file.
15153         * modules/uniwidth/u16-width: New file.
15154
15155         * tests/uniwidth/test-u8-width.c: New file.
15156         * modules/uniwidth/u8-width-tests: New file.
15157
15158         * lib/uniwidth/u8-width.c: New file.
15159         * modules/uniwidth/u8-width: New file.
15160
15161         * tests/uniwidth/test-uc_width.c: New file.
15162         * modules/uniwidth/width-tests: New file.
15163
15164         * lib/uniwidth/width.c: New file, from GNU libiconv.
15165         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
15166         * modules/uniwidth/width: New file.
15167
15168         * lib/uniwidth.h: New file, from GNU libiconv.
15169         * modules/uniwidth/base: New file.
15170
15171 2007-07-07  Bruno Haible  <bruno@clisp.org>
15172
15173         * lib/uniname.h: New file, from GNU gettext.
15174         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
15175         * lib/uniname/uninames.h: New file, from GNU gettext.
15176         * lib/uniname/uniname.c: New file, from GNU gettext.
15177         * tests/uniname/test-uninames.sh: New file.
15178         * tests/uniname/test-uninames.c: New file, from GNU gettext.
15179         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
15180         * modules/uniname/base: New file.
15181         * modules/uniname/uniname: New file.
15182         * modules/uniname/uniname-tests: New file.
15183         * MODULES.html.sh (Unicode string functions): Add the new modules.
15184
15185 2007-07-06  Bruno Haible  <bruno@clisp.org>
15186
15187         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
15188
15189 2007-07-06  Bruno Haible  <bruno@clisp.org>
15190
15191         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
15192         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
15193         includes <cygwin/sys_time.h> which includes <sys/select.h> which
15194         include <sys/time.h>.
15195         Reported by Eric Blake.
15196
15197 2007-07-06  Eric Blake  <ebb9@byu.net>
15198
15199         Fix testing canonicalize on cygwin.
15200         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
15201         Revert patch from 2007-06-19.
15202         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
15203         canonicalize module is also in use.
15204         * tests/test-canonicalize.c: New file.
15205         * tests/test-canonicalize.sh: Likewise.
15206         * modules/canonicalize-tests: Likewise.
15207
15208 2007-07-06  Jim Meyering  <jim@meyering.net>
15209
15210         * lib/getugroups.c (getugroups): Detect getgrent failure.
15211         Adjust comment to reflect reality: this function may return -1.
15212
15213 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
15214
15215         * build-aux/bootstrap (TP_URL,get_translations): Update to use
15216         the new TP address.
15217         (usage): Fix typo
15218         (gnulib_mk): New variable.
15219
15220 2007-07-05  Jim Meyering  <jim@meyering.net>
15221
15222         Don't let endgrent clobber errno, no matter how improbable.
15223         * lib/getugroups.c (getugroups): Save and restore errno around
15224         endgrent call.
15225
15226         Close the group DB even when failing with 2^31 or more members.
15227         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
15228
15229 2007-07-04  Jim Meyering  <jim@meyering.net>
15230
15231         * lib/getugroups.h: New file.
15232         * lib/getugroups.c: Include "getugroups.h".
15233         Remove uses of "register" keyword.
15234         Move local variable, "cp", down into scope where used.
15235         Give "username" parameter the "const" attribute.
15236         * modules/getugroups (Files): Add lib/getugroups.h
15237
15238 2007-07-04  Karl Berry  <karl@gnu.org>
15239
15240         * MODULES.html.sh (func_all_modules): Complete rename of
15241         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
15242
15243 2007-07-02  Bruno Haible  <bruno@clisp.org>
15244
15245         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
15246         mode, when inttypes.h comes from gnulib.
15247         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
15248
15249 2007-07-02  Simon Josefsson  <simon@josefsson.org>
15250
15251         * NEWS: Mention lgpl module name change.
15252
15253         * modules/lgpl-2.1: Renamed from lgpl.
15254
15255         * NEWS: Mention gpl module name change.
15256
15257         * modules/gpl-3.0: New file, based on gpl-2.0.
15258
15259         * modules/gpl-2.0: Renamed from gpl.
15260
15261         * modules/gpl: Fix filename, doc/gpl.texi is now found at
15262         doc/gpl-2.0.texi.
15263
15264 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
15265
15266         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
15267         #define __STDC_LIMIT_MACROS temporarily while including
15268         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
15269         Problem reported by Joel E. Denny in
15270         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
15271
15272 2007-07-01  Bruno Haible  <bruno@clisp.org>
15273
15274         * lib/unistdio.h: New file.
15275         * lib/unistdio/u-asnprintf.h: New file.
15276         * lib/unistdio/u-asprintf.h: New file.
15277         * lib/unistdio/u-printf-args.c: New file.
15278         * lib/unistdio/u-printf-args.h: New file.
15279         * lib/unistdio/u-printf-parse.h: New file.
15280         * lib/unistdio/u-snprintf.h: New file.
15281         * lib/unistdio/u-sprintf.h: New file.
15282         * lib/unistdio/u-vasprintf.h: New file.
15283         * lib/unistdio/u-vsnprintf.h: New file.
15284         * lib/unistdio/u-vsprintf.h: New file.
15285         * lib/unistdio/ulc-asnprintf.c: New file.
15286         * lib/unistdio/ulc-asprintf.c: New file.
15287         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
15288         * lib/unistdio/ulc-printf-parse.c: New file.
15289         * lib/unistdio/ulc-snprintf.c: New file.
15290         * lib/unistdio/ulc-sprintf.c: New file.
15291         * lib/unistdio/ulc-vasnprintf.c: New file.
15292         * lib/unistdio/ulc-vasprintf.c: New file.
15293         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
15294         * lib/unistdio/ulc-vsnprintf.c: New file.
15295         * lib/unistdio/ulc-vsprintf.c: New file.
15296         * lib/unistdio/u8-asnprintf.c: New file.
15297         * lib/unistdio/u8-asprintf.c: New file.
15298         * lib/unistdio/u8-printf-parse.c: New file.
15299         * lib/unistdio/u8-snprintf.c: New file.
15300         * lib/unistdio/u8-sprintf.c: New file.
15301         * lib/unistdio/u8-vasnprintf.c: New file.
15302         * lib/unistdio/u8-vasprintf.c: New file.
15303         * lib/unistdio/u8-vsnprintf.c: New file.
15304         * lib/unistdio/u8-vsprintf.c: New file.
15305         * lib/unistdio/u8-u8-asnprintf.c: New file.
15306         * lib/unistdio/u8-u8-asprintf.c: New file.
15307         * lib/unistdio/u8-u8-snprintf.c: New file.
15308         * lib/unistdio/u8-u8-sprintf.c: New file.
15309         * lib/unistdio/u8-u8-vasnprintf.c: New file.
15310         * lib/unistdio/u8-u8-vasprintf.c: New file.
15311         * lib/unistdio/u8-u8-vsnprintf.c: New file.
15312         * lib/unistdio/u8-u8-vsprintf.c: New file.
15313         * lib/unistdio/u16-asnprintf.c: New file.
15314         * lib/unistdio/u16-asprintf.c: New file.
15315         * lib/unistdio/u16-printf-parse.c: New file.
15316         * lib/unistdio/u16-snprintf.c: New file.
15317         * lib/unistdio/u16-sprintf.c: New file.
15318         * lib/unistdio/u16-vasnprintf.c: New file.
15319         * lib/unistdio/u16-vasprintf.c: New file.
15320         * lib/unistdio/u16-vsnprintf.c: New file.
15321         * lib/unistdio/u16-vsprintf.c: New file.
15322         * lib/unistdio/u16-u16-asnprintf.c: New file.
15323         * lib/unistdio/u16-u16-asprintf.c: New file.
15324         * lib/unistdio/u16-u16-snprintf.c: New file.
15325         * lib/unistdio/u16-u16-sprintf.c: New file.
15326         * lib/unistdio/u16-u16-vasnprintf.c: New file.
15327         * lib/unistdio/u16-u16-vasprintf.c: New file.
15328         * lib/unistdio/u16-u16-vsnprintf.c: New file.
15329         * lib/unistdio/u16-u16-vsprintf.c: New file.
15330         * lib/unistdio/u32-asnprintf.c: New file.
15331         * lib/unistdio/u32-asprintf.c: New file.
15332         * lib/unistdio/u32-printf-parse.c: New file.
15333         * lib/unistdio/u32-snprintf.c: New file.
15334         * lib/unistdio/u32-sprintf.c: New file.
15335         * lib/unistdio/u32-vasnprintf.c: New file.
15336         * lib/unistdio/u32-vasprintf.c: New file.
15337         * lib/unistdio/u32-vsnprintf.c: New file.
15338         * lib/unistdio/u32-vsprintf.c: New file.
15339         * lib/unistdio/u32-u32-asnprintf.c: New file.
15340         * lib/unistdio/u32-u32-asprintf.c: New file.
15341         * lib/unistdio/u32-u32-snprintf.c: New file.
15342         * lib/unistdio/u32-u32-sprintf.c: New file.
15343         * lib/unistdio/u32-u32-vasnprintf.c: New file.
15344         * lib/unistdio/u32-u32-vasprintf.c: New file.
15345         * lib/unistdio/u32-u32-vsnprintf.c: New file.
15346         * lib/unistdio/u32-u32-vsprintf.c: New file.
15347         * tests/unistdio/test-ulc-asnprintf1.c: New file.
15348         * tests/unistdio/test-ulc-asnprintf1.h: New file.
15349         * tests/unistdio/test-ulc-printf1.h: New file.
15350         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
15351         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
15352         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
15353         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
15354         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
15355         * tests/unistdio/test-ulc-vasprintf1.c: New file.
15356         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
15357         * tests/unistdio/test-ulc-vsprintf1.c: New file.
15358         * tests/unistdio/test-u8-asnprintf1.c: New file.
15359         * tests/unistdio/test-u8-asnprintf1.h: New file.
15360         * tests/unistdio/test-u8-printf1.h: New file.
15361         * tests/unistdio/test-u8-vasnprintf1.c: New file.
15362         * tests/unistdio/test-u8-vasnprintf2.c: New file.
15363         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
15364         * tests/unistdio/test-u8-vasnprintf3.c: New file.
15365         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
15366         * tests/unistdio/test-u8-vasprintf1.c: New file.
15367         * tests/unistdio/test-u8-vsnprintf1.c: New file.
15368         * tests/unistdio/test-u8-vsprintf1.c: New file.
15369         * tests/unistdio/test-u16-asnprintf1.c: New file.
15370         * tests/unistdio/test-u16-asnprintf1.h: New file.
15371         * tests/unistdio/test-u16-printf1.h: New file.
15372         * tests/unistdio/test-u16-vasnprintf1.c: New file.
15373         * tests/unistdio/test-u16-vasnprintf2.c: New file.
15374         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
15375         * tests/unistdio/test-u16-vasnprintf3.c: New file.
15376         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
15377         * tests/unistdio/test-u16-vasprintf1.c: New file.
15378         * tests/unistdio/test-u16-vsnprintf1.c: New file.
15379         * tests/unistdio/test-u16-vsprintf1.c: New file.
15380         * tests/unistdio/test-u32-asnprintf1.c: New file.
15381         * tests/unistdio/test-u32-asnprintf1.h: New file.
15382         * tests/unistdio/test-u32-printf1.h: New file.
15383         * tests/unistdio/test-u32-vasnprintf1.c: New file.
15384         * tests/unistdio/test-u32-vasnprintf2.c: New file.
15385         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
15386         * tests/unistdio/test-u32-vasnprintf3.c: New file.
15387         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
15388         * tests/unistdio/test-u32-vasprintf1.c: New file.
15389         * tests/unistdio/test-u32-vsnprintf1.c: New file.
15390         * tests/unistdio/test-u32-vsprintf1.c: New file.
15391         * modules/unistdio/base: New file.
15392         * modules/unistdio/u-printf-args: New file.
15393         * modules/unistdio/ulc-asnprintf: New file.
15394         * modules/unistdio/ulc-asprintf: New file.
15395         * modules/unistdio/ulc-fprintf: New file.
15396         * modules/unistdio/ulc-printf-parse: New file.
15397         * modules/unistdio/ulc-snprintf: New file.
15398         * modules/unistdio/ulc-sprintf: New file.
15399         * modules/unistdio/ulc-vasnprintf: New file.
15400         * modules/unistdio/ulc-vasprintf: New file.
15401         * modules/unistdio/ulc-vfprintf: New file.
15402         * modules/unistdio/ulc-vsnprintf: New file.
15403         * modules/unistdio/ulc-vsprintf: New file.
15404         * modules/unistdio/u8-asnprintf: New file.
15405         * modules/unistdio/u8-asprintf: New file.
15406         * modules/unistdio/u8-printf-parse: New file.
15407         * modules/unistdio/u8-snprintf: New file.
15408         * modules/unistdio/u8-sprintf: New file.
15409         * modules/unistdio/u8-vasnprintf: New file.
15410         * modules/unistdio/u8-vasprintf: New file.
15411         * modules/unistdio/u8-vsnprintf: New file.
15412         * modules/unistdio/u8-vsprintf: New file.
15413         * modules/unistdio/u8-u8-asnprintf: New file.
15414         * modules/unistdio/u8-u8-asprintf: New file.
15415         * modules/unistdio/u8-u8-snprintf: New file.
15416         * modules/unistdio/u8-u8-sprintf: New file.
15417         * modules/unistdio/u8-u8-vasnprintf: New file.
15418         * modules/unistdio/u8-u8-vasprintf: New file.
15419         * modules/unistdio/u8-u8-vsnprintf: New file.
15420         * modules/unistdio/u8-u8-vsprintf: New file.
15421         * modules/unistdio/u16-asnprintf: New file.
15422         * modules/unistdio/u16-asprintf: New file.
15423         * modules/unistdio/u16-printf-parse: New file.
15424         * modules/unistdio/u16-snprintf: New file.
15425         * modules/unistdio/u16-sprintf: New file.
15426         * modules/unistdio/u16-vasnprintf: New file.
15427         * modules/unistdio/u16-vasprintf: New file.
15428         * modules/unistdio/u16-vsnprintf: New file.
15429         * modules/unistdio/u16-vsprintf: New file.
15430         * modules/unistdio/u16-u16-asnprintf: New file.
15431         * modules/unistdio/u16-u16-asprintf: New file.
15432         * modules/unistdio/u16-u16-snprintf: New file.
15433         * modules/unistdio/u16-u16-sprintf: New file.
15434         * modules/unistdio/u16-u16-vasnprintf: New file.
15435         * modules/unistdio/u16-u16-vasprintf: New file.
15436         * modules/unistdio/u16-u16-vsnprintf: New file.
15437         * modules/unistdio/u16-u16-vsprintf: New file.
15438         * modules/unistdio/u32-asnprintf: New file.
15439         * modules/unistdio/u32-asprintf: New file.
15440         * modules/unistdio/u32-printf-parse: New file.
15441         * modules/unistdio/u32-snprintf: New file.
15442         * modules/unistdio/u32-sprintf: New file.
15443         * modules/unistdio/u32-vasnprintf: New file.
15444         * modules/unistdio/u32-vasprintf: New file.
15445         * modules/unistdio/u32-vsnprintf: New file.
15446         * modules/unistdio/u32-vsprintf: New file.
15447         * modules/unistdio/u32-u32-asnprintf: New file.
15448         * modules/unistdio/u32-u32-asprintf: New file.
15449         * modules/unistdio/u32-u32-snprintf: New file.
15450         * modules/unistdio/u32-u32-sprintf: New file.
15451         * modules/unistdio/u32-u32-vasnprintf: New file.
15452         * modules/unistdio/u32-u32-vasprintf: New file.
15453         * modules/unistdio/u32-u32-vsnprintf: New file.
15454         * modules/unistdio/u32-u32-vsprintf: New file.
15455         * modules/unistdio/ulc-asnprintf-tests: New file.
15456         * modules/unistdio/ulc-vasnprintf-tests: New file.
15457         * modules/unistdio/ulc-vasprintf-tests: New file.
15458         * modules/unistdio/ulc-vsnprintf-tests: New file.
15459         * modules/unistdio/ulc-vsprintf-tests: New file.
15460         * modules/unistdio/u8-asnprintf-tests: New file.
15461         * modules/unistdio/u8-vasnprintf-tests: New file.
15462         * modules/unistdio/u8-vasprintf-tests: New file.
15463         * modules/unistdio/u8-vsnprintf-tests: New file.
15464         * modules/unistdio/u8-vsprintf-tests: New file.
15465         * modules/unistdio/u16-asnprintf-tests: New file.
15466         * modules/unistdio/u16-vasnprintf-tests: New file.
15467         * modules/unistdio/u16-vasprintf-tests: New file.
15468         * modules/unistdio/u16-vsnprintf-tests: New file.
15469         * modules/unistdio/u16-vsprintf-tests: New file.
15470         * modules/unistdio/u32-asnprintf-tests: New file.
15471         * modules/unistdio/u32-vasnprintf-tests: New file.
15472         * modules/unistdio/u32-vasprintf-tests: New file.
15473         * modules/unistdio/u32-vsnprintf-tests: New file.
15474         * modules/unistdio/u32-vsprintf-tests: New file.
15475         * MODULES.html.sh (Unicode string functions): Add the new modules.
15476
15477 2007-07-01  Bruno Haible  <bruno@clisp.org>
15478
15479         * lib/sprintf.c (sprintf): Limit the available length estimation,
15480         to avoid address wraparound.
15481         * lib/vsprintf.c (vsprintf): Likewise.
15482         * modules/sprintf-posix (Dependencies): Add stdint.
15483         * modules/vsprintf-posix (Dependencies): Likewise.
15484
15485 2007-07-01  Bruno Haible  <bruno@clisp.org>
15486
15487         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
15488         Windows PATH as well. Conservative double-quoting. Comments.
15489
15490 2007-07-01  Bruno Haible  <bruno@clisp.org>
15491             Eric Blake  <ebb9@byu.net>
15492             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15493
15494         * gnulib-tool (self_abspathname): Fix algorithm to cope with
15495         empty components in $PATH, denoting '.'.
15496
15497 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15498
15499         * gnulib-tool: Fix indentation.
15500         (func_create_megatestdir): Likewise.
15501         Report by Bruno Haible.
15502
15503 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15504
15505         Sync from Automake.
15506         * build-aux/gnupload: Fix shell portability issues with for loops.
15507         Report by Karl Berry.
15508
15509 2007-06-29  Simon Josefsson  <simon@josefsson.org>
15510
15511         * build-aux/maint.mk (POURL): Use translationproject.org.
15512
15513 2007-06-27  Simon Josefsson  <simon@josefsson.org>
15514             Bruno Haible  <bruno@clisp.org>
15515
15516         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
15517         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
15518         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
15519         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
15520         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
15521
15522 2007-06-27  Bruno Haible  <bruno@clisp.org>
15523
15524         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
15525         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
15526
15527 2007-06-26  Karl Berry  <karl@gnu.org>
15528
15529         * MODULES.html.sh: remove xreadlink-with-size.
15530
15531 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
15532
15533         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
15534         method that I hope also handles the double-include problem noted
15535         by Bruno Haible in
15536         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
15537
15538 2007-06-23  Bruno Haible  <bruno@clisp.org>
15539
15540         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
15541         Don't let the 'mostlyclean' target fail if the last subdirectory could
15542         not be removed.
15543         Reported by Karl Berry.
15544
15545 2007-06-23  Bruno Haible  <bruno@clisp.org>
15546
15547         * gnulib-tool (echo): Add a speedier workaround for ksh.
15548         * tests/test-echo.sh: Likewise.
15549
15550 2007-06-23  Bruno Haible  <bruno@clisp.org>
15551
15552         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
15553         * tests/test-echo.sh: Likewise.
15554
15555 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15556
15557         * gnulib-tool (IFS): Initialize early, so we don't set it to
15558         empty later.
15559         (self_abspathname): Rewrite algorithm to set it, reindent.
15560         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
15561         (func_create_megatestdir): Merge some sed scripts.
15562
15563 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
15564
15565         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
15566         exposed by Sun Studio 11 cc on Solaris 8.
15567
15568 2007-06-22  Bruno Haible  <bruno@clisp.org>
15569
15570         * gnulib-tool (echo): Ensure the echo primitive does not interpret
15571         backslashes.
15572         * tests/test-echo.sh: New file.
15573
15574 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15575
15576         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
15577         simplify `sed_replace_build_aux' scripts, they are portable but
15578         echoing them with `echo' is not.
15579         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
15580
15581 2007-06-21  Karl Berry  <karl@gnu.org>
15582
15583         * config/srclist.txt: guess we can't handle the licenses via
15584         srclist at the moment.
15585
15586 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
15587
15588         * MODULES.html.sh: Add include_next.
15589         * modules/include_next: New file.
15590
15591 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
15592
15593         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
15594         INCLUDE_NEXT.
15595         (gl_CHECK_NEXT_HEADERS): New macro.
15596         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
15597         the obsolescent gl_ABSOLUTE_HEADER.
15598         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
15599         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
15600         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
15601         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
15602         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
15603         * m4/math_h.m4 (gl_MATH_H): Likewise.
15604         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
15605         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
15606         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
15607         * m4/stdint.m4 (gl_STDINT_H): Likewise.
15608         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
15609         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
15610         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
15611         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
15612         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
15613         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
15614         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
15615         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
15616         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
15617         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
15618         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
15619         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
15620         * m4/inttypes.m4 (gl_INTTYPES_H): Define
15621         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
15622         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
15623         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
15624         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
15625         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
15626         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
15627         * lib/float_.h: Likewise.
15628         * lib/inttypes_.h: Likewise.
15629         * lib/math_.h: Likewise.
15630         * lib/search_.h: Likewise.
15631         * lib/signal_.h: Likewise.
15632         * lib/stdint_.h: Likewise.
15633         * lib/stdio_.h: Likewise.
15634         * lib/stdlib_.h: Likewise.
15635         * lib/string_.h: Likewise.
15636         * lib/sys_stat_.h: Likewise.
15637         * lib/sys_time_.h: Likewise.
15638         * lib/time_.h: Likewise.
15639         * lib/unistd_.h: Likewise.
15640         * lib/wchar_.h: Likewise.
15641         * lib/wctype_.h: Likewise.
15642         * lib/dirent_.h: Likewise.
15643         * lib/iconv_.h: Likewise.
15644         * lib/locale_.h: Likewise.
15645         * lib/netinet_in_.h: Likewise.
15646         * lib/sys_select_.h: Likewise.
15647         * lib/sys_socket_.h: Likewise.
15648         * lib/sysexits_.h: Likewise.
15649         * modules/fcntl (Depends-on): Depend on include_next, not
15650         absolute_header.
15651         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
15652         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
15653         * modules/fchdir: Likewise.
15654         * modules/float: Likewise.
15655         * modules/iconv_open: Likewise.
15656         * modules/inttypes: Likewise.
15657         * modules/locale: Likewise.
15658         * modules/math: Likewise.
15659         * modules/netinet_in: Likewise.
15660         * modules/search: Likewise.
15661         * modules/signal: Likewise.
15662         * modules/stdint: Likewise.
15663         * modules/stdio: Likewise.
15664         * modules/stdlib: Likewise.
15665         * modules/string: Likewise.
15666         * modules/sys_select: Likewise.
15667         * modules/sys_socket: Likewise.
15668         * modules/sys_stat: Likewise.
15669         * modules/sys_time: Likewise.
15670         * modules/sysexits: Likewise.
15671         * modules/time: Likewise.
15672         * modules/unistd: Likewise.
15673         * modules/wchar: Likewise.
15674         * modules/wctype: Likewise.
15675         * modules/sys_stat: Change maintainer to "all".
15676         * modules/unistd: Likewise.
15677
15678 2007-06-20  Karl Berry  <karl@gnu.org>
15679
15680         * config/srclist.txt: track www changes in license files.
15681
15682 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
15683
15684         * build-aux/bootstrap: Remove stray dot.
15685         Make sure build_aux settings are honored when linking
15686         gnulib_extra_files.
15687
15688 2007-06-19  Eric Blake  <ebb9@byu.net>
15689
15690         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
15691         Allow compilation on cygwin.
15692
15693 2007-06-19  Jim Meyering  <jim@meyering.net>
15694
15695         xreadlink-with-size: Remove module.  No longer used.
15696         Ex-callers now use xreadlink or mreadlink-with-size.
15697         * modules/xreadlink-with-size: Remove module.
15698         * lib/xreadlink-with-size.c: Remove file.
15699         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
15700         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
15701         just before the function definition *is* accurate.
15702
15703         Eliminate one way canonicalize_filename_mode could exit.
15704         * lib/canonicalize.c (canonicalize_filename_mode):
15705         Use mreadlink_with_size, not xreadlink_with_size.
15706
15707 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
15708
15709         Detect porting problems to FreeBSD/arm, which has time_t wider than
15710         long int.  Original problem reported for GNU diff by Xin Li in
15711         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
15712         * modules/getdate (Depends-on): Add intprops, verify.
15713         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
15714         is an integer type no wider than long int.
15715
15716 2007-06-18  Jim Meyering  <jim@meyering.net>
15717
15718         New module: mreadlink-with-size.
15719         * MODULES.html.sh: Add mreadlink-with-size.
15720         * modules/mreadlink-with-size: New module
15721         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
15722         not xreadlink-with-size.
15723         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
15724
15725 2007-06-16  Bruno Haible  <bruno@clisp.org>
15726
15727         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
15728         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
15729         Reported by Gary V. Vaughan <gary@gnu.org>.
15730
15731 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
15732
15733         Revamp lchown so that it lives in unistd.h where it belongs.
15734         * lib/lchown.h: Remove.
15735         * lib/dirchownmod.c: Don't include lib/lchown.h.
15736         * lib/fchownat.c: Likewise.
15737         * lib/openat.c: Likewise.
15738         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
15739         does not follow symlinks.
15740         (EOPNOTSUPP): Define if not defined.
15741         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
15742         is defined to 0.
15743         (lchown): New decl.
15744         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
15745         Do not check for lchown decl.
15746         Set REPLACE_LCHOWN.
15747         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
15748         REPLACE_LCHOWN.
15749         * modules/chown: Make it clear it follows symlinks.
15750         * modules/lchown: Make it clear it doesn't follow symlinks.
15751         (Files): Remove lib/lchown.h
15752         (Depends-on): Add unistd.
15753         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
15754         (Include): Include <unistd.h>, not "lchown.h".
15755         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
15756         REPLACE_LCHOWN.
15757
15758 2007-06-15  Jim Meyering  <jim@meyering.net>
15759
15760         Change license (GPL to LGPL) of fsusage and dependents.
15761         * modules/fsusage (License): Change to LGPL.
15762         * modules/full-read (License): Likewise.
15763         * modules/full-write (License): Likewise.
15764         * modules/safe-read (License): Likewise.
15765         * modules/safe-write (License): Likewise.
15766
15767 2007-06-14  Ben Pfaff  <blp@gnu.org>
15768
15769         Missing part of allocsa -> malloca transition.
15770         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
15771         gl_MALLOCA.
15772
15773 2007-06-12  Bruno Haible  <bruno@clisp.org>
15774
15775         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
15776         to ia64, x86_64, i386.
15777         Reported by Eric Blake.
15778
15779 2007-06-12  Bruno Haible  <bruno@clisp.org>
15780
15781         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
15782         cross-compiling to x86_64.
15783
15784 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
15785
15786         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
15787         glitch reported by Ralf Wildenhues in
15788         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
15789
15790         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
15791         Vin Shelton.
15792
15793 2007-06-11  Bruno Haible  <bruno@clisp.org>
15794
15795         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
15796         replacement string.
15797         Reported by Eric Blake.
15798
15799 2007-06-10  Bruno Haible  <bruno@clisp.org>
15800
15801         Prepare vasnprintf code for use with Unicode strings.
15802         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
15803         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
15804         TYPE_U32_STRING.
15805         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
15806         a_u32_string variants.
15807         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
15808         * lib/printf-args.c: Don't include config.h and the specification
15809         header if PRINTF_FETCHARGS is already defined.
15810         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
15811         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
15812         TYPE_U16_STRING, TYPE_U32_STRING.
15813         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
15814         u16_directive, u16_directives, u32_directive, u32_directives): New
15815         types.
15816         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
15817         New declarations.
15818         * lib/printf-parse.c: Don't include config.h and the specification
15819         header if PRINTF_PARSE is already defined. Eliminate the set of
15820         parameters for WIDE_CHAR_VERSION; the user of this file must provide
15821         them now. Include c-ctype.h.
15822         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
15823         directive and CHAR_T_ONLY_ASCII.
15824         * lib/vasnprintf.c: Don't include config.h and the specification header
15825         if VASNPRINTF is already defined.
15826         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
15827         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
15828         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
15829         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
15830         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
15831         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
15832         code accordingly.
15833         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
15834         pad_ourselves also in this case, with the 'c' and 's' directives, and
15835         with a different notion of "width".
15836         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
15837
15838 2007-06-10  Bruno Haible  <bruno@clisp.org>
15839
15840         * modules/unistr/u32-mbsnlen: New file.
15841         * lib/unistr/u32-mbsnlen.c: New file.
15842
15843         * modules/unistr/u16-mbsnlen: New file.
15844         * lib/unistr/u16-mbsnlen.c: New file.
15845
15846         * modules/unistr/u8-mbsnlen: New file.
15847         * lib/unistr/u8-mbsnlen.c: New file.
15848
15849         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
15850         declarations.
15851
15852 2007-06-10  Bruno Haible  <bruno@clisp.org>
15853
15854         * lib/string_.h (mbsnlen): New declaration.
15855         * lib/mbsnlen.c: New file.
15856         * m4/mbsnlen.m4: New file.
15857         * modules/mbsnlen: New file.
15858         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
15859         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
15860         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
15861
15862 2007-06-10  Bruno Haible  <bruno@clisp.org>
15863
15864         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
15865
15866 2007-06-10  Bruno Haible  <bruno@clisp.org>
15867
15868         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
15869         * lib/mbuiter.h: Likewise.
15870
15871 2007-06-10  Bruno Haible  <bruno@clisp.org>
15872
15873         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
15874         declaration.
15875
15876 2007-06-10  Karl Berry  <karl@gnu.org>
15877
15878         * config/srclist.txt: remove gettext entries, Bruno prefers
15879         to update individually.
15880
15881 2007-06-10  Bruno Haible  <bruno@clisp.org>
15882
15883         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
15884         'maxlen'. Ensure only length + width bytes are allocated, not
15885         length + 1 + width.
15886
15887 2007-06-09  Bruno Haible  <bruno@clisp.org>
15888
15889         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
15890         (CHAR_T): Remove macro.
15891         (VASNPRINTF): Update.
15892
15893 2007-06-09  Bruno Haible  <bruno@clisp.org>
15894
15895         * MODULES.html.sh (Unicode string functions): Add the new modules.
15896
15897         * modules/uniconv/u32-conv-to-enc: New file.
15898         * lib/uniconv/u32-conv-to-enc.c: New file.
15899         * modules/uniconv/u32-conv-to-enc-tests: New file.
15900         * tests/uniconv/test-u32-conv-to-enc.c: New file.
15901
15902         * modules/uniconv/u16-conv-to-enc: New file.
15903         * lib/uniconv/u16-conv-to-enc.c: New file.
15904         * lib/uniconv/u-conv-to-enc.h: New file.
15905         * modules/uniconv/u16-conv-to-enc-tests: New file.
15906         * tests/uniconv/test-u16-conv-to-enc.c: New file.
15907
15908         * modules/uniconv/u8-conv-to-enc: New file.
15909         * lib/uniconv/u8-conv-to-enc.c: New file.
15910         * modules/uniconv/u8-conv-to-enc-tests: New file.
15911         * tests/uniconv/test-u8-conv-to-enc.c: New file.
15912
15913         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
15914         u32_conv_to_encoding): New declarations.
15915
15916 2007-06-09  Bruno Haible  <bruno@clisp.org>
15917
15918         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
15919
15920 2007-06-09  Bruno Haible  <bruno@clisp.org>
15921
15922         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
15923         * modules/malloca: Renamed from modules/allocsa, updated.
15924         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
15925         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
15926         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
15927         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
15928         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
15929         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
15930         * modules/xmalloca: Renamed from modules/xallocsa, updated.
15931         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
15932         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
15933         * modules/c-strcasestr (Depends-on): Update.
15934         * lib/c-strcasestr.c: Update.
15935         * modules/c-strstr (Depends-on): Update.
15936         * lib/c-strstr.c: Update.
15937         * modules/canonicalize-lgpl (Depends-on): Update.
15938         * lib/canonicalize-lgpl.c: Update.
15939         * modules/clean-temp (Depends-on): Update.
15940         * lib/clean-temp.c: Update.
15941         * modules/csharpcomp (Depends-on): Update.
15942         * lib/csharpcomp.c: Update.
15943         * modules/csharpexec (Depends-on): Update.
15944         * lib/csharpexec.c: Update.
15945         * modules/javacomp (Depends-on): Update.
15946         * lib/javacomp.c: Update.
15947         * modules/javaexec (Depends-on): Update.
15948         * lib/javaexec.c: Update.
15949         * modules/mbscasestr (Depends-on): Update.
15950         * lib/mbscasestr.c: Update.
15951         * modules/mbsstr (Depends-on): Update.
15952         * lib/mbsstr.c: Update.
15953         * modules/setenv (Depends-on): Update.
15954         * lib/setenv.c: Update.
15955         * modules/strcasestr (Depends-on): Update.
15956         * lib/strcasestr.c: Update.
15957         * modules/striconveha (Depends-on): Update.
15958         * lib/striconveha.c: Update.
15959         * modules/relocatable-prog-wrapper (Files): Update.
15960         * lib/relocwrapper.c: Update.
15961         * build-aux/install-reloc: Update.
15962         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
15963
15964 2007-06-08  Bruno Haible  <bruno@clisp.org>
15965
15966         Port to uClibc.
15967         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
15968         * lib/fpurge.c (fpurge): Likewise.
15969         * lib/freading.c (freading): Likewise.
15970         * lib/fseeko.c (rpl_fseeko): Likewise.
15971         * lib/fseterr.c (fseterr): Likewise.
15972         * lib/fwriting.c (fwriting): Likewise.
15973         * tests/test-fflush.c (main): Avoid a failure on uClibc.
15974
15975 2007-06-08  Bruno Haible  <bruno@clisp.org>
15976
15977         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
15978         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
15979         * modules/gettext (Files): Add m4/intlmacosx.m4.
15980
15981 2007-06-07  Bruno Haible  <bruno@clisp.org>
15982
15983         * modules/localename-tests: New file.
15984         * tests/test-localename.c: New file.
15985
15986         New module 'localename'.
15987         * lib/localename.h: New file.
15988         * lib/localename.c: New file, from GNU gettext.
15989         * m4/localename.m4: New file.
15990         * modules/localename: New file.
15991
15992 2007-06-07  Bruno Haible  <bruno@clisp.org>
15993
15994         Work around the lack of <wchar.h> on some builds of uClibc.
15995         * doc/headers/wchar.texi: Update.
15996         * lib/wchar_.h: Include <wchar.h> only if it exists.
15997         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
15998         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
15999         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
16000         doesn't exist.
16001         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
16002         * modules/mbfile (Depends-on): Add wchar.
16003         * modules/mbiter (Depends-on): Likewise.
16004         * modules/mbuiter (Depends-on): Likewise.
16005         Reported by Simon Josefsson.
16006
16007 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
16008
16009         Work around problem reported by Steven M. Schweda in
16010         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
16011         Tru64 5.1B with the Compaq compiler environment installed declares
16012         an 'isblank' function but does not define it in the C library.
16013         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
16014         * lib/regex_internal.h (isblank): Likewise.
16015         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
16016         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
16017
16018 2007-06-05  Bruno Haible  <bruno@clisp.org>
16019
16020         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
16021         ia64.
16022         * modules/printf-safe: New file.
16023         * modules/fprintf-posix (Depends-on): Add printf-safe.
16024         * modules/printf-posix (Depends-on): Likewise.
16025         * modules/snprintf-posix (Depends-on): Likewise.
16026         * modules/sprintf-posix (Depends-on): Likewise.
16027         * modules/vasnprintf-posix (Depends-on): Likewise.
16028         * modules/vasprintf-posix (Depends-on): Likewise.
16029         * modules/vfprintf-posix (Depends-on): Likewise.
16030         * modules/vprintf-posix (Depends-on): Likewise.
16031         * modules/vsnprintf-posix (Depends-on): Likewise.
16032         * modules/vsprintf-posix (Depends-on): Likewise.
16033         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
16034         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
16035         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
16036         "no" on i386, x86_64, ia64.
16037         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
16038         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16039         on i386, x86_64, ia64.
16040         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
16041         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16042         on i386, x86_64, ia64.
16043         * tests/test-vasnprintf-posix.c: Include float.h.
16044         (LDBL80_WORDS): New macro.
16045         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16046         on i386, x86_64, ia64.
16047         * tests/test-vasprintf-posix.c: Include float.h.
16048         (LDBL80_WORDS): New macro.
16049         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
16050         on i386, x86_64, ia64.
16051         * tests/test-snprintf-posix.c: Include float.h.
16052         * tests/test-sprintf-posix.c: Likewise.
16053         * tests/test-vsnprintf-posix.c: Likewise.
16054         * tests/test-vsprintf-posix.c: Likewise.
16055
16056 2007-06-05  Bruno Haible  <bruno@clisp.org>
16057
16058         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
16059         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
16060         non-IEEE numbers on i386, x86_64, ia64.
16061         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
16062         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
16063         * tests/test-isnanl.h: Include float.h.
16064         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
16065
16066 2007-06-05  Bruno Haible  <bruno@clisp.org>
16067
16068         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
16069         also the %a / %A. Handle the %a / %A code before this extra handling.
16070
16071 2007-06-05  Bruno Haible  <bruno@clisp.org>
16072
16073         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
16074         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
16075
16076 2007-06-05  Bruno Haible  <bruno@clisp.org>
16077
16078         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
16079         typo in variable name.
16080
16081 2007-06-05  Eric Blake  <ebb9@byu.net>
16082
16083         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
16084         Reported by Simon Josefsson.
16085
16086 2007-06-04  Bruno Haible  <bruno@clisp.org>
16087
16088         Avoid test failures on some PowerPC platforms.
16089         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
16090         Define differently for PowerPC.
16091         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
16092         Reported by Gary V. Vaughan <gary@gnu.org>.
16093
16094 2007-06-02  Bruno Haible  <bruno@clisp.org>
16095
16096         Fix test-stdint failure on FreeBSD/ia64.
16097         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
16098         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
16099         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
16100         * doc/headers/stdint.texi: Update.
16101
16102 2007-06-01  Bruno Haible  <bruno@clisp.org>
16103
16104         * tests/test-binary-io.c (main): Pass a third argument to open().
16105         Reported by Gary V. Vaughan <gary@gnu.org>.
16106
16107 2007-06-01  Bruno Haible  <bruno@clisp.org>
16108
16109         * doc/functions/frexpl.texi: Update for mingw.
16110
16111 2007-06-01  Bruno Haible  <bruno@clisp.org>
16112
16113         * tests/test-lseek.c (main): Disable test of errno for invalid third
16114         argument.
16115         * doc/functions/lseek.texi: Update.
16116         Reported by Gary V. Vaughan <gary@gnu.org>.
16117
16118 2007-05-28  Bruno Haible  <bruno@clisp.org>
16119
16120         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
16121
16122 2007-05-31  Eric Blake  <ebb9@byu.net>
16123
16124         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
16125         cross compiling.
16126
16127 2007-05-30  Eric Blake  <ebb9@byu.net>
16128         and Bruno Haible  <bruno@clisp.org>
16129
16130         Work around mingw test failures exposed by m4-1.4.9b.
16131         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
16132         * tests/test-unistd.c: Disable uid_t and git_t tests for the
16133         moment.
16134
16135 2007-05-30  Bruno Haible  <bruno@clisp.org>
16136
16137         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
16138         assuming that they are closed. Needed on HP-UX 11.
16139
16140 2007-05-29  Bruno Haible  <bruno@clisp.org>
16141
16142         Fix a problem with #include_next.
16143         * lib/dirent_.h: Split the double-inclusion guard.
16144         * lib/fcntl_.h: Likewise.
16145         * lib/float_.h: Likewise.
16146         * lib/iconv_.h: Likewise.
16147         * lib/inttypes_.h: Likewise.
16148         * lib/locale_.h: Likewise.
16149         * lib/math_.h: Likewise.
16150         * lib/netinet_in_.h: Likewise.
16151         * lib/search_.h: Likewise.
16152         * lib/signal_.h: Likewise.
16153         * lib/stdint_.h: Likewise.
16154         * lib/stdio_.h: Likewise.
16155         * lib/stdlib_.h: Likewise.
16156         * lib/string_.h: Likewise.
16157         * lib/sys_select_.h: Likewise.
16158         * lib/sys_socket_.h: Likewise.
16159         * lib/sys_stat_.h: Likewise.
16160         * lib/sys_time_.h: Likewise.
16161         * lib/sysexits_.h: Likewise.
16162         * lib/time_.h: Likewise.
16163         * lib/unistd_.h: Likewise.
16164         * lib/wchar_.h: Likewise.
16165         * lib/wctype_.h: Likewise.
16166
16167 2007-05-29  Bruno Haible  <bruno@clisp.org>
16168
16169         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
16170         for the moment.
16171
16172 2007-05-29  Bruno Haible  <bruno@clisp.org>
16173
16174         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
16175         invocation.
16176         Reported by Eric Blake.
16177
16178 2007-05-29  Bruno Haible  <bruno@clisp.org>
16179
16180         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
16181         compiling case.
16182
16183 2007-05-29  Eric Blake  <ebb9@byu.net>
16184             Bruno Haible  <bruno@clisp.org>
16185
16186         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
16187         cross compiles.
16188
16189 2007-05-28  Eric Blake  <ebb9@byu.net>
16190
16191         * modules/closein-tests (test_closein_LDADD): Support test on
16192         cygwin with libtool.
16193
16194 2007-05-28  Bruno Haible  <bruno@clisp.org>
16195
16196         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
16197         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
16198         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
16199         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
16200         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
16201         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
16202         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
16203         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
16204         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
16205
16206 2007-05-28  Eric Blake  <ebb9@byu.net>
16207
16208         Unconditionally include <config.h> in unit tests.
16209         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
16210         * tests/test-allocsa.c, tests/test-arcfour.c,
16211         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
16212         tests/test-array_list.c, tests/test-array_oset.c,
16213         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
16214         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
16215         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
16216         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
16217         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
16218         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
16219         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
16220         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
16221         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
16222         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
16223         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
16224         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
16225         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
16226         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
16227         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
16228         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
16229         test-md5.c, test-memmem.c, test-printf-posix.c,
16230         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
16231         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
16232         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
16233         test-strcasestr.c, test-striconv.c, test-striconveh.c,
16234         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
16235         test-vasnprintf-posix2.c, test-vasnprintf.c,
16236         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
16237         test-vfprintf-posix.c, test-vprintf-posix.c,
16238         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
16239         test-xvasprintf.c: Likewise.
16240
16241 2007-05-28  Bruno Haible  <bruno@clisp.org>
16242
16243         * gnulib-tool (func_import): Remember the --with-tests command-line
16244         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
16245         Reported by Eric Blake.
16246
16247 2007-05-28  Bruno Haible  <bruno@clisp.org>
16248
16249         * modules/ftell-tests: New file.
16250         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
16251         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
16252
16253         * lib/ftell.c: New file.
16254         * modules/ftell: New file.
16255         * m4/ftell.m4: New file.
16256         * doc/functions/ftell.texi: Update.
16257         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
16258         REPLACE_FTELL.
16259         * lib/stdio_.h (rpl_ftell): New declaration.
16260         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
16261         REPLACE_FTELL.
16262
16263 2007-05-28  Eric Blake  <ebb9@byu.net>
16264
16265         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
16266
16267 2007-05-28  Bruno Haible  <bruno@clisp.org>
16268
16269         * modules/fseek-tests: New file.
16270         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
16271         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
16272
16273         * lib/fseek.c: New file.
16274         * modules/fseek: New file.
16275         * m4/fseek.m4: New file.
16276         * doc/functions/fseek.texi: Update.
16277         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
16278         REPLACE_FSEEK.
16279         * lib/stdio_.h (rpl_fseek): New declaration.
16280         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
16281         REPLACE_FSEEK.
16282
16283 2007-05-28  Bruno Haible  <bruno@clisp.org>
16284
16285         * lib/stdio_.h (fflush): More comments.
16286
16287 2007-05-28  Bruno Haible  <bruno@clisp.org>
16288
16289         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
16290         runtime test.
16291
16292 2007-05-28  Eric Blake  <ebb9@byu.net>
16293
16294         Improve lseek module.
16295         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
16296         * lib/unistd_.h (lseek): Scale back link warning message.
16297         * tests/test-lseek.c: Beef up test.
16298         * tests/test-lseek.sh: Exercise more facets of lseek.
16299         Reported by Bruno Haible.
16300
16301 2007-05-28  Bruno Haible  <bruno@clisp.org>
16302
16303         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
16304         to define.
16305
16306 2007-05-27  Bruno Haible  <bruno@clisp.org>
16307
16308         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
16309
16310 2007-05-27  Bruno Haible  <bruno@clisp.org>
16311
16312         * modules/openmp: New file.
16313         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
16314         Noah Misch.
16315
16316 2007-05-26  Bruno Haible  <bruno@clisp.org>
16317
16318         * modules/chdir-long (Depends-on): Add fchdir.
16319         * modules/chdir-safer (Depends-on): Likewise.
16320         * modules/fts (Depends-on): Likewise.
16321         * modules/fts-lgpl (Depends-on): Likewise.
16322         * modules/openat (Depends-on): Likewise.
16323         * modules/savewd (Depends-on): Likewise.
16324
16325 2007-05-24  Eric Blake  <ebb9@byu.net>
16326
16327         Fix lseek on mingw.
16328         * modules/lseek: New module.
16329         * m4/lseek.m4: New file.
16330         * lib/lseek.c: New file.
16331         * modules/lseek-tests: New file.
16332         * tests/test-lseek.c: New file.
16333         * tests/test-lseek.sh: New file.
16334         * MODULES.html.sh: Document lseek module.
16335         * modules/fflush (Depends-on): Add lseek, fseeko.
16336         * modules/fseeko (Depends-on): Likewise.
16337         * modules/ftello (Depends-on): Likewise.
16338         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
16339         broken.
16340         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
16341         broken.
16342         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
16343         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
16344         * lib/ftello.c (rpl_ftello): Likewise.
16345         * tests/test-fseeko.c (main): Test this.
16346         * tests/test-fseeko.sh: Likewise.
16347         * tests/test-ftello.c (main): Likewise.
16348         * tests/test-ftello.sh: Likewise.
16349         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
16350         implies replacing fseek.
16351         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
16352         HAVE_FTELLO.
16353         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
16354         * modules/unistd (Makefile.am): Likewise.
16355         * lib/unistd_.h (lseek): Declare a replacement.
16356         * doc/functions/lseek.texi (lseek): Document this fix.
16357         * doc/functions/fseek.texi (fseek): Likewise.
16358         * doc/functions/ftell.texi (ftell): Likewise.
16359
16360 2007-05-24  Bruno Haible  <bruno@clisp.org>
16361
16362         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
16363         in the printed representation of a NaN.
16364         * tests/test-vasprintf-posix.c (test_function): Likewise.
16365         * tests/test-snprintf-posix.h (test_function): Likewise.
16366         * tests/test-sprintf-posix.h (test_function): Likewise.
16367         Reported by Eric Blake.
16368
16369 2007-05-23  Eric Blake  <ebb9@byu.net>
16370
16371         Fix fseeko/ftello on cygwin 1.5.24.
16372         * doc/functions/fseeko.texi (fseeko): Document the fix.
16373         * doc/functions/ftello.texi (ftello): Document the fix.
16374         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
16375         * doc/functions/stdout.text (stdout): New file.
16376         * doc/functions/stderr.text (stderr): New file.
16377         * doc/gnulib.texi (Function Substitutes): Use new files.
16378         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
16379         prior to 1.7.0.
16380         * tests/test-ftello.c (main): Likewise for ftello.
16381         * tests/test-fseeko.sh: New file.
16382         * tests/test-ftello.sh: New file.
16383         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
16384         with seekable stdin.
16385         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
16386         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
16387         (gl_REPLACE_FSEEKO): New macro.
16388         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
16389         * modules/fseeko (Files): Distribute fseeko.c.
16390         * modules/ftello (Files): Distribute ftello.c.
16391         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
16392         mode.
16393         * lib/ftello.c (rpl_ftello): New file.
16394         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
16395         fseeko, ftello.
16396         (gl_STDIN_LARGE_OFFSET): New macro.
16397         * modules/stdio (Makefile.am): Perform the replacement.
16398         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
16399
16400 2007-05-23  Bruno Haible  <bruno@clisp.org>
16401
16402         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
16403         GNULIB_POSIXCHECK is defined.
16404
16405 2007-05-21  Bruno Haible  <bruno@clisp.org>
16406
16407         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
16408         Check also the output for NaN arguments. When cross-compiling, guess
16409         no on IRIX.
16410         * lib/vasnprintf.c: Update comments.
16411         * tests/test-vasnprintf-posix.c (strisnan): New function.
16412         (test_function): Use it.
16413         * tests/test-vasprintf-posix.c (strisnan): New function.
16414         (test_function): Use it.
16415         * tests/test-snprintf-posix.h (strisnan): New function.
16416         (test_function): Use it.
16417         * tests/test-sprintf-posix.h (strisnan): New function.
16418         (test_function): Use it.
16419         Reported by Eric Blake.
16420
16421 2007-05-20  Bruno Haible  <bruno@clisp.org>
16422
16423         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
16424         numbers that fails on BeOS.
16425         * doc/functions/frexpl.texi: Update.
16426
16427 2007-05-20  Jim Meyering  <jim@meyering.net>
16428
16429         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
16430         forced upon us by glibc-2.6.
16431
16432 2007-05-20  Bruno Haible  <bruno@clisp.org>
16433
16434         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
16435         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
16436         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
16437         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
16438         NEED_PRINTF_INFINITE.
16439         (is_infinitel): New function.
16440         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
16441         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
16442         gl_PREREQ_VASNPRINTF_INFINITE.
16443         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
16444         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16445         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
16446         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
16447         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
16448         gl_PREREQ_VASNPRINTF_INFINITE.
16449         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16450         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16451         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16452         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16453         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16454         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16455         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16456         * doc/functions/fprintf.texi: Update.
16457         * doc/functions/printf.texi: Update.
16458         * doc/functions/snprintf.texi: Update.
16459         * doc/functions/sprintf.texi: Update.
16460         * doc/functions/vfprintf.texi: Update.
16461         * doc/functions/vprintf.texi: Update.
16462         * doc/functions/vsnprintf.texi: Update.
16463         * doc/functions/vsprintf.texi: Update.
16464
16465 2007-05-20  Bruno Haible  <bruno@clisp.org>
16466
16467         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
16468         was not found in libc.
16469         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
16470
16471 2007-05-20  Bruno Haible  <bruno@clisp.org>
16472
16473         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
16474         printed as "-nan" instead of "nan".
16475         * tests/test-vasprintf-posix.c (test_function): Likewise.
16476         * tests/test-snprintf-posix.h (test_function): Likewise.
16477         * tests/test-sprintf-posix.h (test_function): Likewise.
16478         Needed for HP-UX 11.
16479
16480 2007-05-20  Jim Meyering  <jim@meyering.net>
16481
16482         Fix buggy test for the fchownat-deref bug.
16483         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
16484         symlink required for the run-test.  Without it, this test would
16485         always declare that fchownat doesn't work, and client code would
16486         unnecessarily use the replacement function with fixed libc.
16487         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
16488         Reported by Greg Schafer.
16489
16490 2007-05-19  Bruno Haible  <bruno@clisp.org>
16491
16492         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
16493         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
16494         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
16495         Needed for IRIX 6.5 and Solaris 2.5.1.
16496
16497 2007-05-19  Bruno Haible  <bruno@clisp.org>
16498
16499         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
16500         (test_function): Skip tests involving -0.0 on platforms where
16501         -0.0 = 0.0.
16502         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
16503         (test_function): Skip tests involving -0.0 on platforms where
16504         -0.0 = 0.0.
16505         * tests/test-snprintf-posix.h (have_minus_zero): New function.
16506         (test_function): Skip tests involving -0.0 on platforms where
16507         -0.0 = 0.0.
16508         * tests/test-sprintf-posix.h (have_minus_zero): New function.
16509         (test_function): Skip tests involving -0.0 on platforms where
16510         -0.0 = 0.0.
16511         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
16512         tests.
16513         * tests/test-printf-posix.h (test_function): Likewise.
16514         * tests/test-printf-posix.output: Remove all -0.0 related results.
16515         Needed for IRIX 6.5.
16516
16517 2007-05-19  Bruno Haible  <bruno@clisp.org>
16518
16519         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
16520         printed as "nan0x7fffffff" instead of "nan".
16521         * tests/test-vasprintf-posix.c (test_function): Likewise.
16522         * tests/test-snprintf-posix.h (test_function): Likewise.
16523         * tests/test-sprintf-posix.h (test_function): Likewise.
16524         * tests/test-fprintf-posix.h (NaN): Remove macro.
16525         (test_function): Remove all NaN related tests.
16526         * tests/test-printf-posix.h (NaN): Remove macro.
16527         (test_function): Remove all NaN related tests.
16528         * tests/test-printf-posix.output: Remove all NaN related results.
16529         Needed for IRIX 6.5.
16530
16531 2007-05-19  Bruno Haible  <bruno@clisp.org>
16532
16533         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
16534         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
16535
16536 2007-05-19  Bruno Haible  <bruno@clisp.org>
16537
16538         * lib/float_.h: New file.
16539         * m4/float_h.m4: New file.
16540         * modules/float: New file.
16541         * modules/isnanl (Dependencies): Add float.
16542         * modules/isnanl-nolibm (Dependencies): Likewise.
16543         * modules/mathl (Dependencies): Likewise.
16544         * modules/printf-frexpl (Dependencies): Likewise.
16545         * modules/signbit (Dependencies): Likewise.
16546         * modules/vasnprintf (Dependencies): Likewise.
16547         * doc/headers/float.texi: Update.
16548
16549 2007-05-19  Jim Meyering  <jim@meyering.net>
16550
16551         * lib/utimens.c (gl_futimens): Rename from futimens,
16552         now that glibc-2.6 declares futimens.
16553         * lib/utimens.h: Likewise.
16554
16555 2007-05-19  Bruno Haible  <bruno@clisp.org>
16556
16557         Avoid test failures on mingw.
16558         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
16559         * tests/test-printf-posix.sh: Likewise.
16560         * tests/test-vfprintf-posix.sh: Likewise.
16561         * tests/test-vprintf-posix.sh: Likewise.
16562
16563 2007-05-19  Bruno Haible  <bruno@clisp.org>
16564
16565         Fix *printf result for NaN, Inf, -0.0 on mingw.
16566         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
16567         * lib/vasnprintf.c: Include math.h and isnan.h.
16568         (is_infinite_or_zero): New function.
16569         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
16570         values in the %f, %F, %e, %E, %g, %G directives.
16571         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
16572         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16573         gl_PRINTF_INFINITE and test its result. Invoke
16574         gl_PREREQ_VASNPRINTF_INFINITE.
16575         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16576         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16577         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16578         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16579         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16580         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16581         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16582         * doc/functions/fprintf.texi: Update.
16583         * doc/functions/printf.texi: Update.
16584         * doc/functions/snprintf.texi: Update.
16585         * doc/functions/sprintf.texi: Update.
16586         * doc/functions/vfprintf.texi: Update.
16587         * doc/functions/vprintf.texi: Update.
16588         * doc/functions/vsnprintf.texi: Update.
16589         * doc/functions/vsprintf.texi: Update.
16590
16591 2007-05-19  Bruno Haible  <bruno@clisp.org>
16592
16593         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
16594         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
16595         Instead of multiplying with 10^k, set extra_zeroes to k.
16596         (scale10_round_long_double): Remove function.
16597
16598 2007-05-18  Bruno Haible  <bruno@clisp.org>
16599
16600         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
16601         introduced on 2007-05-06.
16602
16603 2007-05-18  Bruno Haible  <bruno@clisp.org>
16604
16605         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
16606         %g directives.
16607         * tests/test-vasprintf-posix.c (test_function): Likewise.
16608         * tests/test-snprintf-posix.h (test_function): Likewise.
16609         * tests/test-sprintf-posix.h (test_function): Likewise.
16610
16611 2007-05-18  Bruno Haible  <bruno@clisp.org>
16612
16613         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
16614         (strmatch): New function.
16615         (test_function): Test the %f directive on numbers of various exponents.
16616         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
16617         (strmatch): New function.
16618         (test_function): Test the %f directive on numbers of various exponents.
16619         * tests/test-snprintf-posix.h (strmatch): New function.
16620         (test_function): Test the %f directive on numbers of various exponents.
16621         * tests/test-sprintf-posix.h (strmatch): New function.
16622         (test_function): Test the %f directive on numbers of various exponents.
16623         * tests/test-snprintf-posix.c (SIZEOF): New macro.
16624         * tests/test-sprintf-posix.c (SIZEOF): New macro.
16625         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
16626         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
16627
16628 2007-05-18  Bruno Haible  <bruno@clisp.org>
16629
16630         Add support for 'long double' number output.
16631         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
16632         * lib/vasnprintf.c: Include math.h and float+.h.
16633         (mp_limb_t): New type.
16634         (GMP_LIMB_BITS): New macro.
16635         (mp_twolimb_t): New type.
16636         (GMP_TWOLIMB_BITS): New macro.
16637         (mpn_t): New type.
16638         (multiply, divide, convert_to_decimal, decode_long_double,
16639         scale10_round_long_double, scale10_round_decimal_long_double,
16640         floorlog10l): New functions.
16641         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
16642         for the %f, %F, %e, %E, %g, %G directives.
16643         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
16644         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16645         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
16646         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
16647         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16648         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16649         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16650         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16651         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16652         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16653         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16654         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
16655         * modules/snprintf-posix (Depends-on): Likewise.
16656         * modules/sprintf-posix (Depends-on): Likewise.
16657         * modules/vasnprintf-posix (Depends-on): Likewise.
16658         * modules/vasprintf-posix (Depends-on): Likewise.
16659         * modules/vfprintf-posix (Depends-on): Likewise.
16660         * modules/vsnprintf-posix (Depends-on): Likewise.
16661         * modules/vsprintf-posix (Depends-on): Likewise.
16662         * modules/vasnprintf (Files): Add lib/float+.h.
16663         * doc/functions/fprintf.texi: Update.
16664         * doc/functions/printf.texi: Update.
16665         * doc/functions/snprintf.texi: Update.
16666         * doc/functions/sprintf.texi: Update.
16667         * doc/functions/vfprintf.texi: Update.
16668         * doc/functions/vprintf.texi: Update.
16669         * doc/functions/vsnprintf.texi: Update.
16670         * doc/functions/vsprintf.texi: Update.
16671
16672 2007-05-18  Bruno Haible  <bruno@clisp.org>
16673
16674         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
16675
16676 2007-05-18  Bruno Haible  <bruno@clisp.org>
16677
16678         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
16679         for printing 64-bit integers. Needed for mingw.
16680
16681 2007-05-18  Bruno Haible  <bruno@clisp.org>
16682
16683         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
16684         gl_FUNC_FREXPL_WORKS.
16685         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
16686
16687 2007-05-18  Bruno Haible  <bruno@clisp.org>
16688
16689         * modules/frexpl-nolibm-tests: New file.
16690
16691         * modules/frexpl-nolibm: New file.
16692         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
16693
16694 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
16695
16696         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
16697         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
16698         GCC 4.2, which otherwise issues a lot of warnings.
16699         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
16700         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
16701         Likewise.
16702         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
16703         * modules/iconv_open (iconv.h): Likewise.
16704         * modules/locale (locale.h): Likewise.
16705         * modules/netinet_in (netinet/in.h): Likewise.
16706         * modules/sys_select (sys_select.h): Likewise.
16707         * modules/sys_socket (sys/socket.h): Likewise.
16708         * modules/sys_stat (sys/stat.h): Likewise.
16709         * modules/sysexits (sysexits.h): Likewise.
16710         * modules/unistd (unistd.h): Likewise.
16711
16712 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16713
16714         * modules/closein-tests (Makefile.am): Distribute
16715         `test-closein.sh'.
16716
16717 2007-05-17  Bruno Haible  <bruno@clisp.org>
16718
16719         * tests/test-printf-posix.output: Renamed from
16720         tests/test-fprintf-posix.out.
16721         * modules/fprintf-posix-tests: Update.
16722         * modules/printf-posix-tests: Update.
16723         * modules/vfprintf-posix-tests: Update.
16724         * modules/vprintf-posix-tests: Update.
16725         * tests/test-fprintf-posix.sh: Update.
16726         * tests/test-printf-posix.sh: Update.
16727         * tests/test-vfprintf-posix.sh: Update.
16728         * tests/test-vprintf-posix.sh: Update.
16729         Reported by Ralf Wildenhues.
16730
16731 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
16732
16733         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
16734         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
16735         GCC 4.2, which otherwise issues a lot of warnings.
16736         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
16737         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
16738         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
16739         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
16740         it should no longer be needed.
16741         * lib/string_.h: Likewise.
16742         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
16743         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
16744         * modules/inttypes (inttypes.h): Likewise.
16745         * modules/math (math.h): Likewise.
16746         * modules/search (search.h): Likewise.
16747         * modules/signal (signal.h): Likewise.
16748         * modules/stdint (stdint.h): Likewise.
16749         * modules/stdio (stdio.h): Likewise.
16750         * modules/stdlib (stdlib.h): Likewise.
16751         * modules/string (string.h): Likewise.
16752         * modules/sys_time (sys/time.h): Likewise.
16753         * modules/time (time.h): Likewise.
16754         * modules/wchar (wchar.h): Likewise.
16755         * modules/wctype (wtype.h): Likewise.
16756
16757 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
16758
16759         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
16760
16761 2007-05-13  Bruno Haible  <bruno@clisp.org>
16762
16763         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
16764         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16765         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
16766         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
16767         (gl_PREREQ_STRTOK_R): Don't require it here.
16768
16769 2007-05-13  Bruno Haible  <bruno@clisp.org>
16770
16771         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
16772         when used in C++ mode.
16773
16774 2007-05-12  Bruno Haible  <bruno@clisp.org>
16775
16776         * lib/linebuffer.h: Tweak doc.
16777         * lib/linebuffer.c: Likewise.
16778
16779 2007-05-12  James Youngman  <jay@gnu.org>
16780
16781         * lib/linebuffer.c (readlinebuffer_delim): New function,
16782         like readlinebuffer, but use a caller-specified delimiter.
16783         (readlinebuffer): Just call readlinebuffer_delim with '\n'
16784         as the delimiter.
16785         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
16786
16787 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
16788
16789         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
16790         * modules/openat (Files): Remove openat-die.c.
16791         (Depends-on): Add openat-die.
16792         * modules/openat-die: New module.
16793
16794 2007-05-06  Bruno Haible  <bruno@clisp.org>
16795
16796         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
16797         Update with info about Cygwin.
16798         * doc/functions/fprintf.texi: Update.
16799         * doc/functions/printf.texi: Update.
16800         * doc/functions/snprintf.texi: Update.
16801         * doc/functions/sprintf.texi: Update.
16802         * doc/functions/vfprintf.texi: Update.
16803         * doc/functions/vprintf.texi: Update.
16804         * doc/functions/vsnprintf.texi: Update.
16805         * doc/functions/vsprintf.texi: Update.
16806         Reported by Eric Blake.
16807
16808 2007-05-06  Bruno Haible  <bruno@clisp.org>
16809
16810         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
16811         padding ourselves for the floating-point directives.
16812         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
16813         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
16814         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
16815         gl_PRINTF_FLAG_ZERO and test its result. Invoke
16816         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
16817         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16818         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
16819         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16820         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16821         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16822         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16823         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16824         * tests/test-snprintf-posix.h (test_function): Also check the width
16825         and some flags in the %f directive.
16826         * tests/test-sprintf-posix.h (test_function): Likewise.
16827         * tests/test-vasnprintf-posix.c (test_function): Likewise.
16828         * tests/test-vasprintf-posix.c (test_function): Likewise.
16829         * doc/functions/fprintf.texi: Update.
16830         * doc/functions/printf.texi: Update.
16831         * doc/functions/snprintf.texi: Update.
16832         * doc/functions/sprintf.texi: Update.
16833         * doc/functions/vfprintf.texi: Update.
16834         * doc/functions/vprintf.texi: Update.
16835         * doc/functions/vsnprintf.texi: Update.
16836         * doc/functions/vsprintf.texi: Update.
16837
16838 2007-05-06  Bruno Haible  <bruno@clisp.org>
16839
16840         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
16841         pass the ' flag character to sprintf or snprintf.
16842         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
16843         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
16844         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
16845         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
16846         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
16847         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16848         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
16849         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16850         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16851         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16852         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16853         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16854         * tests/test-snprintf-posix.h (test_function): Also check the grouping
16855         flag.
16856         * tests/test-sprintf-posix.h (test_function): Likewise.
16857         * tests/test-vasnprintf-posix.c (test_function): Likewise.
16858         * tests/test-vasprintf-posix.c (test_function): Likewise.
16859         * doc/functions/fprintf.texi: Update.
16860         * doc/functions/printf.texi: Update.
16861         * doc/functions/snprintf.texi: Update.
16862         * doc/functions/sprintf.texi: Update.
16863         * doc/functions/vfprintf.texi: Update.
16864         * doc/functions/vprintf.texi: Update.
16865         * doc/functions/vsnprintf.texi: Update.
16866         * doc/functions/vsprintf.texi: Update.
16867
16868 2007-05-01  Bruno Haible  <bruno@clisp.org>
16869
16870         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
16871
16872 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
16873
16874         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
16875         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
16876
16877 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
16878
16879         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
16880         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
16881         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
16882
16883 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
16884
16885         * lib/argp-help.c (struct hol_entry): New member `ord'.
16886         (HOL_ENTRY_PTRCMP): Use ord for comparison
16887         (hol_sort): Initialize ord.
16888
16889 2007-05-01  Bruno Haible  <bruno@clisp.org>
16890
16891         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
16892         Reported by Eric Blake.
16893         * doc/gnulib.texi (Function Substitutes): Update.
16894
16895 2007-05-01  Bruno Haible  <bruno@clisp.org>
16896
16897         * doc/functions.texi: Remove file, now redundant through
16898         doc/functions/*.texi.
16899
16900 2007-05-01  Bruno Haible  <bruno@clisp.org>
16901
16902         * modules/argp (Depends-on): Add sleep.
16903
16904 2007-05-01  Bruno Haible  <bruno@clisp.org>
16905
16906         * modules/sleep-tests: New file.
16907         * tests/test-sleep.c: New file.
16908
16909         * modules/sleep: New file.
16910         * lib/sleep.c: New file.
16911         * m4/sleep.m4: New file.
16912         * lib/unistd_.h (sleep): New declaration.
16913         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
16914         HAVE_SLEEP.
16915         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
16916         * doc/functions/sleep.texi: Document the sleep module.
16917
16918 2007-05-01  Bruno Haible  <bruno@clisp.org>
16919
16920         * lib/sigprocmask.h: Remove file.
16921         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
16922         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
16923         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
16924         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
16925         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
16926         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
16927         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
16928         HAVE_SIGSET_T as a shell variable.
16929         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
16930         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
16931         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
16932         (Depends-on): Add signal. Remove verify.
16933         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
16934         (Include): Mention <signal.h> instead of sigprocmask.h.
16935         * NEWS: Mention the change.
16936         * lib/fatal-signal.c: Don't include sigprocmask.h.
16937
16938 2007-05-01  Bruno Haible  <bruno@clisp.org>
16939
16940         * modules/signal: New file.
16941         * lib/signal_.h: New file.
16942         * m4/signal_h.m4: New file.
16943
16944 2007-05-01  Bruno Haible  <bruno@clisp.org>
16945
16946         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
16947         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
16948         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
16949         HAVE_WCTYPE_CTMP_BUG into wctype.h.
16950
16951 2007-05-01  Bruno Haible  <bruno@clisp.org>
16952
16953         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
16954         configure time.
16955         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
16956         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
16957         * modules/sys_stat (Makefile.am): Substitute their values into
16958         sys/stat.h.
16959
16960 2007-05-01  Bruno Haible  <bruno@clisp.org>
16961
16962         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
16963         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
16964         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
16965
16966 2007-05-01  Bruno Haible  <bruno@clisp.org>
16967
16968         * doc/header/assert.texi: Undo last change: don't mention the gnulib
16969         'assert' module here.
16970
16971 2007-05-01  Bruno Haible  <bruno@clisp.org>
16972
16973         * doc/functions/*.texi: New files.
16974         * doc/functions/google-ranking.txt: New file.
16975         * doc/gnulib.texi (Function Substitutes): New chapter.
16976         (ctime, inet_ntoa): Remove sections.
16977         * doc/ctime.texi: Remove file.
16978         * doc/inet_ntoa.texi: Remove file.
16979         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
16980         dependencies.
16981         (%.info): New rule, specifying a --reference-limit.
16982
16983 2007-05-01  Bruno Haible  <bruno@clisp.org>
16984
16985         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
16986
16987 2007-05-01  Bruno Haible  <bruno@clisp.org>
16988
16989         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
16990         the portability of 'mkdir' to mingw systems.
16991
16992 2007-05-01  Bruno Haible  <bruno@clisp.org>
16993
16994         * doc/headers/google-ranking.txt: New file.
16995
16996 2007-04-30  Eric Blake  <ebb9@byu.net>
16997
16998         Prefer fseeko to fseek.
16999         * modules/getpass (Depends-on): Add fseeko.
17000         * lib/getpass.c (getpass): Use fseeko, not fseek.
17001
17002 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
17003
17004         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
17005         assumes the sorting is stable, while most qsort implementations
17006         are not.  Use argument addresses to ensure they never compare as
17007         equal.
17008
17009         * tests/test-argp-2.sh (usage-indent test): Fix output
17010         (func_compare): Restore diff options
17011         * tests/test-argp.c: Restore #include "progname.h"
17012
17013 2007-04-29  Bruno Haible  <bruno@clisp.org>
17014
17015         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
17016         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17017         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
17018         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17019         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
17020         (configure.ac): Define CHECK_SNPRINTF_POSIX.
17021         (TESTS, check_PROGRAMS): Add test-snprintf.
17022         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
17023         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
17024         (TESTS, check_PROGRAMS): Add test-vsnprintf.
17025         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
17026         assertions that fail on HP-UX, OSF/1, or IRIX.
17027         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
17028
17029 2007-04-29  Bruno Haible  <bruno@clisp.org>
17030
17031         * MODULES.html.sh (posix_functions): Remove 'contents'.
17032
17033 2007-04-29  Karl Berry  <karl@gnu.org>
17034
17035         * config/srclist.txt (gendocs_template_min): new entry.
17036
17037 2007-04-29  Bruno Haible  <bruno@clisp.org>
17038
17039         Work around fpurge bug on BSD systems.
17040         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
17041         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
17042         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
17043         fpurge to rpl_fpurge if the system already has this function.
17044         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
17045         the case where the system already has this function. Correct invariants
17046         on BSD systems.
17047         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
17048         BSD systems.
17049
17050 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
17051
17052         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
17053         proposed by Sven Verdoolaege.
17054
17055         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
17056         options.
17057         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
17058         (usage and help tests): Update
17059
17060 2007-04-29  Bruno Haible  <bruno@clisp.org>
17061
17062         * tests/test-fflush.c (main): Use a file of size 17, not 10.
17063         Print more information in case of failure. Disable a test on BeOS.
17064
17065 2007-04-29  Bruno Haible  <bruno@clisp.org>
17066
17067         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
17068         This helps debugging on systems on which no gdb is available.
17069
17070 2007-04-29  Bruno Haible  <bruno@clisp.org>
17071
17072         * lib/freading.h: Improve comments.
17073         * lib/fwriting.h: Likewise.
17074         * tests/test-freading.c (main): Don't check freading immediately after
17075         repositioning. Needed for glibc.
17076
17077 2007-04-29  Bruno Haible  <bruno@clisp.org>
17078
17079         * lib/freading.c (freading): Trivial simplification.
17080
17081 2007-04-28  Bruno Haible  <bruno@clisp.org>
17082
17083         * tests/test-fwriting.c (main): Also test the interaction between
17084         fflush and fwriting.
17085         * modules/fwriting-tests (Depends-on): Add fflush.
17086
17087         * tests/test-freading.c (main): Also test the interaction between
17088         fflush and freading.
17089         * modules/freading-tests (Depends-on): Add fflush.
17090
17091 2007-04-28  Bruno Haible  <bruno@clisp.org>
17092
17093         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
17094         fseeko and ftello.
17095         Suggested by Eric Blake.
17096
17097 2007-04-28  Jim Meyering  <jim@meyering.net>
17098
17099         Avoid false-negative in gl_STDINT_H's C99 conformance test.
17100         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
17101         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
17102
17103 2007-04-27  Eric Blake  <ebb9@byu.net>
17104
17105         * doc/headers/assert.texi (assert.h): Document assert module use.
17106
17107 2007-04-27  Bruno Haible  <bruno@clisp.org>
17108
17109         * doc/headers/*.texi: New files.
17110         * doc/gnulib.texi (Header File Substitutes): New chapter.
17111         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
17112         dependencies.
17113         (standards.info ,standards.html, standards.dvi): Update dependencies.
17114         (mostlyclean, clean): New targets.
17115
17116 2007-04-27  Bruno Haible  <bruno@clisp.org>
17117
17118         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
17119         * modules/sysexits (Files, Makefile.am): Update.
17120
17121         * lib/sys_socket_.h: Renamed from lib/socket_.h.
17122         * modules/sys_socket (Files, Makefile.am): Update.
17123
17124         * lib/sys_stat_.h: Renamed from lib/stat_.h.
17125         * modules/sys_stat (Files, Makefile.am): Update.
17126
17127 2007-04-27  Eric Blake  <ebb9@byu.net>
17128
17129         * lib/freading.h: Improve comments.
17130         * lib/fwriting.h: Likewise.
17131         * lib/fflush.c: Likewise.
17132
17133         Fix closein for mingw.
17134         * modules/closein-tests: Add tests for closein.
17135         * tests/test-closein.c: New file.
17136         * tests/test-closein.sh: Likewise.
17137         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
17138         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
17139
17140 2007-04-27  Bruno Haible  <bruno@clisp.org>
17141
17142         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
17143         version is < 6.
17144         * lib/math_.h [__DECC]: Likewise.
17145         * lib/stdio_.h [__DECC]: Likewise.
17146         * lib/stdlib_.h [__DECC]: Likewise.
17147         * lib/string_.h [__DECC]: Likewise.
17148         * lib/time_.h [__DECC]: Likewise.
17149         * lib/wchar_.h [__DECC]: Likewise.
17150         * lib/wctype_.h [__DECC]: Likewise.
17151
17152 2007-04-27  Bruno Haible  <bruno@clisp.org>
17153
17154         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
17155
17156 2007-04-27  Bruno Haible  <bruno@clisp.org>
17157
17158         * lib/fflush.c: Add comments.
17159         * modules/fpurge-tests (Depends-on): Add fflush.
17160         * modules/freadable-tests (Depends-on): Likewise.
17161         * modules/fwritable-tests (Depends-on): Likewise.
17162
17163 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
17164
17165         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
17166         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
17167         Report by Bruno Haible <bruno@clisp.org>.
17168
17169 2007-04-26  Eric Blake  <ebb9@byu.net>
17170
17171         Fix fflush on mingw.
17172         * modules/fflush (Depends-on): Add freading.
17173         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
17174         but unread data.
17175
17176 2007-04-26  Eric Blake  <ebb9@byu.net>
17177         and Bruno Haible  <bruno@clisp.org>
17178
17179         Implement freading and fwriting.
17180         * lib/freading.c: New file.
17181         * lib/freading.h: Likewise.
17182         * m4/freading.m4: Likewise.
17183         * modules/freading: Likewise.
17184         * modules/freading-tests: Likewise.
17185         * tests/test-freading.c: Likewise.
17186         * lib/fwriting.c: New file.
17187         * lib/fwriting.h: Likewise.
17188         * m4/fwriting.m4: Likewise.
17189         * modules/fwriting: Likewise.
17190         * modules/fwriting-tests: Likewise.
17191         * tests/test-fwriting.c: Likewise.
17192         * MODULES.html.sh (File stream based Input/Output): Mention them.
17193
17194 2007-04-26  Bruno Haible  <bruno@clisp.org>
17195
17196         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
17197         'long' when we assume it.
17198         Suggested by Eric Blake.
17199
17200 2007-04-26  Bruno Haible  <bruno@clisp.org>
17201
17202         Ensure fseeko, ftello are declared on glibc systems.
17203         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
17204         * modules/fseeko (configure.ac-early): Likewise.
17205         * modules/ftello (configure.ac-early): Likewise.
17206         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
17207         AC_FUNC_FSEEKO for this.
17208         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
17209         (gl_CHECK_FSEEKO): Remove macro.
17210
17211 2007-04-26  Bruno Haible  <bruno@clisp.org>
17212
17213         * tests/test-fflush.c (main): Also check the ftell result after
17214         fflush and fseek/fseeko.
17215         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
17216         file descriptor position cache in the stream.
17217         * lib/fseeko.c (rpl_fseeko): Likewise.
17218
17219 2007-04-26  Bruno Haible  <bruno@clisp.org>
17220
17221         * modules/fflush-tests (Depends-on): Add fseeko.
17222
17223 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
17224             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17225
17226         * lib/argz_.h: ensure error_t definition is obtained in same
17227         mechanism system argz.h would have.
17228         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
17229         argz facilities are known bad.  Err on the side of caution if
17230         cross-compiling.
17231
17232 2007-04-25  Eric Blake  <ebb9@byu.net>
17233
17234         * lib/fpurge.c (includes): Use stdlib.h for free.
17235         * tests/test-fflush.c (main): Also test fflush-fseeko.
17236
17237 2007-04-25  Bruno Haible  <bruno@clisp.org>
17238
17239         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
17240         * lib/fseeko.c: New file.
17241         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
17242         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
17243         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
17244         gl_FUNC_FSEEKO.
17245         (gl_FUNC_FSEEKO): Invoke it.
17246         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
17247         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
17248         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
17249
17250 2007-04-25  Bruno Haible  <bruno@clisp.org>
17251
17252         * modules/fflush (Depends-on): Add ftello.
17253
17254 2007-04-25  Bruno Haible  <bruno@clisp.org>
17255
17256         * modules/ftello-tests: New file.
17257         * tests/test-ftello.c: New file.
17258
17259         * modules/ftello: New file.
17260         * m4/ftello.m4: New file.
17261         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
17262         HAVE_FTELLO.
17263         * lib/stdio_.h (ftello): New declaration.
17264         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
17265         HAVE_FTELLO.
17266
17267 2007-04-25  Bruno Haible  <bruno@clisp.org>
17268
17269         * modules/fseeko-tests: New file.
17270         * tests/test-fseeko.c: New file.
17271
17272         * modules/fseeko: New file.
17273         * m4/fseeko.m4: New file.
17274         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
17275         HAVE_FSEEKO.
17276         * lib/stdio_.h (fseeko): New declaration.
17277         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
17278         HAVE_FSEEKO.
17279
17280 2007-04-25  Bruno Haible  <bruno@clisp.org>
17281
17282         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
17283
17284 2007-04-25  Bruno Haible  <bruno@clisp.org>
17285
17286         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
17287         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
17288         * tests/test-unistd.c: Likewise.
17289         * tests/test-fcntl.c: Likewise.
17290
17291 2007-04-23  Eric Blake  <ebb9@byu.net>
17292
17293         * lib/fflush.c: Fix missing include.
17294         Reported by Bruno Haible.
17295
17296 2007-04-23  Bruno Haible  <bruno@clisp.org>
17297
17298         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
17299         Reported by Eric Blake.
17300
17301 2007-04-23  Bruno Haible  <bruno@clisp.org>
17302
17303         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
17304
17305 2007-04-23  Bruno Haible  <bruno@clisp.org>
17306
17307         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
17308
17309 2007-04-23  Bruno Haible  <bruno@clisp.org>
17310
17311         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
17312         Needed on HP-UX 11.
17313
17314 2007-04-16  Eric Blake  <ebb9@byu.net>
17315
17316         Make fflush rely on fpurge.
17317         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
17318         open coding all variants.
17319         * modules/fflush (Depends-on): Add fpurge and unistd.
17320         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
17321         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
17322
17323         Fix --with-tests compilation on cygwin.
17324         * modules/argmatch-tests (Makefile.am): List gnulib library first
17325         in LDADD.
17326         * modules/argp-tests (Makefile.am): Likewise.
17327         * modules/array-list-tests (Makefile.am): Likewise.
17328         * modules/array-oset-tests (Makefile.am): Likewise.
17329         * modules/avltree-list-tests (Makefile.am): Likewise.
17330         * modules/avltree-oset-tests (Makefile.am): Likewise.
17331         * modules/avltreehash-list-tests (Makefile.am): Likewise.
17332         * modules/carray-list-tests (Makefile.am): Likewise.
17333         * modules/dirname-tests (Makefile.am): Likewise.
17334         * modules/frexp-tests (Makefile.am): Likewise.
17335         * modules/isnanl-tests (Makefile.am): Likewise.
17336         * modules/linked-list-tests (Makefile.am): Likewise.
17337         * modules/linkedhash-list-tests (Makefile.am): Likewise.
17338         * modules/lock-tests (Makefile.am): Likewise.
17339         * modules/rbtree-list-tests (Makefile.am): Likewise.
17340         * modules/rbtree-oset-tests (Makefile.am): Likewise.
17341         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
17342         * modules/tls-tests (Makefile.am): Likewise.
17343         * modules/tsearch-tests (Makefile.am): Likewise.
17344         * modules/xvasprintf-tests (Makefile.am): Likewise.
17345
17346         Fix fpurge for cygwin.
17347         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
17348         value.
17349         * modules/fpurge-tests (Depends-on): Clean up trash.
17350
17351 2007-04-16  Simon Josefsson  <simon@josefsson.org>
17352
17353         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
17354
17355         * m4/autobuild.m4: Re-indent.
17356
17357 2007-04-13  Bruno Haible  <bruno@clisp.org>
17358
17359         * modules/fpurge-tests: New file.
17360         * tests/test-fpurge.c: New file.
17361
17362         * modules/fpurge: New file.
17363         * lib/fpurge.h: New file.
17364         * lib/fpurge.c: New file.
17365         * m4/fpurge.m4: New file.
17366
17367 2007-04-13  Bruno Haible  <bruno@clisp.org>
17368
17369         * modules/fbufmode-tests: New file.
17370         * tests/test-fbufmode.c: New file.
17371
17372         * modules/fbufmode: New file.
17373         * lib/fbufmode.h: New file.
17374         * lib/fbufmode.c: New file.
17375         * m4/fbufmode.m4: New file.
17376
17377 2007-04-13  Bruno Haible  <bruno@clisp.org>
17378
17379         * modules/fwritable-tests: New file.
17380         * tests/test-fwritable.c: New file.
17381
17382         * modules/fwritable: New file.
17383         * lib/fwritable.h: New file.
17384         * lib/fwritable.c: New file.
17385         * m4/fwritable.m4: New file.
17386
17387 2007-04-13  Bruno Haible  <bruno@clisp.org>
17388
17389         * modules/freadable-tests: New file.
17390         * tests/test-freadable.c: New file.
17391
17392         * modules/freadable: New file.
17393         * lib/freadable.h: New file.
17394         * lib/freadable.c: New file.
17395         * m4/freadable.m4: New file.
17396
17397 2007-04-13  Bruno Haible  <bruno@clisp.org>
17398
17399         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
17400         MOSTLYCLEANFILES.
17401
17402 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
17403
17404         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
17405         gzip bootstrap.conf to avoid dragging in i18n machinery.
17406         (gnulib_tool_option): Use it.
17407
17408 2007-04-13  Bruno Haible  <bruno@clisp.org>
17409
17410         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
17411         %F directives.
17412         * tests/test-vasprintf-posix.c (test_function): Likewise.
17413         * tests/test-snprintf-posix.h (test_function): Likewise.
17414         * tests/test-sprintf-posix.h (test_function): Likewise.
17415         * tests/test-fprintf-posix.h (test_function): Likewise.
17416         * tests/test-printf-posix.h (test_function): Likewise.
17417         * tests/test-fprintf-posix.out: Likewise.
17418
17419 2007-04-13  Bruno Haible  <bruno@clisp.org>
17420
17421         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
17422         * modules/tls-tests (configure.ac): Likewise.
17423         Reported by Arto C. Nirkko <anirkko@insel.ch>.
17424
17425 2007-04-13  Bruno Haible  <bruno@clisp.org>
17426
17427         * lib/tls.c (glthread_tls_get): Fix return type.
17428         Patch by Arto C. Nirkko <anirkko@insel.ch>.
17429
17430 2007-04-12  Eric Blake  <ebb9@byu.net>
17431
17432         * modules/gettime (Depends-on): Remove gettime.
17433         Reported by Dmitry V. Levin.
17434
17435 2007-04-12  Bruno Haible  <bruno@clisp.org>
17436
17437         * modules/fflush (Include): Mention <stdio.h>.
17438         * modules/strtoimax (Include): Mention <inttypes.h>.
17439         * modules/strtoumax (Include): Likewise.
17440
17441 2007-04-12  Eric Blake  <ebb9@byu.net>
17442
17443         * .cvsignore: New file.
17444         * .gitignore: Likewise.
17445
17446 2007-04-12  Bruno Haible  <bruno@clisp.org>
17447
17448         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
17449         not before, since $(LDADD) often contains libgnu.a.
17450         * modules/striconv-tests (test_striconv_LDADD): Likewise.
17451         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
17452         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
17453         Needed on Cygwin.
17454
17455 2007-04-12  Eric Blake  <ebb9@byu.net>
17456
17457         Work around glibc's failure to flush stdin on fclose.
17458         * lib/closein.c (close_stdin): Flush stdin before closing.
17459
17460         Work around glibc's failure to reset seekable stdin on exit.
17461         * modules/closein: New module.
17462         * lib/closein.c: New file.
17463         * lib/closein.h: Likewise.
17464         * m4/closein.m4: Likewise.
17465         * MODULES.html.sh (File stream based Input/Output): Document it.
17466
17467 2007-04-12  Simon Josefsson  <simon@josefsson.org>
17468
17469         * gnulib-tool: Rename generated 'autobuild' script to
17470         'do-autobuild' in --create-megatestdir output.
17471
17472         * doc/gnulib.texi (Build robot for gnulib): Fix.
17473
17474 2007-04-12  Simon Josefsson  <simon@josefsson.org>
17475
17476         * modules/sysexits (Depends-on): Add absolute-header.
17477
17478 2007-04-12  Eric Blake  <ebb9@byu.net>
17479
17480         No need to preserve errno on success.
17481         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
17482         Reported by Bruno Haible.
17483
17484 2007-04-12  Simon Josefsson  <simon@josefsson.org>
17485
17486         * MODULES.html.sh (Support for maintaining and releasing
17487         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
17488
17489 2007-04-12  Simon Josefsson  <simon@josefsson.org>
17490
17491         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
17492
17493 2007-04-12  Simon Josefsson  <simon@josefsson.org>
17494
17495         * modules/autobuild: New module.
17496
17497         * m4/autobuild.m4: New file.
17498
17499 2007-04-11  Bruno Haible  <bruno@clisp.org>
17500
17501         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
17502         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
17503         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
17504         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
17505         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17506         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17507         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17508         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
17509         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17510         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17511         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
17512         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17513         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17514         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
17515         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17516         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17517         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
17518         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17519         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17520         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
17521         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17522         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17523         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
17524         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17525         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17526         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
17527         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
17528         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
17529         Reported by Eric Blake.
17530
17531 2007-04-11  Bruno Haible  <bruno@clisp.org>
17532
17533         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
17534
17535 2007-04-10  Bruno Haible  <bruno@clisp.org>
17536
17537         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
17538         for NaN and Infinity. Needed on FreeBSD 6.1.
17539         * tests/test-vasnprintf-posix.c (test_function): Undo last change
17540         regarding results for "%010a" of Infinity and NaN.
17541         * tests/test-vasprintf-posix.c (test_function): Likewise.
17542         * tests/test-snprintf-posix.h (test_function): Likewise.
17543         * tests/test-sprintf-posix.h (test_function): Likewise.
17544         * tests/test-fprintf-posix.h (test_function): Likewise.
17545         * tests/test-printf-posix.h (test_function): Likewise.
17546         * tests/test-fprintf-posix.out: Likewise.
17547
17548 2007-04-10  Bruno Haible  <bruno@clisp.org>
17549
17550         * modules/locale-tests: New file.
17551         * tests/test-locale.c: New file.
17552
17553         * modules/locale: New file.
17554         * lib/locale_.h: New file.
17555         * m4/locale_h.m4: New file.
17556
17557 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
17558             Bruno Haible  <bruno@clisp.org>
17559
17560         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
17561         be determined, test for availability of the copysignf, copysign,
17562         copysignl functions.
17563         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
17564         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
17565         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
17566
17567 2007-04-09  Eric Blake  <ebb9@byu.net>
17568
17569         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
17570         * modules/stdio (Makefile.am): Support fflush.
17571         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
17572         * modules/fflush: New file.
17573         * lib/fflush.c: Likewise.
17574         * m4/fflush.m4: Likewise.
17575         * modules/fflush-tests: New test.
17576         * tests/test-fflush.c: Likewise.
17577         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
17578
17579 2007-04-06  Bruno Haible  <bruno@clisp.org>
17580
17581         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
17582         (VASNPRINTF): Use signbit for faster determination whether to print a
17583         minus sign.
17584         * modules/vasnprintf (Files): Remove lib/float+.h.
17585         * modules/fprintf-posix (Depends-on): Add signbit.
17586         * modules/snprintf-posix (Depends-on): Likewise.
17587         * modules/sprintf-posix (Depends-on): Likewise.
17588         * modules/vasnprintf-posix (Depends-on): Likewise.
17589         * modules/vasprintf-posix (Depends-on): Likewise.
17590         * modules/vfprintf-posix (Depends-on): Likewise.
17591         * modules/vsnprintf-posix (Depends-on): Likewise.
17592         * modules/vsprintf-posix (Depends-on): Likewise.
17593
17594 2007-04-06  Bruno Haible  <bruno@clisp.org>
17595
17596         * tests/test-frexp.c (main): Test also the sign bit of zero results.
17597         * tests/test-frexpl.c (main): Likewise.
17598         * tests/test-ldexpl.c (main): Likewise.
17599         * modules/frexp-tests (Depends-on): Add signbit.
17600         * modules/frexpl-tests (Depdends-on): Likewise.
17601         * modules/ldexpl-tests (Depdends-on): Likewise.
17602
17603 2007-04-06  Bruno Haible  <bruno@clisp.org>
17604
17605         * modules/signbit-tests: New file.
17606         * tests/test-signbit.c: New file.
17607
17608         * modules/signbit: New file.
17609         * lib/signbitf.c: New file.
17610         * lib/signbitd.c: New file.
17611         * lib/signbitl.c: New file.
17612         * m4/signbit.m4: New file.
17613         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
17614         (signbit): New macro.
17615         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
17616         REPLACE_SIGNBIT.
17617         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
17618         REPLACE_FREXPL into math.h.
17619
17620 2007-04-06  Bruno Haible  <bruno@clisp.org>
17621
17622         * modules/isnanf-nolibm-tests: New file.
17623         * tests/test-isnanf.c: New file.
17624
17625         * modules/isnanf-nolibm: New file.
17626         * lib/isnanf.h: New file.
17627         * lib/isnanf.c: New file.
17628         * lib/isnan.c: Consider the USE_FLOAT macro.
17629         * m4/isnanf.m4: New file.
17630
17631 2007-04-06  Bruno Haible  <bruno@clisp.org>
17632
17633         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
17634         (Link): New section.
17635
17636         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
17637
17638 2007-04-06  Bruno Haible  <bruno@clisp.org>
17639
17640         Assume the 'long double' type.
17641         * m4/longdouble.m4: Remove file.
17642         * config/srclist.txt: Don't mention longdouble.m4.
17643         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
17644         * lib/float+.h: Likewise.
17645         * lib/frexp.c: Likewise.
17646         * lib/printf-args.h: Likewise.
17647         * lib/printf-args.c: Likewise.
17648         * lib/printf-frexp.c: Likewise.
17649         * lib/printf-parse.c: Likewise.
17650         * lib/vasnprintf.c: Likewise.
17651         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
17652         * m4/intl.m4: Likewise.
17653         * m4/isnanl.m4: Likewise.
17654         * m4/printf.m4: Likewise.
17655         * m4/printf-frexpl.m4: Likewise.
17656         * m4/vasnprintf.m4: Likewise.
17657         * modules/allocsa (Files): Remove m4/longdouble.m4.
17658         * modules/gettext (Files): Likewise.
17659         * modules/relocatable-prog-wrapper (Files): Likewise.
17660         * modules/vasnprintf (Files): Likewise.
17661         * modules/isnanl (Files): Likewise.
17662         (Include): Simplify.
17663         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
17664         (Include): Simplify.
17665         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
17666         (Include): Simplify.
17667         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
17668         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17669         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
17670         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17671         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
17672         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17673         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
17674         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17675         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
17676         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17677         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
17678         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
17679         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
17680         * tests/test-isnanl.c: Likewise.
17681         * tests/test-snprintf-posix.h: Likewise.
17682         * tests/test-sprintf-posix.h: Likewise.
17683         * tests/test-vasnprintf-posix.c: Likewise.
17684         * tests/test-vasnprintf-posix2.c: Likewise.
17685         * tests/test-vasprintf-posix.c: Likewise.
17686
17687 2007-04-06  Bruno Haible  <bruno@clisp.org>
17688
17689         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
17690         * lib/math_.h [__DECC]: Include the overridden include file through
17691         #include_next, outside the double-inclusion guard.
17692         * lib/stdio_.h [__DECC]: Likewise.
17693         * lib/stdlib_.h [__DECC]: Likewise.
17694         * lib/string_.h [__DECC]: Likewise.
17695         * lib/time_.h [__DECC]: Likewise.
17696         * lib/wchar_.h [__DECC]: Likewise.
17697         * lib/wctype_.h [__DECC]: Likewise.
17698         * lib/inttypes_.h [__DECC]: Likewise.
17699         Reported by Albert Chin <china@thewrittenword.com> in
17700         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
17701
17702 2007-04-04  Eric Blake  <ebb9@byu.net>
17703
17704         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
17705         1.5.x.
17706
17707 2007-04-04  Bruno Haible  <bruno@clisp.org>
17708
17709         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
17710         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
17711
17712 2007-04-04  Bruno Haible  <bruno@clisp.org>
17713
17714         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
17715         results for "%010a" of Infinity and NaN.
17716         * tests/test-vasprintf-posix.c (test_function): Likewise.
17717         * tests/test-snprintf-posix.h (test_function): Likewise.
17718         * tests/test-sprintf-posix.h (test_function): Likewise.
17719         * tests/test-fprintf-posix.h (test_function): Remove these tests.
17720         * tests/test-printf-posix.h (test_function): Likewise.
17721         * tests/test-fprintf-posix.out: Update.
17722         Needed for FreeBSD 6.1.
17723
17724 2007-04-04  Bruno Haible  <bruno@clisp.org>
17725
17726         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
17727         directly used by the gnulib modules nor by gnulib-tool.
17728
17729 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
17730
17731         * DEPENDENCIES: Give overall description of version dependency
17732         desirability.  Use more-typical names for apps.
17733         Add shell, coreutils, diffutils, grep, tar, gzip.
17734
17735 2007-04-04  Simon Josefsson  <simon@josefsson.org>
17736
17737         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
17738
17739 2007-04-04  Karl Berry  <karl@gnu.org>
17740
17741         * MODULES.html.sh (func_module): missing '.
17742
17743 2007-04-03  Bruno Haible  <bruno@clisp.org>
17744
17745         * modules/argmatch-tests (Makefile.am): New variable
17746         test_argmatch_LDADD.
17747         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
17748         * modules/array-list-tests (Makefile.am): New variable
17749         test_array_list_LDADD.
17750         * modules/array-oset-tests (Makefile.am): New variable
17751         test_array_oset_LDADD.
17752         * modules/avltree-list-tests (Makefile.am): New variable
17753         test_avltree_list_LDADD.
17754         * modules/avltree-oset-tests (Makefile.am): New variable
17755         test_avltree_oset_LDADD.
17756         * modules/avltreehash-list-tests (Makefile.am): New variable
17757         test_avltreehash_list_LDADD.
17758         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
17759         test_canonicalize_lgpl_LDADD.
17760         * modules/carray-list-tests (Makefile.am): New variable
17761         test_carray_list_LDADD.
17762         * modules/dirname-tests (Makefile.am): New variable
17763         test_dirname_LDADD.
17764         * modules/linked-list-tests (Makefile.am): New variable
17765         test_linked_list_LDADD.
17766         * modules/linkedhash-list-tests (Makefile.am): New variable
17767         test_linkedhash_list_LDADD.
17768         * modules/rbtree-list-tests (Makefile.am): New variable
17769         test_rbtree_list_LDADD.
17770         * modules/rbtree-oset-tests (Makefile.am): New variable
17771         test_rbtree_oset_LDADD.
17772         * modules/rbtreehash-list-tests (Makefile.am): New variable
17773         test_rbtreehash_list_LDADD.
17774         * modules/xvasprintf-tests (Makefile.am): New variable
17775         test_xvasprintf_LDADD.
17776         Reported by Eric Blake.
17777
17778 2007-04-03  Eric Blake  <ebb9@byu.net>
17779
17780         * DEPENDENCIES: Weaken m4 requirements.
17781
17782 2007-04-03  Bruno Haible  <bruno@clisp.org>
17783
17784         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
17785         * modules/isnanl-tests (configure.ac): Likewise.
17786
17787 2007-04-03  Ben Pfaff  <blp@gnu.org>
17788
17789         * modules/iconv_open: Add $(srcdir)/ to source directory
17790         references in Makefile fragments that call gperf, to fix VPATH
17791         builds.
17792
17793 2007-04-03  Bruno Haible  <bruno@clisp.org>
17794
17795         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
17796         * lib/ldexpl.c: Undo last change.
17797
17798 2007-04-03  Bruno Haible  <bruno@clisp.org>
17799
17800         * modules/printf-frexpl (Depends-on): Undo last change.
17801         (Files): Add m4/ldexpl.m4.
17802
17803 2007-04-03  Bruno Haible  <bruno@clisp.org>
17804
17805         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
17806         * modules/isnanl (Link): New section.
17807
17808         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
17809         * modules/frexp (Link): New section.
17810
17811         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
17812         * modules/frexpl (Link): New section.
17813
17814         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
17815         * modules/ldexpl (Link): New section.
17816
17817 2007-04-03  Bruno Haible  <bruno@clisp.org>
17818
17819         * modules/TEMPLATE-EXTENDED: New file.
17820         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
17821
17822 2007-04-03  Bruno Haible  <bruno@clisp.org>
17823
17824         * DEPENDENCIES: New file.
17825         Suggested by Simon Josefsson.
17826
17827 2007-04-03  Bruno Haible  <bruno@clisp.org>
17828
17829         * doc/gnulib.texi: Escape @.
17830
17831 2007-04-03  James Youngman  <jay@gnu.org>
17832         and Paul Eggert  <eggert@cs.ucla.edu>
17833
17834         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
17835         birthtime on all systems that have birthtime, not just those which
17836         use st_birthtimensec rather than st_birthtim.  Putting zero in
17837         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
17838         that the birth time is not available for files on an NFS mount.
17839
17840 2007-04-03  Simon Josefsson  <simon@josefsson.org>
17841
17842         * modules/memxor: Move back from crypto/, suggested by Bruno.
17843         * modules/crypto/hmac-sha1: Fix memxor dependency.
17844
17845         * modules/crypto/gc: Moved from ../.
17846
17847 2007-04-02  Eric Blake  <ebb9@byu.net>
17848
17849         * lib/ldexpl.c (includes): Avoid libm.
17850
17851         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
17852
17853 2007-04-02  Bruno Haible  <bruno@clisp.org>
17854
17855         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
17856         on IRIX.
17857
17858 2007-04-02  Bruno Haible  <bruno@clisp.org>
17859
17860         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
17861         x86 or x86_64 platforms running MacOS X.
17862         Reported by Ryan Schmidt <@ryandesign.com>.
17863
17864 2007-04-02  Bruno Haible  <bruno@clisp.org>
17865
17866         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
17867         i386.
17868
17869 2007-04-01  Simon Josefsson  <simon@josefsson.org>
17870
17871         * modules/crypto/arcfour: Moved from ../.
17872         * modules/crypto/arcfour-tests: Moved from ../.
17873         * modules/crypto/arctwo: Moved from ../.
17874         * modules/crypto/arctwo-tests: Moved from ../.
17875         * modules/crypto/des: Moved from ../.
17876         * modules/crypto/des-tests: Moved from ../.
17877         * modules/crypto/gc-arcfour: Moved from ../.
17878         * modules/crypto/gc-arcfour-tests: Moved from ../.
17879         * modules/crypto/gc-arctwo: Moved from ../.
17880         * modules/crypto/gc-arctwo-tests: Moved from ../.
17881         * modules/crypto/gc-des: Moved from ../.
17882         * modules/crypto/gc-des-tests: Moved from ../.
17883         * modules/crypto/gc-hmac-md5: Moved from ../.
17884         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
17885         * modules/crypto/gc-hmac-sha1: Moved from ../.
17886         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
17887         * modules/crypto/gc-md2: Moved from ../.
17888         * modules/crypto/gc-md2-tests: Moved from ../.
17889         * modules/crypto/gc-md4: Moved from ../.
17890         * modules/crypto/gc-md4-tests: Moved from ../.
17891         * modules/crypto/gc-md5: Moved from ../.
17892         * modules/crypto/gc-md5-tests: Moved from ../.
17893         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
17894         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
17895         * modules/crypto/gc-random: Moved from ../.
17896         * modules/crypto/gc-rijndael: Moved from ../.
17897         * modules/crypto/gc-rijndael-tests: Moved from ../.
17898         * modules/crypto/gc-sha1: Moved from ../.
17899         * modules/crypto/gc-sha1-tests: Moved from ../.
17900         * modules/crypto/gc-tests: Moved from ../.
17901         * modules/crypto/hmac-md5: Moved from ../.
17902         * modules/crypto/hmac-md5-tests: Moved from ../.
17903         * modules/crypto/hmac-sha1: Moved from ../.
17904         * modules/crypto/hmac-sha1-tests: Moved from ../.
17905         * modules/crypto/md2: Moved from ../.
17906         * modules/crypto/md2-tests: Moved from ../.
17907         * modules/crypto/md4: Moved from ../.
17908         * modules/crypto/md4-tests: Moved from ../.
17909         * modules/crypto/md5: Moved from ../.
17910         * modules/crypto/md5-tests: Moved from ../.
17911         * modules/crypto/memxor: Moved from ../.
17912         * modules/crypto/rijndael: Moved from ../.
17913         * modules/crypto/rijndael-tests: Moved from ../.
17914         * modules/crypto/sha1: Moved from ../.
17915
17916 2007-03-30  James Youngman  <jay@gnu.org>
17917
17918         * tests/test-stat-time.c (prepare_test): use chmod() rather than
17919         rename() to change the ctime of a file (because ctime is unaffected
17920         by rename on jfs2 on AIX 5.1).
17921         (main): Start by doing cleanup, in case a previous run failed leaving
17922         test files behind.
17923
17924 2007-03-31  Bruno Haible  <bruno@clisp.org>
17925
17926         Support old proprietary implementations of iconv.
17927         * modules/iconv_open: New file.
17928         * lib/iconv_.h: New file.
17929         * m4/iconv_h.m4: New file.
17930         * lib/iconv_open.c: New file.
17931         * lib/iconv_open-aix.gperf: New file.
17932         * lib/iconv_open-hpux.gperf: New file.
17933         * lib/iconv_open-irix.gperf: New file.
17934         * lib/iconv_open-osf.gperf: New file.
17935         * m4/iconv_open.m4: New file.
17936         * modules/linebreak (Depends-on): Add iconv_open.
17937         * modules/striconv (Depends-on): Likewise.
17938         * modules/striconveh (Depends-on): Likewise.
17939         * modules/unicodeio (Depends-on): Likewise.
17940         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
17941         (iconv_t)(-1).
17942         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
17943         conversion if cd is (iconv_t)(-1).
17944         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
17945         is not possible.
17946
17947 2007-03-31  Bruno Haible  <bruno@clisp.org>
17948
17949         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
17950         work on Solaris either. Protect also second use of "autodetect_jp".
17951
17952 2007-03-31  Bruno Haible  <bruno@clisp.org>
17953
17954         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
17955         the function is not present.
17956
17957 2007-03-31  Bruno Haible  <bruno@clisp.org>
17958
17959         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
17960         the function is not present.
17961
17962 2007-03-31  Bruno Haible  <bruno@clisp.org>
17963
17964         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
17965         a bug in HP-UX iconv_open().
17966
17967 2007-03-31  Bruno Haible  <bruno@clisp.org>
17968
17969         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
17970         (Mathematics <math.h>): New section, add fpieee.
17971         (Input/output <stdio.h>): Add fseterr.
17972         (Mathematics <math.h>): New section, add printf-frexp.
17973         (Container data structures): Add sublist.
17974         (Core language properties): Add fpucw, inline.
17975         (Functions for greatest-width integer types <inttypes.h>): Add
17976         imaxabs, imaxdiv, inttypes.
17977         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
17978         isnanl-nolibm, ldexp.
17979         (Mathematics <math.h>): New section, add printf-frexpl.
17980         (Support for systems lacking POSIX:2001): Add fprintf-posix,
17981         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
17982         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
17983         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
17984         (Unicode string functions): Add unistr/u*-mbtoucr.
17985         (Java): Add javacomp-script, javaexec-script.
17986         (C#): Add csharpcomp-script, csharpexec-script.
17987         (Support for building libraries and executables): Add havelib,
17988         relocatable-*.
17989         (Support for maintaining and releasing projects): Renamed from
17990         'Support for maintaining and release projects'. Add announce-gen.
17991
17992 2007-03-31  Bruno Haible  <bruno@clisp.org>
17993
17994         * README: Talk primarily about git.
17995         (git and CVS): Renamed from CVS.
17996         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
17997         gnulib is available through git.
17998         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
17999
18000 2007-03-30  Bruno Haible  <bruno@clisp.org>
18001
18002         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
18003         * lib/poll_.h: Likewise.
18004         * lib/stat_.h: Likewise.
18005         * lib/sys_time_.h: Likewise.
18006         * lib/sysexit_.h: Likewise.
18007         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
18008         * lib/stdbool_.h: Likewise.
18009         * lib/byteswap_.h: Add double-inclusion guard.
18010
18011 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
18012
18013         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
18014
18015 2007-03-30  Karl Berry  <karl@gnu.org>
18016
18017         * config/srclist-update: double space after USA in the license
18018         substitution, since that's how it's usually (?) written.
18019
18020 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
18021
18022         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
18023         reported by Bruno Haible.
18024
18025 2007-03-29  Bruno Haible  <bruno@clisp.org>
18026
18027         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
18028         a bug in AIX iconv().
18029
18030 2007-03-29  Bruno Haible  <bruno@clisp.org>
18031
18032         * modules/ldexpl-tests: New file.
18033         * tests/test-ldexpl.c: New file.
18034
18035 2007-03-29  Bruno Haible  <bruno@clisp.org>
18036
18037         * lib/ldexpl.c: Include fpucw.h.
18038         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
18039         multiplication.
18040         * modules/ldexpl (Depends-on): Add fpucw.
18041
18042 2007-03-29  Bruno Haible  <bruno@clisp.org>
18043
18044         * modules/ldexpl: New file.
18045         * m4/ldexpl.m4: New file.
18046         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
18047         set.
18048         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
18049         REPLACE_LDEXPL.
18050         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
18051         REPLACE_LDEXPL.
18052         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
18053         gl_FUNC_LDEXPL_WORKS.
18054         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
18055         * modules/mathl (Files): Remove lib/ldexpl.c.
18056         (Depends-on): Add ldexpl.
18057
18058 2007-03-29  Bruno Haible  <bruno@clisp.org>
18059
18060         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
18061
18062 2007-03-29  Bruno Haible  <bruno@clisp.org>
18063
18064         * tests/test-striconveh.c (main): Don't assume that a direct conversion
18065         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
18066         and possibly also HP-UX.
18067         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
18068         work on AIX, IRIX, HP-UX, OSF/1.
18069         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
18070         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
18071         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
18072         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
18073         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
18074         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
18075
18076 2007-03-29  Bruno Haible  <bruno@clisp.org>
18077
18078         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
18079
18080 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
18081
18082         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
18083         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
18084
18085 2007-03-29  Eric Blake  <ebb9@byu.net>
18086
18087         * lib/acl-internal.h: Remove redundant include.
18088         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
18089         Cygwin when a file is locked.
18090
18091 2007-03-29  Bruno Haible  <bruno@clisp.org>
18092
18093         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
18094         file.
18095         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
18096
18097 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
18098
18099         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
18100         try to remove a parent directory if the child couldn't be removed
18101         (except for the first rmdir, which could fail because the child
18102         doesn't exist).  Problem reported by Jeff Blaine in
18103         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
18104
18105 2007-03-28  Bruno Haible  <bruno@clisp.org>
18106
18107         * lib/striconveh.c (utf8conv_carefully): New function.
18108         (mem_cd_iconveh_internal): Invoke it.
18109
18110 2007-03-28  Bruno Haible  <bruno@clisp.org>
18111
18112         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
18113         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
18114         input.
18115         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
18116         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
18117         unistr/u8-uctomb.
18118
18119 2007-03-28  Bruno Haible  <bruno@clisp.org>
18120
18121         * modules/unistr/u8-mbtoucr: New file.
18122         * lib/unistr/u8-mbtoucr.c: New file.
18123         * modules/unistr/u16-mbtoucr: New file.
18124         * lib/unistr/u16-mbtoucr.c: New file.
18125         * modules/unistr/u16-mbtoucr: New file.
18126         * lib/unistr/u16-mbtoucr.c: New file.
18127         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
18128
18129 2007-03-27  Simon Josefsson  <simon@josefsson.org>
18130             Bruno Haible  <bruno@clisp.org>
18131
18132         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
18133         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
18134         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
18135
18136         * m4/stdio_h.m4: Add stubs for vasprintf too.
18137
18138         * modules/stdio: Support vasprintf in sed command.
18139
18140         * modules/vasprintf: Depend on stdio for prototypes.  Remove
18141         vasprintf.h.  Add stdio module indicator.
18142
18143         * lib/stdio_.h: Declare asprintf and vasprintf, based on
18144         vasprintf.h.
18145
18146         * lib/vasprintf.h: File removed.
18147
18148         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
18149         * lib/vasprintf.c: Ditto.
18150         * lib/xvasprintf.c: Ditto.
18151         * tests/test-vasprintf-posix.c: Ditto.
18152         * tests/test-vasprintf.c: Ditto.
18153
18154 2007-03-27  Bruno Haible  <bruno@clisp.org>
18155
18156         Make vasnprintf multithread-safe.
18157         * lib/vasnprintf.c (decimal_point_char): New function.
18158         (VASNPRINTF): Use it.
18159         Suggested by Simon Josefsson.
18160
18161 2007-03-27  Eric Blake  <ebb9@byu.net>
18162
18163         Support sub-second birthtime on cygwin.
18164         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
18165         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
18166         (get_stat_birthtime): Also work with st_birthtim.
18167
18168 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
18169
18170         * lib/stat-time.h (USE_BIRTHTIME): Remove.
18171         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
18172         (get_stat_birthtime_ns): Do not try to use "spare" fields.
18173         (get_stat_birthtime_ns): Simplify compile-time tests.
18174         (get_stat_birthtime): Change the API to look like
18175         get_stat_mtime etc., except return a negative tv_nsec on error.
18176         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
18177         Don't check for "spare" fields.
18178         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
18179         or for struct stat.st_birthtime, as these tests aren't used.
18180         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
18181
18182 2007-03-27  Bruno Haible  <bruno@clisp.org>
18183
18184         * lib/stat-time.h: Include <sys/stat.h>.
18185
18186 2007-03-27  James Youngman  <jay@gnu.org>
18187
18188         * lib/stat-time.h (get_stat_birthtime): New function for
18189           retrieving st_birthtime as provided by UFS2 (hence *BSD).
18190         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
18191           and its variants.
18192         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
18193         * modules/stat-time-test: New file.
18194         * tests/test-stat-time.c: New test, devised by Bruno Haible.
18195
18196 2007-03-26  Bruno Haible  <bruno@clisp.org>
18197
18198         Better support of signalling NaNs.
18199         * lib/atanl.c: Include isnanl.h.
18200         (atanl): Perform test for NaN at the beginning of the function and
18201         through a call to isnanl.
18202         * lib/cosl.c: Include isnanl.h.
18203         (cosl): Perform test for NaN at the beginning of the function and
18204         through a call to isnanl.
18205         * lib/ldexpl.c: Include isnanl.h.
18206         (ldexpl): Perform test for NaN through a call to isnanl.
18207         * lib/logl.c: Include isnanl.h.
18208         (logl): Perform test for NaN at the beginning of the function and
18209         through a call to isnanl.
18210         * lib/sinl.c: Include isnanl.h.
18211         (sinl): Perform test for NaN at the beginning of the function and
18212         through a call to isnanl.
18213         * lib/sqrtl.c: Include isnanl.h.
18214         (sqrtl): Perform test for NaN at the beginning of the function and
18215         through a call to isnanl.
18216         * lib/tanl.c: Include isnanl.h.
18217         (tanl): Perform test for NaN at the beginning of the function and
18218         through a call to isnanl.
18219         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
18220         * modules/mathl (Depends-on): Add isnanl.
18221
18222 2007-03-26  Eric Blake  <ebb9@byu.net>
18223
18224         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
18225         regression in logic sense of previous patch.
18226
18227 2007-03-26  Bruno Haible  <bruno@clisp.org>
18228
18229         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
18230         unportable shell command "if ! ...".
18231         Reported by Ralf Wildenhues.
18232
18233 2007-03-25  Bruno Haible  <bruno@clisp.org>
18234
18235         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
18236         <sysexits.h> file, and only add EX_CONFIG.
18237         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
18238         absolute file name and whether it is sufficient. Substitute also
18239         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
18240         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
18241         ABSOLUTE_SYSEXITS_H into sysexits.h.
18242
18243 2007-03-25  Bruno Haible  <bruno@clisp.org>
18244
18245         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
18246         hints is NULL.
18247
18248 2007-03-25  Bruno Haible  <bruno@clisp.org>
18249
18250         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
18251         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
18252
18253 2007-03-25  Bruno Haible  <bruno@clisp.org>
18254
18255         * lib/vasnprintf.c: Include langinfo.h.
18256         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
18257         multithread-safe.
18258         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
18259         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
18260         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18261         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18262         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18263         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18264         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18265         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
18266         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18267         Reported by Simon Josefsson.
18268
18269 2007-03-25  Bruno Haible  <bruno@clisp.org>
18270
18271         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
18272         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
18273         * modules/vasnprintf (Depends-on): Add stdint.
18274
18275 2007-03-25  Bruno Haible  <bruno@clisp.org>
18276
18277         * modules/fpieee: New file.
18278         * m4/fpieee.m4: New file.
18279         * modules/isnan-nolibm (Depends-on): Add fpieee.
18280         * modules/isnanl-nolibm (Depends-on): Add fpieee.
18281         * modules/isnanl (Depends-on): Add fpieee.
18282
18283 2007-03-25  Bruno Haible  <bruno@clisp.org>
18284
18285         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
18286
18287 2007-03-25  Bruno Haible  <bruno@clisp.org>
18288
18289         Avoid test failures on IRIX 6.5.
18290         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
18291         (main): Use it.
18292         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
18293         macros.
18294         (main): Use them.
18295
18296 2007-03-25  Bruno Haible  <bruno@clisp.org>
18297
18298         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
18299         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
18300         exists but doesn't work.
18301         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
18302         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
18303         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
18304         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
18305
18306 2007-03-25  Bruno Haible  <bruno@clisp.org>
18307
18308         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
18309         returns inf. Needed on IRIX 6.5.
18310
18311 2007-03-25  Bruno Haible  <bruno@clisp.org>
18312
18313         * tests/test-frexpl.c: Include isnanl-nolibm.h.
18314         (main): Use isnanl instead of x != x idiom.
18315         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
18316
18317         * tests/test-frexp.c: Include isnan.h.
18318         (main): Use isnan instead of x != x idiom.
18319         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
18320
18321 2007-03-25  Bruno Haible  <bruno@clisp.org>
18322
18323         * tests/test-frexp.c (NaN): New function/macro.
18324         (main): Use it instead of 0.0 / 0.0.
18325         * tests/test-isnan.c (NaN): New function/macro.
18326         (main): Use it instead of 0.0 / 0.0.
18327         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
18328         (test_function): Use it instead of 0.0 / 0.0.
18329         * tests/test-vasprintf-posix.c (NaN): New function/macro.
18330         (test_function): Use it instead of 0.0 / 0.0.
18331         * tests/test-snprintf-posix.h (NaN): New function/macro.
18332         (test_function): Use it instead of 0.0 / 0.0.
18333         * tests/test-sprintf-posix.h (NaN): New function/macro.
18334         (test_function): Use it instead of 0.0 / 0.0.
18335         * tests/test-fprintf-posix.h (NaN): New function/macro.
18336         (test_function): Use it instead of 0.0 / 0.0.
18337         * tests/test-printf-posix.h (NaN): New function/macro.
18338         (test_function): Use it instead of 0.0 / 0.0.
18339
18340         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
18341
18342 2007-03-25  Bruno Haible  <bruno@clisp.org>
18343
18344         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
18345
18346 2007-03-25  Bruno Haible  <bruno@clisp.org>
18347
18348         * lib/regexec.c (merge_state_with_log): Make static.
18349
18350 2007-03-25  Bruno Haible  <bruno@clisp.org>
18351
18352         * lib/trigl.c (kernel_rem_pio2): Make static.
18353
18354 2007-03-25  Bruno Haible  <bruno@clisp.org>
18355
18356         * lib/sincosl.c (sincosl_table): Make static.
18357
18358 2007-03-25  Bruno Haible  <bruno@clisp.org>
18359
18360         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
18361         if the compiler does not support C99.
18362
18363 2007-03-25  Bruno Haible  <bruno@clisp.org>
18364
18365         * modules/time (Makefile.am): Ensure all rule action lines start with a
18366         tab.
18367
18368 2007-03-24  Bruno Haible  <bruno@clisp.org>
18369
18370         * modules/tsearch-tests: New file.
18371         * tests/test-tsearch.sh: New file.
18372         * tests/test-tsearch.c: New file, mostly copied from glibc.
18373
18374         * modules/search-tests: New file.
18375         * tests/test-search.c: New file.
18376
18377         * modules/search: New file.
18378         * lib/search_.h: New file, incorporating lib/tsearch.h.
18379         * m4/search_h.m4: New file.
18380         * lib/tsearch.h: Remove file.
18381         * lib/tsearch.c: Include search.h instead of tsearch.h.
18382         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
18383         HAVE_TSEARCH.
18384         * modules/tsearch (Files): Remove lib/tsearch.h.
18385         (Depends-on): Add search.
18386         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
18387         (Include): Change tsearch.h into search.h.
18388
18389 2007-03-24  Bruno Haible  <bruno@clisp.org>
18390
18391         * modules/fpucw: New file.
18392         * lib/fpucw.h: New file.
18393         * lib/frexp.c: Include fpucw.h.
18394         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
18395         (FUNC): Use them.
18396         * lib/printf-frexp.c: Include fpucw.h.
18397         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
18398         (FUNC): Use them.
18399         * lib/vasnprintf.c: Include fpucw.h.
18400         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
18401         'long double' calculations.
18402         * tests/test-frexpl.c: Include fpucw.h.
18403         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
18404         * tests/test-printf-frexpl.c: Include fpucw.h.
18405         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
18406         * modules/frexpl (Depends-on): Add fpucw.
18407         * modules/printf-frexpl (Depends-on): Likewise.
18408         * modules/fprintf-posix (Depends-on): Likewise.
18409         * modules/snprintf-posix (Depends-on): Likewise.
18410         * modules/sprintf-posix (Depends-on): Likewise.
18411         * modules/vasnprintf-posix (Depends-on): Likewise.
18412         * modules/vasprintf-posix (Depends-on): Likewise.
18413         * modules/vfprintf-posix (Depends-on): Likewise.
18414         * modules/vsnprintf-posix (Depends-on): Likewise.
18415         * modules/vsprintf-posix (Depends-on): Likewise.
18416         * modules/frexpl-tests (Depends-on): Likewise.
18417         * modules/printf-frexpl-tests (Depends-on): Likewise.
18418
18419 2007-03-24  Bruno Haible  <bruno@clisp.org>
18420
18421         * lib/float+.h: New file.
18422         * lib/isnan.c: Include float+.h.
18423         (SIZE): New macro.
18424         (FUNC): Compare only SIZE bytes of the value.
18425         * lib/vasnprintf.c: Include float+.h.
18426         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
18427         SIZEOF_LDBL or SIZEOF_DBL bytes.
18428         * modules/isnan-nolibm (Files): Add lib/float+.h.
18429         * modules/isnanl-nolibm (Files): Add lib/float+.h.
18430         * modules/isnanl (Files): Add lib/float+.h.
18431         * modules/vasnprintf (Files): Add lib/float+.h.
18432
18433 2007-03-24  Bruno Haible  <bruno@clisp.org>
18434
18435         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
18436         include isnanl-nolibm.h.
18437
18438 2007-03-24  Bruno Haible  <bruno@clisp.org>
18439
18440         * tests/test-read-file.c (main): Don't produce spurious output for
18441         expected situations. Make the test fail if it encountered unexpected
18442         results.
18443
18444 2007-03-24  Bruno Haible  <bruno@clisp.org>
18445
18446         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
18447         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
18448
18449 2007-03-24  Bruno Haible  <bruno@clisp.org>
18450
18451         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
18452
18453 2007-03-24  Bruno Haible  <bruno@clisp.org>
18454
18455         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
18456         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
18457
18458         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
18459         * modules/utf8-ucs4: Turn into a symbolic link to module
18460         unistr/u8-mbtouc.
18461
18462         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
18463         utf8-ucs4-unsafe.
18464         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
18465         unistr/u8-mbtouc-unsafe.
18466
18467         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
18468         * modules/utf16-ucs4: Turn into a symbolic link to module
18469         unistr/u16-mbtouc.
18470
18471         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
18472         utf16-ucs4-unsafe.
18473         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
18474         unistr/u16-mbtouc-unsafe.
18475
18476         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
18477         * modules/ucs4-utf8: Turn into a symbolic link to module
18478         unistr/u8-ubtomb.
18479
18480         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
18481         * modules/ucs4-utf16: Turn into a symbolic link to module
18482         unistr/u16-ubtomb.
18483
18484 2007-03-24  Bruno Haible  <bruno@clisp.org>
18485
18486         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
18487         Enable the function only if HAVE_INLINE.
18488         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
18489         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
18490         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
18491         Enable the function only if HAVE_INLINE.
18492         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
18493         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
18494         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
18495         Enable the function only if HAVE_INLINE.
18496         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
18497         Enable the function only if HAVE_INLINE.
18498         * modules/utf8-ucs4: Update.
18499         * modules/utf8-ucs4-unsafe: Update.
18500         * modules/utf16-ucs4: Update.
18501         * modules/utf16-ucs4-unsafe: Update.
18502         * modules/ucs4-utf8: Update.
18503         * modules/ucs4-utf16: Update.
18504
18505 2007-03-24  Bruno Haible  <bruno@clisp.org>
18506
18507         * lib/utf8-ucs4.h: Remove file.
18508         * lib/utf8-ucs4-unsafe.h: Remove file.
18509         * lib/utf16-ucs4.h: Remove file.
18510         * lib/utf16-ucs4-unsafe.h: Remove file.
18511         * lib/ucs4-utf8.h: Remove file.
18512         * lib/ucs4-utf16.h: Remove file.
18513         * lib/unistr.h: Include their previous contents.
18514         * m4/utf-ucs4.m4: Remove file.
18515         * m4/ucs4-utf.m4: Remove file.
18516         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
18517         (Depends-on): Add unistr/base.
18518         (configure.ac): Remove gl_UTF_UCS4.
18519         (Makefile.am): Update.
18520         (Include): Change to unistr.h.
18521         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
18522         (Depends-on): Add unistr/base.
18523         (configure.ac): Remove gl_UTF_UCS4.
18524         (Makefile.am): Update.
18525         (Include): Change to unistr.h.
18526         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
18527         (Depends-on): Add unistr/base.
18528         (configure.ac): Remove gl_UTF_UCS4.
18529         (Makefile.am): Update.
18530         (Include): Change to unistr.h.
18531         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
18532         (Depends-on): Add unistr/base.
18533         (configure.ac): Remove gl_UTF_UCS4.
18534         (Makefile.am): Update.
18535         (Include): Change to unistr.h.
18536         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
18537         (Depends-on): Add unistr/base.
18538         (configure.ac): Remove gl_UCS4_UTF.
18539         (Makefile.am): Update.
18540         (Include): Change to unistr.h.
18541         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
18542         (Depends-on): Add unistr/base.
18543         (configure.ac): Remove gl_UCS4_UTF.
18544         (Makefile.am): Update.
18545         (Include): Change to unistr.h.
18546         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
18547         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
18548         utf8-ucs4-unsafe.h.
18549         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
18550         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
18551         utf16-ucs4-unsafe.h.
18552         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
18553         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
18554         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
18555         * lib/unistr/u8-strchr.c: Likewise.
18556         * lib/unistr/u8-strrchr.c: Likewise.
18557         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
18558         * lib/unistr/u16-strchr.c: Likewise.
18559         * lib/unistr/u16-strrchr.c: Likewise.
18560         * lib/striconveh.c: Update.
18561         * lib/linebreak.c: Update.
18562
18563 2007-03-24  Bruno Haible  <bruno@clisp.org>
18564
18565         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
18566         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
18567
18568 2007-03-22  Bruno Haible  <bruno@clisp.org>
18569
18570         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
18571
18572 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
18573
18574         * MODULES.html.sh (File system functions): New module write-any-file.
18575         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
18576         * m4/write-any-file.m4: New files.
18577
18578 2007-03-23  Eric Blake  <ebb9@byu.net>
18579
18580         * gnulib-tool: Rearrange space-tab sequences, since some editors
18581         like to eat them.
18582
18583 2007-03-23  Eric Blake  <ebb9@byu.net>
18584
18585         * lib/version-etc.c (version_etc_va): Update license wording to
18586         be more concise.  Recommended by Richard Stallman.
18587
18588 2007-03-22  Bruno Haible  <bruno@clisp.org>
18589
18590         * lib/poll.c (MSG_PEEK): New fallback definition.
18591
18592 2007-03-22  Bruno Haible  <bruno@clisp.org>
18593
18594         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
18595         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
18596         (main): Update.
18597         Fixes a compilation error on BeOS.
18598
18599 2007-03-22  Bruno Haible  <bruno@clisp.org>
18600
18601         * modules/frexpl-tests: New file.
18602         * tests/test-frexpl.c: New file.
18603
18604         * modules/frexpl: New file.
18605         * m4/frexpl.m4: New file.
18606         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
18607         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
18608         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
18609         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
18610         (Depends-on): Add frexpl. Remove isnanl-nolibm.
18611         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
18612
18613 2007-03-22  Bruno Haible  <bruno@clisp.org>
18614
18615         * lib/frexpl.c: Share code with lib/frexp.c.
18616         * modules/mathl (Files): Add lib/frexp.c.
18617         (Depends-on): Add isnanl-nolibm.
18618
18619 2007-03-22  Bruno Haible  <bruno@clisp.org>
18620
18621         * modules/printf-frexp (Files): Add m4/frexp.m4.
18622         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
18623         only if the found frexp function actually works.
18624
18625 2007-03-22  Bruno Haible  <bruno@clisp.org>
18626
18627         * lib/frexp.c: Remove older implementation that uses divisions.
18628
18629 2007-03-21  Bruno Haible  <bruno@clisp.org>
18630
18631         * modules/frexp-tests: New file.
18632         * tests/test-frexp.c: New file.
18633
18634         * modules/frexp: New file.
18635         * lib/frexp.c: New file.
18636         * m4/frexp.m4: New file.
18637         * lib/math_.h (frexp): New declaration.
18638         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
18639         REPLACE_FREXP.
18640         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
18641
18642 2007-03-21  Bruno Haible  <bruno@clisp.org>
18643
18644         * modules/isnanl-tests: New file.
18645         * tests/test-isnanl.c: New file.
18646
18647         * modules/isnanl: New file.
18648         * lib/isnanl.h: New file.
18649         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
18650         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
18651         gl_FUNC_ISNANL_WORKS.
18652         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
18653         New macros.
18654
18655 2007-03-21  Bruno Haible  <bruno@clisp.org>
18656
18657         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
18658         lib/isnanl.h.
18659         (Include): Update.
18660         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
18661         * lib/vasnprintf.c: Update.
18662         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
18663         tests/test-isnanl.h, remove tests/test-isnanl.c.
18664         (Makefile.am): Update.
18665         * tests/test-isnanl-nolibm.c: New file.
18666         * tests/test-isnanl.h: New file.
18667         * tests/test-isnanl.c: Remove file.
18668
18669 2007-03-21  Jim Meyering  <jim@meyering.net>
18670
18671         When trying to open ".", treat ESTALE like EACCES.
18672         * lib/savewd.c (savewd_save): Resort to forking not just upon
18673         failure with EACCES, but also when errno is ESTALE.
18674
18675 2007-03-20  Bruno Haible  <bruno@clisp.org>
18676
18677         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
18678         Needed on AIX 5.1. Reported by Matthew Woehlke.
18679
18680 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
18681
18682         Suggestions by Bruno Haible:
18683         * lib/acl-internal.h: Include "gettext.h" rather than rolling
18684         our own.
18685         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
18686         * modules/acl (Depends-on): Add gettext.
18687
18688 2007-03-19  Bruno Haible  <bruno@clisp.org>
18689
18690         * modules/iconvme: Remove file.
18691         * lib/iconvme.h: Remove file.
18692         * lib/iconvme.c: Remove file.
18693         * m4/iconvme.m4: Remove file.
18694
18695 2007-03-19  Bruno Haible  <bruno@clisp.org>
18696
18697         * doc/relocatable-maint.texi: Break long shell script line.
18698         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
18699
18700 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
18701
18702         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
18703         handle file_has_acl.
18704         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
18705         * lib/acl.c: Move header inclusions and related macro defns into
18706         lib/acl-internal.h.
18707         (S_ISLNK): Remove defn, since that's now done for us.
18708         (file_has_acl): Move to lib/file-has-acl.c.
18709         Call acl_trivial if available.  This is the crucial part of the fix.
18710         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
18711         shared within the library.  Rewrite a bit, partly to make it compatible
18712         with the GNU coding style.
18713         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
18714         Remove unnecessary double-quotes.
18715         Don't test for acl_to_text; the build will catch that.
18716         Replace acl_entries if it doesn't exist and it is needed.
18717         Check for -lsec and acl_trivial (as used on Solaris 10).
18718         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
18719         lib/file-has-acl.c.
18720         (Depends-on): Add sys_stat, for S_ISLNK.
18721
18722 2007-03-19  Ben Pfaff  <blp@gnu.org>
18723
18724         * doc/gnulib.texi: Fix typos.
18725         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
18726
18727 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
18728
18729         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
18730         If size is zero here, buf must be zero.
18731
18732 2007-03-19  Simon Josefsson  <simon@josefsson.org>
18733
18734         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
18735         <bruno@clisp.org>.
18736
18737 2007-03-18  Bruno Haible  <bruno@clisp.org>
18738
18739         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
18740         Suggested by Eric Blake.
18741
18742 2007-03-18  Ben Pfaff  <blp@gnu.org>
18743
18744         * doc/relocatable.texi: Recommend using as prefix a directory
18745         that does not exist and will never be created.  Based on
18746         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
18747         and others.
18748
18749 2007-03-17  Bruno Haible  <bruno@clisp.org>
18750
18751         * lib/fchownat.c: Include lchown.h.
18752
18753 2007-03-17  Bruno Haible  <bruno@clisp.org>
18754
18755         Fix endless loop when the given allocated size was > INT_MAX.
18756         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
18757         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
18758         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
18759         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
18760         * lib/sprintf.c (sprintf): Likewise.
18761
18762 2007-03-17  Bruno Haible  <bruno@clisp.org>
18763
18764         * tests/test-argp-2.sh (func_compare): Output a context diff.
18765
18766 2007-03-17  Bruno Haible  <bruno@clisp.org>
18767
18768         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
18769         locale's decimal-point character.
18770
18771 2007-03-17  Bruno Haible  <bruno@clisp.org>
18772
18773         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
18774         before comparing it. Needed because on some platforms (e.g. x86) a
18775         'long double' occupies less bytes than sizeof (long double).
18776
18777 2007-03-17  Bruno Haible  <bruno@clisp.org>
18778
18779         * tests/test-crc.c (main): Make printf statements 64-bit clean.
18780         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
18781         * tests/test-getaddrinfo.c (simple): Likewise.
18782         * tests/test-read-file.c (main): Likewise.
18783
18784 2007-03-17  Bruno Haible  <bruno@clisp.org>
18785
18786         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
18787
18788 2007-03-17  Bruno Haible  <bruno@clisp.org>
18789
18790         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
18791         unused variable.
18792
18793 2007-03-17  Bruno Haible  <bruno@clisp.org>
18794
18795         * tests/test-c-strcasecmp.c: Include c-strcase.h.
18796         * tests/test-c-strncasecmp.c: Likewise.
18797
18798 2007-03-17  Bruno Haible  <bruno@clisp.org>
18799
18800         * modules/stdlib (Depends-on): Add unistd.
18801         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
18802         Needed for MacOS X 10.3.
18803
18804 2007-03-17  Bruno Haible  <bruno@clisp.org>
18805
18806         * lib/unistr/u-strdup.h: Include <stdlib.h>.
18807
18808 2007-03-17  Bruno Haible  <bruno@clisp.org>
18809
18810         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
18811
18812 2007-03-17  Bruno Haible  <bruno@clisp.org>
18813
18814         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
18815         to reflect files copied from gnulib (with or without modifications).
18816         Suggested by Jim Meyering.
18817
18818 2007-03-17  Eric Blake  <ebb9@byu.net>
18819
18820         * NEWS: Document stdlib change from 2007-02-18.
18821
18822 2007-03-17  Jim Meyering  <jim@meyering.net>
18823
18824         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
18825         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
18826         someone uses a name containing shell meta-characters.
18827         Reported by Alfred M. Szmidt.
18828
18829         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
18830
18831 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
18832
18833         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
18834         and copy gettext configuration files only if configure.ac contains
18835         a use of AM_GNU_GETTEXT_VERSION.
18836
18837 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
18838
18839         * build-aux/bootstrap (gnulib_name): New variable.
18840         (gnulib_tool_options): Use it.
18841
18842 2007-03-13  Simon Josefsson  <simon@josefsson.org>
18843
18844         * tests/test-des.c: Use new namespace.
18845
18846 2007-03-15  Bruno Haible  <bruno@clisp.org>
18847
18848         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
18849         Reported by James Youngman <jay@gnu.org>.
18850
18851 2007-03-15  Bruno Haible  <bruno@clisp.org>
18852
18853         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
18854         declared prototype. Needed with cc on OSF/1 5.1.
18855
18856 2007-03-15  Bruno Haible  <bruno@clisp.org>
18857
18858         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
18859         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
18860         (struct gl_list_implementation): Add dispose_fn argument to the
18861         'create_empty', 'create' methods.
18862         (struct gl_list_impl_base): Add field 'dispose_fn'.
18863         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
18864         argument.
18865         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
18866         dispose_fn argument.
18867         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
18868         dispose_fn on the dropped values.
18869         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
18870         dispose_fn argument.
18871         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
18872         dropped values.
18873         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
18874         (gl_tree_remove_node): Call dispose_fn on the dropped value.
18875         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
18876         (gl_tree_remove_node): Call dispose_fn on the dropped value.
18877         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
18878         argument.
18879         (gl_tree_list_free): Call dispose_fn on the dropped values.
18880         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
18881         the dropped values.
18882         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
18883         Add dispose_fn argument.
18884         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
18885         Call dispose_fn on the dropped values.
18886         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
18887         Add dispose_fn argument.
18888         (gl_sublist_create): Initialize the 'dispose_fn' field.
18889         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
18890         * tests/test-array_list.c (main): Update.
18891         * tests/test-carray_list.c (main): Update.
18892         * tests/test-avltree_list.c (main): Update.
18893         * tests/test-rbtree_list.c (main): Update.
18894         * tests/test-avltreehash_list.c (main): Update.
18895         * tests/test-rbtreehash_list.c (main): Update.
18896         * tests/test-linked_list.c (main): Update.
18897         * tests/test-linkedhash_list.c (main): Update.
18898         * tests/test-array_oset.c (main): Update.
18899
18900 2007-03-15  Bruno Haible  <bruno@clisp.org>
18901
18902         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
18903         (gl_oset_create_empty): Add dispose_fn argument.
18904         (struct gl_oset_implementation): Add dispose_fn argument to
18905         'create_empty' method.
18906         (struct gl_oset_impl_base): Add dispose_fn field.
18907         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
18908         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
18909         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
18910         values.
18911         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
18912         (gl_tree_oset_free): Call dispose_fn on the dropped values.
18913         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
18914         dropped value.
18915         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
18916         dropped value.
18917         * tests/test-array_oset.c (main): Update.
18918         * tests/test-avltree_oset.c (main): Update.
18919         * tests/test-rbtree_oset.c (main): Update.
18920         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
18921
18922 2007-03-13  Bruno Haible  <bruno@clisp.org>
18923
18924         * tests/test-stdbool.c (i): Update after last patch.
18925
18926 2007-03-12  Bruno Haible  <bruno@clisp.org>
18927
18928         * lib/quotearg.c: Include <wctype.h> early, before the definition of
18929         the iswprint macro. Needed on Solaris 2.5.1.
18930
18931 2007-03-12  Bruno Haible  <bruno@clisp.org>
18932
18933         * tests/test-printf-frexp.c (main): Declare x as volatile.
18934
18935 2007-03-12  Simon Josefsson  <simon@josefsson.org>
18936
18937         * doc/gnulib.texi (Build robot for gnulib): New section.
18938
18939 2007-03-12  Jim Meyering  <jim@meyering.net>
18940
18941         * build-aux/bootstrap: New file.
18942         * build-aux/bootstrap.conf: New file, from coreutils.
18943
18944 2007-03-11  Bruno Haible  <bruno@clisp.org>
18945
18946         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
18947
18948 2007-03-12  Simon Josefsson  <simon@josefsson.org>
18949
18950         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
18951         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
18952         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
18953
18954 2007-03-11  Bruno Haible  <bruno@clisp.org>
18955
18956         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
18957         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
18958
18959 2007-03-11  Bruno Haible  <bruno@clisp.org>
18960
18961         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
18962         formula. Needed for SunPRO C 5.0.
18963
18964 2007-03-11  Bruno Haible  <bruno@clisp.org>
18965
18966         * modules/long-options (Depends-on): Add getopt.
18967
18968 2007-03-11  Bruno Haible  <bruno@clisp.org>
18969
18970         * modules/modechange (Depends-on): Add stdbool.
18971
18972 2007-03-11  Bruno Haible  <bruno@clisp.org>
18973
18974         * modules/i-ring (Depends-on): Add stdbool.
18975
18976 2007-03-11  Bruno Haible  <bruno@clisp.org>
18977
18978         * modules/gc-des (Depends-on): Add stdbool.
18979
18980 2007-03-11  Bruno Haible  <bruno@clisp.org>
18981
18982         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
18983
18984 2007-03-11  Bruno Haible  <bruno@clisp.org>
18985
18986         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
18987
18988 2007-03-11  Bruno Haible  <bruno@clisp.org>
18989
18990         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
18991
18992 2007-03-11  Bruno Haible  <bruno@clisp.org>
18993
18994         * lib/vasnprintf.c (sprintf): Undefine.
18995
18996 2007-03-11  Bruno Haible  <bruno@clisp.org>
18997
18998         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
18999         initializers in SunPRO C and Compaq C compilers.
19000
19001 2007-03-11  Bruno Haible  <bruno@clisp.org>
19002
19003         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
19004         decrementing code ANSI C compliant.
19005
19006 2007-03-11  Bruno Haible  <bruno@clisp.org>
19007
19008         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
19009         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
19010
19011 2007-03-11  Bruno Haible  <bruno@clisp.org>
19012
19013         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
19014         <stdbool.h> substitute doesn't pass.
19015
19016 2007-03-11  Bruno Haible  <bruno@clisp.org>
19017
19018         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
19019
19020 2007-03-11  Bruno Haible  <bruno@clisp.org>
19021
19022         * gnulib-tool (func_create_megatestdir): Create also an autobuild
19023         script, for submission to autobuild.josefsson.org.
19024
19025 2007-03-10  Bruno Haible  <bruno@clisp.org>
19026
19027         * modules/canonicalize-lgpl-tests: New file.
19028         * tests/test-canonicalize-lgpl.sh: New file.
19029         * tests/test-canonicalize-lgpl.c: New file.
19030
19031         * modules/c-strcase-tests: New file.
19032         * tests/test-c-strcase.sh: New file.
19033         * tests/test-c-strcasecmp.c: New file.
19034         * tests/test-c-strncasecmp.c: New file.
19035
19036         * modules/atexit-tests: New file.
19037         * tests/test-atexit.sh: New file.
19038         * tests/test-atexit.c: New file.
19039
19040 2007-03-10  Bruno Haible  <bruno@clisp.org>
19041
19042         * tests/test-binary-io.sh: Use temporary filenames that are not so
19043         likely to clash with those of other tests (in a parallel make).
19044         * tests/test-binary-io.c: Likewise.
19045
19046 2007-03-10  Bruno Haible  <bruno@clisp.org>
19047
19048         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
19049         fallback; use #error instead.
19050         Suggested by Simon Josefsson.
19051
19052 2007-03-10  Bruno Haible  <bruno@clisp.org>
19053
19054         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
19055         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
19056         first and the last.
19057
19058 2007-03-10  Bruno Haible  <bruno@clisp.org>
19059
19060         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
19061
19062 2007-03-10  Bruno Haible  <bruno@clisp.org>
19063
19064         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
19065         "make distcheck".
19066         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
19067         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
19068         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
19069
19070 2007-03-10  Bruno Haible  <bruno@clisp.org>
19071
19072         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
19073         variable.
19074         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
19075         variable.
19076
19077 2007-03-09  Eric Blake  <ebb9@byu.net>
19078         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
19079
19080         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
19081         types are not being provided by gnulib.
19082         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
19083         types are supported.
19084
19085 2007-03-10  Bruno Haible  <bruno@clisp.org>
19086
19087         * lib/stdio_.h (__attribute__): New macro.
19088         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
19089         vsprintf): Specify __attribute__ __format__ for GCC.
19090         Suggested by Eric Blake.
19091
19092 2007-03-09  Bruno Haible  <bruno@clisp.org>
19093
19094         * modules/printf-posix-tests: New file.
19095         * tests/test-printf-posix.sh: New file.
19096         * tests/test-printf-posix.c: New file.
19097
19098         * modules/printf-posix: New file.
19099         * lib/printf.c: New file.
19100         * m4/printf-posix-rpl.m4: New file.
19101         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
19102         REPLACE_PRINTF.
19103         * lib/stdio_.h (printf): New declaration.
19104         (format, __format__, ____printf____, ____scanf____, ____strftime____,
19105         ____strfmon____): New macros.
19106         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
19107         REPLACE_PRINTF.
19108
19109 2007-03-09  Bruno Haible  <bruno@clisp.org>
19110
19111         * tests/test-vasnprintf-posix2.sh: New file.
19112         * tests/test-vasnprintf-posix2.c: New file.
19113         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
19114         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
19115         (Makefile.am): Activate test-vasnprintf-posix2.sh.
19116
19117         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
19118         a locale dependent decimal point, rather than always '.'.
19119
19120 2007-03-09  Eric Blake  <ebb9@byu.net>
19121
19122         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
19123         spite of platforms like Tandem/NSK that define it to -1.
19124
19125 2007-03-08  Bruno Haible  <bruno@clisp.org>
19126
19127         * modules/vprintf-posix-tests: New file.
19128         * tests/test-vprintf-posix.sh: New file.
19129         * tests/test-vprintf-posix.c: New file.
19130         * tests/test-printf-posix.h: New file.
19131
19132         * modules/vprintf-posix: New file.
19133         * lib/vprintf.c: New file.
19134         * m4/vprintf-posix.m4: New file.
19135         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
19136         REPLACE_VPRINTF.
19137         * lib/stdio_.h (vprintf): New declaration.
19138         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
19139         REPLACE_VPRINTF.
19140
19141 2007-03-08  Bruno Haible  <bruno@clisp.org>
19142
19143         * modules/fprintf-posix-tests: New file.
19144         * tests/test-fprintf-posix.sh: New file.
19145         * tests/test-fprintf-posix.c: New file.
19146
19147         * modules/fprintf-posix: New file.
19148         * lib/fprintf.c: New file.
19149         * m4/fprintf-posix.m4: New file.
19150         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
19151         REPLACE_FPRINTF.
19152         * lib/stdio_.h (fprintf): New declaration.
19153         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
19154         REPLACE_FPRINTF.
19155
19156 2007-03-08  Bruno Haible  <bruno@clisp.org>
19157
19158         * modules/vfprintf-posix-tests: New file.
19159         * tests/test-vfprintf-posix.sh: New file.
19160         * tests/test-vfprintf-posix.c: New file.
19161         * tests/test-fprintf-posix.h: New file.
19162         * tests/test-fprintf-posix.out: New file.
19163
19164         * modules/vfprintf-posix: New file.
19165         * lib/vfprintf.c: New file.
19166         * m4/vfprintf-posix.m4: New file.
19167         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
19168         REPLACE_VFPRINTF.
19169         * lib/stdio_.h (vfprintf): New declaration.
19170         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
19171         REPLACE_VFPRINTF.
19172
19173 2007-03-08  Bruno Haible  <bruno@clisp.org>
19174
19175         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
19176
19177 2007-03-08  Bruno Haible  <bruno@clisp.org>
19178
19179         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
19180         instead of 'expr' invocations.
19181         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
19182         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
19183         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
19184         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
19185         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
19186         Suggested by Paul Eggert.
19187
19188 2007-03-08  Bruno Haible  <bruno@clisp.org>
19189
19190         * modules/fseterr-tests: New file.
19191         * tests/test-fseterr.c: New file.
19192
19193         * modules/fseterr: New file.
19194         * lib/fseterr.h: New file.
19195         * lib/fseterr.c: New file.
19196
19197 2007-03-08  Bruno Haible  <bruno@clisp.org>
19198
19199         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
19200         * lib/getopt_.h: Likewise.
19201         * lib/mbswidth.h: Likewise.
19202         * lib/setenv.h: Likewise.
19203         * lib/vasnprintf.h: Likewise.
19204         * lib/vasprintf.h: Likewise.
19205         * lib/verror.h: Likewise.
19206         * lib/xsetenv.h: Likewise.
19207         * lib/xvasprintf.h: Likewise.
19208
19209 2007-03-08  Jim Meyering  <jim@meyering.net>
19210
19211         * users.txt: Add parted.
19212
19213         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
19214
19215 2007-03-07  Bruno Haible  <bruno@clisp.org>
19216
19217         * m4/printf.m4: Make the shell script snippets copy&pastable.
19218
19219 2007-03-02  Bruno Haible  <bruno@clisp.org>
19220
19221         * lib/netinet_in_.h: New file.
19222         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
19223         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
19224         * modules/netinet_in (Files): Add lib/netinet_in_.h.
19225         (Depends-on): Add absolute-header.
19226         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
19227         into netinet/in.h.
19228
19229 2007-03-03  Bruno Haible  <bruno@clisp.org>
19230
19231         * lib/sys_select_.h: New file.
19232         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
19233         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
19234         * modules/sys_select (Files): Add lib/sys_select_.h.
19235         (Depends-on): Add absolute-header.
19236         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
19237         into sys/select.h.
19238
19239 2007-03-02  Bruno Haible  <bruno@clisp.org>
19240
19241         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
19242         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
19243         values.
19244         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
19245         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
19246         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
19247         * modules/sys_socket (Depends-on): Add absolute-header.
19248         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
19249         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
19250         (Include): Remove requirement of inclusion of <sys/types.h>.
19251
19252 2007-03-02  Bruno Haible  <bruno@clisp.org>
19253
19254         * lib/byteswap_.h (bswap_32): Fix formula.
19255
19256 2007-03-06  Bruno Haible  <bruno@clisp.org>
19257
19258         * modules/sprintf-posix-tests: New file.
19259         * tests/test-sprintf-posix.c: New file.
19260
19261         * modules/sprintf-posix: New file.
19262         * lib/sprintf.c: New file.
19263         * m4/sprintf-posix.m4: New file.
19264         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
19265         REPLACE_SPRINTF.
19266         * lib/stdio_.h (sprintf): New declaration.
19267         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
19268         REPLACE_SPRINTF.
19269
19270 2007-03-06  Bruno Haible  <bruno@clisp.org>
19271
19272         * modules/vsprintf-posix-tests: New file.
19273         * tests/test-vsprintf-posix.c: New file.
19274         * tests/test-sprintf-posix.h: New file.
19275
19276         * modules/vsprintf-posix: New file.
19277         * lib/vsprintf.c: New file.
19278         * m4/vsprintf-posix.m4: New file.
19279         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
19280         REPLACE_VSPRINTF.
19281         * lib/stdio_.h (vsprintf): New declaration.
19282         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
19283         REPLACE_VSPRINTF.
19284
19285 2007-03-06  Bruno Haible  <bruno@clisp.org>
19286
19287         * modules/vsnprintf (Depend-on): Remove minmax.
19288
19289 2007-03-06  Bruno Haible  <bruno@clisp.org>
19290
19291         * modules/snprintf-posix-tests: New file.
19292         * tests/test-snprintf-posix.c: New file.
19293
19294         * modules/snprintf-posix: New file.
19295         * m4/snprintf-posix.m4: New file.
19296         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
19297         gl_FUNC_SNPRINTF.
19298         (gl_FUNC_SNPRINTF): Invoke it.
19299         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
19300         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
19301         is set.
19302         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
19303
19304 2007-03-06  Bruno Haible  <bruno@clisp.org>
19305
19306         * modules/vsnprintf-posix-tests: New file.
19307         * tests/test-vsnprintf-posix.c: New file.
19308         * tests/test-snprintf-posix.h: New file.
19309
19310         * modules/vsnprintf-posix: New file.
19311         * m4/vsnprintf-posix.m4: New file.
19312         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
19313         gl_FUNC_VSNPRINTF.
19314         (gl_FUNC_VSNPRINTF): Invoke it.
19315         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
19316         * lib/stdio_.h (vsnprintf): Define as a replacement if
19317         REPLACE_VSNPRINTF is set.
19318         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
19319
19320 2007-03-06  Bruno Haible  <bruno@clisp.org>
19321
19322         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
19323         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
19324
19325 2007-03-06  Bruno Haible  <bruno@clisp.org>
19326
19327         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
19328         (asinl): Declare also if HAVE_DECL_ASINL is set.
19329         (atanl): Declare also if HAVE_DECL_ATANL is set.
19330         (ceill): Declare also if HAVE_DECL_CEILL is set.
19331         (cosl): Declare also if HAVE_DECL_COSL is set.
19332         (expl): Declare also if HAVE_DECL_EXPL is set.
19333         (floorl): Declare also if HAVE_DECL_FLOORL is set.
19334         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
19335         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
19336         (logl): Declare also if HAVE_DECL_LOGL is set.
19337         (sinl): Declare also if HAVE_DECL_SINL is set.
19338         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
19339         (tanl): Declare also if HAVE_DECL_TANL is set.
19340         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
19341         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
19342         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
19343         declaration of frexpl, ldexpl.
19344         * modules/printf-frexpl (Depends-on): Add math.
19345         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
19346
19347 2007-03-05  Bruno Haible  <bruno@clisp.org>
19348
19349         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
19350         frexpl and ldexpl are declared.
19351         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
19352
19353 2007-03-05  Bruno Haible  <bruno@clisp.org>
19354
19355         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
19356         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
19357
19358 2007-03-05  Bruno Haible  <bruno@clisp.org>
19359
19360         * lib/stdio_.h: Include <stddef.h>.
19361
19362 2007-03-05  Bruno Haible  <bruno@clisp.org>
19363
19364         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
19365
19366 2007-03-05  Bruno Haible  <bruno@clisp.org>
19367
19368         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
19369         NetBSD 4, from Ralf Wildenhues.
19370
19371 2007-03-04  Bruno Haible  <bruno@clisp.org>
19372
19373         * lib/vasprintf.h: Update #if logic for the case when the functions
19374         exist but are overridden.
19375
19376 2007-03-04  Bruno Haible  <bruno@clisp.org>
19377
19378         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
19379         implementations: glibc-2.4 and MacOS X 10.3.
19380         * tests/test-vasnprintf-posix.c (test_function): Test also the case
19381         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
19382         * tests/test-vasprintf-posix.c (test_function): Likewise.
19383
19384 2007-03-04  Bruno Haible  <bruno@clisp.org>
19385
19386         * modules/vasprintf-posix-tests: New file.
19387         * tests/test-vasprintf-posix.c: New file.
19388
19389         * modules/vasprintf-posix: New file.
19390         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
19391         defined.
19392         * m4/vasprintf-posix.m4: New file.
19393         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
19394         gl_FUNC_VASPRINTF.
19395         (gl_FUNC_VASPRINTF): Invoke it.
19396         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
19397         here.
19398         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
19399
19400 2007-03-04  Bruno Haible  <bruno@clisp.org>
19401
19402         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
19403         REPLACE_GETTIMEOFDAY.
19404         * modules/sys_time (Makefile.am): Likewise.
19405         * m4/sys_time_h.m4: Likewise.
19406         * m4/gettimeofday.m4: Likewise.
19407
19408 2007-03-04  Bruno Haible  <bruno@clisp.org>
19409
19410         * modules/vasnprintf-posix-tests: New file.
19411         * tests/test-vasnprintf-posix.c: New file.
19412
19413         * modules/vasnprintf-posix: New file.
19414         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
19415         printf-frexpl.h.
19416         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
19417         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
19418         REPLACE_VASNPRINTF is defined.
19419         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
19420         gl_FUNC_VASNPRINTF.
19421         (gl_FUNC_VASNPRINTF): Invoke it.
19422         * m4/vasnprintf-posix.m4: New file.
19423         * m4/printf.m4: New file.
19424
19425 2007-03-04  Bruno Haible  <bruno@clisp.org>
19426
19427         Compile progreloc.c only if --enable-relocatable is specified.
19428         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
19429         if --enable-relocatable was specified.
19430         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
19431         lib_SOURCES.
19432
19433 2007-03-04  Jim Meyering  <jim@meyering.net>
19434
19435         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
19436         Use it consistently, rather than enumerating errno constants.
19437
19438 2007-03-04  Bruno Haible  <bruno@clisp.org>
19439
19440         * modules/xvasprintf-tests: New file.
19441         * tests/test-xvasprintf.c: New file.
19442
19443         * modules/vasprintf-tests: New file.
19444         * tests/test-vasprintf.c: New file.
19445
19446         * modules/vasnprintf-tests: New file.
19447         * tests/test-vasnprintf.c: New file.
19448
19449         * modules/vsnprintf-tests: New file.
19450         * tests/test-vsnprintf.c: New file.
19451
19452         * modules/snprintf-tests: New file.
19453         * tests/test-snprintf.c: New file.
19454
19455 2007-03-04  Bruno Haible  <bruno@clisp.org>
19456
19457         Compile relocatable.c only if --enable-relocatable is specified.
19458         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
19459         gl_RELOCATABLE_LIBRARY.
19460         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
19461         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
19462         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
19463         gl_RELOCATABLE_LIBRARY.
19464         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
19465         (Makefile.am): Remove lib_SOURCES.
19466         * modules/relocatable-lib-lgpl (configure.ac): Invoke
19467         gl_RELOCATABLE_LIBRARY.
19468         (Makefile.am): Remove lib_SOURCES.
19469         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
19470         always.
19471         * modules/relocatable-prog-wrapper (configure.ac): Invoke
19472         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
19473
19474 2007-03-04  Bruno Haible  <bruno@clisp.org>
19475
19476         * modules/argmatch-tests: New file.
19477         * tests/test-argmatch.c: New file.
19478
19479         * tests/test-allocsa.c (main): Halve the number of loop runs.
19480
19481         * modules/alloca-opt-tests: New file.
19482         * tests/test-alloca-opt.c: New file.
19483
19484 2007-03-04  Jim Meyering  <jim@meyering.net>
19485
19486         Work around difference between Linux ACLs and Solaris 10 ZFS.
19487         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
19488         for EINVAL.
19489
19490 2007-03-03  Bruno Haible  <bruno@clisp.org>
19491
19492         * modules/relocatable-prog (Depends-on): Add back progreloc's
19493         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
19494
19495 2007-03-03  Bruno Haible  <bruno@clisp.org>
19496
19497         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
19498         * modules/relocatable-lib: New file.
19499
19500 2007-03-03  Bruno Haible  <bruno@clisp.org>
19501
19502         * modules/relocatable-prog: Renamed from modules/relocatable.
19503         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
19504
19505 2007-03-03  Bruno Haible  <bruno@clisp.org>
19506
19507         * modules/relocatable-script (Files): Add doc/relocatable.texi,
19508         m4/relocatable-lib.m4.
19509         (Depends-on): Remove 'relocatable'.
19510         (configure.ac): Add gl_RELOCATABLE_NOP.
19511
19512 2007-03-03  Bruno Haible  <bruno@clisp.org>
19513
19514         * modules/relocatable-prog-wrapper: New file.
19515         * modules/relocatable (Depends-on): Add it. Remove all other
19516         dependencies except progname.
19517         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
19518
19519         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
19520         (gl_FUNC_STRERROR): Nop.
19521         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
19522
19523         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
19524         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
19525
19526         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
19527         (gl_FUNC_READLINK): Update.
19528
19529         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
19530
19531 2007-03-03  Bruno Haible  <bruno@clisp.org>
19532
19533         * lib/xreadlink.c: Include <unistd.h> unconditionally.
19534         * modules/xreadlink (Depends-on): Add unistd.
19535         * modules/xreadlink-with-size (Depends-on): Likewise.
19536
19537 2007-03-03  Bruno Haible  <bruno@clisp.org>
19538
19539         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
19540         extracted from gt_FUNC_SETENV.
19541         (gt_FUNC_SETENV): Remove macro.
19542         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
19543         remove gt_FUNC_SETENV.
19544
19545 2007-03-03  Bruno Haible  <bruno@clisp.org>
19546
19547         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
19548         ENABLE_RELOCATABLE here.
19549         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
19550
19551 2007-03-03  Bruno Haible  <bruno@clisp.org>
19552
19553         * modules/rbtreehash-list-tests (Depends-on): Add progname.
19554         * tests/test-rbtreehash_list.c: Include progname.h.
19555         (main): Call set_program_name.
19556
19557         * modules/rbtree-oset-tests (Depends-on): Add progname.
19558         * tests/test-rbtree_oset.c: Include progname.h.
19559         (main): Call set_program_name.
19560
19561         * modules/rbtree-list-tests (Depends-on): Add progname.
19562         * tests/test-rbtree_list.c: Include progname.h.
19563         (main): Call set_program_name.
19564
19565         * modules/linked-list-tests (Depends-on): Add progname.
19566         * tests/test-linked_list.c: Include progname.h.
19567         (main): Call set_program_name.
19568
19569 2007-03-03  Bruno Haible  <bruno@clisp.org>
19570
19571         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
19572         All uses of __restrict changed to _Restrict_.
19573         * lib/glob_.h (__restrict): Remove macro.
19574
19575 2007-03-02  Bruno Haible  <bruno@clisp.org>
19576
19577         * modules/gettext (configure.ac): Require gettext infrastructure
19578         from version 0.16.1.
19579
19580 2007-03-02  Bruno Haible  <bruno@clisp.org>
19581
19582         * modules/linkedhash-list-tests (Depends-on): Add progname.
19583         * tests/test-linkedhash_list.c: Include progname.h.
19584         (main): Call set_program_name.
19585
19586         * modules/carray-list-tests (Depends-on): Add progname.
19587         * tests/test-carray_list.c: Include progname.h.
19588         (main): Call set_program_name.
19589
19590         * modules/avltreehash-list-tests (Depends-on): Add progname.
19591         * tests/test-avltreehash_list.c: Include progname.h.
19592         (main): Call set_program_name.
19593
19594         * modules/avltree-oset-tests (Depends-on): Add progname.
19595         * tests/test-avltree_oset.c: Include progname.h.
19596         (main): Call set_program_name.
19597
19598         * modules/avltree-list-tests (Depends-on): Add progname.
19599         * tests/test-avltree_list.c: Include progname.h.
19600         (main): Call set_program_name.
19601
19602         * modules/array-oset-tests (Depends-on): Add progname.
19603         * tests/test-array_oset.c: Include progname.h.
19604         (main): Call set_program_name.
19605
19606         * modules/array-list-tests (Depends-on): Add progname.
19607         * tests/test-array_list.c: Include progname.h.
19608         (main): Call set_program_name.
19609
19610         * modules/argp-tests (Depends-on): Add progname.
19611         * tests/test-argp.c: Include argp.h first. Include progname.h.
19612         (main): Call set_program_name.
19613
19614 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
19615
19616         * doc/gnulib-tool.texi (Initial import): Reword description of
19617         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
19618         limited effect even if defined after the first system include.
19619
19620 2007-03-01  Bruno Haible  <bruno@clisp.org>
19621
19622         * build-aux/config.libpath: Update to libtool-1.5.22.
19623         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
19624
19625 2007-03-01  Bruno Haible  <bruno@clisp.org>
19626
19627         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
19628         foo_CFLAGS.
19629         Reported by Ralf Wildenhues.
19630
19631 2007-03-01  Bruno Haible  <bruno@clisp.org>
19632
19633         * build-aux/install-reloc: Remove object files left over by some
19634         compilers.
19635         Reported by Ralf Wildenhues.
19636
19637 2007-03-01  Bruno Haible  <bruno@clisp.org>
19638
19639         * build-aux/install-reloc: Break long lines.
19640
19641 2007-03-01  Bruno Haible  <bruno@clisp.org>
19642
19643         * doc/relocatable.texi: Document that it may not work on OpenBSD.
19644         Reported by Ralf Wildenhues.
19645
19646 2007-03-01  Bruno Haible  <bruno@clisp.org>
19647
19648         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
19649         include ordering constraints.
19650
19651 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
19652
19653         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
19654         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
19655         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
19656         as another example.
19657         * lib/time_.h: Fix misspelling.
19658         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
19659         Require gl_HEADER_TIME_H_DEFAULTS.
19660         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
19661         * m4/time_r.m4 (gl_TIME_R): Likewise.
19662         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
19663
19664 2007-03-01  Bruno Haible  <bruno@clisp.org>
19665
19666         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
19667         * m4/utimens.m4 (gl_UTIMENS): Likewise.
19668
19669 2007-03-01  Jim Meyering  <jim@meyering.net>
19670
19671         * modules/xreadlink (Maintainer): Add my name.
19672         * modules/xreadlink-with-size (Depends-on): Alphabetize.
19673
19674 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
19675             Bruno Haible  <bruno@clisp.org>
19676
19677         * build-aux/install-reloc: Compile also c-ctype.c.
19678         * build-aux/relocatable.sh.in: New file.
19679         * doc/relocatable.texi: New file.
19680         * doc/relocatable-maint.texi: New file.
19681         * doc/gnulib.texi: Include relocatable-maint.texi.
19682         * lib/progreloc.c: Include unistd.h unconditionally.
19683         * lib/relocwrapper.c: Include unistd.h unconditionally.
19684         Include c-ctype.h.
19685         (add_dotbin): Use c_tolower.
19686         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
19687         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
19688         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
19689         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
19690         to m4/relocatable-lib.m4.
19691         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
19692         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
19693         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
19694         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
19695         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
19696         * modules/relocatable: New file.
19697         * modules/relocatable-lib: New file.
19698         * modules/relocatable-script: New file.
19699
19700 2007-02-28  Bruno Haible  <bruno@clisp.org>
19701
19702         Import --enable-relocatable infrastructure.
19703         * build-aux/config.libpath: New file, from GNU gettext.
19704         * build-aux/install-reloc: New file, from GNU gettext.
19705         * build-aux/reloc-ldflags: New file, from GNU gettext.
19706         * lib/relocatable.h: New file, from GNU gettext.
19707         * lib/relocatable.c: New file, from GNU gettext.
19708         * lib/relocwrapper.c: New file, from GNU gettext.
19709         * m4/relocatable.m4: New file, from GNU gettext.
19710
19711 2007-02-28  Bruno Haible  <bruno@clisp.org>
19712
19713         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
19714
19715         * modules/xreadlink: New file, from GNU gettext with modifications.
19716         * lib/xreadlink.c: New file, from GNU gettext.
19717         * lib/xreadlink.h: Add comments.
19718         (xreadlink): New declaration.
19719
19720         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
19721         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
19722         lib/xreadlink-with-size.c.
19723         (configure.ac): Remove gl_XREADLINK invocation.
19724         (Makefile.am): Augment lib_SOURCES.
19725         * m4/xreadlink.m4: Remove file.
19726         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
19727         (xreadlink_with_size): Renamed from xreadink.
19728         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
19729         * modules/canonicalize (Depends-on): Replace xreadlink with
19730         xreadlink-with-size.
19731         * lib/canonicalize.c (canonicalize_filename_mode): Update.
19732
19733 2007-02-25  Jim Meyering  <jim@meyering.net>
19734
19735         * build-aux/announce-gen: When complaining about excess arguments,
19736         list them.
19737
19738 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
19739
19740         * README: Document signed integer overflow situation more
19741         accurately.
19742
19743 2007-02-25  Bruno Haible  <bruno@clisp.org>
19744
19745         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
19746         'a' or 'A' conversion.
19747
19748 2007-02-25  Bruno Haible  <bruno@clisp.org>
19749
19750         * modules/filename: Renamed from modules/pathname.
19751         (Files): Replace lib/pathname.h with lib/filename.h. Replace
19752         lib/concatpath.c with lib/concat-filename.c.
19753         (Makefile.am): Update.
19754         (Include): Replace pathname.h with filename.h.
19755         * lib/filename.h: Renamed from lib/pathname.h.
19756         (concatenated_filename): Renamed from concatenated_pathname.
19757         * lib/concat-filename.c: Renamed from lib/concatpath.c.
19758         (concatenated_filename): Renamed from concatenated_pathname.
19759         * lib/findprog.c: Include filename.h instead of pathname.h.
19760         (find_in_path): Update.
19761         * lib/javacomp.c: Include filename.h instead of pathname.h.
19762         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
19763         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
19764         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
19765         is_oldgcj_14_13_usable, is_javac_usable): Update.
19766         * lib/javaexec.c: Include filename.h instead of pathname.h.
19767         (execute_java_class): Update.
19768         * modules/findprog: Update.
19769         * modules/javacomp: Update.
19770         * modules/javaexec: Update.
19771         * MODULES.html.sh (File system functions): Add 'filename', remove
19772         'pathname'.
19773
19774 2007-02-25  Bruno Haible  <bruno@clisp.org>
19775
19776         * modules/printf-frexpl-tests: New file.
19777         * tests/test-printf-frexpl.c: New file.
19778
19779         * modules/printf-frexpl: New file.
19780         * lib/printf-frexpl.h: New file.
19781         * lib/printf-frexpl.c: New file.
19782         * m4/printf-frexpl.m4: New file.
19783
19784 2007-02-25  Bruno Haible  <bruno@clisp.org>
19785
19786         * modules/printf-frexp-tests: New file.
19787         * tests/test-printf-frexp.c: New file.
19788
19789         * modules/printf-frexp: New file.
19790         * lib/printf-frexp.h: New file.
19791         * lib/printf-frexp.c: New file.
19792         * m4/printf-frexp.m4: New file.
19793
19794 2007-02-25  Bruno Haible  <bruno@clisp.org>
19795
19796         Assume automake >= 1.10 for the tests.
19797         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
19798         * modules/arctwo-tests: Likewise.
19799         * modules/argp-tests: Likewise.
19800         * modules/avltree-list-tests: Likewise.
19801         * modules/avltree-oset-tests: Likewise.
19802         * modules/avltreehash-list-tests: Likewise.
19803         * modules/carray-list-tests: Likewise.
19804         * modules/crc-tests: Likewise.
19805         * modules/des-tests: Likewise.
19806         * modules/gc-arcfour-tests: Likewise.
19807         * modules/gc-arctwo-tests: Likewise.
19808         * modules/gc-des-tests: Likewise.
19809         * modules/gc-hmac-md5-tests: Likewise.
19810         * modules/gc-hmac-sha1-tests: Likewise.
19811         * modules/gc-md2-tests: Likewise.
19812         * modules/gc-md4-tests: Likewise.
19813         * modules/gc-md5-tests: Likewise.
19814         * modules/gc-pbkdf2-sha1-tests: Likewise.
19815         * modules/gc-rijndael-tests: Likewise.
19816         * modules/gc-sha1-tests: Likewise.
19817         * modules/gc-tests: Likewise.
19818         * modules/getaddrinfo-tests: Likewise.
19819         * modules/hmac-md5-tests: Likewise.
19820         * modules/hmac-sha1-tests: Likewise.
19821         * modules/linked-list-tests: Likewise.
19822         * modules/linkedhash-list-tests: Likewise.
19823         * modules/lock-tests: Likewise.
19824         * modules/md2-tests: Likewise.
19825         * modules/md4-tests: Likewise.
19826         * modules/md5-tests: Likewise.
19827         * modules/rbtree-list-tests: Likewise.
19828         * modules/rbtree-oset-tests: Likewise.
19829         * modules/rbtreehash-list-tests: Likewise.
19830         * modules/read-file-tests: Likewise.
19831         * modules/rijndael-tests: Likewise.
19832         * modules/stdint-tests: Likewise.
19833         * modules/tls-tests: Likewise.
19834
19835 2007-02-24  Bruno Haible  <bruno@clisp.org>
19836
19837         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
19838         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
19839         function; instead check whether isnan with a double argument links.
19840         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
19841         function; instead check whether isnan with a 'long double' argument
19842         links.
19843         Reported by Eric Blake <ebb9@byu.net>.
19844
19845 2007-02-24  Bruno Haible  <bruno@clisp.org>
19846
19847         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
19848         defined.
19849         * lib/isnanl.c: Remove all code. Just include isnan.c.
19850         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
19851
19852 2007-02-25  Jim Meyering  <jim@meyering.net>
19853
19854         Avoid conflicting types for 'unsetenv' on FreeBSD.
19855         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
19856         conflicting with FreeBSD's (5.0 and 6.1) function declaration
19857         in stdlib.h.
19858
19859 2007-02-24  Bruno Haible  <bruno@clisp.org>
19860
19861         * modules/isnanl-nolibm-tests: New file.
19862         * tests/test-isnanl.c: New file.
19863
19864         * modules/isnanl-nolibm: New file.
19865         * lib/isnanl.h: New file.
19866         * lib/isnanl.c: New file.
19867         * m4/isnanl.m4: New file.
19868
19869 2007-02-24  Bruno Haible  <bruno@clisp.org>
19870
19871         * modules/isnan-nolibm-tests: New file.
19872         * tests/test-isnan.c: New file.
19873
19874         * modules/isnan-nolibm: New file.
19875         * lib/isnan.h: New file.
19876         * lib/isnan.c: New file.
19877         * m4/isnan.m4: New file.
19878
19879 2007-02-24  Bruno Haible  <bruno@clisp.org>
19880
19881         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
19882         assume that an exponent fits in 20 bits.
19883
19884 2007-02-24  Jim Meyering  <jim@meyering.net>
19885
19886         * m4/regex.m4: Update the description of the configure-time option,
19887         --without-included-regex, to state accurately what the defaults are,
19888         and perhaps to give people an idea why using this option is risky.
19889
19890 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
19891
19892         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
19893         loops on small arguments.  This attempts to avoid the problem
19894         Bruno Haible reported for AIX 4.3.2 in
19895         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
19896
19897 2007-02-23  Bruno Haible  <bruno@clisp.org>
19898
19899         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
19900         Needed for help2man.
19901
19902 2007-02-23  Karl Berry  <karl@gnu.org>
19903
19904         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
19905         exists, foo.h should be cvs-ignored, not committed.
19906
19907 2007-02-23  Eric Blake  <ebb9@byu.net>
19908
19909         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
19910         * lib/stat-time.h (includes): Likewise.
19911         * lib/utimecmp.c (includes): Likewise.
19912         * lib/utimens.h (includes): Likewise.
19913         * lib/getdate.y (includes): Also include "timespec.h" for use
19914         internal to the module.
19915         * modules/utimens (Depends-on): Revert yesterday's patch.
19916         * modules/nanosleep (Depends-on): Add missing dependency.
19917
19918 2007-02-22  Bruno Haible  <bruno@clisp.org>
19919
19920         * lib/glob.c: Don't include getlogin_r.h.
19921
19922 2007-02-22  Jim Meyering  <jim@meyering.net>
19923
19924         * modules/utimens (Depends-on): Add timespec, required for
19925         utimens.h's inclusion of timespec.h.
19926
19927 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
19928
19929         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
19930         long unreadable paths in GNU/Linux.  Problem reported by Andreas
19931         Schwab in
19932         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
19933         I'll try to think of a better way to fix the Solaris problem.
19934
19935         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
19936         like glibc; on Solaris 10, it fails with errno == EINVAL.
19937         POSIX says the behavior is unspecified if the first argument is NULL,
19938         so play it safe and never pass NULL to the system getcwd.
19939
19940 2007-02-21  Jim Meyering  <jim@meyering.net>
19941
19942         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
19943         of gettimeofday.  It would conflict with the one now always
19944         provided via sys_time_.h.  Reported by Matthew Woehlke, as
19945         an IRIX 6.5 build failure.
19946
19947 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
19948
19949         Minor fixups to port to Solaris 10 with Sun C 5.8.
19950         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
19951         * modules/getcwd (Depends-on): Add dirfd.
19952         * lib/putenv.c (putenv): #undef it.
19953         (rpl_putenv): New decl.
19954         (malloc, free): Include <stdlib.h> rather than prototyping separately.
19955
19956 2007-02-20  Bruno Haible  <bruno@clisp.org>
19957
19958         * modules/stdio-tests: New file.
19959         * tests/test-stdio.c: New file.
19960
19961         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
19962         (Depends-on): Add stdio.
19963         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
19964         (Include): Use <stdio.h> instead of vsnprintf.h.
19965         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
19966         HAVE_DECL_VSNPRINTF.
19967         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
19968
19969         * modules/snprintf (Files): Remove lib/snprintf.h.
19970         (Depends-on): Add stdio.
19971         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
19972         (Include): Use <stdio.h> instead of snprintf.h.
19973         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
19974         HAVE_DECL_SNPRINTF.
19975         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
19976         * lib/getaddrinfo.c: Likewise.
19977
19978         * modules/stdio: New file.
19979         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
19980         * lib/snprintf.h: Remove file.
19981         * lib/vsnprintf.h: Remove file.
19982         * lib/.cppi-disable: Remove snprintf.h.
19983         * m4/stdio_h.m4: New file.
19984         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
19985
19986 2007-02-20  Jim Meyering  <jim@meyering.net>
19987
19988         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
19989         used by e.g., mingw.  From Bruno Haible.
19990
19991 2007-02-19  Bruno Haible  <bruno@clisp.org>
19992
19993         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
19994         warnings.
19995         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19996
19997 2007-02-19  Bruno Haible  <bruno@clisp.org>
19998
19999         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
20000         from mingw users.
20001
20002 2007-02-19  Bruno Haible  <bruno@clisp.org>
20003
20004         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
20005         warnings.
20006         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
20007
20008 2007-02-19  Jim Meyering  <jim@meyering.net>
20009
20010         Don't use FD after a successful "fdopendir (fd)".
20011         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
20012         Reset it by calling dirfd on the just-obtained DIR*.
20013
20014         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
20015         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
20016
20017 2007-02-18  Bruno Haible  <bruno@clisp.org>
20018
20019         * lib/readlink.c: Include <unistd.h>.
20020         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
20021         HAVE_READLINK.
20022         * modules/readlink (Depends-on): Add unistd.
20023         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20024         (Include): Add <unistd.h>.
20025
20026         * lib/getlogin_r.h: Remove file.
20027         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
20028         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
20029         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
20030         HAVE_DECL_GETLOGIN_R.
20031         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
20032         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20033         (Include): Use <unistd.h> instead of getlogin_r.h.
20034
20035         * lib/getcwd.h: Remove file.
20036         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
20037         * lib/xgetcwd.c: Likewise.
20038         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
20039         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
20040         * modules/getcwd (Files): Remove lib/getcwd.h.
20041         (Depends-on): Add unistd.
20042         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20043         (Include): Use <unistd.h> instad of getcwd.h.
20044
20045         * lib/ftruncate.c: Include <unistd.h> first.
20046         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
20047         Set HAVE_FTRUNCATE.
20048         * modules/ftruncate (Depends-on): Add unistd.
20049         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20050
20051         * lib/fchdir.c: Include <unistd.h> first.
20052         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
20053         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
20054         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
20055         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20056         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
20057
20058         * lib/dup2.c: Include <unistd.h> first.
20059         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
20060         HAVE_DUP2.
20061         * modules/dup2 (Depends-on): Add unistd.
20062         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20063
20064         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
20065         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
20066         REPLACE_CHOWN. Don't define chown as a macro here.
20067         * modules/chown (Depends-on): Add unistd.
20068         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20069
20070         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
20071         Add definition for GL_LINK_WARNING.
20072         (chown, dup2): New declarations.
20073         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
20074         link warning.
20075         (ftruncate): New declaration.
20076         (getcwd): New declaration, taken from old getcwd.h.
20077         (getlogin_r): New declaration, taken from old getlogin_r.h.
20078         (readlink): New declaration.
20079         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
20080         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
20081         (gl_PREREQ_UNISTD): Remove macro.
20082         (gl_UNISTD_MODULE_INDICATOR): New macro.
20083         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
20084         many new variables. Don't set UNISTD_H.
20085         * modules/unistd (Description): Change.
20086         (Depends-on): Add link-warning.
20087         (configure.ac): Update.
20088         (Makefile.am): Create unistd.h always. Substitute many new variables
20089         into it.
20090
20091 2007-02-18  Bruno Haible  <bruno@clisp.org>
20092
20093         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
20094         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
20095         HAVE_GETSUBOPT.
20096         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
20097         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
20098         * lib/getsubopt.h: Remove file.
20099         * modules/getsubopt (Files): Remove lib/getsubopt.h.
20100         (Depends-on): Add stdlib.
20101         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20102         (Includes): Use <stdlib.h> instead of getsubopt.h.
20103         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
20104         Set HAVE_GETSUBOPT.
20105         * lib/getsubopt.c: Don't include getsubopt.h.
20106
20107 2007-02-18  Bruno Haible  <bruno@clisp.org>
20108
20109         * modules/fchdir (Depends-on): Add dup2.
20110
20111 2007-02-18  Bruno Haible  <bruno@clisp.org>
20112
20113         * lib/stdlib_.h: Handle glibc's special invocation convention
20114         specially.
20115
20116 2007-02-18  Bruno Haible  <bruno@clisp.org>
20117
20118         * modules/stdlib-tests: New file.
20119         * tests/test-stdlib.c: New file.
20120
20121         * modules/mkstemp (Files): Remove lib/mkstemp.h.
20122         (Depends-on): Add stdlib.
20123         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20124         (Includes): Use <stdlib.h> instead of mkstemp.h.
20125         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
20126         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
20127         * lib/mkstemp.c: Don't include mkstemp.h.
20128         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
20129         * lib/stdlib--.h: Don't include mkstemp.h.
20130
20131         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
20132         (Depends-on): Add stdlib.
20133         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
20134         (Includes): Use <stdlib.h> instead of mkdtemp.h.
20135         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
20136         HAVE_MKDTEMP.
20137         * lib/mkdtemp.c: Don't include mkdtemp.h.
20138         * lib/clean-temp.c: Don't include mkdtemp.h.
20139
20140         * modules/exit (Files): Remove lib/exit.h.
20141         (Depends-on): Add stdlib.
20142         (Makefile.am): Remove lib_SOURCES.
20143         (Include): Use <stdlib.h> instead of exit.h.
20144         * lib/argmatch.c: Don't include exit.h.
20145         * lib/execute.c: Likewise.
20146         * lib/pagealign_alloc.c: Likewise.
20147         * lib/pipe.c: Likewise.
20148         * lib/wait-process.c: Likewise.
20149         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
20150         * lib/exitfail.c: Likewise.
20151         * lib/savewd.c: Likewise.
20152         * lib/xsetenv.c: Likewise.
20153
20154         * modules/stdlib: New file.
20155         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
20156         and extra comments about mkstemp().
20157         * lib/exit.h: Remove file.
20158         * lib/mkdtemp.h: Remove file.
20159         * lib/mkstemp.h: Remove file.
20160         * m4/stdlib_h.m4: New file.
20161         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
20162
20163 2007-02-18  Bruno Haible  <bruno@clisp.org>
20164
20165         * modules/math-tests: New file.
20166         * tests/test-math.c: New file.
20167
20168         * modules/math: New file.
20169         * modules/mathl (Files): Remove lib/mathl.h.
20170         (Depends-on): Add math.
20171         (Makefile.am): Don't mention mathl.h.
20172         (Include): Use <math.h> instead of mathl.h.
20173         * lib/math_.h: New file.
20174         * lib/mathl.h: Remove file.
20175         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
20176         mathl.h.
20177         * lib/asinl.c: Likewise.
20178         * lib/atanl.c: Likewise.
20179         * lib/ceill.c: Likewise.
20180         * lib/cosl.c: Likewise.
20181         * lib/expl.c: Likewise.
20182         * lib/floorl.c: Likewise.
20183         * lib/frexpl.c: Likewise.
20184         * lib/ldexpl.c: Likewise.
20185         * lib/logl.c: Likewise.
20186         * lib/sincosl.c: Likewise.
20187         * lib/sinl.c: Likewise.
20188         * lib/sqrtl.c: Likewise.
20189         * lib/tanl.c: Likewise.
20190         * lib/trigl.c: Likewise.
20191         * m4/math_h.m4: New file.
20192         * MODULES.html.sh (Mathematics): Add math.
20193
20194 2007-02-17  Bruno Haible  <bruno@clisp.org>
20195
20196         * modules/wctype-tests: New file.
20197         * tests/test-wctype.c: New file.
20198
20199         * modules/wchar-tests: New file.
20200         * tests/test-wchar.c: New file.
20201
20202         * modules/unistd-tests: New file.
20203         * tests/test-unistd.c: New file.
20204
20205         * modules/time-tests: New file.
20206         * tests/test-time.c: New file.
20207
20208         * modules/sysexits-tests: New file.
20209         * tests/test-sysexits.c: New file.
20210
20211         * modules/sys_time-tests: New file.
20212         * tests/test-sys_time.c: New file.
20213
20214         * modules/sys_stat-tests: New file.
20215         * tests/test-sys_stat.c: New file.
20216
20217         * modules/sys_socket-tests: New file.
20218         * tests/test-sys_socket.c: New file.
20219
20220         * modules/sys_select-tests: New file.
20221         * tests/test-sys_select.c: New file.
20222
20223         * modules/string-tests: New file.
20224         * tests/test-string.c: New file.
20225
20226         * modules/stdbool-tests: New file.
20227         * tests/test-stdbool.c: New file.
20228
20229         * modules/netinet_in-tests: New file.
20230         * tests/test-netinet_in.c: New file.
20231
20232         * modules/inttypes-tests: New file.
20233         * tests/test-inttypes.c: New file.
20234
20235         * modules/fcntl-tests: New file.
20236         * tests/test-fcntl.c: New file.
20237
20238         * modules/byteswap-tests: New file.
20239         * tests/test-byteswap.c: New file.
20240
20241         * modules/arpa_inet-tests: New file.
20242         * tests/test-arpa_inet.c: New file.
20243
20244 2007-02-17  Bruno Haible  <bruno@clisp.org>
20245
20246         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
20247         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
20248         if the corresponding module is not enabled. Emit link warnings if
20249         the function is used nevertheless.
20250         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
20251         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
20252         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
20253         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
20254         * modules/inttypes (Depends-on): Add link-warning.
20255         (Makefile.am): Copy the contents of build-aux/link-warning.h into
20256         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
20257         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
20258         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
20259         * modules/imaxdiv (configure.ac): Likewise.
20260         * modules/strtoimax (configure.ac): Likewise.
20261         * modules/strtoumax (configure.ac): Likewise.
20262
20263 2007-02-17  Bruno Haible  <bruno@clisp.org>
20264
20265         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
20266         gl_STRING_MODULE_INDICATOR_DEFAULTS.
20267         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
20268         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
20269
20270 2007-02-17  Bruno Haible  <bruno@clisp.org>
20271
20272         * modules/link-warning: New file.
20273         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
20274         * lib/string_.h (GL_LINK_WARNING): Remove definition.
20275         * modules/string (Depends-on): Add link-warning.
20276         (Makefile.am): Copy the contents of build-aux/link-warning.h into
20277         string.h.
20278         * MODULES.html.sh (Support for building libraries and executables): Add
20279         link-warning.
20280
20281 2007-02-17  Bruno Haible  <bruno@clisp.org>
20282
20283         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
20284         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
20285         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
20286         long lines.
20287
20288 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
20289             Bruno Haible  <bruno@clisp.org>
20290
20291         * modules/tmpfile: New file.
20292         * lib/tmpfile.c: New file.
20293         * m4/tmpfile.m4: New file.
20294         * MODULES.html.sh (func_all_modules): New section "Input/output".
20295
20296 2007-02-15  Bruno Haible  <bruno@clisp.org>
20297
20298         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
20299         (supports_delete_on_close): New function.
20300         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
20301
20302 2007-02-14  Bruno Haible  <bruno@clisp.org>
20303
20304         * modules/mbspcasecmp-tests: New file.
20305         * tests/test-mbspcasecmp.sh: New file.
20306         * tests/test-mbspcasecmp.c: New file.
20307
20308         New module mbspcasecmp.
20309         * modules/mbspcasecmp: New file.
20310         * lib/mbspcasecmp.c: New file.
20311         * lib/string_.h (strncasecmp): Change warning message.
20312         (mbspcasecmp): New declaration.
20313         * m4/mbspcasecmp.m4: New file.
20314         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20315         GNULIB_MBSPCASECMP.
20316         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
20317         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
20318
20319 2007-02-14  Bruno Haible  <bruno@clisp.org>
20320
20321         * modules/mbsncasecmp-tests: New file.
20322         * tests/test-mbsncasecmp.sh: New file.
20323         * tests/test-mbsncasecmp.c: New file.
20324
20325         New module mbsncasecmp.
20326         * modules/mbsncasecmp: New file.
20327         * lib/mbsncasecmp.c: New file.
20328         * lib/string_.h (mbsncasecmp): New declaration.
20329         * m4/mbsncasecmp.m4: New file.
20330         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20331         GNULIB_MBSNCASECMP.
20332         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
20333         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
20334
20335 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
20336
20337         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
20338         Verify that it doesn't overlap with our flags.
20339         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
20340         do not have the desired effect in multibyte locales; instead, use
20341         mbscasecmp.
20342         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
20343         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
20344         we don't require GNU fnmatch ourselves (if our users require it, they
20345         should do so explicitly).
20346
20347         Fix regex code so it doesn't rely on strcasecmp.
20348         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
20349         Otherwise, include gnulib's langinfo.h.
20350         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
20351         undesirable behavior in non-C locales.  Instead, rely on localecharset.
20352         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
20353         * modules/regex (FILES): Remove m4/codeset.m4.
20354         (Depends-on): Add localcharset.  Remove strcase.
20355
20356 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20357
20358         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
20359         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
20360
20361 2007-02-13  Bruno Haible  <bruno@clisp.org>
20362
20363         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
20364         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20365
20366 2007-02-12  Bruno Haible  <bruno@clisp.org>
20367
20368         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
20369         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
20370         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
20371         time warning rather than a link error.
20372
20373 2007-02-12  Bruno Haible  <bruno@clisp.org>
20374
20375         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
20376         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
20377         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20378
20379 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
20380
20381         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
20382         args, not 2.
20383
20384 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
20385
20386         New module 'time', so that apps can include <time.h> as per
20387         POSIX and GNU instead of separate include files like time_r.h
20388         and timegm.h.  This implementation tries out a simpler approach
20389         for replacing decls in standard include files (as compared to
20390         the string module), somewhat as an experiment.
20391
20392         * config/srclist.txt: Comment out mktime.c for now.
20393         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
20394         since it doesn't apply any more.  Use generic wording instead.
20395         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
20396         'time'.
20397         * lib/time_.h, m4/time_h.m4, modules/time: New files.
20398         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
20399         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
20400         Don't include <sys/types.h>; no longer needed since we assume C89.
20401         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
20402         * lib/strftime.c: Likewise.
20403         * lib/time_r.c: Likewise.
20404         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
20405         * lib/nanosleep.c: Include <time.h> first, to check interface.
20406         * lib/strptime.c: Likewise.
20407         * lib/time_r.c: Likewise.
20408         * lib/timegm.c: Likewise.
20409         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
20410         needed.
20411         * lib/timegm.c: Don't include timegm.h; no longer needed.
20412         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
20413         time.h now handles any problems in that area.
20414         (struct timespec, nanosleep): Remove; time.h now arranges for these.
20415         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
20416         that time.h defines struct timespec.
20417         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
20418         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
20419         handles that.
20420         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
20421         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
20422         needed.  Set REPLACE_LOCALTIME.
20423         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
20424         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
20425         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
20426         nanosleep; time_h.m4 now does that.  Don't require
20427         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
20428         module handles this now.
20429         * modules/getdate (Depends-on): Remove timespec.  Add time.
20430         * modules/nanosleep (Depends-on): Likewise.
20431         * modules/stat-time (Depends-on): Likewise.
20432         * modules/nanosleep (Include): Include time.h, not timespec.h.
20433         * modules/strptime (Files): Remove lib/strptime.h.
20434         (Depends-on): Add extensions, time.
20435         (Include): Include time.h, not strptime.h.
20436         * modules/time_r (Files): Remove lib/time_r.h.
20437         (Depends-on): Add time.
20438         (Include): Include time.h, not time_r.h.
20439         * modules/timegm: Likewise.
20440         * modules/timespec (Description): Now does timespec-related decls
20441         of our own, instead of struct timespec itself.
20442         (Depends-on): Add time; remove extensions.
20443         (Maintainer): Add self.
20444         * modules/utimecmp (Depends-on): Add time; remove timespec.
20445         * modules/utimens (Depends-on): Likewise.
20446         * modules/xnanosleep (Depends-on): Likewise.
20447
20448 2007-02-11  Bruno Haible  <bruno@clisp.org>
20449
20450         * lib/c-strstr.c: Include allocsa.h.
20451         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
20452         * lib/c-strcasestr.c: Include allocsa.h.
20453         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
20454         * lib/strcasestr.c: Include allocsa.h.
20455         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
20456         * lib/mbsstr.c: Include allocsa.h.
20457         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
20458         allocsa/freesa instead of malloc/free.
20459         * lib/mbscasestr.c: Include allocsa.h.
20460         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
20461         allocsa/freesa instead of malloc/free.
20462         * modules/c-strstr (Depends-on): Add allocsa.
20463         * modules/c-strcasestr (Depends-on): Likewise.
20464         * modules/strcasestr (Depends-on): Likewise.
20465         * modules/mbsstr (Depends-on): Likewise.
20466         * modules/mbscasestr (Depends-on): Likewise.
20467
20468 2007-02-11  Bruno Haible  <bruno@clisp.org>
20469
20470         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
20471
20472         * modules/mbsspn-tests: New file.
20473         * tests/test-mbsspn.sh: New file.
20474         * tests/test-mbsspn.c: New file.
20475
20476 2007-02-11  Bruno Haible  <bruno@clisp.org>
20477
20478         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
20479
20480         * modules/mbspbrk-tests: New file.
20481         * tests/test-mbspbrk.sh: New file.
20482         * tests/test-mbspbrk.c: New file.
20483
20484 2007-02-11  Bruno Haible  <bruno@clisp.org>
20485
20486         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
20487         unneeded cast.
20488
20489         * modules/mbscspn-tests: New file.
20490         * tests/test-mbscspn.sh: New file.
20491         * tests/test-mbscspn.c: New file.
20492
20493 2007-02-11  Bruno Haible  <bruno@clisp.org>
20494
20495         * modules/mbscasecmp-tests: New file.
20496         * tests/test-mbscasecmp.sh: New file.
20497         * tests/test-mbscasecmp.c: New file.
20498
20499 2007-02-11  Bruno Haible  <bruno@clisp.org>
20500
20501         Ensure O(n) worst-case complexity of mbscasestr.
20502         * lib/mbscasestr.c: Include stdbool.h.
20503         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
20504         functions.
20505         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
20506         the bookkeeping indicates that it's worth it.
20507         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
20508
20509         * modules/mbscasestr-tests: New file.
20510         * tests/test-mbscasestr1.c: New file.
20511         * tests/test-mbscasestr2.sh: New file.
20512         * tests/test-mbscasestr2.c: New file.
20513         * tests/test-mbscasestr3.sh: New file.
20514         * tests/test-mbscasestr3.c: New file.
20515         * tests/test-mbscasestr4.sh: New file.
20516         * tests/test-mbscasestr4.c: New file.
20517         * m4/locale-tr.m4: New file.
20518
20519 2007-02-11  Bruno Haible  <bruno@clisp.org>
20520
20521         Ensure O(n) worst-case complexity of mbsstr.
20522         * lib/mbsstr.c: Include stdbool.h.
20523         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
20524         functions.
20525         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
20526         bookkeeping indicates that it's worth it.
20527         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
20528
20529         * modules/mbsstr-tests: New file.
20530         * tests/test-mbsstr1.c: New file.
20531         * tests/test-mbsstr2.sh: New file.
20532         * tests/test-mbsstr2.c: New file.
20533         * tests/test-mbsstr3.sh: New file.
20534         * tests/test-mbsstr3.c: New file.
20535         * m4/locale-fr.m4: New file.
20536
20537 2007-02-11  Bruno Haible  <bruno@clisp.org>
20538
20539         * lib/mbsrchr.c (mbsrchr): Fix bug.
20540
20541         * modules/mbsrchr-tests: New file.
20542         * tests/test-mbsrchr.sh: New file.
20543         * tests/test-mbsrchr.c: New file.
20544
20545 2007-02-11  Bruno Haible  <bruno@clisp.org>
20546
20547         * lib/mbschr.c (mbschr): Fix bug.
20548
20549         * modules/mbschr-tests: New file.
20550         * tests/test-mbschr.sh: New file.
20551         * tests/test-mbschr.c: New file.
20552         * m4/locale-zh.m4: New file.
20553
20554 2007-02-11  Bruno Haible  <bruno@clisp.org>
20555
20556         Support for copying multibyte string iterators.
20557         * lib/mbiter.h: Include <string.h>.
20558         (mbiter_multi_copy): New function.
20559         (mbi_copy): New macro.
20560         * lib/mbuiter.h: Include <string.h>.
20561         (mbuiter_multi_copy): New function.
20562         (mbui_copy): New macro.
20563
20564 2007-02-11  Bruno Haible  <bruno@clisp.org>
20565
20566         New module mbslen.
20567         * modules/mbslen: New file.
20568         * lib/mbslen.c: New file.
20569         * lib/string_.h (mbslen): New declaration.
20570         * m4/mbslen.m4: New file.
20571         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20572         GNULIB_MBSLEN.
20573         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
20574         * MODULES.html.sh (Internationalization functions): Add mbslen.
20575
20576 2007-02-11  Bruno Haible  <bruno@clisp.org>
20577
20578         Ensure O(n) worst-case complexity of strcasestr substitute.
20579         * lib/strcasestr.c: Include stdbool.h.
20580         (knuth_morris_pratt): New function.
20581         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
20582         bookkeeping indicates that it's worth it.
20583         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
20584
20585         * modules/strcasestr-tests: New file.
20586         * tests/test-strcasestr.c: New file.
20587
20588 2007-02-11  Bruno Haible  <bruno@clisp.org>
20589
20590         Ensure O(n) worst-case complexity of c_strcasestr.
20591         * lib/c-strcasestr.c: Include stdbool.h, string.h.
20592         (knuth_morris_pratt): New function.
20593         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
20594         the bookkeeping indicates that it's worth it.
20595         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
20596
20597         * modules/c-strcasestr-tests: New file.
20598         * tests/test-c-strcasestr.c: New file.
20599
20600 2007-02-11  Bruno Haible  <bruno@clisp.org>
20601
20602         Ensure O(n) worst-case complexity of c_strstr.
20603         * lib/c-strstr.c: Include stdbool.h, string.h.
20604         (knuth_morris_pratt): New function.
20605         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
20606         bookkeeping indicates that it's worth it.
20607         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
20608
20609         * lib/c-strstr.c: Complete rewrite for maintainability.
20610
20611         * modules/c-strstr-tests: New file.
20612         * tests/test-c-strstr.c: New file.
20613
20614 2007-02-11  Bruno Haible  <bruno@clisp.org>
20615
20616         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
20617         5.2.1 and earlier, whereby \055 was treated just like the range
20618         delimiter '-'.
20619         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
20620
20621 2007-02-08  Bruno Haible  <bruno@clisp.org>
20622
20623         * modules/regex (Depends-on): Add stdbool.
20624         Reported by Dalibor Topic <robilad@kaffe.org>.
20625
20626 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
20627
20628         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
20629         Prefer returning from main to exiting from it.
20630         Remove unnecessary parens after sizeof.
20631
20632 2007-02-05  Bruno Haible  <bruno@clisp.org>
20633
20634         New module mbssep.
20635         * modules/mbssep: New file.
20636         * lib/mbssep.c: New file.
20637         * lib/string_.h (strsep): Add a conditional link warning.
20638         (mbssep): New declaration.
20639         * m4/mbssep.m4: New file.
20640         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20641         GNULIB_MBSSEP.
20642         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
20643         * MODULES.html.sh (Internationalization functions): Add mbssep.
20644
20645 2007-02-05  Bruno Haible  <bruno@clisp.org>
20646
20647         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
20648         Optimize search in case of 1 delimiter.
20649
20650 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
20651
20652         * lib/acl.h: Include sys/types.h before sys/acl.h.
20653
20654 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
20655
20656         Merge upstream fix for glibc bugzilla #3957:
20657
20658         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
20659
20660         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
20661         bit for RE_HAT_LISTS_NOT_NEWLINE.
20662         (build_charclass_op): Remove bogus comment.
20663
20664 2007-02-05  Simon Josefsson  <simon@josefsson.org>
20665
20666         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
20667
20668 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
20669
20670         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
20671         * lib/memmem.c [!defined _LIBC]: Include config.h.
20672
20673 2007-02-04  Bruno Haible  <bruno@clisp.org>
20674
20675         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
20676         warning message.
20677
20678 2007-02-04  Bruno Haible  <bruno@clisp.org>
20679
20680         New module mbstok_r.
20681         * modules/mbstok_r: New file.
20682         * lib/mbstok_r.c: New file.
20683         * lib/string_.h (strtok_r): Change argument names to match the
20684         comments. Add a conditional link warning.
20685         (mbstok_r): New declaration.
20686         * m4/mbstok_r.m4: New file.
20687         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20688         GNULIB_MBSTOK_R.
20689         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
20690         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
20691
20692 2007-02-04  Bruno Haible  <bruno@clisp.org>
20693
20694         New module mbsspn.
20695         * modules/mbsspn: New file.
20696         * lib/mbsspn.c: New file.
20697         * lib/string_.h (strspn): Add a conditional link warning.
20698         (mbsspn): New declaration.
20699         * m4/mbsspn.m4: New file.
20700         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20701         GNULIB_MBSSPN.
20702         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
20703         * MODULES.html.sh (Internationalization functions): Add mbsspn.
20704
20705 2007-02-04  Bruno Haible  <bruno@clisp.org>
20706
20707         New module mbspbrk.
20708         * modules/mbspbrk: New file.
20709         * lib/mbspbrk.c: New file.
20710         * lib/string_.h (strpbrk): Add a conditional link warning.
20711         (mbspbrk): New declaration.
20712         * m4/mbspbrk.m4: New file.
20713         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20714         GNULIB_MBSPBRK.
20715         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
20716         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
20717
20718 2007-02-04  Bruno Haible  <bruno@clisp.org>
20719
20720         New module mbscspn.
20721         * modules/mbscspn: New file.
20722         * lib/mbscspn.c: New file.
20723         * lib/string_.h (strcspn): Add a conditional link warning.
20724         (mbscspn): New declaration.
20725         * m4/mbscspn.m4: New file.
20726         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20727         GNULIB_MBSCSPN.
20728         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
20729         * MODULES.html.sh (Internationalization functions): Add mbscspn.
20730
20731 2007-02-04  Bruno Haible  <bruno@clisp.org>
20732
20733         New module mbscasestr, reduced goal of strcasestr.
20734         * modules/mbscasestr: New file.
20735         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
20736         (mbscasestr): Renamed from strcasestr.
20737         * lib/strcasestr.c: Don't include mbuiter.h.
20738         (strcasestr): Remove support for multibyte locales.
20739         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
20740         Change the conditional link warning.
20741         (mbscasestr): New declaration.
20742         * m4/mbscasestr.m4: New file.
20743         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
20744         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
20745         REPLACE_STRCASESTR.
20746         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
20747         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
20748         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
20749         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
20750         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
20751         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
20752         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
20753         (Depends-on): Remove mbuiter.
20754         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
20755
20756 2007-02-04  Bruno Haible  <bruno@clisp.org>
20757
20758         Simplify handling of strncasecmp.
20759         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
20760         the conditional link warning.
20761         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
20762         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
20763         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
20764         * modules/strcase (configure.ac): Don't invoke
20765         gl_STRING_MODULE_INDICATOR.
20766         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
20767
20768 2007-02-04  Bruno Haible  <bruno@clisp.org>
20769
20770         New module mbscasecmp, reduced goal of strcasecmp.
20771         * modules/mbscasecmp: New file.
20772         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
20773         (mbscasecmp): Renamed from strcasecmp.
20774         * lib/strcasecmp.c: Don't include mbuiter.h.
20775         (strcasecmp): Remove support for multibyte locales.
20776         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
20777         Change the conditional link warning.
20778         (mbscasecmp): New declaration.
20779         * m4/mbscasecmp.m4: New file.
20780         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
20781         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
20782         REPLACE_STRCASECMP.
20783         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
20784         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20785         GNULIB_MBSCASECMP.
20786         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
20787         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
20788         * modules/strcase (Files): Remove m4/mbrtowc.m4.
20789         (Depends-on): Remove mbuiter.
20790         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
20791
20792 2007-02-04  Bruno Haible  <bruno@clisp.org>
20793
20794         New module mbsstr. Remove module strstr.
20795         * modules/mbsstr: New file.
20796         * modules/strstr: Remove file.
20797         * lib/mbsstr.c: Renamed from lib/strstr.c.
20798         (mbsstr): Renamed from strstr.
20799         * lib/string_.h (strstr): Remove declaration. Change the conditional
20800         link warning.
20801         (mbsstr): New declaration.
20802         * m4/mbsstr.m4: New file.
20803         * m4/strstr.m4: Remove file.
20804         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
20805         REPLACE_STRSTR.
20806         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
20807         Don't initialize GNULIB_STRSTR.
20808         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
20809         substitute GNULIB_STRSTR and REPLACE_STRSTR.
20810         * MODULES.html.sh (Internationalization functions): Add mbsstr.
20811         (Support for systems lacking ANSI C 89): Remove strstr.
20812
20813 2007-02-04  Bruno Haible  <bruno@clisp.org>
20814
20815         New module mbsrchr.
20816         * modules/mbsrchr: New file.
20817         * lib/mbsrchr.c: New file.
20818         * lib/string_.h (strrchr): Add a conditional link warning.
20819         (mbsrchr): New declaration.
20820         * m4/mbsrchr.m4: New file.
20821         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20822         GNULIB_MBSRCHR.
20823         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
20824         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
20825
20826 2007-02-04  Bruno Haible  <bruno@clisp.org>
20827
20828         New module mbschr.
20829         * modules/mbschr: New file.
20830         * lib/mbschr.c: New file.
20831         * lib/string_.h (strchr): Add a conditional link warning.
20832         (mbschr): New declaration.
20833         * m4/mbschr.m4: New file.
20834         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
20835         GNULIB_MBSCHR.
20836         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
20837         * MODULES.html.sh (Internationalization functions): Add mbschr.
20838
20839 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
20840
20841         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
20842
20843         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
20844
20845 2007-02-04  Bruno Haible  <bruno@clisp.org>
20846
20847         New module description section 'configure.ac-early'.
20848         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
20849         (func_get_autoconf_early_snippet): New function.
20850         (func_import, func_create_testdir): Use it. Remove special cases for
20851         modules 'extensions' and 'lock'.
20852         * modules/extensions (configure.ac-early): Require
20853         gl_USE_SYSTEM_EXTENSIONS.
20854         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
20855
20856 2007-02-04  Bruno Haible  <bruno@clisp.org>
20857
20858         Make use of gcj-4.3's -fsource and -ftarget option.
20859         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
20860         and if so try the options -fsource and -ftarget.
20861         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
20862         source_version, ftarget_option, target_version arguments.
20863         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
20864         (is_envjavac_oldgcj_14_14_usable): Renamed from
20865         is_envjavac_gcj_14_14_usable.
20866         (is_envjavac_oldgcj_14_13_usable): Renamed from
20867         is_envjavac_gcj_14_13_usable.
20868         (is_gcj_present): Update.
20869         (is_gcj_43, is_gcj43_usable): New functions.
20870         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
20871         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
20872         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
20873         try the options -fsource and -ftarget.
20874
20875 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
20876
20877         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
20878         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
20879         larger value.
20880
20881 2007-02-03  Jim Meyering  <jim@meyering.net>
20882
20883         Give tools a better chance to allocate space for very large buffers.
20884         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
20885
20886         Make pwd and readlink work also when run with an unreadable parent dir
20887         on systems with openat support.
20888         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
20889         provided getcwd function, even when we have openat support.
20890         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
20891
20892 2007-02-02  Bruno Haible  <bruno@clisp.org>
20893
20894         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
20895         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
20896         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
20897         portability problems if one of these functions is only used on specific
20898         platforms.
20899         Reported by Paul Eggert.
20900
20901 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
20902
20903         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
20904         is causing more trouble than it's curing.
20905         * lib/regex_internal.h (__mempcpy): Remove.
20906         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
20907         (and make the code a tad smaller to boot).
20908         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
20909
20910 2007-02-02  Jim Meyering  <jim@meyering.net>
20911
20912         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
20913         section, not in the Makefile.am: one.
20914
20915 2007-02-02  Eric Blake  <ebb9@byu.net>
20916
20917         * lib/strchrnul.c: Always include config.h first.
20918
20919         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
20920         gnulib strstr is not necessary here.
20921
20922 2007-02-02  Simon Josefsson  <simon@josefsson.org>
20923
20924         * m4/socklen.m4: Fix typo.
20925
20926 2007-02-02  Eric Blake  <ebb9@byu.net>
20927
20928         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
20929         * modules/netinet_in (Makefile.am): Likewise.
20930
20931 2007-02-01  Bruno Haible  <bruno@clisp.org>
20932
20933         * lib/string_.h (GL_LINK_WARNING): New macro.
20934         (strcasecmp, strstr, strcasestr): If provided by the system,
20935         conditionally define as a macro that leads to a warning instead of to
20936         an error.
20937         (strncasecmp): Conditionally define as a macro that leads to a warning.
20938
20939 2007-02-01  Karl Berry  <karl@gnu.org>
20940
20941         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
20942
20943 2007-02-01  Bruno Haible  <bruno@clisp.org>
20944
20945         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
20946         renamings.
20947
20948 2007-02-01  Eric Blake  <ebb9@byu.net>
20949
20950         * modules/regex (Depends-on): Revert dependence on mempcpy.
20951         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
20952         module's definition of mempcpy.
20953         Reported by Paul Eggert.
20954
20955 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
20956
20957         * lib/string_.h: If the gnulib module XYZ is not present, undefine
20958         the symbol XYZ before redefining it.  This fixes a problem with
20959         programs that don't use XYZ, when compiled on systems that define
20960         XYZ to something else.
20961
20962 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
20963
20964         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
20965         occurs when "mkdir -m foo" creates a setgid directory that is (1)
20966         writeable to group or other and (2) is intended to have a special
20967         mode bit that is set or cleared.  In such a case, the directory
20968         should be neither group- nor other-writeable until the special
20969         mode bits are right.
20970
20971 2007-01-31  Eric Blake  <ebb9@byu.net>
20972
20973         * modules/mountlist (Depends-on): Add strstr.
20974
20975         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
20976         bug.
20977         * modules/string (Makefile.am): Remove redundant replacement.
20978         * modules/regex (Depends-on): Add mempcpy.
20979
20980 2007-01-31  Bruno Haible  <bruno@clisp.org>
20981
20982         New module description field 'Link'.
20983         * gnulib-tool (func_usage): Document --extract-link-directive.
20984         (sed_extract_prog): Recognize 'Link' directive.
20985         (func_get_link_directive): New function.
20986         (func_import): Show summary of link directives.
20987         Handle --extract-link-directive option.
20988         * modules/acl (Link): New section.
20989         * modules/clock-time (Link): New section.
20990         * modules/euidaccess (Link): New section.
20991         * modules/gettext (Link): New section.
20992         * modules/iconv (Link): New section.
20993         * modules/lock (Link): New section.
20994         * modules/nanosleep (Link): New section.
20995         * modules/readline (Link): New section.
20996
20997 2007-01-27  Bruno Haible  <bruno@clisp.org>
20998
20999         Enforce the use of gnulib modules for unportable <string.h> functions.
21000         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
21001         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
21002         (gl_HEADER_STRING_H_BODY): Require it.
21003         * lib/string_.h: If the gnulib module XYZ is not present, redefine
21004         the symbol XYZ to one that gives a link error.
21005         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
21006         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
21007         * modules/mempcpy (configure.ac): Likewise.
21008         * modules/memrchr (configure.ac): Likewise.
21009         * modules/stpcpy (configure.ac): Likewise.
21010         * modules/stpncpy (configure.ac): Likewise.
21011         * modules/strcase (configure.ac): Likewise.
21012         * modules/strcasestr (configure.ac): Likewise.
21013         * modules/strchrnul (configure.ac): Likewise.
21014         * modules/strdup (configure.ac): Likewise.
21015         * modules/strndup (configure.ac): Likewise.
21016         * modules/strnlen (configure.ac): Likewise.
21017         * modules/strpbrk (configure.ac): Likewise.
21018         * modules/strsep (configure.ac): Likewise.
21019         * modules/strstr (configure.ac): Likewise.
21020         * modules/strtok_r (configure.ac): Likewise.
21021
21022 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
21023
21024         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
21025
21026 2007-01-30  Jim Meyering  <jim@meyering.net>
21027
21028         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
21029
21030 2007-01-29  Bruno Haible  <bruno@clisp.org>
21031
21032         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
21033         * lib/execute.c: Likewise.
21034         * lib/pipe.c: Likewise.
21035         * lib/printf-args.h: Likewise.
21036         * lib/printf-args.c: Likewise.
21037         * lib/printf-parse.c: Likewise.
21038         * lib/vasnprintf.c: Likewise.
21039
21040 2007-01-29  Eric Blake  <ebb9@byu.net>
21041
21042         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
21043         declaration.
21044
21045 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
21046
21047         * lib/strptime.h (strptime): Use 'restrict' for args where
21048         POSIX requires this.
21049         * lib/strptime.c (strptime): Likewise.
21050         Change license notice from LGPL to GPL, since gnulib-tool will
21051         change this as needed.
21052         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
21053         defined.
21054         Include "strptime.h" first, to check interface.
21055         Do not #undef _LIBC and _NL_CURRENT.
21056         Do not include <stdlib.h>; no longer needed.
21057         Include "time_r.h" and declare ptime_locale_status
21058         only if _LIBC is not defined.
21059         (__P): Remove unused macro.
21060         (match_string): Bring back glibc version, but use it only if _LIBC
21061         is defined.
21062         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
21063         Remove unnecessary assertion and abort() call.
21064         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
21065         * m4/strptime.m4: Fix serial number comment.
21066         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
21067         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
21068         (Depends-on): Add time_r.
21069
21070 2007-01-29  Bruno Haible  <bruno@clisp.org>
21071
21072         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21073         strptime.
21074         * modules/strptime (Depends-on): Add stdbool.
21075         * lib/strptime.h: Include <time.h> always. Add comments.
21076
21077 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
21078
21079         * modules/strptime: New file.
21080         * lib/strptime.h: New file.
21081         * lib/strptime.c: New file.
21082         * m4/strptime.m4: New file.
21083
21084 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
21085
21086         * MODULES.html.sh: New module mpsort.
21087         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
21088
21089         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
21090         a circularity problem with HP-UX ia64 reported by Bob Proulx in
21091         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
21092         All uses changed.
21093         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
21094         All uses changed.
21095         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
21096         to _Restrict_.
21097         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
21098         the parameter matches the prototype.
21099
21100 2007-01-28  Jim Meyering  <jim@meyering.net>
21101
21102         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
21103         sys/time.h here, reverting that part of the previous patch:
21104         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
21105
21106 2007-01-28  Bruno Haible  <bruno@clisp.org>
21107
21108         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
21109         value of $(SYS_TIME_H).
21110         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
21111         remove it conditionally, too. [added by Jim Meyering]
21112         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
21113         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
21114         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
21115         GETTIMEOFDAY_REPLACEMENT to 1.
21116
21117 2007-01-28  Bruno Haible  <bruno@clisp.org>
21118
21119         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
21120         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
21121         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
21122         Set UNISTD_H instead of UNISTD_H2.
21123         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
21124
21125 2007-01-28  Bruno Haible  <bruno@clisp.org>
21126
21127         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
21128         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
21129
21130 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21131
21132         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
21133         (func_create_testdir): Ensure C locale for `grep' and `tr'
21134         character ranges.
21135         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
21136         ACLOCAL_AMFLAGS parsing state machine.
21137
21138 2007-01-27  Bruno Haible  <bruno@clisp.org>
21139
21140         * modules/unistr/base: Update.
21141
21142 2007-01-27  Bruno Haible  <bruno@clisp.org>
21143
21144         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
21145         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
21146         * modules/unistr/u32-mbtouc-unsafe: Renamed from
21147         modules/unistr/u32-mbtouc.
21148         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
21149         * lib/unistr.h: Update.
21150         * lib/linebreak.c: Update.
21151         * modules/unistr/u32-mbtouc: Renamed from
21152         modules/unistr/u32-mbtouc-safe.
21153         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
21154         * lib/unistr.h: Update.
21155         * lib/unistr/u32-to-u8.c: Update.
21156         * lib/unistr/u32-to-u16.c: Update.
21157
21158 2007-01-27  Bruno Haible  <bruno@clisp.org>
21159
21160         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
21161         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
21162         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
21163         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
21164         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
21165         * modules/unistr/u16-mbtouc-unsafe: Renamed from
21166         modules/unistr/u16-mbtouc.
21167         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
21168         * lib/unistr.h: Update.
21169         * lib/linebreak.c: Update.
21170         * modules/linebreak: Update.
21171         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
21172         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
21173         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
21174         * modules/unistr/u16-mbtouc: Renamed from
21175         modules/unistr/u16-mbtouc-safe.
21176         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
21177         * lib/unistr.h: Update.
21178         * lib/unistr/u16-to-u8.c: Update.
21179         * modules/unistr/u16-to-u8: Update.
21180         * lib/unistr/u16-to-u32.c: Update.
21181         * modules/unistr/u16-to-u32: Update.
21182
21183 2007-01-27  Bruno Haible  <bruno@clisp.org>
21184
21185         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
21186         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
21187         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
21188         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
21189         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
21190         * modules/unistr/u8-mbtouc-unsafe: Renamed from
21191         modules/unistr/u8-mbtouc.
21192         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
21193         * lib/unistr.h: Update.
21194         * lib/striconveh.c: Update.
21195         * modules/striconveh: Update.
21196         * lib/linebreak.c: Update.
21197         * modules/linebreak: Update.
21198         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
21199         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
21200         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
21201         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
21202         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
21203         * lib/unistr.h: Update.
21204         * lib/striconveh.c: Update.
21205         * modules/striconveh: Update.
21206         * lib/unistr/u8-to-u16.c: Update.
21207         * modules/unistr/u8-to-u16: Update.
21208         * lib/unistr/u8-to-u32.c: Update.
21209         * modules/unistr/u8-to-u32: Update.
21210
21211 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21212
21213         Sync from Libtool.
21214         * lib/argz.c: Do not include strings.h nor memory.h, include
21215         string.h unconditionally.  Patch by Simon Josefsson.
21216
21217 2007-01-27  Bruno Haible  <bruno@clisp.org>
21218
21219         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
21220         from gl_HEADER_STRING_H_BODY.
21221         (gl_HEADER_STRING_H_BODY): Require it.
21222         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
21223         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
21224         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
21225         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
21226         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
21227         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
21228         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
21229         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
21230         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
21231         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
21232         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
21233         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
21234         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
21235         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
21236         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
21237
21238 2007-01-27  Bruno Haible  <bruno@clisp.org>
21239
21240         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
21241         check_PROGRAMS into noinst_PROGRAMS.
21242         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
21243         check_PROGRAMS in this case.
21244         (func_import): Set for_test to false.
21245         (func_create_testdir): Set for_test to true.
21246
21247 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
21248             Bruno Haible  <bruno@clisp.org>
21249
21250         * modules/strcasestr (Files): Remove lib/strcasestr.h.
21251         (Depends-on): Add string.
21252         (Includes): Use <string.h> instead of strcasestr.h.
21253         * modules/string (Makefile.am): Also substitute the value of
21254         REPLACE_STRCASESTR.
21255         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
21256         assume strcasestr is declared in <string.h> not <strings.h>. Also
21257         set REPLACE_STRCASESTR.
21258         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
21259         REPLACE_STRCASESTR.
21260         * lib/strcasestr.h: Remove file.
21261         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
21262         * lib/string_.h (strcasestr): New declaration.
21263
21264 2007-01-27  Bruno Haible  <bruno@clisp.org>
21265
21266         * lib/string_.h: Use 'extern'.
21267
21268 2007-01-27  Jim Meyering  <jim@meyering.net>
21269
21270         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
21271         of set-but-not-used local, "q".
21272
21273         * lib/mempcpy.c: Include <config.h> before <string.h>.
21274         This fixes a compilation error on HP-UX, due to the system's
21275         "restrict"-using mempcpy prototype.
21276
21277 2007-01-26  Bruno Haible  <bruno@clisp.org>
21278
21279         Small optimization.
21280         * lib/javacomp.c: Include c-strstr.h.
21281          (is_envjavac_gcj): Use c_strstr instead of strstr.
21282         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
21283
21284 2007-01-26  Bruno Haible  <bruno@clisp.org>
21285
21286         * MODULES.html.sh (Unicode string functions): Add the new modules.
21287
21288         * modules/uniconv/u32-strconv-to-locale: New file.
21289         * lib/uniconv/u32-strconv-to-locale.c: New file.
21290
21291         * modules/uniconv/u16-strconv-to-locale: New file.
21292         * lib/uniconv/u16-strconv-to-locale.c: New file.
21293
21294         * modules/uniconv/u8-strconv-to-locale: New file.
21295         * lib/uniconv/u8-strconv-to-locale.c: New file.
21296
21297         * modules/uniconv/u32-strconv-from-locale: New file.
21298         * lib/uniconv/u32-strconv-from-locale.c: New file.
21299
21300         * modules/uniconv/u16-strconv-from-locale: New file.
21301         * lib/uniconv/u16-strconv-from-locale.c: New file.
21302
21303         * modules/uniconv/u8-strconv-from-locale: New file.
21304         * lib/uniconv/u8-strconv-from-locale.c: New file.
21305
21306         * modules/uniconv/u32-strconv-to-enc: New file.
21307         * lib/uniconv/u32-strconv-to-enc.c: New file.
21308         * modules/uniconv/u32-strconv-to-enc-tests: New file.
21309         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
21310
21311         * modules/uniconv/u16-strconv-to-enc: New file.
21312         * lib/uniconv/u16-strconv-to-enc.c: New file.
21313         * lib/uniconv/u-strconv-to-enc.h: New file.
21314         * modules/uniconv/u16-strconv-to-enc-tests: New file.
21315         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
21316
21317         * modules/uniconv/u8-strconv-to-enc: New file.
21318         * lib/uniconv/u8-strconv-to-enc.c: New file.
21319         * modules/uniconv/u8-strconv-to-enc-tests: New file.
21320         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
21321
21322         * modules/uniconv/u32-strconv-from-enc: New file.
21323         * lib/uniconv/u32-strconv-from-enc.c: New file.
21324         * modules/uniconv/u32-strconv-from-enc-tests: New file.
21325         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
21326
21327         * modules/uniconv/u16-strconv-from-enc: New file.
21328         * lib/uniconv/u16-strconv-from-enc.c: New file.
21329         * modules/uniconv/u16-strconv-from-enc-tests: New file.
21330         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
21331
21332         * modules/uniconv/u8-strconv-from-enc: New file.
21333         * lib/uniconv/u8-strconv-from-enc.c: New file.
21334         * lib/uniconv/u-strconv-from-enc.h: New file.
21335         * modules/uniconv/u8-strconv-from-enc-tests: New file.
21336         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
21337
21338         * modules/uniconv/u32-conv-from-enc: New file.
21339         * lib/uniconv/u32-conv-from-enc.c: New file.
21340         * modules/uniconv/u32-conv-from-enc-tests: New file.
21341         * tests/uniconv/test-u32-conv-from-enc.c: New file.
21342
21343         * modules/uniconv/u16-conv-from-enc: New file.
21344         * lib/uniconv/u16-conv-from-enc.c: New file.
21345         * lib/uniconv/u-conv-from-enc.h: New file.
21346         * modules/uniconv/u16-conv-from-enc-tests: New file.
21347         * tests/uniconv/test-u16-conv-from-enc.c: New file.
21348
21349         * modules/uniconv/u8-conv-from-enc: New file.
21350         * lib/uniconv/u8-conv-from-enc.c: New file.
21351         * modules/uniconv/u8-conv-from-enc-tests: New file.
21352         * tests/uniconv/test-u8-conv-from-enc.c: New file.
21353
21354         * modules/uniconv/base: New file.
21355         * lib/uniconv.h: New file.
21356
21357 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
21358
21359         * doc/gnulib-tool.texi (Initial import): Update to match current
21360         behavior with strdup module.
21361         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
21362         * lib/memmem.h: Remove; all uses removed.  This is now done
21363         by <string.h>.
21364         * lib/mempcpy.h: Likewise.
21365         * lib/memrchr.h: Likewise.
21366         * lib/stpcpy.h: Likewise.
21367         * lib/stpncpy.h: Likewise.
21368         * lib/strcase.h: Likewise.
21369         * lib/strchrnul.h: Likewise.
21370         * lib/strdup.h: Likewise.
21371         * lib/strndup.h: Likewise.
21372         * lib/strnlen.h: Likewise.
21373         * lib/strpbrk.h: Likewise.
21374         * lib/strsep.h: Likewise.
21375         * lib/strstr.h: Likewise.
21376         * lib/strtok_r.h: Likewise.
21377         * lib/string_.h: New file.
21378         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
21379         Rely on <string.h> instead.
21380         * lib/canon-host.c: Likewise.
21381         * lib/chdir-long.c: Likewise.
21382         * lib/concatpath.c: Likewise.
21383         * lib/exclude.c: Likewise.
21384         * lib/fchdir.c: Likewise.
21385         * lib/getaddrinfo.c: Likewise.
21386         * lib/getcwd.c: Likewise.
21387         * lib/getsubopt.c: Likewise.
21388         * lib/glob.c: Likewise.
21389         * lib/hard-locale.c: Likewise.
21390         * lib/iconvme.c: Likewise.
21391         * lib/javacomp.c: Likewise.
21392         * lib/mempcpy.c: Likewise.
21393         * lib/memrchr.c: Likewise.
21394         * lib/regex_internal.h: Likewise.
21395         * lib/stpncpy.c: Likewise.
21396         * lib/strcasecmp.c: Likewise.
21397         * lib/strchrnul.c: Likewise.
21398         * lib/strdup.c: Likewise.
21399         * lib/striconv.c: Likewise.
21400         * lib/striconveh.c: Likewise.
21401         * lib/striconveha.c: Likewise.
21402         * lib/strncasecmp.c: Likewise.
21403         * lib/strndup.c: Likewise.
21404         * lib/strnlen.c: Likewise.
21405         * lib/strsep.c: Likewise.
21406         * lib/strstr.c: Likewise.
21407         * lib/strtok_r.c: Likewise.
21408         * lib/userspec.c: Likewise.
21409         * lib/w32spawn.h: Likewise.
21410         * lib/xstrndup.c: Likewise.
21411         * lib/mountlist.c (strstr): Remove decl.
21412         * m4/string_h.m4: New file.
21413         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
21414         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
21415         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
21416         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
21417         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
21418         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
21419         Set REPLACE_STRCASECMP if necessary.
21420         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
21421         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
21422         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
21423         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
21424         HAVE_DECL_STRDUP if necessary.
21425         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
21426         since gl_FUNC_STRNDUP does that now.
21427         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
21428         Check for decl here...
21429         (gl_PREREQ_STRNLEN): ... not here.
21430         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
21431         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
21432         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
21433         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
21434         necessary.
21435         * modules/string: New file.
21436         * modules/memmem (Files): Remove special-purpose include file.
21437         (Depends-on): Add string.
21438         (Include): Include <string.h>, not the removed file.
21439         * modules/mempcpy: Likewise.
21440         * modules/memrchr: Likewise.
21441         * modules/stpcpy: Likewise.
21442         * modules/stpncpy: Likewise.
21443         * modules/strcase: Likewise.
21444         * modules/strchrnul: Likewise.
21445         * modules/strdup: Likewise.
21446         * modules/strndup: Likewise.
21447         * modules/strnlen: Likewise.
21448         * modules/strpbrk: Likewise.
21449         * modules/strsep: Likewise.
21450         * modules/strstr: Likewise.
21451         * modules/strtok_r: Likewise.
21452         * tests/test-dirname.c: Don't include "strdup.h", since
21453         <string.h> now suffices.
21454         * tests/test-memmem.c: Don't include "memmem.h", since
21455         <string.h> now suffices.
21456
21457 2007-01-25  Bruno Haible  <bruno@clisp.org>
21458
21459         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
21460         *resultp is 0.
21461
21462         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
21463         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
21464         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
21465         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
21466
21467         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
21468         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
21469         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
21470         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
21471         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
21472         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
21473
21474 2007-01-24  Bruno Haible  <bruno@clisp.org>
21475
21476         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
21477         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
21478         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
21479         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
21480         gl_FUNC_FTS_CORE.
21481         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
21482         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
21483         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
21484         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
21485         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
21486         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
21487         gl_FUNC_FCHOWNAT.
21488         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
21489         gl_FUNC_STRFTIME.
21490         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
21491         Reported by Ralf Wildenhues.
21492
21493 2007-01-24  Bruno Haible  <bruno@clisp.org>
21494
21495         Drop AC_REQUIRE calls that are redundant with the module dependencies.
21496         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
21497         gl_GETADDRINFO.
21498         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
21499         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
21500         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
21501
21502 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
21503
21504         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
21505         Don't use 'exit'; just return from 'main'.
21506         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
21507
21508         * lib/fnmatch_.h: Readjust white space and comments to match
21509         glibc, to avoid spurious diffs.
21510
21511 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21512
21513         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
21514         2004-12-01 change by Jakub Jelinek, since this code won't compile
21515         if !LIBC.  Problem reported by Bob Proulx.
21516
21517 2007-01-23  Bruno Haible  <bruno@clisp.org>
21518
21519         * lib/striconveh.c: Include c-strcaseeq.h.
21520         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
21521         * modules/striconveh (Depends-on): Add c-strcaseeq.
21522
21523 2007-01-23  Bruno Haible  <bruno@clisp.org>
21524
21525         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
21526
21527         * modules/c-strcaseeq: New file.
21528         * lib/c-strcaseeq.h: New file.
21529
21530         * modules/streq: New file.
21531         * lib/streq.h: New file.
21532
21533 2007-01-23  Bruno Haible  <bruno@clisp.org>
21534
21535         * modules/striconveha-tests: New file.
21536         * tests/test-striconveha.c: New file.
21537
21538         * lib/striconveha.h: Include <stdbool.h>.
21539         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
21540         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
21541         (mem_iconveha_notranslit): Renamed from mem_iconveha.
21542         (mem_iconveha): New function.
21543         (str_iconveha_notranslit): Renamed from str_iconveha.
21544         (str_iconveha): New function.
21545         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
21546         c-strcase.
21547
21548 2007-01-23  Bruno Haible  <bruno@clisp.org>
21549
21550         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
21551         encodings without forgiving before trying any encoding with handler.
21552         (str_iconveha): Try all encodings without forgiving before trying any
21553         encoding with handler.
21554
21555 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
21556
21557         Import the following changes from libc.
21558
21559         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
21560
21561         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
21562
21563         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
21564
21565         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
21566         normal_bracket label.
21567
21568         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
21569
21570         [BZ #361]
21571         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
21572         to normal_bracket after fetching the next character.
21573
21574 2007-01-22  Bruno Haible  <bruno@clisp.org>
21575
21576         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
21577         argument.
21578         * lib/striconveh.c (iconv_carefully_1): New function.
21579         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
21580         argument.
21581         (str_cd_iconveh): Update.
21582         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
21583         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
21584         * tests/test-striconveh.c (MAGIC): New macro.
21585         (new_offsets): New function.
21586         (main): Test call with and without offsets.
21587
21588 2007-01-22  Bruno Haible  <bruno@clisp.org>
21589
21590         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
21591         * modules/sys_select (Makefile.am): Likewise.
21592         * modules/sys_socket (Makefile.am): Likewise.
21593         * modules/sys_time (Makefile.am): Likewise.
21594
21595 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
21596
21597         * modules/gettimeofday (License): Change from GPL to LGPL, since
21598         gettimeofday is a library function.
21599
21600 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21601
21602         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
21603
21604 2007-01-21  Bruno Haible  <bruno@clisp.org>
21605
21606         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
21607
21608 2007-01-21  Bruno Haible  <bruno@clisp.org>
21609
21610         * modules/striconveha: New file.
21611         * lib/striconveha.h: New file.
21612         * lib/striconveha.c: New file.
21613         * MODULES.html.sh (Internationalization functions): Add striconveha.
21614         * lib/striconv.c (str_iconv): Optimize the case of an empty input
21615         string.
21616         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
21617
21618 2007-01-21  Bruno Haible  <bruno@clisp.org>
21619
21620         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
21621         * lib/striconveh.c (str_iconveh): Likewise.
21622
21623 2007-01-21  Bruno Haible  <bruno@clisp.org>
21624
21625         * lib/striconveh.h (mem_iconveh): New declaration.
21626         * lib/striconveh.c (mem_iconveh): New function.
21627         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
21628
21629 2007-01-21  Bruno Haible  <bruno@clisp.org>
21630
21631         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
21632
21633         * lib/striconveh.h (mem_cd_iconveh): Change specification.
21634         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
21635         original result buffer.
21636         (str_cd_iconveh): Update.
21637         * tests/test-striconveh.c (main): Update.
21638
21639         * lib/striconv.h (mem_cd_iconv): Change specification.
21640         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
21641         result buffer.
21642         (str_cd_iconv): Update.
21643         * tests/test-striconv.c (main): Update.
21644
21645 2007-01-21  Bruno Haible  <bruno@clisp.org>
21646
21647         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
21648
21649 2007-01-20  Jim Meyering  <jim@meyering.net>
21650
21651         * lib/userspec.c (parse_with_separator): If a user or group string
21652         starts with "+", skip the corresponding name-to-ID look-up, since
21653         such a look-up must fail: user and group names may not include "+".
21654
21655 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
21656
21657         * lib/poll.c: Include sys/time.h and time.h unconditionally,
21658         since we now assume the sys_time module.
21659         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
21660         check for sys/time.h; no longer needed.
21661         * modules/poll (Depends-on): Depend on sys_time.
21662
21663 2007-01-18  Bruno Haible  <bruno@clisp.org>
21664
21665         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
21666         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
21667
21668         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
21669         gettimeofday.
21670
21671         * tests/test-gettimeofday.c: Include <time.h>.
21672         (dummy): Remove variable.
21673
21674         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
21675         gl_HEADER_SYS_TIME_H.
21676         (gl_HEADER_SYS_TIME_H): New macro.
21677
21678         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
21679         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21680         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
21681         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
21682         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21683         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
21684         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
21685         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21686         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
21687         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
21688         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21689
21690         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
21691         last change; it caused a compilation error when cross-compiling to
21692         Cygwin.
21693
21694 2007-01-18  Jim Meyering  <jim@meyering.net>
21695
21696         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
21697         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
21698         than the race-prone "test -d sys || mkdir sys".
21699         (configure.ac): Use AC_PROG_MKDIR_P.
21700         * modules/sys_select: Likewise.
21701         * modules/sys_socket: Likewise.
21702         * modules/sys_time: Likewise.
21703
21704 2007-01-18  Eric Blake  <ebb9@byu.net>
21705
21706         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
21707         replace gettimeofday.
21708         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
21709         name, to avoid infinite recursion.
21710
21711 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
21712
21713         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
21714         module sys_time.
21715         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
21716         assume timespec.h defines struct timeval.
21717         * lib/settime.c: Likewise.
21718         * lib/utimens.c: Likewise.
21719         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
21720         since we now assume the gettimeofday module.
21721         * lib/tempname.c (__gen_tempname): Likewise.
21722         * lib/gettimeofday.h: Remove.
21723         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
21724         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
21725         Include <time.h>, for 'time()'.
21726         (localtime_buffer_addr): Also use this workaround if
21727         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
21728         to simplify the uses.  All uses changed.
21729         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
21730         that #undef is inside {}, and 'const' follows type name consistently.
21731         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
21732         (gettimeofday): Do not use the maximum possible value for
21733         tv->tv_usec, since that might break usages other than ls.c.
21734         Instead, we'll leave ls.c alone.  This undoes today's patch
21735         by Bruno.  Add a compile-time warning for 1s-clock resolution;
21736         we've never observed the problem but might as well keep the
21737         canary.
21738         * lib/nanosleep.c: Include timespec.h first, for interface check.
21739         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
21740         now assume the sys_time module.
21741         * lib/tempname.c: Likewise.
21742         * lib/timespec.h: Likewise.
21743         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
21744         needed.
21745         * lib/strftime.c: Likewise.
21746         * lib/timespec.h: Likewise.
21747         * lib/posixtm.c: Include posixtm.h first, for interface check.
21748         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
21749         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
21750         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
21751         * lib/sys_time_.h: New file.
21752         * lib/timespec.h (struct timespec): Use long int, not long.
21753         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
21754         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
21755         Remove obsolescent call to AC_HEADER_TIME.
21756         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
21757         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
21758         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
21759         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
21760         Likewise.
21761         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
21762         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
21763         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
21764         into the sys_time module.  Check for gettimeofday just once.
21765         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
21766         for gettimeofday signature to just check the signature.  Merely
21767         compile it, since linking doesn't test signature.  Improve test for
21768         whether gettimeofday.o is actually needed.
21769         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
21770         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
21771         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
21772         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21773         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
21774         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
21775         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
21776         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
21777         than worrying about sys/time.h.
21778         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
21779         Don't bother worrying about TIME_WITH_SYS_TIME.
21780         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
21781         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
21782         * m4/sys_time_h.m4: New file.
21783         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
21784         Don't include sys/time.h.  Return from main rather than exiting.
21785         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
21786         all uses changed.
21787         * modules/gethrxtime (Depends-on): Add sys_time.
21788         * modules/gettime (Depends-on): Likewise.
21789         * modules/gettimeofday (Depends-on): Likewise.
21790         * modules/nanosleep (Depends-on): Likewise.
21791         * modules/settime (Depends-on): Likewise.
21792         * modules/tempname (Depends-on): Likewise.
21793         * modules/utimens (Depends-on): Likewise.
21794         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
21795         (Include:) Change back to <sys/time.h>.
21796         (Maintainer:) Add self.
21797         * modules/sys_time: New file.
21798         * modules/tempname (Depends-on): Add gettimeofday.
21799         * tests/test-gettimeofday.c: Include <sys/time.h>
21800         rather than gettimeofday.h.
21801
21802 2007-01-17  Bruno Haible  <bruno@clisp.org>
21803
21804         * gnulib-tool (func_get_license): Revert last patch. Instead, let
21805         the license default to GPL.
21806         (func_create_testdir): Don't complain if a module is LGPL and its
21807         tests module depends on GPLed modules.
21808
21809 2007-01-17  Bruno Haible  <bruno@clisp.org>
21810
21811         * lib/gettimeofday.c (gettimeofday): Add code for the case
21812         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
21813         maximum possible value for tv->tv_usec, rather than the minimum one.
21814
21815 2005-10-08  Martin Lambers  <marlam@marlam.de>
21816 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21817 2007-01-16  Bruno Haible  <bruno@clisp.org>
21818
21819         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
21820         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
21821         gl_FUNC_GETTIMEOFDAY.
21822         (Include): Add gettimeofday.h.
21823         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
21824         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
21825         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
21826         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
21827         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
21828         * lib/gettimeofday.h: New file.
21829         * lib/gettimeofday.c: Include <sys/timeb.h>.
21830         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
21831         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
21832         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
21833         fall back on time().
21834
21835         * tests/test-gettimeofday.c: New file.
21836         * modules/gettimeofday-tests: New file.
21837
21838 2007-01-16  Eric Blake  <ebb9@byu.net>
21839
21840         * modules/fnmatch (Depends-on): Depend on wchar.
21841         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
21842         * m4/fnmatch.m4: Likewise.
21843         * modules/mbchar (Makefile.am): Assume <wchar.h>.
21844         * m4/mbchar.m4: Likewise.
21845         * modules/mbswidth (Depends-on): Depend on wchar.
21846         * lib/mbswidth.c: Assume <wchar.h>.
21847         * m4/mbswidth.m4: Likewise.
21848         * modules/quotearg (Depends-on): Depend on wchar.
21849         * lib/quotearg.c: Assume <wchar.h>.
21850         * m4/quotearg.m4: Likewise.
21851         * modules/regex (Depends-on): Depend on wchar.
21852         * lib/regex_internal.h: Assume <wchar.h>.
21853         * m4/regex.m4: Likewise.
21854         * modules/stdint (Depends-on): Depend on wchar.
21855         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
21856         * m4/stdint.m4: Likewise.
21857         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
21858         * modules/strftime (Depends-on): Depend on wchar.
21859         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
21860         * modules/strtol (Depends-on): Depend on wchar.
21861         * lib/strtol.c: Assume <wchar.h>.
21862         * modules/wcwidth (Depends-on): Depend on wchar.
21863         * lib/wcwidth.h: Assume <wchar.h>.
21864         * m4/wcwidth.m4: Likewise.
21865
21866 2007-01-16  Bruno Haible  <bruno@clisp.org>
21867
21868         * modules/csharpexec-script: New, created from...
21869         * modules/csharpexec: ... this.
21870
21871 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
21872
21873         * modules/javaexec-script: New, created from...
21874         * modules/javaexec: ... this.
21875
21876 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21877
21878         * modules/poll (Dependencies): Add sys_select.
21879
21880 2007-01-15  Jim Meyering  <jim@meyering.net>
21881
21882         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
21883         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
21884         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
21885         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
21886
21887 2007-01-15  Bruno Haible  <bruno@clisp.org>
21888
21889         * modules/striconveh: New file.
21890         * lib/striconveh.h: New file.
21891         * lib/striconveh.c: New file.
21892         * MODULES.html.sh (Internationalization functions): Add striconveh.
21893
21894         * modules/striconveh-tests: New file.
21895         * tests/test-striconveh.c: New file.
21896
21897 2007-01-15  Bruno Haible  <bruno@clisp.org>
21898
21899         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
21900         not from GNU libiconv or GNU libc.
21901
21902 2007-01-15  Bruno Haible  <bruno@clisp.org>
21903
21904         * doc/gnulib-intro.texi (Copyright): Explain the different license
21905         terms for module descriptions, autoconf macros, tests, documentation.
21906
21907 2007-01-14  Bruno Haible  <bruno@clisp.org>
21908
21909         * modules/striconv-tests: New file.
21910         * tests/test-striconv.c: New file.
21911
21912 2007-01-14  Bruno Haible  <bruno@clisp.org>
21913
21914         * modules/iconv-tests: New file.
21915         * tests/test-iconv.c: New file.
21916
21917 2007-01-14  Bruno Haible  <bruno@clisp.org>
21918
21919         * gnulib-tool (func_get_license): For test modules, use the license of
21920         the main module.
21921
21922 2007-01-14  Bruno Haible  <bruno@clisp.org>
21923
21924         * modules/iconv (Include): Clarify that <iconv.h> can only be included
21925         if iconv is found to exist.
21926
21927 2007-01-14  Bruno Haible  <bruno@clisp.org>
21928
21929         * modules/c-ctype-tests: New file.
21930         * tests/test-c-ctype.c: New file.
21931
21932 2007-01-14  Bruno Haible  <bruno@clisp.org>
21933
21934         * modules/binary-io-tests: New file.
21935         * tests/test-binary-io.sh: New file.
21936         * tests/test-binary-io.c: New file.
21937
21938 2007-01-14  Bruno Haible  <bruno@clisp.org>
21939
21940         * modules/array-oset-tests: New file.
21941         * tests/test-array_oset.c: New file.
21942
21943 2007-01-14  Bruno Haible  <bruno@clisp.org>
21944
21945         * modules/array-list-tests: New file.
21946         * tests/test-array_list.c: New file.
21947
21948 2007-01-14  Bruno Haible  <bruno@clisp.org>
21949
21950         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
21951         and make.
21952         Reported by Simon Josefsson in
21953         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
21954
21955 2007-01-14  Bruno Haible  <bruno@clisp.org>
21956
21957         * modules/allocsa-tests: New file.
21958         * tests/test-allocsa.c: New file.
21959
21960 2007-01-14  Bruno Haible  <bruno@clisp.org>
21961
21962         * modules/fchdir (Depends-on): Add absolute-header.
21963         * modules/unistd (Depends-on): Likewise.
21964
21965 2006-12-30  Bruno Haible  <bruno@clisp.org>
21966
21967         * modules/fchdir: New file.
21968         * modules/unistd (Files): Add lib/unistd_.h.
21969         (Makefile.am): Generate unistd.h from unistd_.h.
21970         * lib/fchdir.c: New file.
21971         * lib/dirent_.h: New file.
21972         * lib/unistd_.h: New file.
21973         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
21974         * m4/fchdir.m4: New file.
21975         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
21976         (gl_HEADER_UNISTD): Invoke it.
21977         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
21978         function.
21979         * lib/backupfile.c (opendir, closedir): Undefine.
21980         * lib/chown.c (open, close): Undefine.
21981         * lib/clean-temp.c (open, close): Undefine.
21982         * lib/copy-file.c (open, close): Undefine.
21983         * lib/execute.c (open, close): Undefine.
21984         * lib/fsusage.c (open, close): Undefine.
21985         * lib/gc-gnulib.c (open, close): Undefine.
21986         * lib/getcwd.c (opendir, closedir): Undefine.
21987         * lib/glob.c (opendir, closedir): Undefine.
21988         * lib/javacomp.c (open, close): Undefine.
21989         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
21990         * lib/openat-proc.c (open, close): Undefine.
21991         * lib/pagealign_alloc.c (open, close): Undefine.
21992         * lib/pipe.c (open, close): Undefine.
21993         * lib/progreloc.c (open, close): Undefine.
21994         * lib/savedir.c (opendir, closedir): Undefine.
21995         * lib/utime.c (open, close): Undefine.
21996         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
21997
21998 2007-01-10  Bruno Haible  <bruno@clisp.org>
21999
22000         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
22001
22002 2007-01-12  Eric Blake  <ebb9@byu.net>
22003
22004         Provide a robust <wchar.h>.  Further simplifications are now
22005         possible in other modules, but not included here.
22006         * modules/wchar: New module.
22007         * m4/wchar.m4: New file.
22008         * lib/wchar_.h: Likewise.
22009         * modules/mbchar (Depends-on): Depend on wchar, as the first use
22010         of the new module.
22011         * MODULES.html.sh (Extended multibyte and wide character utilities):
22012         New section.
22013
22014 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
22015
22016         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
22017         to a reasonable default for memory allocation.
22018         (xreadlink): Don't allocate a huge buffer, to work around a buggy
22019         file system that reports garbage st_size values for symlinks.
22020         Problem reported by Liyang Hu.
22021
22022 2007-01-11  Simon Josefsson  <simon@josefsson.org>
22023
22024         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
22025         Emacs .#* auto-save files).
22026
22027 2007-01-11  Bruno Haible  <bruno@clisp.org>
22028
22029         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
22030         directory.
22031
22032 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
22033
22034         Use @...@ consistently in lib/wctype_.h.
22035         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
22036         on it being set to 1 or 0.
22037         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
22038         go back to AC_SUBSTing it.
22039         * modules/wctype (Makefile.am): Undo previous change.
22040
22041 2007-01-10  Eric Blake  <ebb9@byu.net>
22042
22043         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
22044         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
22045         * modules/wctype (Makefile.am): Likewise.
22046         Reported by Chris McGuire.
22047
22048 2007-01-10  Jim Meyering  <jim@meyering.net>
22049
22050         fts.c: a small readability/maintainability improvement
22051         * lib/fts.c (fts_read): Make this code slightly more readable and
22052         maintainable by hoisting the "sp->fts_cur = p" assignments to
22053         immediately follow the statements that set P.  Derived from
22054         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
22055
22056 2007-01-10  Eric Blake  <ebb9@byu.net>
22057
22058         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
22059         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
22060         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
22061         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
22062         Reported by Chris McGuire.
22063
22064 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22065
22066         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
22067         in sed script.
22068
22069 2007-01-09  Bruno Haible  <bruno@clisp.org>
22070
22071         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
22072         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
22073         variables.
22074         (func_module): Use them.
22075
22076 2007-01-09  Bruno Haible  <bruno@clisp.org>
22077
22078         * modules/unistr/base: New file.
22079         * lib/unistr.h: New file.
22080
22081         * modules/unistr/u8-to-u16: New file.
22082         * lib/unistr/u8-to-u16.c: New file.
22083
22084         * modules/unistr/u8-to-u32: New file.
22085         * lib/unistr/u8-to-u32.c: New file.
22086
22087         * modules/unistr/u16-to-u8: New file.
22088         * lib/unistr/u16-to-u8.c: New file.
22089
22090         * modules/unistr/u16-to-u32: New file.
22091         * lib/unistr/u16-to-u32.c: New file.
22092
22093         * modules/unistr/u32-to-u8: New file.
22094         * lib/unistr/u32-to-u8.c: New file.
22095
22096         * modules/unistr/u32-to-u16: New file.
22097         * lib/unistr/u32-to-u16.c: New file.
22098
22099         * modules/unistr/u8-check: New file.
22100         * modules/unistr/u16-check: New file.
22101         * modules/unistr/u32-check: New file.
22102         * lib/unistr/u8-check.c: New file.
22103         * lib/unistr/u16-check.c: New file.
22104         * lib/unistr/u32-check.c: New file.
22105
22106         * modules/unistr/u8-chr: New file.
22107         * modules/unistr/u16-chr: New file.
22108         * modules/unistr/u32-chr: New file.
22109         * lib/unistr/u8-chr.c: New file.
22110         * lib/unistr/u16-chr.c: New file.
22111         * lib/unistr/u32-chr.c: New file.
22112
22113         * modules/unistr/u8-cmp: New file.
22114         * modules/unistr/u16-cmp: New file.
22115         * modules/unistr/u32-cmp: New file.
22116         * lib/unistr/u8-cmp.c: New file.
22117         * lib/unistr/u16-cmp.c: New file.
22118         * lib/unistr/u32-cmp.c: New file.
22119
22120         * modules/unistr/u8-cpy: New file.
22121         * modules/unistr/u16-cpy: New file.
22122         * modules/unistr/u32-cpy: New file.
22123         * lib/unistr/u8-cpy.c: New file.
22124         * lib/unistr/u16-cpy.c: New file.
22125         * lib/unistr/u32-cpy.c: New file.
22126         * lib/unistr/u-cpy.h: New file.
22127
22128         * modules/unistr/u8-cpy-alloc: New file.
22129         * modules/unistr/u16-cpy-alloc: New file.
22130         * modules/unistr/u32-cpy-alloc: New file.
22131         * lib/unistr/u8-cpy-alloc.c: New file.
22132         * lib/unistr/u16-cpy-alloc.c: New file.
22133         * lib/unistr/u32-cpy-alloc.c: New file.
22134         * lib/unistr/u-cpy-alloc.h: New file.
22135
22136         * modules/unistr/u8-endswith: New file.
22137         * modules/unistr/u16-endswith: New file.
22138         * modules/unistr/u32-endswith: New file.
22139         * lib/unistr/u8-endswith.c: New file.
22140         * lib/unistr/u16-endswith.c: New file.
22141         * lib/unistr/u32-endswith.c: New file.
22142         * lib/unistr/u-endswith.h: New file.
22143
22144         * modules/unistr/u8-mblen: New file.
22145         * modules/unistr/u16-mblen: New file.
22146         * modules/unistr/u32-mblen: New file.
22147         * lib/unistr/u8-mblen.c: New file.
22148         * lib/unistr/u16-mblen.c: New file.
22149         * lib/unistr/u32-mblen.c: New file.
22150
22151         * modules/unistr/u8-mbtouc: New file.
22152         * modules/unistr/u16-mbtouc: New file.
22153         * modules/unistr/u32-mbtouc: New file.
22154         * lib/unistr/u8-mbtouc.c: New file.
22155         * lib/unistr/u16-mbtouc.c: New file.
22156         * lib/unistr/u32-mbtouc.c: New file.
22157
22158         * modules/unistr/u8-mbtouc-safe: New file.
22159         * modules/unistr/u16-mbtouc-safe: New file.
22160         * modules/unistr/u32-mbtouc-safe: New file.
22161         * lib/unistr/u8-mbtouc-safe.c: New file.
22162         * lib/unistr/u16-mbtouc-safe.c: New file.
22163         * lib/unistr/u32-mbtouc-safe.c: New file.
22164
22165         * modules/unistr/u8-move: New file.
22166         * modules/unistr/u16-move: New file.
22167         * modules/unistr/u32-move: New file.
22168         * lib/unistr/u8-move.c: New file.
22169         * lib/unistr/u16-move.c: New file.
22170         * lib/unistr/u32-move.c: New file.
22171         * lib/unistr/u-move.h: New file.
22172
22173         * modules/unistr/u8-next: New file.
22174         * modules/unistr/u16-next: New file.
22175         * modules/unistr/u32-next: New file.
22176         * lib/unistr/u8-next.c: New file.
22177         * lib/unistr/u16-next.c: New file.
22178         * lib/unistr/u32-next.c: New file.
22179
22180         * modules/unistr/u8-prev: New file.
22181         * modules/unistr/u16-prev: New file.
22182         * modules/unistr/u32-prev: New file.
22183         * lib/unistr/u8-prev.c: New file.
22184         * lib/unistr/u16-prev.c: New file.
22185         * lib/unistr/u32-prev.c: New file.
22186
22187         * modules/unistr/u8-set: New file.
22188         * modules/unistr/u16-set: New file.
22189         * modules/unistr/u32-set: New file.
22190         * lib/unistr/u8-set.c: New file.
22191         * lib/unistr/u16-set.c: New file.
22192         * lib/unistr/u32-set.c: New file.
22193         * lib/unistr/u-set.h: New file.
22194
22195         * modules/unistr/u8-startswith: New file.
22196         * modules/unistr/u16-startswith: New file.
22197         * modules/unistr/u32-startswith: New file.
22198         * lib/unistr/u8-startswith.c: New file.
22199         * lib/unistr/u16-startswith.c: New file.
22200         * lib/unistr/u32-startswith.c: New file.
22201         * lib/unistr/u-startswith.h: New file.
22202
22203         * modules/unistr/u8-stpcpy: New file.
22204         * modules/unistr/u16-stpcpy: New file.
22205         * modules/unistr/u32-stpcpy: New file.
22206         * lib/unistr/u8-stpcpy.c: New file.
22207         * lib/unistr/u16-stpcpy.c: New file.
22208         * lib/unistr/u32-stpcpy.c: New file.
22209         * lib/unistr/u-stpcpy.h: New file.
22210
22211         * modules/unistr/u8-stpncpy: New file.
22212         * modules/unistr/u16-stpncpy: New file.
22213         * modules/unistr/u32-stpncpy: New file.
22214         * lib/unistr/u8-stpncpy.c: New file.
22215         * lib/unistr/u16-stpncpy.c: New file.
22216         * lib/unistr/u32-stpncpy.c: New file.
22217         * lib/unistr/u-stpncpy.h: New file.
22218
22219         * modules/unistr/u8-strcat: New file.
22220         * modules/unistr/u16-strcat: New file.
22221         * modules/unistr/u32-strcat: New file.
22222         * lib/unistr/u8-strcat.c: New file.
22223         * lib/unistr/u16-strcat.c: New file.
22224         * lib/unistr/u32-strcat.c: New file.
22225         * lib/unistr/u-strcat.h: New file.
22226
22227         * modules/unistr/u8-strchr: New file.
22228         * modules/unistr/u16-strchr: New file.
22229         * modules/unistr/u32-strchr: New file.
22230         * lib/unistr/u8-strchr.c: New file.
22231         * lib/unistr/u16-strchr.c: New file.
22232         * lib/unistr/u32-strchr.c: New file.
22233
22234         * modules/unistr/u8-strcmp: New file.
22235         * modules/unistr/u16-strcmp: New file.
22236         * modules/unistr/u32-strcmp: New file.
22237         * lib/unistr/u8-strcmp.c: New file.
22238         * lib/unistr/u16-strcmp.c: New file.
22239         * lib/unistr/u32-strcmp.c: New file.
22240
22241         * modules/unistr/u8-strcpy: New file.
22242         * modules/unistr/u16-strcpy: New file.
22243         * modules/unistr/u32-strcpy: New file.
22244         * lib/unistr/u8-strcpy.c: New file.
22245         * lib/unistr/u16-strcpy.c: New file.
22246         * lib/unistr/u32-strcpy.c: New file.
22247         * lib/unistr/u-strcpy.h: New file.
22248
22249         * modules/unistr/u8-strcspn: New file.
22250         * modules/unistr/u16-strcspn: New file.
22251         * modules/unistr/u32-strcspn: New file.
22252         * lib/unistr/u8-strcspn.c: New file.
22253         * lib/unistr/u16-strcspn.c: New file.
22254         * lib/unistr/u32-strcspn.c: New file.
22255         * lib/unistr/u-strcspn.h: New file.
22256
22257         * modules/unistr/u8-strdup: New file.
22258         * modules/unistr/u16-strdup: New file.
22259         * modules/unistr/u32-strdup: New file.
22260         * lib/unistr/u8-strdup.c: New file.
22261         * lib/unistr/u16-strdup.c: New file.
22262         * lib/unistr/u32-strdup.c: New file.
22263         * lib/unistr/u-strdup.h: New file.
22264
22265         * modules/unistr/u8-strlen: New file.
22266         * modules/unistr/u16-strlen: New file.
22267         * modules/unistr/u32-strlen: New file.
22268         * lib/unistr/u8-strlen.c: New file.
22269         * lib/unistr/u16-strlen.c: New file.
22270         * lib/unistr/u32-strlen.c: New file.
22271         * lib/unistr/u-strlen.h: New file.
22272
22273         * modules/unistr/u8-strmblen: New file.
22274         * modules/unistr/u16-strmblen: New file.
22275         * modules/unistr/u32-strmblen: New file.
22276         * lib/unistr/u8-strmblen.c: New file.
22277         * lib/unistr/u16-strmblen.c: New file.
22278         * lib/unistr/u32-strmblen.c: New file.
22279
22280         * modules/unistr/u8-strmbtouc: New file.
22281         * modules/unistr/u16-strmbtouc: New file.
22282         * modules/unistr/u32-strmbtouc: New file.
22283         * lib/unistr/u8-strmbtouc.c: New file.
22284         * lib/unistr/u16-strmbtouc.c: New file.
22285         * lib/unistr/u32-strmbtouc.c: New file.
22286
22287         * modules/unistr/u8-strncat: New file.
22288         * modules/unistr/u16-strncat: New file.
22289         * modules/unistr/u32-strncat: New file.
22290         * lib/unistr/u8-strncat.c: New file.
22291         * lib/unistr/u16-strncat.c: New file.
22292         * lib/unistr/u32-strncat.c: New file.
22293         * lib/unistr/u-strncat.h: New file.
22294
22295         * modules/unistr/u8-strncmp: New file.
22296         * modules/unistr/u16-strncmp: New file.
22297         * modules/unistr/u32-strncmp: New file.
22298         * lib/unistr/u8-strncmp.c: New file.
22299         * lib/unistr/u16-strncmp.c: New file.
22300         * lib/unistr/u32-strncmp.c: New file.
22301
22302         * modules/unistr/u8-strncpy: New file.
22303         * modules/unistr/u16-strncpy: New file.
22304         * modules/unistr/u32-strncpy: New file.
22305         * lib/unistr/u8-strncpy.c: New file.
22306         * lib/unistr/u16-strncpy.c: New file.
22307         * lib/unistr/u32-strncpy.c: New file.
22308         * lib/unistr/u-strncpy.h: New file.
22309
22310         * modules/unistr/u8-strnlen: New file.
22311         * modules/unistr/u16-strnlen: New file.
22312         * modules/unistr/u32-strnlen: New file.
22313         * lib/unistr/u8-strnlen.c: New file.
22314         * lib/unistr/u16-strnlen.c: New file.
22315         * lib/unistr/u32-strnlen.c: New file.
22316         * lib/unistr/u-strnlen.h: New file.
22317
22318         * modules/unistr/u8-strpbrk: New file.
22319         * modules/unistr/u16-strpbrk: New file.
22320         * modules/unistr/u32-strpbrk: New file.
22321         * lib/unistr/u8-strpbrk.c: New file.
22322         * lib/unistr/u16-strpbrk.c: New file.
22323         * lib/unistr/u32-strpbrk.c: New file.
22324         * lib/unistr/u-strpbrk.h: New file.
22325
22326         * modules/unistr/u8-strrchr: New file.
22327         * modules/unistr/u16-strrchr: New file.
22328         * modules/unistr/u32-strrchr: New file.
22329         * lib/unistr/u8-strrchr.c: New file.
22330         * lib/unistr/u16-strrchr.c: New file.
22331         * lib/unistr/u32-strrchr.c: New file.
22332
22333         * modules/unistr/u8-strspn: New file.
22334         * modules/unistr/u16-strspn: New file.
22335         * modules/unistr/u32-strspn: New file.
22336         * lib/unistr/u8-strspn.c: New file.
22337         * lib/unistr/u16-strspn.c: New file.
22338         * lib/unistr/u32-strspn.c: New file.
22339         * lib/unistr/u-strspn.h: New file.
22340
22341         * modules/unistr/u8-strstr: New file.
22342         * modules/unistr/u16-strstr: New file.
22343         * modules/unistr/u32-strstr: New file.
22344         * lib/unistr/u8-strstr.c: New file.
22345         * lib/unistr/u16-strstr.c: New file.
22346         * lib/unistr/u32-strstr.c: New file.
22347         * lib/unistr/u-strstr.h: New file.
22348
22349         * modules/unistr/u8-strtok: New file.
22350         * modules/unistr/u16-strtok: New file.
22351         * modules/unistr/u32-strtok: New file.
22352         * lib/unistr/u8-strtok.c: New file.
22353         * lib/unistr/u16-strtok.c: New file.
22354         * lib/unistr/u32-strtok.c: New file.
22355         * lib/unistr/u-strtok.h: New file.
22356
22357         * modules/unistr/u8-uctomb: New file.
22358         * modules/unistr/u16-uctomb: New file.
22359         * modules/unistr/u32-uctomb: New file.
22360         * lib/unistr/u8-uctomb.c: New file.
22361         * lib/unistr/u16-uctomb.c: New file.
22362         * lib/unistr/u32-uctomb.c: New file.
22363
22364         * MODULES.html.sh (Unicode string functions): Add the new modules.
22365
22366 2007-01-08  Bruno Haible  <bruno@clisp.org>
22367
22368         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
22369         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
22370         subdirectories.
22371
22372 2007-01-08  Karl Berry  <karl@gnu.org>
22373
22374         * doc/error.texi: mention that main() fns must set program_name
22375         when progname is used.
22376
22377 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
22378
22379         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
22380         WCTYPE_H is empty, for the benefit of builds from non-distclean
22381         directories.  Problem reported by Eric Blake in
22382         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
22383
22384 2007-01-08  Bruno Haible  <bruno@clisp.org>
22385
22386         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
22387         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
22388         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
22389         PROVIDE_CANONICALIZE_FILENAME_MODE.
22390         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
22391
22392 2007-01-08  Bruno Haible  <bruno@clisp.org>
22393
22394         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
22395         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
22396         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
22397         * lib/fts.c: Likewise.
22398         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
22399
22400 2006-12-25  Bruno Haible  <bruno@clisp.org>
22401
22402         * modules/utf8-ucs4-safe: New file.
22403         * lib/utf8-ucs4-safe.h: New file.
22404         * lib/unistr/utf8-ucs4-safe.c: New file.
22405
22406         * modules/utf16-ucs4-safe: New file.
22407         * lib/utf16-ucs4-safe.h: New file.
22408         * lib/unistr/utf16-ucs4-safe.c: New file.
22409
22410         * MODULES.html.sh (Unicode string functions): Add the new modules.
22411
22412 2007-01-08  Bruno Haible  <bruno@clisp.org>
22413
22414         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
22415         (Depends-on): Add unitypes.
22416         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
22417         (u8_mbtouc_aux): Move out to separate file.
22418         (u8_mbtouc): Use ucs4_t, uint8_t types.
22419         * lib/unistr/utf8-ucs4.c: New file.
22420
22421         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
22422         (Depends-on): Add unitypes.
22423         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
22424         (u16_mbtouc_aux): Move out to separate file.
22425         (u16_mbtouc): Use ucs4_t, uint16_t types.
22426         * lib/unistr/utf16-ucs4.c: New file.
22427
22428         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
22429         (Depends-on): Add unitypes.
22430         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
22431         (u8_uctomb_aux): Move out to separate file.
22432         (u8_uctomb): Use ucs4_t, uint8_t types.
22433         * lib/unistr/ucs4-utf8.c: New file.
22434
22435         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
22436         (Depends-on): Add unitypes.
22437         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
22438         (u16_uctomb_aux): Move out to separate file.
22439         (u16_uctomb): Use ucs4_t, uint16_t types.
22440         * lib/unistr/ucs4-utf16.c: New file.
22441
22442 2006-12-25  Bruno Haible  <bruno@clisp.org>
22443
22444         * modules/unitypes: New file.
22445         * lib/unitypes.h: New file.
22446         * MODULES.html.sh (func_all_modules): New section "Unicode string
22447         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
22448         this section. Add unitypes.
22449
22450 2007-01-08  Bruno Haible  <bruno@clisp.org>
22451
22452         Avoid variable names that conflict with those from libtool.
22453         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
22454         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
22455         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
22456         library_names_spec to acl_library_names_spec, hardcode_* to
22457         acl_hardcode_*.
22458         Reported by Ralf Wildenhues.
22459
22460 2007-01-08  Bruno Haible  <bruno@clisp.org>
22461
22462         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
22463         definition.
22464         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
22465         definition.
22466         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
22467         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
22468         definition.
22469         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
22470         definition.
22471         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
22472         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
22473         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
22474         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
22475         definition.
22476         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
22477         definition.
22478         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
22479         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
22480         GC_USE_<algorithm>.
22481         * lib/gc-libgcrypt.c: Likewise.
22482         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
22483         * modules/gc-arctwo (configure.ac): Likewise.
22484         * modules/gc-des (configure.ac): Likewise.
22485         * modules/gc-hmac-md5 (configure.ac): Likewise.
22486         * modules/gc-hmac-sha1 (configure.ac): Likewise.
22487         * modules/gc-md2 (configure.ac): Likewise.
22488         * modules/gc-md4 (configure.ac): Likewise.
22489         * modules/gc-md5 (configure.ac): Likewise.
22490         * modules/gc-random (configure.ac): Likewise.
22491         * modules/gc-rijndael (configure.ac): Likewise.
22492         * modules/gc-sha1 (configure.ac): Likewise.
22493
22494 2007-01-08  Bruno Haible  <bruno@clisp.org>
22495
22496         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
22497         macro definition.
22498         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
22499         definition.
22500         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
22501         definition.
22502         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
22503         * modules/fcntl-safer (configure.ac): Likewise.
22504         * modules/fopen-safer (configure.ac): Likewise.
22505         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
22506         GNULIB_FWRITEERROR macro definition.
22507
22508 2007-01-08  Bruno Haible  <bruno@clisp.org>
22509
22510         * m4/gnulib-common.m4: New file.
22511         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
22512         (func_get_filelist): Add m4/gnulib-common.m4.
22513
22514 2007-01-08  Bruno Haible  <bruno@clisp.org>
22515
22516         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
22517         command.
22518
22519 2007-01-08  Jim Meyering  <jim@meyering.net>
22520
22521         Use a more robust test for a "can't happen" condition.
22522         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
22523         narrowed the st_size value.  Presuming the "can't happen" condition
22524         is true, that narrowing could conceivably convert an invalid st_size
22525         value into a valid one.  Instead, use a change based on Matthew
22526         Woehlke's original patch.
22527
22528         Slight readability improvement: use an assert-like macro
22529         in place of literal "abort ()" uses.
22530         * lib/fts.c (fts_assert): Define.
22531         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
22532         Use this macro instead of a bare 'abort'.
22533
22534 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
22535
22536         Don't worry about using IRIX 5.3's wctype.h broken definitions;
22537         simply work around them.
22538         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
22539         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
22540         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
22541         declaring.
22542         Don't bother to define as macros, since the standard doesn't require it.
22543         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
22544         longer worry about IRIX 5.3.
22545         (HAVE_WCTYPE_CTMP_BUG): Remove.
22546
22547 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
22548
22549         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
22550         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
22551         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
22552         Problems reported by Georg Schwarz for IRIX 5.3.
22553
22554         * gnulib-tool (autoconf_minversion): Take the maximum version number
22555         found, not the minimum.  Problem reported by James Youngman.
22556
22557 2007-01-03  Karl Berry  <karl@gnu.org>
22558
22559         * doc/error.texi: new file, explaining interaction with progname.
22560         * doc/gnulib.texi: include it.  Update copyright.
22561
22562 2007-01-03  Simon Josefsson  <simon@josefsson.org>
22563
22564         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
22565         AC_CANONICAL_HOST, to improve autobuild outputs.
22566
22567 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
22568             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
22569
22570         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
22571         sockets, server sockets, and other file descriptors.  Count errors
22572         to compute the return value.  Reorder the code a bit to be easier
22573         to follow.  Don't set event bits that were not requested (except
22574         POLLERR and POLLHUP).
22575
22576 2007-01-01  Bruno Haible  <bruno@clisp.org>
22577
22578         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
22579
22580 2007-01-03  Jim Meyering  <jim@meyering.net>
22581
22582         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
22583
22584 2007-01-02  Bruno Haible  <bruno@clisp.org>
22585
22586         * modules/settime (Include): Require timespec.h.
22587         * modules/nanosleep (Include): Likewise.
22588
22589 2007-01-01  Bruno Haible  <bruno@clisp.org>
22590
22591         * gnulib-tool (func_emit_copyright_notice): Bump year.
22592         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
22593
22594 2007-01-01  Bruno Haible  <bruno@clisp.org>
22595
22596         Improve support for OpenBSD.
22597         * build-aux/config.rpath (libname_spec): Export.
22598         (library_names_spec): New variable. Export.
22599         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
22600         library_names_spec from the config.rpath output. Locate shared library
22601         through the name pattern in library_names_spec.
22602
22603 2007-01-01  Eric Blake  <ebb9@byu.net>
22604
22605         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
22606
22607 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
22608
22609         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
22610         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
22611         assume the C locale, and avoid an "eval" that could cause trouble.
22612         Problem with SORT reported by Bob Proulx.
22613
22614         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
22615         Define.  Trivial patch from Henning Nielsen Lund, originally
22616         sent to bug-grep@gnu.org today.
22617
22618 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
22619
22620         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
22621         struct stat.  Problem reported by Henning Nielsen Lund.
22622         * lib/acl.c: Include acl.h first, to check interface.  Don't
22623         bother to include sys/types.h and sys/stat.h again.
22624
22625 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
22626
22627         Import the following change from libc; problem reported by
22628         Sven Verdoolaege.
22629
22630         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
22631
22632         [BZ #1373]
22633         * lib/argp.h: Remove __NTH for __argp_usage inline function.
22634
22635 2006-12-28  Jim Meyering  <jim@meyering.net>
22636
22637         * build-aux/announce-gen: Do not assume that the package
22638         builds any of tar.gz, tar.bz2, and .xdelta files.
22639         Suggestion from Simon Josefsson.
22640
22641 2006-12-28  Simon Josefsson  <simon@josefsson.org>
22642
22643         * modules/announce-gen: New file.
22644
22645 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
22646
22647         * lib/mbchar.h: Just include <wctype.h>; the wctype module
22648         handles its gotchas now.
22649         * lib/mbswidth.c: Likewise.
22650         * lib/wcwidth.h: Likewise.
22651         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
22652         and iswcntrl; the wctype module does this stuff now.
22653         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
22654         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
22655         * modules/mbchar (Depends-on): Add wctype.
22656         * modules/mbswidth (Depends-on): Likewise.
22657         * modules/wcwidth (Depends-on): Likewise.
22658
22659 2006-12-27  Eric Blake  <ebb9@byu.net>
22660
22661         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
22662         module uses more than what <wctype.h> is required to provide.
22663
22664 2006-12-26  Eric Blake  <ebb9@byu.net>
22665
22666         * gnulib-tool (sed_extract_prog): Avoid space-tab.
22667
22668 2006-12-26  Eric Blake  <ebb9@byu.net>
22669
22670         * modules/absolute-header: New module.
22671         * modules/fcntl (Depends-on): Depend on it.
22672         * modules/inttypes (Depends-on): Likewise.
22673         * modules/stdint (Depends-on): Likewise.
22674         * modules/sys_stat (Depends-on): Likewise.
22675         * modules/wctype (Depends-on): Likewise.
22676         * MODULES.html.sh (Support for building libraries and
22677         executables): Document it.
22678
22679 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
22680
22681         * gnulib-tool (SED): Remove, undoing previous change.
22682         The problem was that it broke coreutils on Solaris, because
22683         "sed --posix" leaked into a makefile.
22684         (sed): New alias, if 'alias' and GNU sed.
22685
22686 2006-12-24  Jim Meyering  <jim@meyering.net>
22687
22688         Work around an fchownat bug in glibc-2.4:
22689         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
22690         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
22691         in spite of the -P option.
22692         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
22693         New macros.
22694         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
22695         * modules/openat (Files): Add lib/fchownat.c.
22696         * lib/openat.c (fchownat): Don't define here.  Move to...
22697         * lib/fchownat.c: ...this new file.
22698
22699 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
22700
22701         Fix bug reported by Bruno Haible in
22702         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
22703         where quotearg.c didn't compile on Mac OS X 10.2 because it
22704         lacks <wchar.h> and wint_t.
22705         * lib/wctype_.h (__wctype_wint_t): New type.
22706         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
22707         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
22708         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
22709         Arg is now of type __wctype_wint_t, not wint_t.
22710         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
22711         substitute HAVE_WINT_T.
22712         * modules/wctype (Files): Add m4/wint_t.m4.
22713         (wctype.h): Substitute HAVE_WINT_T.
22714
22715 2006-12-23  Bruno Haible  <bruno@clisp.org>
22716
22717         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
22718
22719 2006-12-23  Bruno Haible  <bruno@clisp.org>
22720
22721         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
22722         S_ISLNK.
22723         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
22724         mingw.
22725
22726 2006-12-22  Bruno Haible  <bruno@clisp.org>
22727
22728         * lib/copy-file.c: Include acl.h.
22729         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
22730         Close the file descriptors only after being done with copy_acl.
22731         * modules/copy-file (Depends-on): Add acl.
22732
22733 2006-12-22  Bruno Haible  <bruno@clisp.org>
22734
22735         * gnulib-tool (SED): New variable.
22736         Use $SED instead of sed everywhere.
22737
22738 2006-12-22  Bruno Haible  <bruno@clisp.org>
22739
22740         * modules/no-c++: New file.
22741         * m4/no-c++.m4: New file.
22742         * MODULES.html.sh (Support for building libraries and executables):
22743         Add no-c++.
22744
22745 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
22746
22747         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
22748         Include <limits.h>, and use its INT_MAX to rewrite the
22749         j loop so that it does not overflow 'int'.  Problem reported by
22750         Ralf Wildenhues in
22751         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
22752         Play it safe by shifting left by 1 rather than multiplying by 2,
22753         as GCC is less likely to optimize this away when the value
22754         is signed (when it assumes overflow leads to undefined behavior).
22755         Also, don't assume time_t uses two's complement.
22756
22757 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
22758
22759         * MODULES.html.sh: New module wctype.
22760         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
22761         * lib/fnmatch.c: Don't bother to include <wchar.h> before
22762         <wctype.h>, since the new wctype module should fix this.
22763         * lib/quotearg.c: Include <wctype.h> unconditionally, since
22764         the wctype module should arrange for it.
22765         * lib/regex_internal.h: Likewise.
22766         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
22767         since the wctype module should handle this now.
22768         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
22769         * modules/fnmatch (Depends-on): Add wctype.
22770         * modules/quotearg (Depends-on): Likewise.
22771         * modules/regex (Depends-on): Likewise.
22772
22773 2006-12-19  Bruno Haible  <bruno@clisp.org>
22774
22775         * lib/strdup.h [C++]: Wrap definitions in extern "C".
22776         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
22777
22778 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22779
22780         * modules/savewd (Depends-on): Fix dependency on fcntl.
22781
22782 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
22783
22784         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
22785         conforms to C99, rather than relying on the user's environment
22786         setting of STDINT_H.
22787
22788 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
22789         and Eric Blake  <ebb9@byu.net>
22790
22791         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
22792         This is more consistent with the other defines here.
22793         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
22794         Port to z/OS.  Problem reported by Paul Gilmartin.
22795         Change local vars to use gl_ prefix rather than ac_.
22796         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
22797         with other defines.
22798         * modules/double-slash-root: New module.
22799         * modules/dirname (Files): Remove m4/double-slash-root.m4.
22800         (Depends-on): Add double-slash-root.
22801         * MODULES.html.sh (File system functions): Mention new module.
22802
22803 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
22804
22805         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
22806         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
22807         This is for the benefit of gzip, which doesn't do i18n.
22808
22809 2006-12-12  Jim Meyering  <jim@meyering.net>
22810
22811         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
22812         Reported by Andreas Schwab <schwab@suse.de>.
22813
22814 2006-12-12  Bruno Haible  <bruno@clisp.org>
22815
22816         Merge these changes.
22817         2006-09-05  Bruno Haible  <bruno@clisp.org>
22818         * lib/iconvme.c (iconv_string): No need to save and restore errno when
22819         iconv_alloc succeeded.
22820         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
22821         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
22822         test for " && dest " at the end - dest is always != NULL there. Call
22823         iconv with 4xNULL arguments initially, to reset the state. Call iconv
22824         with 2xNULL arguments, also to flush the state storage. Handle the
22825         IRIX iconv behaviour. Realloc the final result, to throw away unused
22826         memory.
22827
22828 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
22829
22830         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
22831         and fchmodat unconditionally, since glibc 2.4 has them.
22832         Problem reported by Arkadiusz Miskiewicz.
22833
22834 2006-12-10  Bruno Haible  <bruno@clisp.org>
22835
22836         * gnulib-tool (func_import): Show the include files only for those
22837         modules that are copied and specified.
22838         Reported by Karl Berry.
22839
22840 2006-12-08  Jim Meyering  <jim@meyering.net>
22841
22842         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
22843         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
22844
22845         * build-aux/announce-gen: Add two new options, both optional:
22846         --bootstrap-tools=TOOL_LIST
22847               a comma-separated list of tools, e.g.,
22848               autoconf,automake,bison,gnulib
22849         --gnulib-snapshot-date=DATE
22850               if gnulib is in the bootstrap tool list,
22851               then report this as the snapshot date.
22852               If not specified, use the current date/time.
22853               If you specify a date here, be sure it's UTC.
22854
22855 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22856
22857         * tests/test-argp-2.sh: Fix test to match actual output.
22858         (func_compare): Fix sed script to be portable.
22859
22860 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
22861
22862         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
22863         workaround for this case.  It is not autoconfigured now; offhand
22864         it's hard to see how to autoconfigure it.
22865
22866 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
22867
22868         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
22869         a directory that is about to be chowned.  Such a directory's
22870         initial file permissions should permit the owner only and this
22871         should not be changed until after the chown, since the group and
22872         other bits would be incorrect if they granted permission before
22873         the chown.
22874
22875         Fix porting problem for iswctype reported by Georg Schwarz in:
22876         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
22877         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
22878         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
22879         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
22880         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
22881
22882 2006-12-03  Jim Meyering  <jim@meyering.net>
22883
22884         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
22885         p->fts_statp may not yet be defined.
22886         (fts_read): Instead, set it in the caller, once p->fts_statp is
22887         sure to be defined, and corresponds to a top-level directory.
22888         This bug made du -x fail.  Here's the coreutils test case:
22889         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
22890         Reported by Mike Frysinger.
22891
22892 2006-12-01  Jim Meyering  <jim@meyering.net>
22893
22894         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
22895         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
22896         Reported by Simon Josefsson.
22897
22898 2006-11-30  Jim Meyering  <jim@meyering.net>
22899
22900         * m4/warning.m4: Use the all-permissive copyright notice
22901         recommended by RMS (rather than LGPL).
22902         * m4/vararrays.m4: Likewise.
22903         * m4/flexmember.m4: Likewise.
22904
22905 2006-11-29  Bruno Haible  <bruno@clisp.org>
22906
22907         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
22908         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
22909         using +=.
22910         Reported by Simon Josefsson <simon@josefsson.org>.
22911
22912 2006-11-28  James Youngman <jay@gnu.org>
22913
22914         * README: Advise users that they might find the bug-gnulib@gnu.org
22915         and autotools-announce@gnu.org mailing lists useful.
22916
22917 2006-11-28  Bruno Haible  <bruno@clisp.org>
22918
22919         * m4/ptrdiff_max.m4: Remove file.
22920
22921 2006-11-21  Bruno Haible  <bruno@clisp.org>
22922
22923         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
22924         _AC_COMPUTE_INT.
22925         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
22926         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
22927         _AC_COMPUTE_INT.
22928         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
22929         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
22930         _AC_COMPUTE_INT.
22931         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
22932
22933 2006-11-28  Jim Meyering  <jim@meyering.net>
22934
22935         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
22936         warning from "gcc -Wshadow" about shadowing the builtin.
22937
22938 2006-11-27  Bruno Haible  <bruno@clisp.org>
22939
22940         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
22941         _AC_COMPUTE_INT.
22942         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
22943
22944 2006-11-27  Bruno Haible  <bruno@clisp.org>
22945             Paul Eggert  <eggert@cs.ucla.edu>
22946
22947         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
22948
22949 2006-11-26  Bruno Haible  <bruno@clisp.org>
22950
22951         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
22952         noinst_LTLIBRARIES.
22953
22954 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
22955             Bruno Haible  <bruno@clisp.org>
22956
22957         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
22958         if compiling with "gcc -ansi".
22959
22960 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
22961
22962         Fix some incompatibilities with gcc -ansi -pedantic.
22963         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
22964         if compiling pedantically with GCC, unless it's C99 or later.
22965         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
22966         it mishandles gcc -ansi -pedantic as well.
22967         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
22968         if gcc -pedantic.
22969         * lib/regexec.c (check_node_accept_bytes): Don't use auto
22970         initializers for struct if -pedantic, unless it's C99 or later.
22971
22972 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
22973
22974         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
22975         Don't close an fd more than once. Identical atimes indicate
22976         success, not failure.
22977
22978 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
22979
22980         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
22981
22982 2006-11-23  Jim Meyering  <jim@meyering.net>
22983
22984         * build-aux/announce-gen: New file.  From coreutils.
22985
22986 2006-11-22  Jim Meyering  <jim@meyering.net>
22987
22988         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
22989         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
22990         (fts_read): Use a temporary to narrow the overused st_size member
22991         before using it in a switch statement.  Reported by Matthew Woehlke.
22992
22993         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
22994         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
22995
22996 2006-11-20  Bruno Haible  <bruno@clisp.org>
22997
22998         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
22999         changequote instead of pairs of brackets.
23000         Reported by Andreas Schwab <schwab@suse.de>.
23001
23002 2006-11-21  Jim Meyering  <jim@meyering.net>
23003
23004         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
23005         so as to remain compatible with older compilers.
23006         Patch from Michael Deutschmann.
23007
23008 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23009
23010         * MODULES.html.sh (File system functions): Add openat.
23011
23012         * lib/openat.h (rpl_fstatat): New macro, if
23013         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
23014         (fstatat): Define to rpl_fstatat under the same conditions,
23015         unless COMPILING_FSTATAT.
23016         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
23017         seems to have the bug.
23018         * lib/fstatat.c: New file.
23019         * modules/openat (Files): Add it.
23020
23021 2006-11-20  Bruno Haible  <bruno@clisp.org>
23022
23023         * Makefile: New file.
23024
23025 2006-11-20  Jim Meyering  <jim@meyering.net>
23026
23027         The beginnings of syntax-related checks for gnulib.
23028         * lib/Makefile: New file.
23029         * lib/t-idcache: New script.  Ensure that the two halves of
23030         idcache.c stay in sync.
23031
23032         * lib/idcache.c: Adjust comments in user- and group- portions to
23033         be more accurate, and to be consistent with one another.
23034
23035 2006-11-20  Jim Meyering  <jim@meyering.net>
23036
23037         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
23038         continue using the flexible array member (thus, this module performs
23039         half as many malloc calls), with the addition that...
23040         (getgroup, getuser): Consistently record a non-match via an empty
23041         "name" string, and map an empty string match to a NULL return value.
23042         * modules/idcache (Depends-on): Re-add flexmember.
23043
23044         * lib/idcache.c (getuser): Remove all uses of the register keyword.
23045         (getuidbyname, getgroup, getgidbyname): Likewise.
23046
23047         Use cleaner syntax: NULL rather than 0.
23048         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
23049
23050 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
23051
23052         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
23053         It mishandled the case where the group was missing.
23054         Problem reported by Greg Schafer.
23055         * modules/idcache: Likewise.
23056
23057 2006-11-18  Jim Meyering  <jim@meyering.net>
23058
23059         * check-module (%exempt_header): Add exception for some
23060         conditionally-included headers.
23061
23062         * modules/i-ring (Depends-on): Add verify.
23063         (License): Change to LGPL.
23064
23065 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
23066
23067         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
23068         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
23069         and inttostr.h.  Use snprintf rather than uinttostr, so that
23070         LGPLed code doesn't depend on GPLed.
23071
23072 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
23073
23074         * modules/inline (License): Change from GPL to LGPL.
23075
23076 2006-11-17  Jim Meyering  <jim@meyering.net>
23077
23078         * modules/d-type (License): Switch to LGPL.
23079
23080 2006-11-15  Bruno Haible  <bruno@clisp.org>
23081
23082         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
23083
23084 2006-11-15  Eric Blake  <ebb9@byu.net>
23085
23086         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
23087         the module dependency.
23088
23089 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23090             Bruno Haible  <bruno@clisp.org>
23091
23092         * gnulib-tool (func_create_testdir): Add license consistency check.
23093
23094 2006-11-15  Eric Blake  <ebb9@byu.net>
23095
23096         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
23097         random "(cached)" in configure output.
23098
23099 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23100
23101         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
23102         test for conforming inttypes.h is both announced and cached.
23103
23104         * MODULES.html.sh (seen_modules, seen_files): New variables.
23105         (func_module): Rewrite to use a few less gnulib-tool and sed
23106         invocations.  Avoid a couple of quadratic algorithms for ...
23107         (missed_modules, missed_files): ... these, with ...
23108         (func_append, func_tmpdir): ... these new functions, from
23109         gnulib-tool.  Analogously, install traps for cleanup.
23110
23111         * tests/test-gc.c (main): Remove unused variables.
23112         * tests/test-read-file.c: Include stdlib.h, for 'free'.
23113
23114 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
23115
23116         * modules/inttostr (License): Change to LGPL.
23117
23118 2006-11-14  Eric Blake  <ebb9@byu.net>
23119
23120         * modules/tempname (License): Change to LGPL.
23121
23122 2006-11-14  Eric Blake  <ebb9@byu.net>
23123
23124         * doc/functions.texi (Function Portability): *printf functions on
23125         Cygwin now understand all POSIX size specifiers.
23126
23127 2006-11-14  Bruno Haible  <bruno@clisp.org>
23128
23129         * modules/c-ctype (License): Change to LGPL.
23130
23131 2006-11-12  Bruno Haible  <bruno@clisp.org>
23132
23133         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
23134         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
23135         for GNOME libraries, for which the include files are installed in
23136         subdirectories of $prefix/include.
23137
23138 2006-11-12  Bruno Haible  <bruno@clisp.org>
23139
23140         * m4/lib-link.m4: Require at least autoconf-2.54.
23141         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
23142         name to underscores for the --with option.
23143
23144 2006-11-13  Bruno Haible  <bruno@clisp.org>
23145
23146         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
23147         the tests directory.
23148         Reported by Ralf Wildenhues.
23149
23150 2006-11-13  Bruno Haible  <bruno@clisp.org>
23151
23152         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
23153         (func_emit_initmacro_end): Undo the override here.
23154         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
23155         Works around the famous automake error in coreutils.
23156
23157 2006-11-13  Eric Blake  <ebb9@byu.net>
23158
23159         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
23160         element, not its node.
23161
23162 2006-11-12  Bruno Haible  <bruno@clisp.org>
23163
23164         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
23165         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
23166
23167 2006-11-12  Bruno Haible  <bruno@clisp.org>
23168
23169         * gnulib-tool: New option --local-symlink.
23170         (func_usage): Document it.
23171         (lsymbolic): New variable.
23172         (func_import, func_create_testdir): If --symlink was not specified,
23173         test whether --local-symlink was specified and the file comes from
23174         the local_gnulib_dir.
23175
23176 2006-11-12  Bruno Haible  <bruno@clisp.org>
23177
23178         * gnulib-tool (func_ln): New function.
23179         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
23180
23181 2006-11-12  Bruno Haible  <bruno@clisp.org>
23182
23183         Finish support for source files in subdirectories.
23184         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
23185         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
23186         AUTOMAKE_OPTIONS.
23187         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
23188
23189 2006-11-12  Bruno Haible  <bruno@clisp.org>
23190
23191         * gnulib-tool (func_get_automake_snippet): Synthesize also an
23192         EXTRA_lib_SOURCES augmentation.
23193         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
23194
23195 2006-11-12  Jim Meyering  <jim@meyering.net>
23196
23197         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
23198         file descriptors.  This also averts a failure on systems with
23199         native openat support when a traversed directory lacks "x" access.
23200         * lib/fts_.h: Include "i-ring.h"
23201         (struct FTS) [fts_fd_ring]: New member.
23202         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
23203         (FCHDIR): Add parentheses.
23204         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
23205         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
23206         When descending, rather than simply closing the previous
23207         fts_cwd_fd value, push that file descriptor onto the ring.
23208         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
23209         (fts_open): Initialize the new fd_ring member.
23210         (fts_close): Clear the ring.
23211         (fts_safe_changedir): When possible, use our new fd_ring to skip
23212         the diropen and fstat and dev/ino comparison that would normally
23213         accompany a virtual `chdir ("..")'.
23214
23215         * modules/fts (Depends-on): Add i-ring.
23216         * modules/i-ring: New module.
23217         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
23218         * m4/i-ring.m4: New file.
23219
23220 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23221
23222         * gnulib-tool (func_create_testdir): Fix replacement of
23223         `build-aux' in configure.ac.  Run autotools in gltests
23224         subdirectory.
23225         (func_create_testdir, func_create_megatestdir, test): There is
23226         no need for '--force' in most autotool invocations in a new
23227         tree.  Actually fail the whole test if any of the tools, or the
23228         configure or make stages fail.
23229
23230         Sync from Automake.
23231         * build-aux/gnupload: Revert last change.  Add pointer to upload
23232         instructions of the GNU Maintenance Instructions.
23233         Suggestion by Karl Berry.
23234
23235 2006-11-10  Jim Meyering  <jim@meyering.net>
23236
23237         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
23238
23239 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23240
23241         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
23242         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
23243         (bind_textdomain_codeset) [! ENABLE_NLS]:
23244         Evaluate all the arguments.  That way, callers get compatible behavior
23245         if the arguments have side effects.  Also, it avoids some GCC
23246         diagnostics in some cases; Joel E. Denny reported problems when Bison
23247         was configured with --enable-gcc-warnigs.
23248
23249 2006-11-10  Jim Meyering  <jim@meyering.net>
23250
23251         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
23252         relevant options in CFLAGS (like -O, -fno-inline) are taken into
23253         account.
23254
23255 2006-11-10  Jim Meyering  <jim@meyering.net>
23256
23257         * modules/inline: New file/module.
23258         * modules/xalloc (Files): Remove m4/inline.m4.
23259         (Depends-on): Add inline, instead.
23260         * modules/oset: Likewise.
23261         * modules/list: Likewise.
23262
23263 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
23264
23265         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
23266         Problem reported by Matthew Woehlke.
23267
23268 2006-11-09  Bruno Haible  <bruno@clisp.org>
23269
23270         * lib/tempname.c (gen_tempname): Remove variant that invokes
23271         __gen_tempname.
23272         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
23273         __gen_tempname.
23274
23275 2006-11-08  Bruno Haible  <bruno@clisp.org>
23276
23277         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
23278         to 'yes' instead of 'cross-compiling'.
23279
23280 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
23281
23282         * lib/quotearg.h (quotearg_free): New decl.
23283         * lib/quotearg.c (quotearg_free): New function.
23284         (slot0, nslots, slotvec0, slotvec):
23285         Now file-scope so that quotearg_free can get at them.
23286
23287 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23288
23289         Sync from Automake.
23290         * build-aux/gnupload: Add missing 'gnu' to example URL.
23291         Report by Karl Berry.
23292
23293 2006-11-08  Bruno Haible  <bruno@clisp.org>
23294
23295         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
23296         Suggested by Paul Eggert.
23297
23298 2006-11-08  Jim Meyering  <jim@meyering.net>
23299
23300         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
23301         It's already included if !_LIBC.
23302         (fts_safe_changedir): Add a comment.
23303
23304 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
23305
23306         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
23307         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
23308         Matthew Woehlke.
23309
23310         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
23311         definitions up, to avoid colliding with change below.
23312         (static_inline) [HAVE_INLINE]: New macro.
23313         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
23314         Provide extern decls when !HAVE_INLINE.  Do not define unless
23315         static_inline is defined, either by us or by xmalloc.c.  Use
23316         static_inline rather than static inline.
23317         (XCALLOC): Optimize sizeof(T) = 1 case.
23318         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
23319
23320 2006-11-07  Bruno Haible  <bruno@clisp.org>
23321
23322         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
23323         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
23324         AC_C_INLINE.
23325         * modules/xalloc (Files): Add m4/inline.m4.
23326
23327 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23328
23329         * README: Fix typo.
23330         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
23331         (Miscellanous Notes): ...from this.
23332
23333 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
23334
23335         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
23336         Mention that offsetof should be used instead of sizeof.
23337         From Bruno Haible.
23338
23339 2006-11-07  Bruno Haible  <bruno@clisp.org>
23340
23341         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
23342
23343 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
23344
23345         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
23346         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
23347         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
23348         (gl_tree_add_before, gl_tree_add_after):
23349         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
23350         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
23351         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
23352         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
23353         (gl_linked_add_after, gl_linked_add_at): Likewise.
23354         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
23355         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
23356         (gl_tree_add_before, gl_tree_add_after): Likewise.
23357         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
23358         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
23359         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
23360
23361 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23362
23363         * lib/gl_oset.h: Use C comment style, not C++ comment style.
23364
23365 2006-11-06  Bruno Haible  <bruno@clisp.org>
23366
23367         * m4/inline.m4: New file.
23368         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
23369         * modules/list (Files): Add m4/inline.m4.
23370         * modules/oset (Files): Likewise.
23371
23372 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
23373
23374         * lib/idcache.c: Include <stddef.h>, for offsetof.
23375         (struct userid.name): Change from char * to a flexible array member.
23376         All uses changed.
23377         * modules/idcache (Depends-on): Add flexmember.
23378
23379         * MODULES.html.sh (Core language properties): New module flexmember.
23380         * modules/flexmember, m4/flexmember.m4: New files.
23381
23382         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
23383         inline functions that are identical with the old xnmalloc_inline,
23384         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
23385         that we can avoid some unnecessary integer multiplications and
23386         divisions in the common case where the element size is known at
23387         compile time.
23388         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
23389         needed.
23390         (xnboundedmalloc): Remove.
23391         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
23392         arguments, for consistency with rest of this header.
23393         (xcharalloc): Rewrite using XNMALLOC.
23394         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
23395         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
23396         versions have been moved to lib/xalloc.h and renamed to be the
23397         non-*_inline versions.
23398         (xmalloc, xrealloc): Implement without reference to the xnmalloc
23399         and xnrealloc functions, since those functions are now inline and
23400         now call us.
23401         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
23402         renaming described above.
23403         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
23404         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
23405         captures the dependency in AC_C_INLINE.
23406
23407         New module canonicalize-lgpl, proposed by Charles Wilson in
23408         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
23409         with a few small changes afterwards.
23410         * MODULES.html.sh (File system functions): New module
23411         canonicalize-lgpl.
23412         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
23413         and canonicalize_file_name.
23414         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
23415         * modules/canonicalize-lgpl: New files.
23416
23417 2006-11-05  Bruno Haible  <bruno@clisp.org>
23418
23419         * gnulib-tool (func_import, func_create_testdir): Create directories
23420         also for files in subdirectories of lib/.
23421
23422 2006-11-05  Bruno Haible  <bruno@clisp.org>
23423
23424         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
23425         ANSI C compliant.
23426
23427 2006-11-03  Bruno Haible  <bruno@clisp.org>
23428
23429         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
23430         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
23431         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
23432         (xnboundedmalloc): New inline function.
23433         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
23434         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
23435         xmalloc.
23436         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
23437         xmalloc.
23438         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
23439         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
23440         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
23441         xmalloc.
23442         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
23443         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
23444         xmalloc.
23445         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
23446         gl_tree_add_after): Use XMALLOC instead of xmalloc.
23447         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
23448         xmalloc.
23449         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
23450         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
23451         gl_tree_add_after): Use XMALLOC instead of xmalloc.
23452         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
23453         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
23454         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
23455         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
23456
23457 2006-11-03  Bruno Haible  <bruno@clisp.org>
23458
23459         * lib/c-ctype.h [C++]: Define functions without name mangling.
23460         * lib/fwriteerror.h [C++]: Likewise.
23461         * lib/gcd.h [C++]: Likewise.
23462         * lib/linebreak.h [C++]: Likewise.
23463
23464 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
23465
23466         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
23467         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
23468         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
23469         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
23470         Check for functions and headers just once.
23471         Check for declaration of canonicalize_file_name.
23472         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
23473
23474 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
23475
23476         * gnulib-tool (func_import): Fix typo in actioncmd.
23477
23478 2006-11-02  Bruno Haible  <bruno@clisp.org>
23479
23480         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
23481         newline sequence in the Makefile.am snippet as a space, like "make"
23482         does.
23483         Reported by Roger Persson <perrog@gmail.com>.
23484
23485 2006-11-01  Bruno Haible  <bruno@clisp.org>
23486
23487         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
23488         already declared in <string.h>.
23489         * lib/strcase.h (strncasecmp): Don't declare it if yes.
23490
23491 2006-11-01  Bruno Haible  <bruno@clisp.org>
23492
23493         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
23494         * lib/strcase.h: Include <string.h>.
23495         (strcasecmp): Define to rpl_strcasecmp here.
23496
23497 2006-11-01  Bruno Haible  <bruno@clisp.org>
23498
23499         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
23500
23501 2006-11-01  Eric Blake  <ebb9@byu.net>
23502
23503         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
23504
23505         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
23506
23507 2006-10-29  Bruno Haible  <bruno@clisp.org>
23508
23509         Make it compile in C++ mode.
23510         * lib/full-write.c (full_rw): Add a cast.
23511
23512 2006-11-01  Bruno Haible  <bruno@clisp.org>
23513
23514         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
23515         be POSIX compliant.
23516         Reported by Roger Persson <perrog@gmail.com>.
23517
23518 2006-11-01  Eric Blake  <ebb9@byu.net>
23519
23520         * lib/getopt_.h: Fix comments.
23521
23522 2006-10-31  Eric Blake  <ebb9@byu.net>
23523
23524         * modules/tmpdir (Depends-on): Add sys_stat.
23525         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
23526         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
23527         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
23528         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
23529         tempname.
23530
23531 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
23532
23533         Avoid some C++ diagnostics reported by Bruno Haible.
23534         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
23535         xmalloc.
23536         (quotearg_alloc): Use xcharalloc rather than xmalloc.
23537         (struct slotvec): Move to top level.
23538         (quotearg_n_options): Rewrite to avoid xmalloc.
23539         * lib/xalloc.h (xcharalloc): New function.
23540         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
23541         [defined __cplusplus]: Add function template that provides result
23542         type propagation.  This part of the change is from Bruno Haible.
23543
23544 2006-10-29  Bruno Haible  <bruno@clisp.org>
23545
23546         Make it compile in C++ mode.
23547         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
23548         * lib/strnlen1.c (strnlen1): Cast memchr result.
23549         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
23550         * lib/clean-temp.c (string_equals, string_hash): Add casts.
23551         (create_temp_dir): Rename local variable 'template'.
23552         (compile_csharp_using_sscli): Add cast.
23553         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
23554         * lib/findprog.c (find_in_path): Likewise.
23555         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
23556         * lib/wait-process.c (register_slave_subprocess): Likewise.
23557
23558 2006-10-22  Bruno Haible  <bruno@clisp.org>
23559
23560         * modules/tsearch: New file.
23561         * lib/tsearch.h: New file.
23562         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
23563         * m4/tsearch.m4: New file.
23564         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
23565
23566 2006-10-29  Eric Blake  <ebb9@byu.net>
23567
23568         * lib/arcfour.c: Assume config.h.
23569         * lib/arctwo.c: Likewise.
23570         * lib/base64.c: Likewise.
23571         * lib/check-version.c: Likewise.
23572         * lib/crc.c: Likewise.
23573         * lib/des.c: Likewise.
23574         * lib/gc-gnulib.c: Likewise.
23575         * lib/gc-libgcrypt.c: Likewise.
23576         * lib/gc-pbkdf2-sha1.c: Likewise.
23577         * lib/getaddrinfo.c: Likewise.
23578         * lib/getdelim.c: Likewise.
23579         * lib/getline.c: Likewise.
23580         * lib/hmac-md5.c: Likewise.
23581         * lib/hmac-sha1.c: Likewise.
23582         * lib/iconvme.c: Likewise.
23583         * lib/md2.c: Likewise.
23584         * lib/md4.c: Likewise.
23585         * lib/memxor.c: Likewise.
23586         * lib/read-file.c: Likewise.
23587         * lib/readline.c: Likewise.
23588         * lib/rijndael-alg-fst.c: Likewise.
23589         * lib/rijndael-api-fst.c: Likewise.
23590         * lib/xgetdomainname.c: Likewise.
23591
23592 2006-10-28  Eric Blake  <ebb9@byu.net>
23593
23594         * lib/xstrndup.c: Assume config.h.
23595
23596 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
23597
23598         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
23599         stat-macros.h is now for our own macros, whereas stat_h is for
23600         macros in the <sys/stat.h> name space.
23601         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
23602         (STAT_MACROS_H): Remove.
23603         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
23604         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
23605         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
23606         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
23607         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
23608         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
23609         Move these macros to ...
23610         * lib/stat_.h: here.  Don't include stat-macros.h.
23611         * lib/canonicalize.c: Don't include stat-macros.h.
23612         * lib/chown.c: Likewise.
23613         * lib/euidaccess.c: Likewise.
23614         * lib/file-type.c: Likewise.
23615         * lib/filemode.c: Likewise.
23616         * lib/glob.c: Likewise.
23617         * lib/isapipe.c: Likewise.
23618         * lib/lchown.c: Likewise.
23619         * lib/lstat.c: Likewise.
23620         * lib/mkdir-p.c: Likewise.
23621         * lib/rmdir.c: Likewise.
23622         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
23623         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
23624         unless mkdir isn't declared, to speed up 'configure'.
23625         Always create sys/stat.h, since it's unlikely any real sys/stat.h
23626         would define all the S_* symbols.
23627         * modules/canonicalize (Depends-on):
23628         Depend on sys_stat, not stat-macros.
23629         * modules/chown: Likewise.
23630         * modules/euidaccess: Likewise.
23631         * modules/filemode: Likewise.
23632         * modules/file-type: Likewise.
23633         * modules/glob: Likewise.
23634         * modules/isapipe: Likewise.
23635         * modules/lchown: Likewise.
23636         * modules/lstat: Likewise.
23637         * modules/mkancesdirs: Likewise.
23638         * modules/rmdir: Likewise.
23639         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
23640         * modules/modechange: Likewise.
23641         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
23642         (configure.ac): Remove gl_STAT_MACROS.
23643         * modules/sys_stat (Depends-on): Remove stat-macros.
23644
23645 2006-10-27  Bruno Haible  <bruno@clisp.org>
23646
23647         * m4/signed.m4: Remove file.
23648         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
23649         invocation.
23650         * modules/vasnprintf (Files): Remove m4/signed.m4.
23651
23652 2006-10-27  Bruno Haible  <bruno@clisp.org>
23653
23654         Update to GNU gettext 0.16.
23655         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
23656         m4/inttypes-h.m4, m4/signed.m4.
23657         * m4/gettext.m4: Update to GNU gettext 0.16.
23658         * m4/intl.m4: New file, from GNU gettext.
23659         * m4/intldir.m4: New file, from GNU gettext.
23660         * config/srclist.txt: Update
23661
23662 2006-10-27  Eric Blake  <ebb9@byu.net>
23663
23664         * MODULES.html.sh: Document tempname.
23665         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
23666         dependencies.
23667         (Files): Move lib/tempname.c...
23668         * modules/tempname: ...to this new module.
23669         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
23670         (gl_PREREQ_TEMPNAME): Move...
23671         * m4/tempname.m4: ...to this new file.
23672         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
23673         * modules/sys_stat (Depends-on): Add stat-macros.
23674         * lib/stat_.h (includes): Pick up stat macros.
23675         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
23676         if stat macros are broken.
23677         * lib/tempname.c (includes): No need to include "stat-macros.h".
23678         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
23679         (direxists, __path_search) [!_LIBC]: Don't compile these in
23680         gnulib; the tmpdir module covers that.
23681         * lib/tempname.h: New file.
23682
23683 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
23684
23685         * COPYING: Explain how gnulib-tool converts licence headers.
23686         Almost all wording by Eric Blake.
23687
23688 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
23689
23690         * lib/mbchar.h (is_basic_table): Make read-only.
23691         * lib/mbchar.c (is_basic_table): Likewise.
23692         Reported by John Darrington.
23693
23694 2006-10-25  Bruno Haible  <bruno@clisp.org>
23695
23696         * lib/progname.h (set_program_name): Undefine before defining.
23697
23698 2006-10-25  Bruno Haible  <bruno@clisp.org>
23699
23700         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
23701         false for non-gcc C++ compilers.
23702         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
23703
23704 2006-10-24  Bruno Haible  <bruno@clisp.org>
23705
23706         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
23707         iconv implementations like Irix iconv.
23708
23709 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23710
23711         * modules/vararrays: New file.
23712         * m4/vararrays.m4: New file, taken from diffutils.
23713         * MODULES.html.sh: New module vararrays.
23714
23715 2006-10-24  Karl Berry  <karl@gnu.org>
23716
23717         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
23718         Don't call GNU Unix.
23719
23720 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23721
23722         * users.txt: Add Libtool.
23723
23724         Sync from Libtool:
23725
23726         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23727
23728         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
23729         to gnulib's policy of including config.h unconditionally.
23730
23731 2006-10-24  Bruno Haible  <bruno@clisp.org>
23732
23733         * modules/wcwidth (Files): Add m4/wint_t.m4.
23734         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
23735         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
23736
23737 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
23738
23739         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
23740         to pacify GCC with some -W flags enabled.  Problem reported by
23741         Bruno Haible.
23742
23743 2006-10-24  Jim Meyering  <jim@meyering.net>
23744
23745         * MODULES.html.sh: Remove uinttostr.  It's not a module.
23746         Reported by Karl Berry.
23747
23748 2006-10-23  Bruno Haible  <bruno@clisp.org>
23749
23750         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
23751
23752 2006-10-24  Bruno Haible  <bruno@clisp.org>
23753
23754         * lib/gl_list.h: Use C comment style, not C++ comment style.
23755
23756 2006-10-23  Eric Blake  <ebb9@byu.net>
23757
23758         * lib/getaddrinfo.c (includes): Add missing include.
23759
23760 2006-10-23  Bruno Haible  <bruno@clisp.org>
23761             Paul Eggert  <eggert@cs.ucla.edu>
23762
23763         Ability to rename obstack_free.
23764         * lib/obstack.h (__obstack_free): New macro. Declare instead of
23765         obstack_free.
23766         (obstack_free): Invoke the __obstack_free macro.
23767         * lib/obstack.c (obstack_free): Use __obstack_free macro.
23768
23769 2006-10-23  Bruno Haible  <bruno@clisp.org>
23770             Paul Eggert  <eggert@cs.ucla.edu>
23771
23772         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
23773         __argc, __argv from the declaration. (They are defined as macros on
23774         mingw.)
23775
23776 2006-10-22  Bruno Haible  <bruno@clisp.org>
23777
23778         * doc/gnulib-intro.texi: New file.
23779         * doc/gnulib.texi: Include it.
23780
23781 2006-10-21  Bruno Haible  <bruno@clisp.org>
23782
23783         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
23784         "Introduction", "Miscellanous Notes", "Particular Modules".
23785
23786 2006-10-21  Bruno Haible  <bruno@clisp.org>
23787
23788         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
23789         Change mostlyclean-local rule to avoid sh syntax error from bash
23790         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
23791
23792 2006-10-23  Jim Meyering  <jim@meyering.net>
23793
23794         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
23795         in place of snprintf.
23796
23797         * modules/inttostr (Files): Add lib/uinttostr.c.
23798         * lib/uinttostr.c (inttostr): New file/function.
23799         * lib/inttostr.h (uinttostr): Declare.
23800         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
23801         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
23802         Add uinttostr.
23803         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
23804
23805 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
23806
23807         * lib/canonicalize.c (ELOOP): Define if not already defined.
23808         Problem reported by Bruno Haible in
23809         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
23810
23811 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
23812
23813         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
23814         Problem reported by Perry Smith and Ville Laurikari.
23815
23816         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
23817         uses.
23818
23819 2006-10-19  Bruno Haible  <bruno@clisp.org>
23820
23821         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
23822         for mingw.
23823
23824 2006-10-19  Bruno Haible  <bruno@clisp.org>
23825
23826         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
23827         Needed for mingw.
23828
23829 2006-10-19  Bruno Haible  <bruno@clisp.org>
23830
23831         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
23832
23833 2006-10-19  Bruno Haible  <bruno@clisp.org>
23834
23835         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
23836         it.
23837
23838 2006-10-19  Bruno Haible  <bruno@clisp.org>
23839
23840         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
23841         invocation.
23842
23843 2006-10-19  Bruno Haible  <bruno@clisp.org>
23844
23845         * gnulib-tool (func_create_testdir): Don't include ftruncate and
23846         mountlist by default.
23847
23848 2006-10-16  Bruno Haible  <bruno@clisp.org>
23849
23850         * lib/c-strstr.c: Include c-strstr.h.
23851
23852 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
23853
23854         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
23855         in a slash.
23856
23857 2006-10-18  Bruno Haible  <bruno@clisp.org>
23858
23859         * lib/lock.h [C++]: Wrap definitions in extern "C".
23860
23861 2006-10-18  Bruno Haible  <bruno@clisp.org>
23862
23863         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
23864         gl_LIBOBJS list.
23865
23866 2006-10-18  Bruno Haible  <bruno@clisp.org>
23867
23868         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
23869
23870 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
23871
23872         * lib/xstrtol.h: Include gettext.h.
23873         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
23874         Problem reported by Eric Blake.
23875         * modules/xstrtol (Depends-on): Add gettext-h.
23876
23877 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
23878
23879         * lib/strftime.c (advance): New macro.
23880         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
23881         incomplete type, so you can't add 0 to it.  Problem and patch
23882         reported by Eelco Dolstra for dietlibc.
23883
23884 2006-10-18  Jim Meyering  <jim@meyering.net>
23885
23886         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
23887         type for a local, and rename it: s/up/user_proc/.
23888
23889 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
23890
23891         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
23892         READ_UTMP_USER_PROCESS.
23893         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
23894
23895 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
23896
23897         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
23898         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
23899
23900 2006-10-17  Eric Blake  <ebb9@byu.net>
23901
23902         * lib/sigprocmask.c (sigprocmask): Fix typo.
23903
23904         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
23905
23906         * modules/clean-temp (Makefile.am): Don't add to make output...
23907         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
23908         config.h.
23909
23910 2006-10-17  Bruno Haible  <bruno@clisp.org>
23911
23912         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
23913         differently if DEFAULT_TEXT_DOMAIN is set.
23914
23915 2006-10-16  Bruno Haible  <bruno@clisp.org>
23916
23917         * lib/clean-temp.c: Include fwriteerror.h.
23918
23919 2006-10-16  Bruno Haible  <bruno@clisp.org>
23920
23921         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
23922
23923 2006-10-16  Bruno Haible  <bruno@clisp.org>
23924
23925         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
23926         * lib/sigprocmask.h: Include <sys/types.h>.
23927         (sigset_t): Use the system's definition if present.
23928
23929 2006-10-17  Eric Blake  <ebb9@byu.net>
23930
23931         * lib/xvasprintf.c (includes): Assume config.h.
23932         * lib/xasprintf.c (includes): Likewise.
23933
23934 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
23935
23936         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
23937         at least as wide as intmax_t.
23938
23939 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
23940
23941         (Imported from Automake.)
23942         * build-aux/gnupload: Update to version 1.1 of directive file.
23943
23944 2006-10-16  Eric Blake  <ebb9@byu.net>
23945
23946         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
23947         match Automake 1.10a.
23948
23949 2006-10-14  Bruno Haible  <bruno@clisp.org>
23950
23951         * modules/sigprocmask: New file.
23952         * lib/sigprocmask.h: New file.
23953         * lib/sigprocmask.c: New file.
23954         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
23955         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
23956         request sigprocmask.o.
23957         (gl_PREREQ_SIGPROCMASK): New macro.
23958         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
23959         (Depends-on): Add sigprocmask.
23960         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
23961         gt_SIGNALBLOCKING. Test for 'raise' only once.
23962         * lib/fatal-signal.c: Include sigprocmask.h.
23963         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
23964         unblock_fatal_signals): Define always.
23965         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
23966         sigprocmask.
23967
23968 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
23969
23970         Sync from Automake.
23971         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
23972         which incorrectly sets the mode of an existing destination
23973         directory.  In some cases the unpatched install-sh could do the
23974         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
23975         system.  We hope this is rare in practice, but it's clearly worth
23976         fixing.  Problem reported by Alex Unleashed in
23977         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
23978         Also, don't bother to check for -m bugs unless we're using -m;
23979         suggested by Stepan Kasal.
23980
23981 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23982
23983         Sync from Automake.
23984         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
23985         `-c' flag, so they appear at the same position as in %FASTDEP%
23986         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
23987         which ignores unknown options only after the first non-option.
23988         Bug report against M4 by Nelson H. F. Beebe.
23989
23990 2006-10-13  Jim Meyering  <jim@meyering.net>
23991
23992         Fix a bug in yesterday's change.
23993         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
23994         p->fts_statp->st_dev would be used uninitialized.
23995         Ensures that we always call fts_stat on the very first entry.
23996         Miklos Szeredi reported that find -xdev stopped working.
23997
23998 2006-10-12  Bruno Haible  <bruno@clisp.org>
23999
24000         * gnulib-tool (func_get_automake_snippet): Append an automatically
24001         computed EXTRA_DIST augmentation.
24002         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
24003         * modules/alloca-opt (Makefile.am): Likewise.
24004         * modules/allocsa (Makefile.am): Likewise.
24005         * modules/arcfour (Makefile.am): Likewise.
24006         * modules/arctwo (Makefile.am): Likewise.
24007         * modules/argmatch (Makefile.am): Likewise.
24008         * modules/argz (Makefile.am): Likewise.
24009         * modules/atexit (Makefile.am): Likewise.
24010         * modules/backupfile (Makefile.am): Likewise.
24011         * modules/byteswap (Makefile.am): Likewise.
24012         * modules/c-strtod (Makefile.am): Likewise.
24013         * modules/c-strtold (Makefile.am): Likewise.
24014         * modules/calloc (Makefile.am): Likewise.
24015         * modules/canon-host (Makefile.am): Likewise.
24016         * modules/canonicalize (Makefile.am): Likewise.
24017         * modules/chdir-long (Makefile.am): Likewise.
24018         * modules/chdir-safer (Makefile.am): Likewise.
24019         * modules/check-version (Makefile.am): Likewise.
24020         * modules/chown (Makefile.am): Likewise.
24021         * modules/cloexec (Makefile.am): Likewise.
24022         * modules/close-stream (Makefile.am): Likewise.
24023         * modules/closeout (Makefile.am): Likewise.
24024         * modules/crc (Makefile.am): Likewise.
24025         * modules/csharpexec (Makefile.am): Likewise.
24026         * modules/cycle-check (Makefile.am): Likewise.
24027         * modules/des (Makefile.am): Likewise.
24028         * modules/dev-ino (Makefile.am): Likewise.
24029         * modules/dirfd (Makefile.am): Likewise.
24030         * modules/dirname (Makefile.am): Likewise.
24031         * modules/dup2 (Makefile.am): Likewise.
24032         * modules/eealloc (Makefile.am): Likewise.
24033         * modules/error (Makefile.am): Likewise.
24034         * modules/euidaccess (Makefile.am): Likewise.
24035         * modules/exclude (Makefile.am): Likewise.
24036         * modules/exitfail (Makefile.am): Likewise.
24037         * modules/fcntl-safer (Makefile.am): Likewise.
24038         * modules/fcntl (Makefile.am): Likewise.
24039         * modules/file-type (Makefile.am): Likewise.
24040         * modules/fileblocks (Makefile.am): Likewise.
24041         * modules/filemode (Makefile.am): Likewise.
24042         * modules/filenamecat (Makefile.am): Likewise.
24043         * modules/fnmatch (Makefile.am): Likewise.
24044         * modules/fopen-safer (Makefile.am): Likewise.
24045         * modules/fpending (Makefile.am): Likewise.
24046         * modules/fprintftime (Makefile.am): Likewise.
24047         * modules/free (Makefile.am): Likewise.
24048         * modules/fsusage (Makefile.am): Likewise.
24049         * modules/ftruncate (Makefile.am): Likewise.
24050         * modules/fts (Makefile.am): Likewise.
24051         * modules/gc-arcfour (Makefile.am): Likewise.
24052         * modules/gc-des (Makefile.am): Likewise.
24053         * modules/gc-hmac-md5 (Makefile.am): Likewise.
24054         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
24055         * modules/gc-md4 (Makefile.am): Likewise.
24056         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
24057         * modules/gc-sha1 (Makefile.am): Likewise.
24058         * modules/gc (Makefile.am): Likewise.
24059         * modules/getaddrinfo (Makefile.am): Likewise.
24060         * modules/getcwd (Makefile.am): Likewise.
24061         * modules/getdelim (Makefile.am): Likewise.
24062         * modules/getdomainname (Makefile.am): Likewise.
24063         * modules/getgroups (Makefile.am): Likewise.
24064         * modules/gethostname (Makefile.am): Likewise.
24065         * modules/gethrxtime (Makefile.am): Likewise.
24066         * modules/getline (Makefile.am): Likewise.
24067         * modules/getloadavg (Makefile.am): Likewise.
24068         * modules/getlogin_r (Makefile.am): Likewise.
24069         * modules/getndelim2 (Makefile.am): Likewise.
24070         * modules/getopt (Makefile.am): Likewise.
24071         * modules/getpagesize (Makefile.am): Likewise.
24072         * modules/getpass-gnu (Makefile.am): Likewise.
24073         * modules/getpass (Makefile.am): Likewise.
24074         * modules/getsubopt (Makefile.am): Likewise.
24075         * modules/gettime (Makefile.am): Likewise.
24076         * modules/gettimeofday (Makefile.am): Likewise.
24077         * modules/getugroups (Makefile.am): Likewise.
24078         * modules/getusershell (Makefile.am): Likewise.
24079         * modules/glob (Makefile.am): Likewise.
24080         * modules/group-member (Makefile.am): Likewise.
24081         * modules/hard-locale (Makefile.am): Likewise.
24082         * modules/hash (Makefile.am): Likewise.
24083         * modules/hmac-md5 (Makefile.am): Likewise.
24084         * modules/hmac-sha1 (Makefile.am): Likewise.
24085         * modules/human (Makefile.am): Likewise.
24086         * modules/idcache (Makefile.am): Likewise.
24087         * modules/imaxabs (Makefile.am): Likewise.
24088         * modules/imaxdiv (Makefile.am): Likewise.
24089         * modules/inet_ntop (Makefile.am): Likewise.
24090         * modules/inet_pton (Makefile.am): Likewise.
24091         * modules/intprops (Makefile.am): Likewise.
24092         * modules/inttostr (Makefile.am): Likewise.
24093         * modules/inttypes (Makefile.am): Likewise.
24094         * modules/isapipe (Makefile.am): Likewise.
24095         * modules/javaversion (Makefile.am): Likewise.
24096         * modules/lchmod (Makefile.am): Likewise.
24097         * modules/lchown (Makefile.am): Likewise.
24098         * modules/localcharset (Makefile.am): Likewise.
24099         * modules/long-options (Makefile.am): Likewise.
24100         * modules/lstat (Makefile.am): Likewise.
24101         * modules/malloc (Makefile.am): Likewise.
24102         * modules/mathl (Makefile.am): Likewise.
24103         * modules/mbchar (Makefile.am): Likewise.
24104         * modules/md2 (Makefile.am): Likewise.
24105         * modules/md4 (Makefile.am): Likewise.
24106         * modules/md5 (Makefile.am): Likewise.
24107         * modules/memcasecmp (Makefile.am): Likewise.
24108         * modules/memchr (Makefile.am): Likewise.
24109         * modules/memcmp (Makefile.am): Likewise.
24110         * modules/memcoll (Makefile.am): Likewise.
24111         * modules/memcpy (Makefile.am): Likewise.
24112         * modules/memmem (Makefile.am): Likewise.
24113         * modules/memmove (Makefile.am): Likewise.
24114         * modules/mempcpy (Makefile.am): Likewise.
24115         * modules/memrchr (Makefile.am): Likewise.
24116         * modules/memset (Makefile.am): Likewise.
24117         * modules/memxor (Makefile.am): Likewise.
24118         * modules/mkancesdirs (Makefile.am): Likewise.
24119         * modules/mkdir-p (Makefile.am): Likewise.
24120         * modules/mkdir (Makefile.am): Likewise.
24121         * modules/mkdtemp (Makefile.am): Likewise.
24122         * modules/mkstemp (Makefile.am): Likewise.
24123         * modules/mktime (Makefile.am): Likewise.
24124         * modules/modechange (Makefile.am): Likewise.
24125         * modules/mountlist (Makefile.am): Likewise.
24126         * modules/nanosleep (Makefile.am): Likewise.
24127         * modules/obstack (Makefile.am): Likewise.
24128         * modules/openat (Makefile.am): Likewise.
24129         * modules/pagealign_alloc (Makefile.am): Likewise.
24130         * modules/pathmax (Makefile.am): Likewise.
24131         * modules/physmem (Makefile.am): Likewise.
24132         * modules/poll (Makefile.am): Likewise.
24133         * modules/posixtm (Makefile.am): Likewise.
24134         * modules/posixver (Makefile.am): Likewise.
24135         * modules/putenv (Makefile.am): Likewise.
24136         * modules/quote (Makefile.am): Likewise.
24137         * modules/quotearg (Makefile.am): Likewise.
24138         * modules/raise (Makefile.am): Likewise.
24139         * modules/read-file (Makefile.am): Likewise.
24140         * modules/readline (Makefile.am): Likewise.
24141         * modules/readlink (Makefile.am): Likewise.
24142         * modules/readtokens (Makefile.am): Likewise.
24143         * modules/readutmp (Makefile.am): Likewise.
24144         * modules/realloc (Makefile.am): Likewise.
24145         * modules/regex (Makefile.am): Likewise.
24146         * modules/rename-dest-slash (Makefile.am): Likewise.
24147         * modules/rename (Makefile.am): Likewise.
24148         * modules/rijndael (Makefile.am): Likewise.
24149         * modules/rmdir (Makefile.am): Likewise.
24150         * modules/rpmatch (Makefile.am): Likewise.
24151         * modules/safe-read (Makefile.am): Likewise.
24152         * modules/safe-write (Makefile.am): Likewise.
24153         * modules/same-inode (Makefile.am): Likewise.
24154         * modules/same (Makefile.am): Likewise.
24155         * modules/save-cwd (Makefile.am): Likewise.
24156         * modules/savedir (Makefile.am): Likewise.
24157         * modules/setenv (Makefile.am): Likewise.
24158         * modules/settime (Makefile.am): Likewise.
24159         * modules/sha1 (Makefile.am): Likewise.
24160         * modules/sig2str (Makefile.am): Likewise.
24161         * modules/snprintf (Makefile.am): Likewise.
24162         * modules/stat-macros (Makefile.am): Likewise.
24163         * modules/stat-time (Makefile.am): Likewise.
24164         * modules/stdbool (Makefile.am): Likewise.
24165         * modules/stdint (Makefile.am): Likewise.
24166         * modules/stdlib-safer (Makefile.am): Likewise.
24167         * modules/stpcpy (Makefile.am): Likewise.
24168         * modules/stpncpy (Makefile.am): Likewise.
24169         * modules/strcase (Makefile.am): Likewise.
24170         * modules/strcasestr (Makefile.am): Likewise.
24171         * modules/strchrnul (Makefile.am): Likewise.
24172         * modules/strcspn (Makefile.am): Likewise.
24173         * modules/strdup (Makefile.am): Likewise.
24174         * modules/strerror (Makefile.am): Likewise.
24175         * modules/strftime (Makefile.am): Likewise.
24176         * modules/strndup (Makefile.am): Likewise.
24177         * modules/strnlen (Makefile.am): Likewise.
24178         * modules/strpbrk (Makefile.am): Likewise.
24179         * modules/strsep (Makefile.am): Likewise.
24180         * modules/strstr (Makefile.am): Likewise.
24181         * modules/strtod (Makefile.am): Likewise.
24182         * modules/strtoimax (Makefile.am): Likewise.
24183         * modules/strtok_r (Makefile.am): Likewise.
24184         * modules/strtol (Makefile.am): Likewise.
24185         * modules/strtoll (Makefile.am): Likewise.
24186         * modules/strtoul (Makefile.am): Likewise.
24187         * modules/strtoull (Makefile.am): Likewise.
24188         * modules/strtoumax (Makefile.am): Likewise.
24189         * modules/strverscmp (Makefile.am): Likewise.
24190         * modules/sys_socket (Makefile.am): Likewise.
24191         * modules/sys_stat (Makefile.am): Likewise.
24192         * modules/sysexits (Makefile.am): Likewise.
24193         * modules/time_r (Makefile.am): Likewise.
24194         * modules/timegm (Makefile.am): Likewise.
24195         * modules/timespec (Makefile.am): Likewise.
24196         * modules/tmpfile-safer (Makefile.am): Likewise.
24197         * modules/trim (Makefile.am): Likewise.
24198         * modules/unistd-safer (Makefile.am): Likewise.
24199         * modules/unlinkdir (Makefile.am): Likewise.
24200         * modules/unlocked-io (Makefile.am): Likewise.
24201         * modules/userspec (Makefile.am): Likewise.
24202         * modules/utime (Makefile.am): Likewise.
24203         * modules/utimecmp (Makefile.am): Likewise.
24204         * modules/utimens (Makefile.am): Likewise.
24205         * modules/vasnprintf (Makefile.am): Likewise.
24206         * modules/vasprintf (Makefile.am): Likewise.
24207         * modules/vsnprintf (Makefile.am): Likewise.
24208         * modules/xalloc (Makefile.am): Likewise.
24209         * modules/xgetcwd (Makefile.am): Likewise.
24210         * modules/xnanosleep (Makefile.am): Likewise.
24211         * modules/xreadlink (Makefile.am): Likewise.
24212         * modules/xstrtod (Makefile.am): Likewise.
24213         * modules/xstrtol (Makefile.am): Likewise.
24214         * modules/xstrtold (Makefile.am): Likewise.
24215         * modules/yesno (Makefile.am): Likewise.
24216         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
24217
24218 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
24219
24220         * modules/error (Makefile.am): Distribute files through
24221         EXTRA_DIST, not lib_SOURCES.
24222
24223 2006-10-12  Eric Blake  <ebb9@byu.net>
24224
24225         * modules/error (Makefile.am): Distribute files in /lib.
24226         * modules/obstack (Makefile.am): Likewise.
24227
24228 2006-10-12  Bruno Haible  <bruno@clisp.org>
24229
24230         * modules/acl (Makefile.am): Distribute all files in lib/ through
24231         EXTRA_DIST.
24232         * modules/arcfour (Makefile.am): Likewise.
24233         * modules/arctwo (Makefile.am): Likewise.
24234         * modules/argmatch (Makefile.am): Likewise.
24235         * modules/argz (Makefile.am): Likewise.
24236         * modules/atexit (Makefile.am): Likewise.
24237         * modules/backupfile (Makefile.am): Likewise.
24238         * modules/c-strtod (Makefile.am): Likewise.
24239         * modules/c-strtold (Makefile.am): Likewise.
24240         * modules/calloc (Makefile.am): Likewise.
24241         * modules/canon-host (Makefile.am): Likewise.
24242         * modules/canonicalize (Makefile.am): Likewise.
24243         * modules/chdir-long (Makefile.am): Likewise.
24244         * modules/chdir-safer (Makefile.am): Likewise.
24245         * modules/check-version (Makefile.am): Likewise.
24246         * modules/chown (Makefile.am): Likewise.
24247         * modules/cloexec (Makefile.am): Likewise.
24248         * modules/close-stream (Makefile.am): Likewise.
24249         * modules/closeout (Makefile.am): Likewise.
24250         * modules/crc (Makefile.am): Likewise.
24251         * modules/cycle-check (Makefile.am): Likewise.
24252         * modules/des (Makefile.am): Likewise.
24253         * modules/dirfd (Makefile.am): Likewise.
24254         * modules/dirname (Makefile.am): Likewise.
24255         * modules/dup2 (Makefile.am): Likewise.
24256         * modules/euidaccess (Makefile.am): Likewise.
24257         * modules/exclude (Makefile.am): Likewise.
24258         * modules/exitfail (Makefile.am): Likewise.
24259         * modules/fcntl-safer (Makefile.am): Likewise.
24260         * modules/file-type (Makefile.am): Likewise.
24261         * modules/fileblocks (Makefile.am): Likewise.
24262         * modules/filemode (Makefile.am): Likewise.
24263         * modules/filenamecat (Makefile.am): Likewise.
24264         * modules/fnmatch (Makefile.am): Likewise.
24265         * modules/fopen-safer (Makefile.am): Likewise.
24266         * modules/fpending (Makefile.am): Likewise.
24267         * modules/fprintftime (Makefile.am): Likewise.
24268         * modules/free (Makefile.am): Likewise.
24269         * modules/fsusage (Makefile.am): Likewise.
24270         * modules/ftruncate (Makefile.am): Likewise.
24271         * modules/fts (Makefile.am): Likewise.
24272         * modules/gc (Makefile.am): Likewise.
24273         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
24274         * modules/getaddrinfo (Makefile.am): Likewise.
24275         * modules/getcwd (Makefile.am): Likewise.
24276         * modules/getdelim (Makefile.am): Likewise.
24277         * modules/getdomainname (Makefile.am): Likewise.
24278         * modules/getgroups (Makefile.am): Likewise.
24279         * modules/gethostname (Makefile.am): Likewise.
24280         * modules/gethrxtime (Makefile.am): Likewise.
24281         * modules/getline (Makefile.am): Likewise.
24282         * modules/getloadavg (Makefile.am): Likewise.
24283         * modules/getlogin_r (Makefile.am): Likewise.
24284         * modules/getopt (Makefile.am): Likewise.
24285         * modules/getpass (Makefile.am): Likewise.
24286         * modules/getpass-gnu (Makefile.am): Likewise.
24287         * modules/getsubopt (Makefile.am): Likewise.
24288         * modules/gettime (Makefile.am): Likewise.
24289         * modules/gettimeofday (Makefile.am): Likewise.
24290         * modules/getugroups (Makefile.am): Likewise.
24291         * modules/getusershell (Makefile.am): Likewise.
24292         * modules/glob (Makefile.am): Likewise.
24293         * modules/group-member (Makefile.am): Likewise.
24294         * modules/hard-locale (Makefile.am): Likewise.
24295         * modules/hash (Makefile.am): Likewise.
24296         * modules/hmac-md5 (Makefile.am): Likewise.
24297         * modules/hmac-sha1 (Makefile.am): Likewise.
24298         * modules/human (Makefile.am): Likewise.
24299         * modules/idcache (Makefile.am): Likewise.
24300         * modules/imaxabs (Makefile.am): Likewise.
24301         * modules/imaxdiv (Makefile.am): Likewise.
24302         * modules/inet_ntop (Makefile.am): Likewise.
24303         * modules/inet_pton (Makefile.am): Likewise.
24304         * modules/inttostr (Makefile.am): Likewise.
24305         * modules/isapipe (Makefile.am): Likewise.
24306         * modules/lchown (Makefile.am): Likewise.
24307         * modules/long-options (Makefile.am): Likewise.
24308         * modules/lstat (Makefile.am): Likewise.
24309         * modules/malloc (Makefile.am): Likewise.
24310         * modules/mathl (Makefile.am): Likewise.
24311         * modules/mbchar (Makefile.am): Likewise.
24312         * modules/md2 (Makefile.am): Likewise.
24313         * modules/md4 (Makefile.am): Likewise.
24314         * modules/md5 (Makefile.am): Likewise.
24315         * modules/memcasecmp (Makefile.am): Likewise.
24316         * modules/memchr (Makefile.am): Likewise.
24317         * modules/memcmp (Makefile.am): Likewise.
24318         * modules/memcoll (Makefile.am): Likewise.
24319         * modules/memcpy (Makefile.am): Likewise.
24320         * modules/memmem (Makefile.am): Likewise.
24321         * modules/memmove (Makefile.am): Likewise.
24322         * modules/mempcpy (Makefile.am): Likewise.
24323         * modules/memrchr (Makefile.am): Likewise.
24324         * modules/memset (Makefile.am): Likewise.
24325         * modules/memxor (Makefile.am): Likewise.
24326         * modules/mkancesdirs (Makefile.am): Likewise.
24327         * modules/mkdir (Makefile.am): Likewise.
24328         * modules/mkdir-p (Makefile.am): Likewise.
24329         * modules/mkdtemp (Makefile.am): Likewise.
24330         * modules/mkstemp (Makefile.am): Likewise.
24331         * modules/mktime (Makefile.am): Likewise.
24332         * modules/modechange (Makefile.am): Likewise.
24333         * modules/mountlist (Makefile.am): Likewise.
24334         * modules/nanosleep (Makefile.am): Likewise.
24335         * modules/openat (Makefile.am): Likewise.
24336         * modules/pagealign_alloc (Makefile.am): Likewise.
24337         * modules/physmem (Makefile.am): Likewise.
24338         * modules/poll (Makefile.am): Likewise.
24339         * modules/posixtm (Makefile.am): Likewise.
24340         * modules/posixver (Makefile.am): Likewise.
24341         * modules/putenv (Makefile.am): Likewise.
24342         * modules/quote (Makefile.am): Likewise.
24343         * modules/quotearg (Makefile.am): Likewise.
24344         * modules/raise (Makefile.am): Likewise.
24345         * modules/read-file (Makefile.am): Likewise.
24346         * modules/readline (Makefile.am): Likewise.
24347         * modules/readlink (Makefile.am): Likewise.
24348         * modules/readtokens (Makefile.am): Likewise.
24349         * modules/readutmp (Makefile.am): Likewise.
24350         * modules/realloc (Makefile.am): Likewise.
24351         * modules/regex (Makefile.am): Likewise.
24352         * modules/rename (Makefile.am): Likewise.
24353         * modules/rename-dest-slash (Makefile.am): Likewise.
24354         * modules/rijndael (Makefile.am): Likewise.
24355         * modules/rmdir (Makefile.am): Likewise.
24356         * modules/rpmatch (Makefile.am): Likewise.
24357         * modules/safe-read (Makefile.am): Likewise.
24358         * modules/safe-write (Makefile.am): Likewise.
24359         * modules/same (Makefile.am): Likewise.
24360         * modules/save-cwd (Makefile.am): Likewise.
24361         * modules/savedir (Makefile.am): Likewise.
24362         * modules/setenv (Makefile.am): Likewise.
24363         * modules/settime (Makefile.am): Likewise.
24364         * modules/sha1 (Makefile.am): Likewise.
24365         * modules/sig2str (Makefile.am): Likewise.
24366         * modules/snprintf (Makefile.am): Likewise.
24367         * modules/stdlib-safer (Makefile.am): Likewise.
24368         * modules/stpcpy (Makefile.am): Likewise.
24369         * modules/stpncpy (Makefile.am): Likewise.
24370         * modules/strcase (Makefile.am): Likewise.
24371         * modules/strcasestr (Makefile.am): Likewise.
24372         * modules/strchrnul (Makefile.am): Likewise.
24373         * modules/strcspn (Makefile.am): Likewise.
24374         * modules/strdup (Makefile.am): Likewise.
24375         * modules/strerror (Makefile.am): Likewise.
24376         * modules/strftime (Makefile.am): Likewise.
24377         * modules/strndup (Makefile.am): Likewise.
24378         * modules/strnlen (Makefile.am): Likewise.
24379         * modules/strpbrk (Makefile.am): Likewise.
24380         * modules/strsep (Makefile.am): Likewise.
24381         * modules/strstr (Makefile.am): Likewise.
24382         * modules/strtod (Makefile.am): Likewise.
24383         * modules/strtoimax (Makefile.am): Likewise.
24384         * modules/strtok_r (Makefile.am): Likewise.
24385         * modules/strtol (Makefile.am): Likewise.
24386         * modules/strtoll (Makefile.am): Likewise.
24387         * modules/strtoul (Makefile.am): Likewise.
24388         * modules/strtoull (Makefile.am): Likewise.
24389         * modules/strtoumax (Makefile.am): Likewise.
24390         * modules/strverscmp (Makefile.am): Likewise.
24391         * modules/time_r (Makefile.am): Likewise.
24392         * modules/timegm (Makefile.am): Likewise.
24393         * modules/tmpfile-safer (Makefile.am): Likewise.
24394         * modules/unistd-safer (Makefile.am): Likewise.
24395         * modules/unlinkdir (Makefile.am): Likewise.
24396         * modules/userspec (Makefile.am): Likewise.
24397         * modules/utime (Makefile.am): Likewise.
24398         * modules/utimecmp (Makefile.am): Likewise.
24399         * modules/utimens (Makefile.am): Likewise.
24400         * modules/vasnprintf (Makefile.am): Likewise.
24401         * modules/vasprintf (Makefile.am): Likewise.
24402         * modules/vsnprintf (Makefile.am): Likewise.
24403         * modules/xalloc (Makefile.am): Likewise.
24404         * modules/xgetcwd (Makefile.am): Likewise.
24405         * modules/xnanosleep (Makefile.am): Likewise.
24406         * modules/xreadlink (Makefile.am): Likewise.
24407         * modules/xstrtod (Makefile.am): Likewise.
24408         * modules/xstrtol (Makefile.am): Likewise.
24409         * modules/xstrtold (Makefile.am): Likewise.
24410         * modules/yesno (Makefile.am): Likewise.
24411
24412 2006-10-12  Jim Meyering  <jim@meyering.net>
24413
24414         * m4/getloadavg.m4: Revert the change below.
24415
24416         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
24417         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
24418         fail with a symlink, which is what coreutils' ./bootstrap now
24419         creates by default.
24420
24421 2006-10-12  Bruno Haible  <bruno@clisp.org>
24422
24423         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
24424         mingw.
24425         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
24426         MSVC and mingw explicitly.
24427
24428 2006-10-11  Simon Josefsson  <jas@extundo.com>
24429             Bruno Haible  <bruno@clisp.org>
24430
24431         Add support for multiple gnulib-tool invocations in the scope of a
24432         single configure.ac file.
24433         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
24434         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
24435         with the same contents as the _LIBADD variable.
24436         (func_emit_initmacro_start, func_emit_initmacro_end,
24437         func_emit_initmacro_done): New functions.
24438         (func_import, func_create_testdir): Invoke them. Allow the identifiers
24439         gl_LIBOBJS and gl_LTLIBOBJS.
24440
24441 2006-10-11  Bruno Haible  <bruno@clisp.org>
24442
24443         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
24444         (func_create_testdir): Don't create po/Makefile.am, don't invoke
24445         autoreconf. Instead, invoke autopoint explicitly but move back the
24446         *.m4 files from gnulib.
24447
24448 2006-10-11  Bruno Haible  <bruno@clisp.org>
24449
24450         * gnulib-tool (func_usage): Make module names after --create-testdir
24451         optional.
24452         (func_create_testdir): If no module was specified, use nearly all
24453         modules.
24454
24455 2006-10-12  Jim Meyering  <jim@meyering.net>
24456
24457         Big performance improvement for fts-based tools that use FTS_NOSTAT.
24458         Avoid spurious inode-mismatch problems on non-POSIX file systems.
24459         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
24460         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
24461         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
24462         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
24463         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
24464         (fts_set_stat_required): New function.
24465         (fts_open): Defer the calls to fts_stat, if possible or requested.
24466         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
24467         into fts_stat itself.
24468         (fts_read): Perform any required (deferred) fts_stat call.
24469         (fts_build): Likewise, for the directory we're about to open and read.
24470         In the readdir loop, carefully decide whether each entry will require
24471         an eventual call to fts_stat, using dirent.d_type info if available.
24472         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
24473         a command line argument into this function.  Update all callers.
24474         Map a return value of FTS_DOT to FTS_D for a command line argument.
24475         * modules/fts (Depends-on): Add d-type.  Alphabetize.
24476         Thanks to Miklos Szeredi for his tenacity and for the initial
24477         bug report about "find" failing on a FUSE-based file system.
24478
24479         * lib/fts.c (fts_open): Use consistent indentation.
24480
24481 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
24482
24483         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
24484         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
24485         reported by Jim Meyering.  All uses of cache variables renamed
24486         to match Autoconf's.
24487         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
24488         the other one.
24489
24490         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
24491         Fix misspelling in diagnostic.
24492
24493 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
24494
24495         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
24496         defined.  Problem reported by Matthew Woehlke.
24497
24498         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
24499         Add support for Tandem NonStop R series.
24500         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
24501         Use new macro.
24502
24503         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
24504         (has_trailing_slash): Omit size arg; all callers changed.
24505         Omit 'inline', since it doesn't help performance and we'd
24506         need to configure it.
24507         Don't count //, ///, etc. as having a trailing slash.
24508         As a side effect, this removes a C99ism reported by Matthew Woehlke.
24509         (rpl_rename_dest_slash): On failure, use rename's errno rather
24510         than (in some cases) an incorrect or junk errno.
24511         Simplify code by removing need to compute length; this does
24512         cause it to make two passes instead of one over the file name,
24513         but it's worth it.
24514
24515         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
24516         change, since Autoconf's version may no longer be appropriate now
24517         that we are using CVS Autoconf's version.  Add support for Tandem.
24518
24519 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
24520             Bruno Haible  <bruno@clisp.org>
24521
24522         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
24523         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
24524         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
24525         gl_AC_TYPE_LONG_LONG.
24526
24527         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
24528         instead of HAVE_LONG_LONG.
24529         * lib/printf-args.c (printf_fetchargs): Likewise.
24530         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
24531         * lib/vasnprintf.c (VASNPRINTF): Likewise.
24532         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
24533         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
24534         gl_AC_TYPE_LONG_LONG.
24535
24536 2006-10-11  Bruno Haible  <bruno@clisp.org>
24537
24538         * m4/longlong.m4: Add comments.
24539         * m4/ulonglong.m4: Likewise.
24540
24541 2006-10-10  Bruno Haible  <bruno@clisp.org>
24542
24543         Make it possible to #define stpcpy, strdup to aliases.
24544         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
24545         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
24546
24547 2006-10-10  Bruno Haible  <bruno@clisp.org>
24548
24549         Make it possible to #define gcd to an alias.
24550         * lib/gcd.c: Include config.h.
24551
24552 2006-10-10  Bruno Haible  <bruno@clisp.org>
24553
24554         Make it possible to #define c_isascii to an alias.
24555         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
24556         defined. Undefine the macros before defining them, to avoid gcc
24557         warnings.
24558         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
24559         define NO_C_CTYPE_MACROS early.
24560
24561 2006-10-10  Bruno Haible  <bruno@clisp.org>
24562
24563         Make it possible to #define set_program_name to an alias.
24564         * lib/progname.c: Don't undefine set_program_name; instead, undefine
24565         ENABLE_RELOCATABLE early.
24566
24567 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
24568
24569         Port to Tandem NSK OSS, which has 64-bit signed int but at most
24570         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
24571         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
24572         More generally, don't assume that 64-bit signed int is available
24573         if unsigned int is, and vice versa.
24574         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
24575         unsigned symbols, not on their signed counterparts.
24576         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
24577         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
24578         (UINT64_C, UINTMAX_C):
24579         Likewise.
24580         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
24581         unsigned counterparts.
24582         (Have_long_long, Unsigned): New macros.
24583         (Int): Renamed from INT.
24584         (strtoimax): Use the new macros.
24585         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
24586         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
24587         * modules/inttypes (inttypes.h): Substitute
24588         HAVE_UNSIGNED_LONG_LONG_INT.
24589         * modules/stdint (stdint.h): Likewise.
24590         (Files): Add m4/ulonglong.m4.
24591
24592 2006-10-10  Bruno Haible  <bruno@clisp.org>
24593
24594         Fix a gcc -Wshadow warning.
24595         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
24596         to 'bucket'.
24597         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
24598         gl_linked_indexof_from_to): Likewise.
24599         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
24600         Likewise.
24601         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
24602         Likewise.
24603         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
24604         Reported by Eric Blake.
24605
24606 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
24607
24608         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
24609         for NetBSD.  Problem reported by Bruno Haible.
24610
24611 2006-10-09  Jim Meyering  <jim@meyering.net>
24612
24613         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
24614         Patch from Bruno Haible.
24615
24616 2006-10-09  Jim Meyering  <jim@meyering.net>
24617
24618         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
24619         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
24620         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
24621
24622 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
24623
24624         Don't include <config.h> twice; this doesn't work in some cases,
24625         e.g., when config.h has "#define intmax_t long long int" and
24626         we include <config.h>, <inttypes.h>, <config.h> in that order.
24627         Problem reported by Matthew Woehlke in:
24628         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
24629         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
24630         * lib/fts-cycle.c: Don't include config.h.
24631         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
24632         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
24633         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
24634         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
24635         inttypes.h.
24636         * lib/xstrtoumax.c: Likewise.
24637         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
24638         __strtol and the like, so that this module is more like its siblings.
24639         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
24640         Remove; no longer needed now that we assume gnulib inttypes.h.
24641
24642 2006-10-08  Bruno Haible  <bruno@clisp.org>
24643
24644         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
24645         option.
24646
24647 2006-10-07  Jim Meyering  <jim@meyering.net>
24648
24649         * modules/inttypes (inttypes.h): Revert what seems to have been
24650         an inadvertent part of today's change: use "|", not "/" in the
24651         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
24652
24653 2006-10-07  Bruno Haible  <bruno@clisp.org>
24654
24655         * modules/sublist: New file.
24656
24657 2006-10-07  Bruno Haible  <bruno@clisp.org>
24658
24659         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
24660         * modules/argz (argz.h): Likewise.
24661         * modules/arpa_inet (arpa/inet.h): Likewise.
24662         * modules/byteswap (byteswap.h): Likewise.
24663         * modules/configmake (configmake.h): Likewise.
24664         * modules/fcntl (fcntl.h): Likewise.
24665         * modules/fnmatch (fnmatch.h): Likewise.
24666         * modules/getopt (getopt.h): Likewise.
24667         * modules/glob (glob.h): Likewise.
24668         * modules/inttypes (inttypes.h): Likewise.
24669         * modules/netinet_in (netinet/in.h): Likewise.
24670         * modules/poll (poll.h): Likewise.
24671         * modules/stdbool (stdbool.h): Likewise.
24672         * modules/stdint (stdint.h): Likewise.
24673         * modules/sys_select (sys/select.h): Likewise.
24674         * modules/sys_socket (sys/socket.h): Likewise.
24675         * modules/sys_stat (sys/stat.h): Likewise.
24676         * modules/sysexits (sysexits.h): Likewise.
24677         * modules/unistd (unistd.h): Likewise.
24678         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
24679         Add a "DO NOT EDIT" comment to the generated file.
24680         (func_import): Likewise for gnulib-comp.m4.
24681
24682 2006-10-07  Bruno Haible  <bruno@clisp.org>
24683
24684         * lib/gl_sublist.h: New file.
24685         * lib/gl_sublist.c: New file.
24686
24687 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
24688
24689         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
24690         name (relative to the original working directory) and the file
24691         name component (relative to the temporary working directory).  All
24692         callers changed.
24693         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
24694         * lib/mkdir-p.c (make_dir_parents): Likewise.
24695         * lib/mkdir-p.h (make_dir_parents): Likewise.
24696
24697 2006-10-06  Eric Blake  <ebb9@byu.net>
24698
24699         Define several macros for use by the clean-temp module.
24700         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
24701         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
24702         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
24703
24704         * lib/clean-temp.h (close_stream_temp): New declaration.
24705         * lib/clean-temp.c (includes): Pull in headers according to what
24706         other modules are in use.
24707         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
24708
24709 2006-10-06  Bruno Haible  <bruno@clisp.org>
24710
24711         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
24712         instead of fopen, fwriteerror.
24713
24714 2006-10-06  Bruno Haible  <bruno@clisp.org>
24715
24716         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
24717         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
24718         int.
24719         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
24720         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
24721         Return an error indicator.
24722         Suggested by Eric Blake.
24723
24724 2006-10-06  Bruno Haible  <bruno@clisp.org>
24725
24726         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
24727         Reported by Eric Blake.
24728
24729 2006-10-06  Bruno Haible  <bruno@clisp.org>
24730
24731         * modules/closeout (Description): Mention stderr too.
24732
24733 2006-10-06  Bruno Haible  <bruno@clisp.org>
24734         and Paul Eggert  <eggert@cs.ucla.edu>
24735
24736         * lib/closeout.c (close_stdout): Also close stderr.
24737         * lib/closeout.h: Update comment.
24738
24739 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
24740
24741         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
24742         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
24743         * lib/dirchownmod.c: Include lchown.h.
24744         * lib/lchown.c: Don't include files that lchown.h now includes.
24745         Don't declare chown, since lchown.h now does that.
24746         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
24747         (lchown): Define to rpl_chown if lchown is declared but
24748         does not exist.  Declare using a prototype if lchown is not
24749         declared.  Add a copyright notice.
24750         * lib/mkstemp.h: Include <unistd.h>.
24751         * lib/openat.c: Include lchown.h.
24752
24753         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
24754         we now test for that separately.
24755         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
24756         rather than O_NOFOLLOW, when testing whether it's possible to
24757         avoid a race condition reliably.
24758         * lib/savewd.c (savewd_chdir): Likewise.
24759
24760         Remove macros that are no longer needed now that stdint.h is
24761         reliable.
24762         * lib/fsusage.c (UINTMAX_MAX): Remove.
24763         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
24764         * lib/utimecmp.c (SIZE_MAX): Remove.
24765
24766         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
24767
24768         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
24769         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
24770         O_NOATIME works.
24771
24772 2006-10-05  Bruno Haible  <bruno@clisp.org>
24773
24774         * lib/gl_list.h (gl_sortedlist_search_from_to,
24775         gl_sortedlist_indexof_from_to): New declarations.
24776         (gl_list_implementation): New fields sortedlist_search_from_to,
24777         sortedlist_indexof_from_to.
24778         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
24779         inline functions.
24780         * lib/gl_list.c (gl_sortedlist_search_from_to,
24781         gl_sortedlist_indexof_from_to): New functions.
24782         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
24783         function.
24784         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
24785         (gl_array_sortedlist_search_from_to): New function.
24786         (gl_array_list_implementation): Update.
24787         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
24788         function.
24789         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
24790         (gl_carray_sortedlist_search_from_to): New function.
24791         (gl_carray_list_implementation): Update.
24792         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
24793         gl_linked_sortedlist_indexof_from_to): New functions.
24794         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
24795         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
24796         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
24797         gl_tree_sortedlist_indexof_from_to): New functions.
24798         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
24799         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
24800         Update.
24801         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
24802         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
24803         Update.
24804
24805 2006-10-05  Bruno Haible  <bruno@clisp.org>
24806
24807         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
24808         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
24809         (struct gl_list_implementation): Add fields search_from_to,
24810         indexof_from_to. Remove fields search, indexof.
24811         (gl_list_search): Use the search_from_to method.
24812         (gl_list_search_from, gl_list_search_from_to): New functions.
24813         (gl_list_indexof): Use the indexof_from_to method.
24814         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
24815         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
24816         (gl_list_search_from, gl_list_search_from_to): New functions.
24817         (gl_list_indexof): Use the indexof_from_to method.
24818         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
24819         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
24820         gl_array_indexof. Add start_index, end_index arguments.
24821         (gl_array_search_from_to): Renamed from gl_array_search. Add
24822         start_index, end_index arguments.
24823         (gl_array_remove, gl_array_list_implementation): Update.
24824         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
24825         gl_carray_indexof. Add start_index, end_index arguments.
24826         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
24827         start_index, end_index arguments.
24828         (gl_carray_remove, gl_carray_list_implementation): Update.
24829         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
24830         gl_linked_search. Add start_index, end_index arguments.
24831         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
24832         start_index, end_index arguments.
24833         (gl_linked_remove): Update.
24834         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
24835         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
24836         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
24837         field to 'size_t'.
24838         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
24839         gl_tree_search. Add start_index, end_index arguments.
24840         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
24841         start_index, end_index arguments.
24842         (gl_tree_remove): Update.
24843         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
24844         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
24845         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
24846         function.
24847         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
24848         gl_tree_search. Add start_index, end_index arguments.
24849         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
24850         start_index, end_index arguments.
24851         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
24852         Update.
24853         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
24854
24855 2006-10-05  Bruno Haible  <bruno@clisp.org>
24856
24857         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
24858
24859         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
24860         fwriteerror_temp): New declarations.
24861         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
24862         (descriptors): New variable.
24863         (cleanup): First, close the descriptors.
24864         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
24865         fclose_temp, fwriteerror_temp): New functions.
24866
24867 2006-10-04  Jim Meyering  <jim@meyering.net>
24868
24869         * lib/fts.c (fts_open): Tiny comment change.
24870
24871 2006-10-04  Bruno Haible  <bruno@clisp.org>
24872
24873         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
24874         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
24875         gl_LOCK_BODY.
24876         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
24877         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
24878         gl_LOCK_EARLY_BODY.
24879         (gl_LOCK): Require gl_LOCK_BODY.
24880
24881 2006-10-04  Bruno Haible  <bruno@clisp.org>
24882
24883         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
24884         (gl_oset_search_atleast): New declaration.
24885         (struct gl_oset_implementation): Add field 'search_atleast'.
24886         (gl_oset_search_atleast): New inline function.
24887         * lib/gl_oset.c (gl_oset_search_atleast): New function.
24888         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
24889         (gl_array_oset_implementation): Update.
24890         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
24891         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
24892         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
24893
24894 2006-10-04  Bruno Haible  <bruno@clisp.org>
24895
24896         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
24897
24898 2006-10-03  Bruno Haible  <bruno@clisp.org>
24899
24900         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
24901         from gl_avltreehash_list_implementation.
24902
24903 2006-10-03  Bruno Haible  <bruno@clisp.org>
24904
24905         * lib/gl_oset.c (gl_oset_add): Fix return type.
24906
24907 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
24908
24909         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
24910
24911 2006-10-02  Eric Blake  <ebb9@byu.net>
24912
24913         * modules/strnlen (Depends-on): Add extensions.
24914
24915 2006-10-02  Eric Blake  <ebb9@byu.net>
24916
24917         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
24918         definition in 2.60+.
24919
24920 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
24921
24922         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
24923         checks.
24924
24925 2006-10-02  Bruno Haible  <bruno@clisp.org>
24926
24927         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
24928         to the AUTOMAKE_OPTIONS.
24929         Reported by Jim Meyering.
24930
24931 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
24932
24933         Work around bug in Solaris 10 /proc file system:
24934         /proc/self/fd/NNN/.. isn't the parent directory of
24935         the directory whose file descriptor is NNN.  This needs to
24936         be worked around at run time, not compile time, since a
24937         program might be built on Solaris 8, where things work, and
24938         run on Solaris 10.
24939         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
24940         to use the following interface instead:
24941         (OPENAT_BUFFER_SIZE): New macro.
24942         (openat_proc_name): New function.
24943         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
24944         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
24945         Likewise.
24946         * lib/openat-proc.c: New file.
24947         * modules/openat (Files): Add lib/openat-proc.c.
24948         (Depends-on): Add same-inode, stdbool.
24949         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
24950
24951 2006-09-29  Bruno Haible  <bruno@clisp.org>
24952
24953         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
24954         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
24955         argument. Set stdout_closed before testing for ferror, not after.
24956         (fwriteerror, fwriteerror_no_ebadf): New functions.
24957
24958 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24959
24960         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
24961
24962 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
24963
24964         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
24965         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
24966
24967 2006-09-28  Jim Meyering  <jim@meyering.net>
24968
24969         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
24970         Include <unistd.h>.
24971
24972 2006-09-28  Bruno Haible  <bruno@clisp.org>
24973
24974         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
24975         * modules/linkedhash-list (Depends-on): Likewise.
24976         * modules/rbtreehash-list (Depends-on): Likewise.
24977
24978 2006-09-28  Bruno Haible  <bruno@clisp.org>
24979
24980         * lib/strndup.h: Simplify the redefinition of strndup.
24981         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
24982         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
24983
24984 2006-09-28  Bruno Haible  <bruno@clisp.org>
24985
24986         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
24987         * lib/gl_linkedhash_list.c: Likewise.
24988         * lib/gl_rbtreehash_list.c: Likewise.
24989
24990 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
24991
24992         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
24993         getaddrinfo.
24994
24995         * lib/__fpending.h: Don't include <stdio_ext.h> unless
24996         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
24997         it causes <stdio_ext.h> to cause a compile-time error.
24998         Problem reported by Nelson H. F. Beebe.
24999         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
25000         of HAVE_DECL___PENDING.
25001
25002         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
25003         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
25004         declaration.
25005
25006 2006-09-27  Jim Meyering  <jim@meyering.net>
25007
25008         This file could end up with a definition for a function
25009         named __strndup, rather than rpl_strndup on a system with
25010         incomplete weak_alias support.
25011         * lib/strndup.c (strndup): Rename from __strndup.
25012         Remove #defines that used to map __strndup to strndup.
25013         Don't use K&R prototypes.
25014         Remove LIBC-related code, since this file is not sync'd with glibc.
25015         * lib/strndup.h: Revamp, accordingly.
25016         * m4/strndup.m4: Modernize.
25017
25018 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
25019
25020         * modules/savewd (Depends-on): Add 'raise'.
25021         * lib/savewd.c: Include <signal.h>, for 'raise'.
25022
25023 2006-09-26  Jim Meyering  <jim@meyering.net>
25024
25025         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
25026         when we detect Darwin 8.7.0's acl_get_file bug.
25027         Rearrange to perform the new (below) run-test while $LIBS
25028         contains any acl-related library.  Set USE_ACL at the end.
25029         (gl_ACL_GET_FILE): New function.
25030
25031 2006-09-26  Eric Blake  <ebb9@byu.net>
25032
25033         * lib/verror.c: Include <config.h> unconditionally.
25034
25035 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
25036
25037         * modules/clock-time (Maintainer): Add self.
25038         * modules/getlogin_r (Depends-on): Add extensions.
25039
25040 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25041
25042         * modules/clock-time: New module.
25043         * modules/nanosleep (Depends-on): Add clock-time.
25044         * modules/gethrxtime (Depends-on): Likewise.
25045         * modules/gettime (Depends-on): Likewise.
25046         * modules/settime (Depends-on): Likewise.
25047
25048         * modules/fts-lgpl: Depend on openat.
25049         * modules/mkancesdirs: Depend on savewd.
25050         * modules/mkdir-p: Likewise.
25051
25052 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25053
25054         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
25055
25056         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
25057         `gl_have_arbitrary_file_name_length_limit' to
25058         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
25059         actually works between configure runs.
25060
25061 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25062             Bruno Haible  <bruno@clisp.org>
25063
25064         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
25065
25066 2006-09-25  Jim Meyering  <jim@meyering.net>
25067
25068         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
25069         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
25070
25071 2006-09-25  Eric Blake  <ebb9@byu.net>
25072
25073         * gnulib-tool (func_import, func_create_testdir): Fix typos in
25074         exec's in 2006-09-18 patch when shuffling fds.
25075
25076 2006-09-25  Bruno Haible  <bruno@clisp.org>
25077
25078         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
25079         Reported by Jim Meyering.
25080
25081 2006-09-24  Jim Meyering  <jim@meyering.net>
25082
25083         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
25084         compare a pointer against a literal "0".  That caused failures with
25085         at least HP-UX's hpcc.
25086
25087 2006-09-22  Simon Josefsson  <jas@extundo.com>
25088
25089         * modules/gc-sha1:
25090         * modules/gc-md4:
25091         * modules/gc-hmac-sha1:
25092         * modules/gc-hmac-md5:
25093         * modules/gc-des:
25094         * modules/gc-arcfour: Distribute more files.
25095
25096 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25097
25098         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
25099         (gl_linked_iterator_from_to): Initialize struct completely.
25100         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
25101         (gl_tree_iterator_from_to): Likewise
25102         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
25103         * lib/gl_array_list.c [lint] (gl_array_iterator)
25104         (gl_array_iterator_from_to): Likewise.
25105         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
25106         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
25107         (gl_carray_iterator_from_to): Likewise.
25108
25109         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
25110         * lib/md4.c (md4_process_block): Remove unused variable.
25111         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
25112         parentheses for clarity.
25113
25114 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25115
25116         * modules/bison-i18n (Depends-on): Add gettext.
25117
25118 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25119
25120         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
25121         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
25122         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
25123         also add missing comma that caused broken test.
25124         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
25125         stdlib.h, for `abort'.
25126         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
25127         variables.
25128         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
25129         include unistd.h if present, for `rmdir'.
25130         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
25131         variables.
25132         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
25133         in the process include standard headers for prototypes.
25134         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
25135         gets declared on GNU/Linux.
25136         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
25137         unistd.h, for `rmdir'.
25138         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
25139
25140         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
25141         always true.
25142         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
25143
25144         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
25145
25146 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25147
25148         * gnulib-tool (func_version): Create output all at once.  This
25149         may help avoid triggering unnecessary SIGPIPEs, and at any
25150         rate it doesn't hurt.
25151
25152 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25153             Bruno Haible  <bruno@clisp.org>
25154
25155         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
25156         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
25157         * m4/signed.m4 (bh_C_SIGNED): Likewise.
25158
25159         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
25160         (gl_FUNC_VASPRINTF): Invoke it.
25161
25162 2006-09-22  Bruno Haible  <bruno@clisp.org>
25163
25164         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
25165         getloadavg.c as first argument.
25166
25167 2006-09-22  Bruno Haible  <bruno@clisp.org>
25168
25169         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
25170         at the beginning of the gl_INIT macro.
25171         * modules/getloadavg (configure.ac): Pass $gl_source_base to
25172         gl_GETLOADAVG.
25173
25174 2006-09-22  Bruno Haible  <bruno@clisp.org>
25175
25176         * gnulib-tool (func_create_megatestdir): Don't include the config-h
25177         module.
25178         Suggested by Ralf Wildenhues.
25179
25180 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
25181
25182         Import this patch from libc:
25183
25184         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
25185
25186         * lib/regex_internal.c (re_string_reconstruct): Handle
25187         offset < pstr->valid_raw_len && pstr->offsets_needed case.
25188         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
25189         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
25190         re_string_context_at.
25191
25192         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
25193         now requires it.
25194         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
25195         gl_REGEX now does it for us.
25196         (gl_REGEX): Add test taken from
25197         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
25198
25199         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
25200         Check that large offsets work.  Modernize Autoconf usages.
25201         Prefer "yes" to mean a good thing rather than a bad.
25202         Don't put "#define mkstemp" in config.h, as this might interfere
25203         with standard system headers that "#define mkstemp mkstemp64".
25204
25205         * modules/mkstemp (Depends-on): Add extensions, so that
25206         mkstemp is visible on some platforms.
25207         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
25208         (Include): Change to "mkstemp.h" from <stdlib.h>.
25209         (Files): Add mkstemp.h.
25210
25211         * lib/mkstemp.h: New file, since some standard headers
25212         #define mkstemp.
25213         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
25214         Include "mkstemp.h".
25215         Make the _LIBC code resemble glibc original more,
25216         e.g., use K&R style.
25217         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
25218         (mkstemp): Remove, since mkstemp.h does this for us.
25219         * lib/stdlib--.h: Include mkstemp.h.
25220
25221         Import this patch from libc:
25222
25223         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
25224
25225         * lib/tempname.c (__gen_tempname): Change attempts_min
25226         into a macro.  Use preprocessor to decide how to initialize
25227         attempts [Coverity CID 67].
25228
25229 2006-09-20  Bruno Haible  <bruno@clisp.org>
25230
25231         * lib/mkdtemp.c: Import from libc.
25232         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
25233                 * sysdeps/posix/tempname.c (__gen_tempname): Change
25234                 attempts_min into a macro.  Use preprocessor to decide how to
25235                 initialize attempts [Coverity CID 67].
25236         2001-11-27  Paul Eggert  <eggert@twinsun.com>
25237                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
25238                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
25239
25240 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25241
25242         * gnulib-tool (func_exit): New function, to allow to pass the
25243         exit status portably through the trap.  Use everywhere.
25244         (--help, --version): Signal a write error.
25245         (trap): catch SIGPIPE, for write errors.
25246         Exit at the end of the trap, with the correct exit status.
25247
25248 2006-09-19  Karl Berry  <karl@gnu.org>
25249
25250         * doc/gnulib.texi: note about the license texinfo files.
25251
25252 2006-09-19  Eric Blake  <ebb9@byu.net>
25253
25254         * gnulib-tool: Avoid space-tab.
25255
25256 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
25257
25258         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
25259         that prevented coreutils 6.1 from building.  Problem reported
25260         by Petter Reinholdtsen.
25261
25262 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
25263
25264         * gnulib-tool (avoidlist): Fix typo that broke options like
25265         --avoid=lock that are used by coreutils bootstrap.
25266
25267 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
25268
25269         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
25270         more systematically.
25271
25272 2006-09-18  Jim Meyering  <jim@meyering.net>
25273
25274         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
25275
25276 2006-09-18  Bruno Haible  <bruno@clisp.org>
25277
25278         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
25279
25280 2006-09-18  Bruno Haible  <bruno@clisp.org>
25281
25282         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
25283         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
25284         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
25285         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
25286         * m4/gettext.m4: Require autoconf >= 2.52.
25287         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
25288         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
25289         of gl_cv_header_inttypes_h.
25290
25291 2006-09-18  Bruno Haible  <bruno@clisp.org>
25292
25293         * lib/javaversion.c: Include configmake.h.
25294
25295 2006-09-18  Bruno Haible  <bruno@clisp.org>
25296
25297         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
25298         avoid that the while loops be executed in a subshell.
25299
25300 2006-09-18  Bruno Haible  <bruno@clisp.org>
25301
25302         * MODULES.html.sh (func_module): Break long lines.
25303         Suggested by Bruce Korb <bkorb@gnu.org>.
25304
25305 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25306
25307         Speed up by a factor of 1.12.
25308         * gnulib-tool (nl): New variable.
25309         (func_import): Rewrite include directive extraction to only read each
25310         directive once.
25311
25312 2006-09-17  Bruno Haible  <bruno@clisp.org>
25313
25314         * modules/javaversion (Makefile.am): Remove DEFS setting.
25315         (Depends-on): Add configmake, for PKGDATADIR definition.
25316
25317 2006-09-17  Bruno Haible  <bruno@clisp.org>
25318
25319         * gnulib-tool (func_create_testdir): Rewrite all files at once.
25320
25321 2006-09-17  Bruno Haible  <bruno@clisp.org>
25322
25323         * gnulib-tool (func_append): New function, stolen from libtool.m4.
25324         (func_modules_transitive_closure, func_modules_add_dummy,
25325         func_modules_to_filelist, func_import, func_create_testdir,
25326         func_create_megatestdir, ...): Use it wherever possible.
25327         Suggested by Ralf Wildenhues.
25328
25329 2006-09-16  Karl Berry  <karl@gnu.org>
25330
25331         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
25332         to avoid sectioning errors.
25333         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
25334         [ifinfo]: blank line after @center-ed titles.
25335         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
25336         Spell FSF address consistently with others.
25337         (These changes approved by rms.)
25338
25339 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25340
25341         Speed up by a factor of 1.61.
25342         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
25343         already checked module names again.
25344
25345 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25346
25347         Speed up by a factor of 1.13.
25348         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
25349         for new_files, and the input to func_add_or_update.
25350
25351 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25352
25353         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
25354         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
25355
25356 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
25357
25358         * modules/mkancesdirs (Depends-on): Add fcntl.
25359         * modules/savewd: New file.
25360         * MODULES.html.sh (File system functions): Add savewd.
25361
25362         * modules/configmake (Makefile.am): Add support for the
25363         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
25364
25365 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
25366
25367         * m4/savewd.m4: New file.
25368
25369 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
25370
25371         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
25372         (dirchownmod): New arg FD.  All callers changed.
25373         Use FD rather than opening the directory ourself, as opening is
25374         now the caller's responsibility.
25375         * lib/dirchownmod.h: Likewise.
25376         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
25377         hosts that require <sys/types.h> before <sys/stat.h>.  Include
25378         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
25379         (test_dir): Remove.
25380         (mkancesdirs): Return length of prefix of FILE that has already
25381         been made, or -2 if there is a child doing the work.  Redo
25382         algorithm so that it is O(N) rather than O(N**2).  Optimize away
25383         ".", and treat ".." specially since it might stray back into
25384         already-created areas.  Use a subprocess if necessary.  New arg
25385         WD; all users changed.  MAKE_DIR function should now return 1
25386         if it creates a directory that is not readable.  Return -2 if
25387         a child process is spun off.
25388         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
25389         Adjust signature to match code.
25390         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
25391         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
25392         all users changed.
25393         * lib/savewd.c, lib/savewd.h: New files.
25394
25395 2006-09-15  Jim Meyering  <jim@meyering.net>
25396
25397         * modules/rename-dest-slash: New module.
25398         * MODULES.html.sh (posix_compat): Add it here.
25399
25400         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
25401
25402 2006-09-15  Jim Meyering  <jim@meyering.net>
25403
25404         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
25405         file.
25406
25407         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
25408
25409 2006-09-15  Jim Meyering  <jim@meyering.net>
25410
25411         * lib/rename-dest-slash.c (has_trailing_slash): Use
25412         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
25413         (rpl_rename_dest_slash): Perform the cheaper trailing slash
25414         test before testing whether SRC is a directory.
25415         Suggestions from Bruno Haible.
25416
25417         Avoid a warning about an unused variable.
25418         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
25419         into the #ifdef block where it's used.
25420
25421         * lib/rename-dest-slash.c: New file.
25422
25423 2006-09-14  Bruno Haible  <bruno@clisp.org>
25424
25425         * lib/allocsa.c: Include <config.h> unconditionally.
25426         * lib/asnprintf.c: Likewise.
25427         * lib/asprintf.c: Likewise.
25428         * lib/c-strcasecmp.c: Likewise.
25429         * lib/c-strcasestr.c: Likewise.
25430         * lib/c-strncasecmp.c: Likewise.
25431         * lib/c-strstr.c: Likewise.
25432         * lib/classpath.c: Likewise.
25433         * lib/clean-temp.c: Likewise.
25434         * lib/concatpath.c: Likewise.
25435         * lib/copy-file.c: Likewise.
25436         * lib/csharpcomp.c: Likewise.
25437         * lib/csharpexec.c: Likewise.
25438         * lib/execute.c: Likewise.
25439         * lib/fatal-signal.c: Likewise.
25440         * lib/findprog.c: Likewise.
25441         * lib/fwriteerror.c: Likewise.
25442         * lib/gl_array_list.c: Likewise.
25443         * lib/gl_array_oset.c: Likewise.
25444         * lib/gl_avltree_list.c: Likewise.
25445         * lib/gl_avltree_oset.c: Likewise.
25446         * lib/gl_avltreehash_list.c: Likewise.
25447         * lib/gl_carray_list.c: Likewise.
25448         * lib/gl_linked_list.c: Likewise.
25449         * lib/gl_linkedhash_list.c: Likewise.
25450         * lib/gl_list.c: Likewise.
25451         * lib/gl_oset.c: Likewise.
25452         * lib/gl_rbtree_list.c: Likewise.
25453         * lib/gl_rbtree_oset.c: Likewise.
25454         * lib/gl_rbtreehash_list.c: Likewise.
25455         * lib/imaxabs.c: Likewise.
25456         * lib/imaxdiv.c: Likewise.
25457         * lib/javacomp.c: Likewise.
25458         * lib/javaexec.c: Likewise.
25459         * lib/javaversion.c: Likewise.
25460         * lib/linebreak.c: Likewise.
25461         * lib/localcharset.c: Likewise.
25462         * lib/lock.c: Likewise.
25463         * lib/mbchar.c: Likewise.
25464         * lib/mbswidth.c: Likewise.
25465         * lib/mkdtemp.c: Likewise.
25466         * lib/pipe.c: Likewise.
25467         * lib/printf-args.c: Likewise.
25468         * lib/printf-parse.c: Likewise.
25469         * lib/progname.c: Likewise.
25470         * lib/progreloc.c: Likewise.
25471         * lib/readlink.c: Likewise.
25472         * lib/sh-quote.c: Likewise.
25473         * lib/stpcpy.c: Likewise.
25474         * lib/stpncpy.c: Likewise.
25475         * lib/strcasecmp.c: Likewise.
25476         * lib/strcasestr.c: Likewise.
25477         * lib/strcspn.c: Likewise.
25478         * lib/striconv.c: Likewise.
25479         * lib/strncasecmp.c: Likewise.
25480         * lib/strnlen1.c: Likewise.
25481         * lib/strstr.c: Likewise.
25482         * lib/strtok_r.c: Likewise.
25483         * lib/tls.c: Likewise.
25484         * lib/tmpdir.c: Likewise.
25485         * lib/unicodeio.c: Likewise.
25486         * lib/unsetenv.c: Likewise.
25487         * lib/vasnprintf.c: Likewise.
25488         * lib/vasprintf.c: Likewise.
25489         * lib/wait-process.c: Likewise.
25490         * lib/xallocsa.c: Likewise.
25491         * lib/xsetenv.c: Likewise.
25492         * lib/xstriconv.c: Likewise.
25493
25494 2006-09-13  Simon Josefsson  <jas@extundo.com>
25495
25496         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
25497         that internally, suggested by Ralf Wildenhues
25498         <Ralf.Wildenhues@gmx.de>.
25499
25500 2006-09-13  Simon Josefsson  <jas@extundo.com>
25501
25502         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
25503         @LIBOBJS@.
25504         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25505
25506 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
25507
25508         * lib/_fpending.c: Include <config.h> unconditionally, since we no
25509         longer worry about uses that don't define HAVE_CONFIG_H.
25510         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
25511         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
25512         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
25513         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
25514         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
25515         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
25516         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
25517         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
25518         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
25519         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
25520         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
25521         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
25522         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
25523         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
25524         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
25525         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
25526         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
25527         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
25528         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
25529         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
25530         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
25531         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
25532         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
25533         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
25534         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
25535         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
25536         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
25537         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
25538         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
25539         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
25540         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
25541         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
25542         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
25543         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
25544         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
25545         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
25546         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
25547         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
25548         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
25549         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
25550         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
25551         Likewise.
25552
25553 2006-09-13  Eric Blake  <ebb9@byu.net>
25554
25555         * lib/getopt.c: Fix typo in last commit.
25556
25557 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
25558
25559         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
25560         dgettext.
25561
25562 2006-09-12  Jim Meyering  <jim@meyering.net>
25563
25564         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
25565         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
25566         Reported by Nelson H. F. Beebe.
25567
25568 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
25569
25570         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
25571         program_invocation_name and program_invocation_short_name are
25572         initialized.
25573         * lib/argp-namefrob.h: Move declarations of program_invocation_name
25574         and program_invocation_short_name to argp.h, so they are visible
25575         to user programs.
25576         * lib/argp.h: Likewise
25577
25578 2006-09-10  Bruno Haible  <bruno@clisp.org>
25579
25580         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
25581         m4/inttypes_h.m4, m4/uintmax_t.m4.
25582
25583 2006-09-10  Bruno Haible  <bruno@clisp.org>
25584
25585         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
25586         gl_AC_TYPE_UINTMAX_T.
25587
25588 2006-09-10  Bruno Haible  <bruno@clisp.org>
25589
25590         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
25591
25592 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
25593
25594         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
25595         convention.  Text proposed by Bruno Haible.
25596         (struct argp_option): Document the use of N_() wrappers.
25597
25598         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
25599         '\v', and translate the two parts separately, instead of feeding
25600         the whole string to gettext.  This allows to exclude
25601         '\v' from the strings visible to the translator by writing doc
25602         strings as N_("..") "\v" N_("..").
25603
25604 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
25605
25606         * config/srclist.txt: Undo latest change; the bug was fixed.
25607
25608 2006-09-09  Bruno Haible  <bruno@clisp.org>
25609
25610         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
25611         assignments if building a library without libtool.
25612         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
25613         in func_emit_lib_Makefile_am.
25614         (func_import): When building a static library libfoo.a, arrange to
25615         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
25616         (func_create_testdir): Likewise.
25617         * modules/gc (configure.ac, Makefile.am): If building statically,
25618         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
25619         * modules/iconvme (configure.ac, Makefile.am): Likewise.
25620         * modules/striconv (configure.ac, Makefile.am): Likewise.
25621         Based on a suggestion by Ralf Wildenhues.
25622
25623 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25624
25625         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
25626         Check for unistd.h too, since Autoconf doesn't assume POSIX.
25627         Also:
25628
25629         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25630         Add year_2050_test to catch glibc bug 2821
25631         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
25632
25633         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
25634         Prefer #ifdef to #if.
25635
25636         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
25637         Return from 'main' instead of calling 'exit'.
25638
25639 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25640
25641         * lib/mktime.c (guess_time_tm): Fix bug where mktime
25642         returned the maximum time_t value rather than (time_t) -1.
25643         Problem originally reported by William Bardwell
25644         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
25645
25646         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
25647         Moved to here ...
25648         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
25649         ... from here.
25650
25651 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
25652
25653         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
25654         2821 is fixed.
25655
25656 2006-09-08  Jim Meyering  <jim@meyering.net>
25657
25658         Don't make generated files read-only.  That would bother too many
25659         people.  However, do retain the ability to work when targets are
25660         read-only: remove the destination and temporary files before writing
25661         them (when generated via sed or echo), or by using the -f option for
25662         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
25663         * modules/alloca-opt, modules/argz, modules/arpa_inet:
25664         * modules/byteswap, modules/configmake, modules/fcntl:
25665         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
25666         * modules/localcharset, modules/netinet_in, modules/poll:
25667         * modules/stdbool, modules/stdint, modules/sys_select:
25668         * modules/sys_socket, modules/sys_stat, modules/sysexits:
25669
25670 2006-09-08  Jim Meyering  <jim@meyering.net>
25671
25672         Avoid new build failure on FreeBSD 6.0.
25673         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
25674         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
25675         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
25676
25677 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25678
25679         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
25680
25681 2006-09-07  Jim Meyering  <jim@meyering.net>
25682
25683         Fix global typo in last change: use chmod u-w, not chmod u-x.
25684         Spotted by Paul Eggert and Bruce Korb.
25685         * modules/alloca-opt, modules/argz, modules/arpa_inet:
25686         * modules/byteswap, modules/configmake, modules/fcntl:
25687         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
25688         * modules/localcharset, modules/netinet_in, modules/poll:
25689         * modules/stdbool, modules/stdint, modules/sys_select:
25690         * modules/sys_socket, modules/sys_stat, modules/sysexits:
25691
25692 2006-09-06  Jim Meyering  <jim@meyering.net>
25693
25694         Make generated files be read-only.
25695         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
25696         Ensure that each generated file is now read-only.
25697         * modules/argz: Likewise.
25698         * modules/arpa_inet: Likewise.
25699         * modules/byteswap: Likewise.
25700         * modules/configmake: Likewise.
25701         * modules/fcntl: Likewise.
25702         * modules/fnmatch: Likewise.
25703         * modules/getopt: Likewise.
25704         * modules/glob: Likewise.
25705         * modules/inttypes: Likewise.
25706         * modules/netinet_in: Likewise.
25707         * modules/poll: Likewise.
25708         * modules/stdbool: Likewise.
25709         * modules/stdint: Likewise.
25710         * modules/sys_select: Likewise.
25711         * modules/sys_socket: Likewise.
25712         * modules/sys_stat: Likewise.
25713         * modules/sysexits: Likewise.
25714         * modules/localcharset: Same as above, but continue using temporary
25715         file named "t-$@" (why different?) rather than the "$@-t" used
25716         everywhere else.
25717
25718         * modules/sysexits (Makefile.am): Replace literal occurrences
25719         of "sysexit.h" more readable, and more consistent, "$@".
25720
25721 2006-09-06  Bruno Haible  <bruno@clisp.org>
25722
25723         * modules/striconv: New file.
25724         * modules/xstriconv: New file.
25725         * MODULES.html.sh (Internationalization functions): Add striconv,
25726         xstriconv.
25727
25728 2006-09-06  Bruno Haible  <bruno@clisp.org>
25729
25730         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
25731         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
25732         not using libtool correctly.
25733
25734 2006-09-06  Bruno Haible  <bruno@clisp.org>
25735
25736         * lib/striconv.h: New file.
25737         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
25738         iconvstring.c.
25739         * lib/xstriconv.h: New file.
25740         * lib/xstriconv.c: New file.
25741
25742 2006-09-06  Bruno Haible  <bruno@clisp.org>
25743
25744         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
25745         lib_..._LDFLAGS.
25746
25747 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25748
25749         * lib/argz_.h: Sync from Libtool.
25750
25751         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
25752                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
25753
25754         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
25755
25756 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
25757
25758         * modules/trim: New file.
25759
25760 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
25761
25762         * lib/trim.h: New file.
25763         * lib/trim.c: New file.
25764
25765 2006-09-05  Bruno Haible  <bruno@clisp.org>
25766
25767         * MODULES.html.sh (String handling): Add trim.
25768
25769 2006-09-04  Karl Berry  <karl@gnu.org>
25770
25771         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
25772         until next release.
25773
25774 2006-09-03  Bruno Haible  <bruno@clisp.org>
25775
25776         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
25777         correctly.
25778
25779 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25780
25781         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
25782         not gl_GETLOADAVG.  Omit unneeded semicolons.
25783         Problems reported by Ralf Wildenhues in
25784         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
25785         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
25786         at the end, which is the usual gnulib style.
25787
25788         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
25789         of doing all the work ourselves.
25790         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
25791         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
25792
25793 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25794
25795         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
25796         Problem reported by Ralf Wildenhues in
25797         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
25798
25799         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
25800         HAVE_STRUCT_STATFS_F_FSTYPENAME.
25801
25802 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25803
25804         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
25805         yesterday's patch by changing test -n to test -z.
25806
25807 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25808
25809         * modules/getloadavg (Files): Add m4/getloadavg.m4.
25810         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
25811         the former is now obsolescent.
25812
25813         * modules/chdir-long (Depends-on): Add fcntl.
25814
25815 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25816
25817         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
25818         obsolescent, and programs should use gnulib instead.
25819         * m4/getloadavg.m4: New file, with contents taken from Autoconf
25820         but with prefixes changed.
25821
25822 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25823
25824         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
25825         or stdbool.h, because they might not exist while configuring.
25826
25827         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
25828         Don't include unistd.h or limits.h; not needed, since chdir-long.h
25829         does that for us.
25830         (O_DIRECTORY): Remove.
25831
25832 2006-08-31  Eric Blake  <ebb9@byu.net>
25833
25834         * gnulib-tool: Don't let emacs change spaces to TAB.
25835
25836 2006-08-31  Bruno Haible  <bruno@clisp.org>
25837
25838         * gnulib-tool: When calling func_import more than once, do it in a
25839         subshell.
25840         Reported by Eric Blake <ebb9@byu.net>.
25841
25842 2006-08-31  Bruno Haible  <bruno@clisp.org>
25843
25844         * gnulib-tool (nl): Remove variable.
25845         (sed_transform_lib_file): Use more robust test for config-h module.
25846         (func_import): Fix typo in 2006-08-25 patch.
25847
25848 2006-08-31  Bruno Haible  <bruno@clisp.org>
25849
25850         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
25851         specified, augment Makefile.am variables instead of assigning them.
25852
25853 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
25854
25855         Work around a bug in both the Linux and SunOS 64-bit kernels:
25856         nanosleep mishandles sleeps for longer than 2**31 seconds.
25857         Problem reported by Frank v Waveren in
25858         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
25859         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
25860         Check for nanosleep bug.
25861         (LIB_NANOSLEEP): Append clock_gettime library if needed.
25862
25863 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
25864
25865         Work around a bug in both the Linux and SunOS 64-bit kernels:
25866         nanosleep mishandles sleeps for longer than 2**31 seconds.
25867         Problem reported by Frank v Waveren in
25868         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
25869         * lib/nanosleep.c (BILLION): New constant.
25870         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
25871         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
25872         implementation.
25873
25874 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
25875
25876         * modules/nanosleep (Depends-on): Add gettime.
25877
25878 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
25879         and Simon Josefsson  <jas@extundo.com>
25880         and Oskar Liljeblad  <oskar@osk.mine.nu>
25881
25882         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
25883         * gnulib-tool (func_import): New license type 'unmodifiable license
25884         text'.
25885         * modules/fdl: Use it.  Longer description.
25886         * module/gpl, module/lgpl: New files.
25887
25888 2006-08-30  Jim Meyering  <jim@meyering.net>
25889
25890         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
25891         shadowing the parameter.
25892
25893 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25894
25895         Sync from Libtool:
25896
25897         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25898
25899         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
25900         sharing with gnulib.  Report by Eric Blake.
25901
25902 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
25903
25904         * modules/isapipe: New file.
25905         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
25906
25907 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
25908
25909         * modules/configmake (Makefile.am): Add a comment, and omit
25910         the CONFIGMAKE_ prefix from generated macro names.  Suggested
25911         by Bruno Haible.
25912
25913 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
25914
25915         * m4/isapipe.m4: New file.
25916
25917 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
25918
25919         * lib/isapipe.c, lib/isapipe.h: New files.
25920
25921 2006-08-29  Jim Meyering  <jim@meyering.net>
25922
25923         * modules/configmake (Makefile.am): Make configmake.h depend on
25924         Makefile.  Otherwise, a stale configmake.h could hang around.
25925
25926 2006-08-29  Eric Blake  <ebb9@byu.net>
25927
25928         * lib/error.c (error_at_line, print_errno_message): Match libc, after
25929         resolution of upstream bug 3044.
25930
25931 2006-08-29  Bruno Haible  <bruno@clisp.org>
25932
25933         * modules/localcharset (Depends-on): Add configmake.
25934         (Makefile.am): Remove setting of LIBDIR through DEFS.
25935
25936 2006-08-29  Bruno Haible  <bruno@clisp.org>
25937
25938         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
25939         defined.
25940
25941 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
25942
25943         * modules/fcntl: New file.
25944         * modules/chdir-safer (Depends-on): Add fcntl.
25945         * modules/fts: Likewise.
25946         * modules/mkdir-p: Likewise.
25947
25948         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
25949         This undoes the most recent change, since we're now addressing the
25950         problem in a different way.
25951
25952         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
25953         into output, since the output might be called Makefile.am even
25954         if $makefile_name is something different.
25955         (func_import): Use $makefile_am rather than
25956         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
25957         empty.
25958
25959         * modules/inttypes (Files): Add m4/inttypes-h.m4.
25960
25961 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
25962
25963         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
25964         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
25965         recent change to stdint.m4, since we're now addressing the problem in a
25966         different way.
25967
25968 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
25969
25970         * m4/fcntl_h.m4: New file.
25971
25972 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
25973
25974         * lib/fcntl_.h: New file.
25975         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
25976         the fcntl module.
25977         * lib/dirchownmod.c: Likewise.
25978         * lib/fts.c: Likewise.
25979
25980         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
25981         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
25982         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
25983         just before including <inttypes.h>, to avoid circular inclusion.
25984
25985 2006-08-28  Jim Meyering  <jim@meyering.net>
25986
25987         * doc/visibility.texi: Actually read and correct the grammar of the
25988         sentence affected by yesterday's change.
25989
25990 2006-08-28  Eric Blake  <ebb9@byu.net>
25991
25992         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
25993         needs wrapper.
25994
25995 2006-08-28  Eric Blake  <ebb9@byu.net>
25996
25997         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
25998
25999 2006-08-28  Eric Blake  <ebb9@byu.net>
26000
26001         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
26002
26003 2006-08-28  Bruno Haible  <bruno@clisp.org>
26004
26005         * modules/c-strstr: New file, from GNU gettext.
26006         * MODULES.html.sh (String handling): Add c-strstr.
26007
26008 2006-08-28  Bruno Haible  <bruno@clisp.org>
26009
26010         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
26011         macros.
26012         Reported by Eric Blake.
26013
26014 2006-08-28  Bruno Haible  <bruno@clisp.org>
26015
26016         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
26017         (VASNPRINTF): Return a string of length > INT_MAX without failing.
26018         * lib/vasprintf.c: Include errno.h, limits.h.
26019         (EOVERFLOW): New fallback definition.
26020         (vasprintf): Test here whether the string length is > INT_MAX.
26021         * lib/vsnprintf.c: Include errno.h, limits.h.
26022         (EOVERFLOW): New fallback definition.
26023         (vsnprintf): Fix bug when generated string was too long for the buffer.
26024         Test here whether the string length is > INT_MAX.
26025
26026 2006-08-28  Bruno Haible  <bruno@clisp.org>
26027
26028         * lib/inttypes_.h (SCNX*): Remove definitions.
26029         Reported by Eric Blake.
26030
26031 2006-08-28  Bruno Haible  <bruno@clisp.org>
26032
26033         * lib/c-strstr.h: New file, from GNU gettext.
26034         * lib/c-strstr.c: New file, from GNU gettext.
26035
26036 2006-08-28  Bruno Haible  <bruno@clisp.org>
26037
26038         * gnulib-tool: Reorder some statements.
26039
26040 2006-08-28  Bruno Haible  <bruno@clisp.org>
26041
26042         * gnulib-tool: New option --makefile-name.
26043         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
26044         $makefile_name.
26045         (func_import): Write $makefile_name to the cache file, and read it from
26046         there unless explicitly specified. Use $makefile_name as file name
26047         instead of Makefile.am. Adjust the recommendations accordingly.
26048
26049 2006-08-28  Bruno Haible  <bruno@clisp.org>
26050
26051         * gnulib-tool (func_verify_module): Check against misapplying patch.
26052
26053 2006-08-28  Bruno Haible  <bruno@clisp.org>
26054
26055         * gnulib-tool (func_relativize, func_relconcat): New functions.
26056         Give an error if --local-dir is given with --update.
26057         Remove trailing slashes from $local_gnulib_dir.
26058         (func_import): Store the relativized $local_gnulib_dir in
26059         gnulib-cache.m4, and read it from there if not specified explicitly.
26060
26061 2006-08-28  Bruno Haible  <bruno@clisp.org>
26062
26063         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
26064         is the current directory. Respect also $local_gnulib_dir.
26065
26066 2006-08-28  Bruno Haible  <bruno@clisp.org>
26067             Simon Josefsson  <jas@extundo.com>
26068
26069         BeOS portability.
26070         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
26071
26072 2006-08-27  Jim Meyering  <jim@meyering.net>
26073
26074         * doc/visibility.texi: Remove duplicate word: "pointer".
26075
26076 2006-08-26  Bruno Haible  <bruno@clisp.org>
26077
26078         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
26079         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
26080         (Makefile.am): Create inttypes.h from inttypes_.h.
26081         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
26082
26083         * modules/imaxabs: New file.
26084
26085         * modules/imaxdiv: New file.
26086
26087 2006-08-26  Bruno Haible  <bruno@clisp.org>
26088
26089         * m4/inttypes.m4: New file.
26090         * m4/_inttypes_h.m4: Remove file.
26091         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
26092         PRI_MACROS_BROKEN.
26093         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
26094
26095         * m4/imaxabs.m4: New file.
26096
26097         * m4/imaxdiv.m4: New file.
26098
26099 2006-08-26  Bruno Haible  <bruno@clisp.org>
26100
26101         * lib/inttypes_.h: New file.
26102         * lib/inttypes.h: Remove file.
26103         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
26104
26105         * lib/imaxabs.c: New file.
26106
26107         * lib/imaxdiv.c: New file.
26108
26109 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26110
26111         New config-h module, so that "make" output needn't be cluttered
26112         by -DHAVE_CONFIG_H.
26113         * MODULES.html.sh (Support for building libraries and executables):
26114         Add config-h.
26115         * modules/config-h: New file.
26116         * gnulib-tool (nl, sed_transform_lib_file): New vars.
26117         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
26118         the config-h module is used.
26119
26120         New configmake module, so that "make" output needn't be cluttered
26121         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
26122         * MODULES.html.sh (Support for building libraries and executables):
26123         Add configmake.
26124         * modules/configmake: New file.
26125
26126 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
26127
26128         * m4/config-h.m4: New file.
26129
26130 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26131
26132         * config/srclist.txt: Add elisp-comp.
26133
26134 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26135
26136         * MODULES.html.sh (Support for building libraries and executables):
26137         Add elisp-comp.
26138         * build-aux/elisp-comp: New file.
26139         * modules/elisp-comp: New file.
26140
26141 2006-08-24  Bruno Haible  <bruno@clisp.org>
26142
26143         * gnulib-tool (func_create_testdir): Use non-default values of
26144         sourcebase and m4base.
26145
26146 2006-08-24  Bruno Haible  <bruno@clisp.org>
26147
26148         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
26149         HTML structure.
26150
26151 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26152
26153         * modules/openat (Depends-on): Add lchown.
26154
26155 2006-08-23  Bruno Haible  <bruno@clisp.org>
26156
26157         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
26158         of gl_LOCK_EARLY instead of gl_LOCK.
26159
26160 2006-08-23  Bruno Haible  <bruno@clisp.org>
26161
26162         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
26163         on OSF/1 to no.
26164         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
26165
26166 2006-08-23  Bruno Haible  <bruno@clisp.org>
26167
26168         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
26169         as unusable.
26170
26171         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
26172         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
26173         (gl_LOCK): New macro.
26174
26175 2006-08-22  Simon Josefsson  <jas@extundo.com>
26176
26177         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
26178         to md5 module.
26179
26180 2006-08-22  Simon Josefsson  <jas@extundo.com>
26181
26182         * MODULES.html.sh: Add "Support for maintaining and release
26183         projects".
26184
26185         * build-aux/gnupload: New file, from coreutils.
26186
26187 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26188
26189         Avoid the need for AC_LIBSOURCES in m4 macros.
26190         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
26191         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
26192         * modules/check-version (EXTRA_DIST): Add check-version.h.
26193         * modules/crc (EXTRA_DIST): Add crc.h.
26194         * modules/des (EXTRA_DIST): Add des.h.
26195         * modules/gc (EXTRA_DIST): Add gc.h.
26196         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
26197         * modules/getline (EXTRA_DIST): Add getline.h.
26198         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
26199         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
26200         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
26201         * modules/md2 (EXTRA_DIST): Add md2.h.
26202         * modules/md4 (EXTRA_DIST): Add md4.h.
26203         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
26204         * modules/read-file (EXTRA_DIST): Add read-file.h.
26205         * modules/readline (EXTRA_DIST): Add readline.h.
26206         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
26207         rijndael-api-fst.h.
26208
26209 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26210
26211         * m4/rijndael.m4 (gl_ARCFOUR):
26212         * m4/arctwo.m4 (gl_ARCTWO):
26213         * m4/check-version.m4 (gl_CHECK_VERSION):
26214         * m4/crc.m4 (gl_CRC):
26215         * m4/des.m4 (gl_DES):
26216         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
26217         * m4/gc.m4 (gl_GC):
26218         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
26219         * m4/getline.m4 (gl_FUNC_GETLINE):
26220         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
26221         * m4/hmac-md5.m4 (gl_HMAC_MD5):
26222         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
26223         * m4/md2.m4 (gl_MD2):
26224         * m4/md4.m4 (gl_MD4):
26225         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
26226         * m4/read-file.m4 (gl_FUNC_READ_FILE):
26227         * m4/readline.m4 (gl_FUNC_READLINE):
26228         * m4/rijndael.m4 (gl_RIJNDAEL):
26229         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
26230         to get the necessary .h files and whatnot.
26231
26232 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
26233
26234         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
26235         gnulib rather than the other way around.
26236         * config/srclistvars.sh (COREUTILS): Remove.
26237
26238 2006-08-22  Jim Meyering  <jim@meyering.net>
26239
26240         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
26241
26242         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
26243
26244 2006-08-22  Eric Blake  <ebb9@byu.net>
26245
26246         * modules/regexprops-generic: New file.
26247         * MODULES.html.sh (Support for building documentation): List it.
26248
26249 2006-08-22  Eric Blake  <ebb9@byu.net>
26250
26251         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
26252         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
26253         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
26254         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
26255
26256 2006-08-22  Bruno Haible  <bruno@clisp.org>
26257
26258         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
26259         and lib_LTLIBRARIES like the other lib_* variables.
26260
26261 2006-08-22  Bruno Haible  <bruno@clisp.org>
26262
26263         * build-aux/x-to-1.in: New file, from GNU gettext.
26264
26265 2006-08-22  Bruno Haible  <bruno@clisp.org>
26266
26267         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
26268         <utmpx.h> exists.
26269
26270 2006-08-22  Bruno Haible  <bruno@clisp.org>
26271
26272         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
26273         <utmpx.h> exists.
26274
26275 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26276
26277         BeOS portability.
26278         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
26279         exist.
26280         Problem reported by Bruno Haible.
26281
26282 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26283
26284         Avoid the need for AC_LIBSOURCES in m4 macros.
26285         * modules/acl (EXTRA_DIST): Add acl.h.
26286         * modules/argmatch (Files): Add m4/argmatch.m4.
26287         (configure.ac): Add gl_ARGMATCH.
26288         (EXTRA_DIST): Renamed from lib_SOURCES, for
26289         consistency with the other modules.  Remove argmatch.c.
26290         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
26291         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
26292         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
26293         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
26294         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
26295         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
26296         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
26297         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
26298         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
26299         * modules/closeout (EXTRA_DIST): Add closeout.h.
26300         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
26301         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
26302         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
26303         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
26304         dirname.h; remove basename.c and stripslash.c.
26305         * modules/exclude (EXTRA_DIST): Add exclude.h.
26306         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
26307         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
26308         * modules/file-type (EXTRA_DIST): Add file-type.h.
26309         * modules/filemode (EXTRA_DIST): Add filemode.h.
26310         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
26311         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
26312         * modules/fpending (EXTRA_DIST): Add __fpending.h.
26313         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
26314         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
26315         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
26316         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
26317         * modules/getdate (EXTRA_DIST): Add getdate.c.
26318         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
26319         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
26320         * modules/getpass (EXTRA_DIST): Add getpass.h.
26321         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
26322         * modules/group-member (EXTRA_DIST): Add group-member.h.
26323         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
26324         * modules/hash (EXTRA_DIST): Add hash.h.
26325         * modules/human (EXTRA_DIST): Add human.h.
26326         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
26327         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
26328         * modules/lchown (EXTRA_DIST): Add lchown.h.
26329         * modules/long-options (EXTRA_DIST): Add long-options.h.
26330         * modules/lstat (EXTRA_DIST): Add lstat.h.
26331         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
26332         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
26333         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
26334         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
26335         * modules/memxor (EXTRA_DIST): Add memxor.h.
26336         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
26337         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
26338         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
26339         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
26340         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
26341         * modules/physmem (EXTRA_DIST): Add physmem.h.
26342         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
26343         * modules/posixver (EXTRA_DIST): Add posixver.h.
26344         * modules/quote (EXTRA_DIST): Add quote.h.
26345         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
26346         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
26347         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
26348         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
26349         regex_internal.h regexec.c.
26350         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
26351         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
26352         * modules/same (EXTRA_DIST): Add same.h.
26353         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
26354         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
26355         * modules/savedir (EXTRA_DIST): Add savedir.h.
26356         * modules/sha1 (EXTRA_DIST): Add sha1.h.
26357         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
26358         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
26359         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
26360         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
26361         * modules/strdup (EXTRA_DIST): Add strdup.h.
26362         * modules/strftime (EXTRA_DIST): Add strftime.h.
26363         * modules/strndup (EXTRA_DIST): Add strndup.h.
26364         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
26365         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
26366         * modules/time_r (EXTRA_DIST): Add time_r.h.
26367         * modules/timespec (EXTRA_DIST): Add timespec.h.
26368         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
26369         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
26370         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
26371         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
26372         * modules/userspec (EXTRA_DIST): Add userspec.h.
26373         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
26374         * modules/utimens (EXTRA_DIST): Add utimens.h.
26375         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
26376         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
26377         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
26378         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
26379         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
26380         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
26381         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
26382         * modules/yesno (EXTRA_DIST): Add yesno.h.
26383
26384 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26385
26386         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
26387
26388         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
26389         * m4/dev-ino.m4, same-inode.m4: Remove.
26390
26391         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
26392         * m4/acl.m4 (AC_FUNC_ACL):
26393         * m4/backupfile.m4 (gl_BACKUPFILE):
26394         * m4/c-strtod.m4 (gl_C99_STRTOLD):
26395         * m4/canon-host.m4 (gl_CANON_HOST):
26396         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
26397         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
26398         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
26399         * m4/cloexec.m4 (gl_CLOEXEC):
26400         * m4/close-stream.m4 (gl_CLOSE_STREAM):
26401         * m4/closeout.m4 (gl_CLOSEOUT):
26402         * m4/dirfd.m4 (gl_FUNC_DIRFD):
26403         * m4/dirname.m4 (gl_DIRNAME):
26404         * m4/exclude.m4 (gl_EXCLUDE):
26405         * m4/exitfail.m4 (gl_EXITFAIL):
26406         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
26407         * m4/file-type.m4 (gl_FILE_TYPE):
26408         * m4/filemode.m4 (gl_FILEMODE):
26409         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
26410         * m4/fpending.m4 (gl_FUNC_FPENDING):
26411         * m4/fprintftime.m4 (gl_FPRINTFTIME):
26412         * m4/fts.m4 (gl_FUNC_FTS):
26413         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
26414         * m4/getdate.m4 (gl_GETDATE):
26415         * m4/gethrxtime.m4 (gl_GETHRXTIME):
26416         * m4/getpagesize.m4 (gl_GETPAGESIZE):
26417         * m4/getpass.m4 (gl_FUNC_GETPASS):
26418         * m4/gettime.m4 (gl_GETTIME):
26419         * m4/getugroups.m4 (gl_GETUGROUPS):
26420         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
26421         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
26422         * m4/hard-locale.m4 (gl_HARD_LOCALE):
26423         * m4/hash.m4 (gl_HASH):
26424         * m4/idcache.m4 (gl_IDCACHE):
26425         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
26426         * m4/lchown.m4 (gl_FUNC_LCHOWN):
26427         * m4/long-options.m4 (gl_LONG_OPTIONS):
26428         * m4/lstat.m4 (gl_FUNC_LSTAT):
26429         * m4/md5.m4 (gl_MD5):
26430         * m4/memcasecmp.m4 (gl_MEMCASECMP):
26431         * m4/memcoll.m4 (gl_MEMCOLL):
26432         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
26433         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
26434         * m4/memxor.m4 (gl_MEMXOR):
26435         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
26436         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
26437         * m4/modechange.m4 (gl_MODECHANGE):
26438         * m4/mountlist.m4 (gl_MOUNTLIST):
26439         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
26440         * m4/openat.m4 (gl_FUNC_OPENAT):
26441         * m4/pathmax.m4 (gl_PATHMAX):
26442         * m4/physmem.m4 (gl_PHYSMEM):
26443         * m4/posixtm.m4 (gl_POSIXTM):
26444         * m4/posixver.m4 (gl_POSIXVER):
26445         * m4/quote.m4 (gl_QUOTE):
26446         * m4/quotearg.m4 (gl_QUOTEARG):
26447         * m4/readtokens.m4 (gl_READTOKENS):
26448         * m4/readutmp.m4 (gl_READUTMP):
26449         * m4/regex.m4 (gl_REGEX):
26450         * m4/safe-read.m4 (gl_SAFE_READ):
26451         * m4/safe-write.m4 (gl_SAFE_WRITE):
26452         * m4/same.m4 (gl_SAME):
26453         * m4/save-cwd.m4 (gl_SAVE_CWD):
26454         * m4/savedir.m4 (gl_SAVEDIR):
26455         * m4/settime.m4 (gl_SETTIME):
26456         * m4/sha1.m4 (gl_SHA1):
26457         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
26458         * m4/stat-macros.m4 (gl_STAT_MACROS):
26459         * m4/stat-time.m4 (gl_STAT_TIME):
26460         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
26461         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
26462         * m4/strdup.m4 (gl_FUNC_STRDUP):
26463         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
26464         * m4/strndup.m4 (gl_FUNC_STRNDUP):
26465         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
26466         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
26467         * m4/time_r.m4 (gl_TIME_R):
26468         * m4/timespec.m4 (gl_TIMESPEC):
26469         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
26470         * m4/unlinkdir.m4 (gl_UNLINKDIR):
26471         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
26472         * m4/userspec.m4 (gl_USERSPEC):
26473         * m4/utimecmp.m4 (gl_UTIMECMP):
26474         * m4/utimens.m4 (gl_UTIMENS):
26475         * m4/xalloc.m4 (gl_XALLOC):
26476         * m4/xgetcwd.m4 (gl_XGETCWD):
26477         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
26478         * m4/xreadlink.m4 (gl_XREADLINK):
26479         * m4/xstrtod.m4 (gl_XSTRTOD):
26480         * m4/yesno.m4 (gl_YESNO):
26481         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
26482         to get the necessary .h files and whatnot.
26483
26484 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
26485             Bruno Haible  <bruno@clisp.org>
26486
26487         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
26488         /bin/sh understanding of '!' conditional negation.
26489
26490 2006-08-21  Jim Meyering  <jim@meyering.net>
26491
26492         * modules/openat (Depends-on): Really alphabetize.
26493
26494         * modules/acl (Depends-on): Add error and quote.
26495
26496         * check-module (find_included_lib_files): Add at-func.c to the
26497         ok-to-include-more-than-once white list.
26498
26499         * modules/openat (Depends-on): Add lstat.  Alphabetize.
26500
26501 2006-08-21  Bruno Haible  <bruno@clisp.org>
26502
26503         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
26504         Emit a pkgdata_DATA variable only if some snippets add contents to it.
26505         Reported by Martin Lambers <marlam@marlam.de>.
26506
26507 2006-08-21  Bruno Haible  <bruno@clisp.org>
26508
26509         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
26510         specify an installation location, don't emit a noinst_LIBRARIES or
26511         noinst_LTLIBRARIES assignment.
26512
26513 2006-08-21  Bruno Haible  <bruno@clisp.org>
26514
26515         BeOS portability.
26516         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
26517         BeOS has mbrtowc() but no <wctype.h>.
26518
26519 2006-08-21  Bruno Haible  <bruno@clisp.org>
26520
26521         BeOS portability.
26522         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
26523         exist.
26524
26525 2006-08-21  Bruno Haible  <bruno@clisp.org>
26526
26527         BeOS portability.
26528         * lib/mbchar.h: Include <wctype.h> only if it exists.
26529
26530 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26531
26532         Remove files that are no longer needed by their respective modules.
26533         * m4/obstack.m4: Remove.
26534         * m4/strerror_r.m4: Remove.
26535         * m4/uint32_t.m4: Remove.
26536         * m4/uintptr_t.m4: Remove.
26537         * m4/ullong_max.m4: Remove.
26538         * m4/xstrtoimax.m4: Remove.
26539         * m4/xstrtoumax.m4: Remove.
26540
26541         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
26542         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
26543         dependencies now capture this.
26544
26545         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
26546         Do not use AC_LIBSOURCES, since gnulib modules now do this.
26547         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
26548         * m4/human.m4 (gl_HUMAN): Likewise.
26549         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
26550         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
26551
26552         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
26553
26554         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
26555         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
26556         stdint.
26557         * m4/human.m4 (gl_HUMAN): Likewise.
26558         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
26559         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
26560         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
26561         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
26562         * m4/xstrtol (gl_XSTRTOL): Likewise.
26563
26564         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
26565         AC_TYPE_LONG_LONG_INT.
26566         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
26567         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
26568         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
26569         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
26570
26571         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
26572         on stdbool.
26573
26574         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
26575         (gl_PREREQ_XSTRTOUL): Remove.
26576
26577         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
26578
26579         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
26580         mode.
26581
26582 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26583
26584         Add and change modules to make it easier for coreutils to use
26585         gnulib-tool.
26586         * modules/backupfile (Files): Remove m4/d-ino.m4.
26587         (Depends-on): Add d-ino.
26588         * modules/cycle-check (Depends-on): Add stdint.
26589         (lib_SOURCES): Add cycle-check.h.
26590         * modules/d-ino: New module.
26591         * modules/d-type: New module.
26592         * modules/error (Files): Remove m4/strerror_r.m4.
26593         * modules/filemode (Files): Add m4/st_dm_mode.m4.
26594         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
26595         m4/inttypes_h.m4, m4/uintmax_t.m4.
26596         (Depends-on): Add stdint.
26597         (lib_SOURCES): Add fsusage.h.
26598         * modules/getcwd (Files): Remove d-ino.m4.
26599         (Depends-on): Add d-ino.
26600         * modules/getndelim2 (Depends-on): Add stdint.
26601         * modules/glob (Files): Remove m4/d-type.m4.
26602         (Depends-on): Add d-type.
26603         * modules/host-os: New module.
26604         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
26605         m4/inttypes_h.m4, m4/uintmax_t.m4.
26606         * Depends-on: Add stdint.
26607         (lib_SOURCES): Add human.h.
26608         * modules/inttostr (Files): Remove m4/intmax_t.m4,
26609         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
26610         m4/uintmax_t.m4, m4/ulonglong.m4.
26611         (Depends-on): Add stdint.
26612         (EXTRA_DIST): Add inttostr.h.
26613         * modules/lchmod: New module.
26614         * modules/link-follow: New module.
26615         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
26616         (Depends-on): Add lchmod.
26617         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
26618         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
26619         (Depends-on): Add stdint.
26620         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
26621         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
26622         (Depends-on): Add stdint.
26623         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
26624         * modules/perl: New module.
26625         * modules/regex (Depends-on): Add stdint.
26626         * modules/rmdir-errno: New module.
26627         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
26628         m4/intmax_t.m4.
26629         (Depends-on): Add stdint.
26630         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
26631         m4/uintmax_t.m4.
26632         (Depends-on): Add stdint.
26633         * modules/unlink-busy: New module.
26634         * modules/utimecmp (Depends-on): Add stdint.
26635         * modules/uptime: New module.
26636         * modules/winsz-ioctl: New module.
26637         * modules/winsz-termios: New module.
26638         * modules/xnanosleep (Depends-on): Add nanosleep.
26639         * modules/ullong_max: Remove.
26640         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
26641         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
26642         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
26643         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
26644         (Depends-on): Add inttypes.
26645         (lib_SOURCES): Add xstrtol.h.
26646         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
26647         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
26648         * MODULES.html.sh: Move 'assert' into the assert section.
26649         Move 'dummy' into the linking section.
26650         Remove ullong_max.
26651         Add section for compatibility checks for POSIX:2001 functions,
26652         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
26653         winsz-ioctl, and winsz-termios into it.
26654         Add lchmod.
26655         Add top-level Misc section and put host-os, perl, and uptime
26656         into it.
26657
26658 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26659
26660         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
26661         now assume the stdint module.  Do not include inttypes.h.
26662         * lib/fsusage.h: Likewise.
26663         * lib/getndelim2.c: Likewise.
26664         * lib/human.h: Likewise.
26665         * lib/inttostr.h: Likewise.
26666         * lib/obstack.c: Likewise.
26667         * lib/regex_internal.h: Likewise.
26668         * lib/tempname.c: Likewise.
26669         * lib/utimecmp.c: Likewise.
26670         * lib/xstrtol.h: Likewise.
26671
26672         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
26673
26674         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
26675         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
26676         * lib/xtime.h: Likewise.
26677
26678 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26679
26680         * modules/openat (Files): Add lib/fchmodat.c.
26681         Fixes problem reported by Jay Youngman.
26682
26683 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26684
26685         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
26686         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
26687
26688 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
26689             Bruno Haible  <bruno@clisp.org>
26690
26691         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
26692         and is a script that invokes bison. Tighten the code. Add comments.
26693
26694 2006-08-18  Jim Meyering  <jim@meyering.net>
26695
26696         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
26697         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
26698         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
26699         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
26700
26701 2006-08-18  Bruno Haible  <bruno@clisp.org>
26702
26703         * modules/bison-i18n: New file.
26704         * MODULES.html.sh (Internationalization functions): Add it.
26705
26706 2006-08-18  Bruno Haible  <bruno@clisp.org>
26707
26708         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
26709         sys/statvfs.h. When getmntinfo was found, check its declaration and
26710         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
26711
26712 2006-08-18  Bruno Haible  <bruno@clisp.org>
26713
26714         * m4/bison-i18n.m4: New file, from bison.
26715
26716 2006-08-18  Bruno Haible  <bruno@clisp.org>
26717
26718         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
26719         (ME_DUMMY): Treat "kernfs" as a dummy.
26720         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
26721
26722 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26723
26724         Update from coreutils.
26725
26726         2006-08-15  Jim Meyering  <jim@meyering.net>
26727
26728         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
26729
26730         2006-01-17  Jim Meyering  <jim@meyering.net>
26731
26732         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
26733
26734         2006-01-11  Jim Meyering  <jim@meyering.net>
26735
26736         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
26737         Check for the lchmod function.
26738
26739 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
26740
26741         Update from coreutils.
26742
26743         * lib/__fpending.h: Add copyright notice.
26744         * lib/fprintftime.h: Likewise.
26745         * lib/savedir.c: Use (C) in copyright notice.
26746         * lib/savedir.h: Likewise.
26747
26748         2006-08-15  Jim Meyering  <jim@meyering.net>
26749
26750         * lib/at-func.c: New file, with the logic of all emulated at-functions.
26751         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
26752         in support of the EXPECTED_ERRNO macro.
26753         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
26754         definitions.  Instead, define the appropriate symbols and include
26755         "at-func.c".
26756         * lib/mkdirat.c (mkdirat): Likewise.
26757         * lib/fchmodat.c (fchmodat): Likewise.
26758         (ENOSYS): Remove definition.
26759         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
26760         it.  Don't include "unistd--.h" -- it wasn't ever used.
26761
26762         2006-01-17  Jim Meyering  <jim@meyering.net>
26763
26764         Rewrite fts.c not to change the current working directory,
26765         by using openat, fstatat, fdopendir, etc..
26766
26767         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
26768         (HAVE_OPENAT_SUPPORT): Define.
26769         [_LIBC] (fchdir): Don't undef or define; no longer used.
26770         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
26771         Now, this `function' always succeeds, and consumes its file descriptor
26772         parameter -- so callers must not close such FDs.  Update callers.
26773         (diropen_fd, opendirat, cwd_advance_fd): New functions.
26774         (diropen): Add parameter, SP.  Adjust all callers.
26775         Implement using diropen_fd, rather than open.
26776         (fts_open): Initialize new member, fts_cwd_fd.
26777         Remove fts_rft-setting code.
26778         (fts_close): Close fts_cwd_fd, if necessary.
26779         (__opendir2): Define in terms of opendir or opendirat,
26780         depending on whether the FST_NOCHDIR flag is set.
26781         (fts_build): Since fts_safe_changedir consumes its FD, and since
26782         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
26783         and close the dup'd file descriptor upon failure.
26784         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
26785         (fts_safe_changedir): Tweak semantics to reflect that this function
26786         now calls cwd_advance_fd and hence consumes its FD argument.
26787         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
26788         [struct FTS] (fts_rft): Remove now-unused member.
26789         [struct FTS] (fts_cycle.state): Improve comment.
26790
26791         * lib/openat.c (openat_needs_fchdir): New function.
26792         * lib/openat.h (openat_needs_fchdir): Declare it.
26793
26794 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
26795
26796         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
26797         Problem and fix reported by Pádraig Brady in
26798         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
26799
26800 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26801
26802         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
26803
26804 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26805
26806         * lib/memcoll.c (memcoll): Optimize for the common case where the
26807         arguments are bytewise equal.
26808
26809 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
26810
26811         * doc/regexprops-generic.texi: Add a copyright notice.
26812
26813 2006-08-15  Bruno Haible  <bruno@clisp.org>
26814
26815         * modules/tmpdir (License): Change to LGPL.
26816
26817 2006-08-15  Bruno Haible  <bruno@clisp.org>
26818
26819         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
26820         module.
26821
26822 2006-08-14  Simon Josefsson  <jas@extundo.com>
26823
26824         * config/srclist.txt: Add gnupload.
26825
26826 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26827
26828         Change copyright notice from LGPL 2 to GPL 2, since that's the
26829         standard form used in the gnulib repository.
26830         * tests/test-lock.c: Likewise.
26831         * tests/test-stdint.c: Likewise.
26832         * tests/test-tls.c: Likewise.
26833
26834         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
26835         prelude-manager.  User shorter URLs for GNU projects, without '?'.
26836         Add copyright notice.
26837
26838         * check-module: Add copyright notice.  Output a copyright
26839         notice if "--version" is specified.
26840         * modules/COPYING: New file.
26841         * tests/test-getaddrinfo.c: Add copyright notice.
26842         * tests/test-verify.c: Likewise.
26843
26844 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26845
26846         Change copyright notice from LGPL 2 to GPL 2, since that's the
26847         standard form used in the gnulib repository.
26848         * lib/lock.c: LGPL -> GPL.
26849         * lib/lock.h: Likewise.
26850         * lib/strnlen1.c: Likewise.
26851         * lib/strnlen1.h: Likewise.
26852         * lib/tls.c: Likewise.
26853         * lib/tls.h: Likewise.
26854         * lib/tmpdir.c: Likewise.
26855
26856         * lib/TODO: Remove; this belongs only in coreutils.
26857
26858 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26859
26860         Add copyright notices to long-enough files that lack them, since
26861         otherwise the files aren't clearly free.  Use the same notice that
26862         getdate.texi already uses.
26863         * doc/alloca-opt.texi: Add copyright notice.
26864         * doc/alloca.texi: Likewise.
26865         * doc/ctime.texi: Likewise.
26866         * doc/functions.texi: Likewise.
26867         * doc/gcd.texi: Likewise.
26868         * doc/gnulib-tool.texi: Likewise.
26869         * doc/inet_ntoa.texi: Likewise.
26870         * doc/visibility.texi: Likewise.
26871
26872         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
26873         * doc/quote.texi: Add copyright notice.
26874
26875         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
26876         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
26877         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
26878         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
26879         is now obsolete, and give a pointer to the Sun list.
26880         Add copyright notice.
26881
26882 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
26883
26884         * config/srclistvars.sh: Add copyright notice.
26885
26886 2006-08-14  Eric Blake  <ebb9@byu.net>
26887
26888         Import the following change from libc:
26889
26890         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
26891
26892         Upstream bug 2997.
26893         * lib/misc/error.c: Add space between program name and message if file
26894         name is missing.
26895
26896 2006-08-12  Karl Berry  <karl@gnu.org>
26897
26898         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
26899         remove, these originate in gnulib now.
26900
26901 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26902
26903         * doc/Makefile (standards.info standards.html standards.dvi):
26904         Also depend on make-stds.texi.
26905
26906 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
26907
26908         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
26909         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
26910
26911         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
26912         in wchar_t.  Problem reported by Eric Blake.
26913
26914         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
26915         LEN is smaller than SIZE.  Suggested by Bruno Haible.
26916         Also, help the compiler to keep LEN in a register.
26917
26918 2006-08-11  Eric Blake  <ebb9@byu.net>
26919
26920         * users.txt: Sort.  Add tar.
26921
26922 2006-08-11  Bruno Haible  <bruno@clisp.org>
26923
26924         * users.txt: New file.
26925
26926 2006-08-11  Bruno Haible  <bruno@clisp.org>
26927
26928         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
26929         before <wchar.h>. Needed for OSF/1 and BSD/OS.
26930
26931 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
26932
26933         * modules/snprintf (Depends-on): Remove minmax.
26934         (Maintainer): Add self and Bruno.
26935
26936 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
26937
26938         * lib/.cppi-disable: Add snprintf.h, socket_.h.
26939         * lib/snprintf.c: Include <errno.h> and <limits.h>.
26940         (EOVERFLOW): Define if the system does not.
26941         Do not include "minmax.h"; it wasn't used.
26942         (snprintf): Don't assume size_t promotes to an unsigned type.
26943         Fix bug when generated string was too long for the buffer: the
26944         buffer's contents are supposed to be the initial prefix of the
26945         output.  Don't assume vasnprintf returns EOVERFLOW if the size
26946         exceeds INT_MAX; do the check ourselves.
26947
26948         Import the following changes from libc:
26949
26950         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
26951
26952         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
26953         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
26954         set wc to the byte which couldn't be converted.
26955         (re_string_reconstruct): Don't clear valid_raw_len before calling
26956         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
26957         tip_context using re_string_context_at.
26958
26959         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
26960
26961         * lib/posix/regex.h: g++ still cannot handled [restrict].
26962
26963         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
26964
26965         * lib/posix/regex.h: Remove special handling for VMS.
26966
26967 2006-08-10  Jim Meyering  <jim@meyering.net>
26968
26969         * modules/same-inode: New module.
26970         * modules/dev-ino: New module.
26971         * modules/cycle-check: Depend on these modules, rather than simply
26972         including their .h files.
26973         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
26974         required via m4/cycle-check.m4.
26975         * modules/same: Depend on new same-inode module, rather than
26976         including same-inode.h.
26977         * modules/chdir-safer: New file.
26978
26979         * modules/chown (Depends-on): Add stat-macros.
26980
26981 2006-08-10  Jim Meyering  <jim@meyering.net>
26982
26983         * m4/cycle-check.m4: New file.
26984         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
26985         * m4/dev-ino.m4, m4/same-inode.m4: New files.
26986
26987 2006-08-10  Eric Blake  <ebb9@byu.net>
26988
26989         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
26990         in from original proposal.
26991
26992 2006-08-10  Eric Blake  <ebb9@byu.net>
26993         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
26994
26995         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
26996         namespace.
26997
26998 2006-08-10  Bruno Haible  <bruno@clisp.org>
26999
27000         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
27001         as well.
27002
27003 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27004
27005         Sync from coreutils.
27006
27007         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
27008
27009         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
27010         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
27011
27012 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27013
27014         * modules/restrict: Remove; no longer needed now that we assume
27015         Autoconf 2.59 or later.
27016         * MODULES.html.sh: Remove 'restrict'.
27017         * modules/argp (Depends-on): Remove 'restrict'.
27018         * modules/base64 (Depends-on): Likewise.
27019         * modules/gc (Depends-on): Likewise.
27020         * modules/getaddrinfo (Depends-on): Likewise.
27021         * modules/glob (Depends-on): Likewise.
27022         * modules/inet_ntop (Depends-on): Likewise.
27023         * modules/inet_pton (Depends-on): Likewise.
27024         * modules/memxor (Depends-on): Likewise.
27025         * modules/regex (Depends-on): Likewise.
27026         * modules/strtok_r (Depends-on): Likewise.
27027         * modules/time_r (Depends-on): Likewise.
27028
27029 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27030
27031         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
27032         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
27033         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
27034         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
27035         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
27036         * m4/memxor.m4 (gl_MEMXOR): Likewise.
27037         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
27038         gl_C_RESTRICT replaced by AC_C_RESTRICT.
27039
27040         Merge from coreutils.
27041         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
27042         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
27043         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
27044         * m4/time_r.m4 (gl_TIME_R): Likewise.
27045
27046 2006-08-09  Karl Berry  <karl@gnu.org>
27047
27048         * config/srclist.txt: no more gettext-tools, per Bruno.
27049
27050 2006-08-08  Eric Blake  <ebb9@byu.net>
27051
27052         * modules/verror: New module.
27053         * MODULES.html.sh: Document it.
27054
27055 2006-08-08  Eric Blake  <ebb9@byu.net>
27056
27057         * lib/verror.h, lib/verror.c: New files.
27058
27059 2006-08-08  Eric Blake  <ebb9@byu.net>
27060
27061         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
27062         verror_at_line output complies with GNU Coding Standards even when
27063         file is NULL.
27064
27065 2006-08-07  Bruno Haible  <bruno@clisp.org>
27066
27067         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
27068         versions of AIX.
27069         Reported by Ralf Wildenhues.
27070
27071 2006-08-07  Bruno Haible  <bruno@clisp.org>
27072
27073         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
27074         in an AC_DEFUN. Needed so that the autoconf snippets can use
27075         AC_REQUIRE.
27076
27077 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27078
27079         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27080         Initialize pkgdata_DATA.
27081         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
27082         overriding it.
27083
27084 2006-08-06  Eric Blake  <ebb9@byu.net>
27085
27086         * lib/error.h: Fold in some upstream changes from glibc.
27087         * lib/error.c: Likewise.
27088
27089 2006-08-04  Bruno Haible  <bruno@clisp.org>
27090
27091         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27092         Make the mostlyclean-local rule depend on mostlyclean-generic.
27093         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
27094
27095 2006-07-31  Bruno Haible  <bruno@clisp.org>
27096
27097         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
27098         <stdlib.h>, <string.h>.
27099
27100 2006-07-30  Bruno Haible  <bruno@clisp.org>
27101
27102         * modules/readlink (License): Change to LGPL.
27103
27104 2006-07-30  Bruno Haible  <bruno@clisp.org>
27105
27106         * modules/javaversion (Makefile.am): Distribute javaversion.java and
27107         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
27108         set PKGDATADIR to point to it.
27109
27110 2006-07-30  Bruno Haible  <bruno@clisp.org>
27111
27112         * modules/csharpexec (configure.ac): Comment out macro invocation.
27113         * modules/javaexec (configure.ac): Likewise.
27114         * modules/javacomp-script (configure.ac): Likewise.
27115
27116         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
27117
27118 2006-07-30  Bruno Haible  <bruno@clisp.org>
27119
27120         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
27121         linked-list.
27122
27123 2006-07-30  Bruno Haible  <bruno@clisp.org>
27124
27125         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
27126
27127 2006-07-30  Bruno Haible  <bruno@clisp.org>
27128
27129         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
27130         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
27131         get removed.
27132
27133 2006-07-29  Bruno Haible  <bruno@clisp.org>
27134
27135         Make it possible for gnulib-tool to work with locally modified or
27136         augmented gnulib repositories.
27137         * gnulib-tool (func_usage): Document --local-dir option.
27138         (local_gnulib_dir): New variable.
27139         Handle --local-dir option.
27140         (func_lookup_file): New function.
27141         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
27142         (func_get_description, func_get_filelist, func_get_description,
27143         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
27144         func_get_automake_snippet, func_get_include_directive,
27145         func_get_license, func_get_maintainer): Use func_lookup_file.
27146         (func_import, func_create_testdir): Use func_lookup_file.
27147
27148 2006-07-29  Bruno Haible  <bruno@clisp.org>
27149
27150         * modules/setenv (Depends-on): Add unistd.
27151
27152 2006-07-29  Bruno Haible  <bruno@clisp.org>
27153
27154         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
27155
27156 2006-07-29  Bruno Haible  <bruno@clisp.org>
27157
27158         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
27159
27160 2006-07-29  Bruno Haible  <bruno@clisp.org>
27161
27162         * gnulib-tool (import, update): If there is no Makefile.am, look at
27163         aclocal.m4, instead of bailing out.
27164
27165 2006-07-29  Bruno Haible  <bruno@clisp.org>
27166
27167         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
27168         Categorize the options by when they are useful.
27169
27170 2006-07-29  Bruno Haible  <bruno@clisp.org>
27171
27172         * gnulib-tool (func_usage): Document option --no-libtool.
27173         Handle option --no-libtool.
27174         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
27175         for changed semantics of $libtool variable.
27176         (func_import): Likewise. If libtool is not used, show this through
27177         an option --no-libtool.
27178         (func_create_testdir): Update.
27179
27180 2006-07-29  Bruno Haible  <bruno@clisp.org>
27181
27182         * gnulib-tool (func_import): Extend error message about missing
27183         --doc-base.
27184
27185 2006-07-29  Bruno Haible  <bruno@clisp.org>
27186
27187         * gnulib-tool (func_import): Don't create the $docbase directory if
27188         there is no file to store there.
27189
27190 2006-07-29  Bruno Haible  <bruno@clisp.org>
27191
27192         * gnulib-tool (autoconf_minversion): If a --dir option is given and
27193         relevant, look for configure.ac there, not in the current directory.
27194         Also use a simple search for AC_PREREQ, not "autoconf --trace".
27195
27196 2006-07-29  Bruno Haible  <bruno@clisp.org>
27197
27198         * gnulib-tool (SORT): New variable.
27199         (func_usage): Undocument --assume-autoconf option.
27200         Remove --assume-autoconf option handling.
27201         (autoconf_minversion): Determine from the contents of configure.ac.
27202         (func_import): Remove autoconf_minversion handling.
27203         Suggested by Eric Blake.
27204
27205 2006-07-29  Bruno Haible  <bruno@clisp.org>
27206
27207         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
27208
27209 2006-07-29  Bruno Haible  <bruno@clisp.org>
27210
27211         * config/srclist.txt (*setenv.[ch]): Remove rules.
27212
27213 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27214
27215         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
27216
27217 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27218
27219         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
27220         arpa/inet.h.
27221
27222 2006-07-28  Simon Josefsson  <jas@extundo.com>
27223
27224         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
27225         * modules/inet_pton (Depends-on): Likewise.
27226
27227 2006-07-28  Simon Josefsson  <jas@extundo.com>
27228
27229         * m4/netinet_in_h.m4: New file.
27230
27231 2006-07-28  Simon Josefsson  <jas@extundo.com>
27232
27233         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
27234         #include's.
27235
27236 2006-07-28  Simon Josefsson  <jas@extundo.com>
27237
27238         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
27239         #include's.
27240
27241 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
27242
27243         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
27244         setgid on directories only if they set these bits.
27245         * lib/modechange.h: Remove obsolete comment about masks.
27246
27247 2006-07-28  Eric Blake  <ebb9@byu.net>
27248
27249         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
27250         macro expansion.
27251
27252 2006-07-28  Bruno Haible  <bruno@clisp.org>
27253
27254         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
27255
27256 2006-07-28  Bruno Haible  <bruno@clisp.org>
27257
27258         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
27259
27260 2006-07-28  Bruno Haible  <bruno@clisp.org>
27261
27262         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
27263         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
27264         Define fallbacks.
27265         Avoids link error on FreeBSD 4.x.
27266         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
27267
27268         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
27269         encoding.
27270         * lib/mbswidth.c (iswcntrl): Likewise.
27271
27272 2006-07-27  Bruno Haible  <bruno@clisp.org>
27273
27274         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
27275         test.
27276
27277 2006-07-27  Bruno Haible  <bruno@clisp.org>
27278
27279         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
27280         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
27281         defined.
27282
27283 2006-07-26  Eric Blake  <ebb9@byu.net>
27284
27285         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
27286
27287 2006-07-26  Eric Blake  <ebb9@byu.net>
27288
27289         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
27290         like mingw that lack mkstemp.
27291         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
27292         avoid compilation warning on mingw.
27293
27294 2006-07-26  Bruno Haible  <bruno@clisp.org>
27295
27296         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
27297         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
27298         INT_FAST*_MIN, INTPTR_MIN.
27299
27300 2006-07-25  Bruno Haible  <bruno@clisp.org>
27301
27302         * modules/version-etc (Depends-on): Add stdarg.
27303
27304 2006-07-25  Bruno Haible  <bruno@clisp.org>
27305
27306         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
27307         complex commands.
27308
27309 2006-07-25  Bruno Haible  <bruno@clisp.org>
27310
27311         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
27312         defined in <stdarg.h> or config.h.
27313
27314 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
27315
27316         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
27317         (gl_STDIO_SAFER): Remove.
27318
27319 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
27320
27321         * MODULES.html.sh (File stream based Input/Output):
27322         Add fopen-safer, tmpfile-safer; remove stdio-safer.
27323         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
27324         * modules/fopen-safer, modules/tmpfile-safer: New files.
27325         * modules/stdio-safer: Remove.
27326
27327 2006-07-24  Bruno Haible  <bruno@clisp.org>
27328
27329         * modules/tmpdir: New file.
27330         * MODULES.html.sh (File system functions): Add it.
27331
27332 2006-07-24  Bruno Haible  <bruno@clisp.org>
27333
27334         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
27335         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
27336
27337 2006-07-24  Bruno Haible  <bruno@clisp.org>
27338
27339         * modules/clean-temp: New file.
27340
27341 2006-07-24  Bruno Haible  <bruno@clisp.org>
27342
27343         * m4/tmpdir.m4: New file, from GNU gettext.
27344
27345 2006-07-24  Bruno Haible  <bruno@clisp.org>
27346
27347         * lib/tmpdir.h: New file, from GNU gettext.
27348         * lib/tmpdir.c: New file, from GNU gettext.
27349
27350 2006-07-24  Bruno Haible  <bruno@clisp.org>
27351
27352         * lib/clean-temp.h: New file, from GNU gettext.
27353         * lib/clean-temp.c: New file, from GNU gettext.
27354
27355 2006-07-23  Eric Blake  <ebb9@byu.net>
27356
27357         * modules/stdio-safer (Files): Add tmpfile-safer.c.
27358         (Depends-on): Add binary-io.
27359
27360 2006-07-23  Eric Blake  <ebb9@byu.net>
27361
27362         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
27363
27364 2006-07-23  Eric Blake  <ebb9@byu.net>
27365
27366         * lib/tmpfile-safer.c: New file.
27367         * lib/stdio-safer.h (fopen_safer): Add prototype.
27368         * lib/stdio--.h (tmpfile): Make safer.
27369
27370 2006-07-23  Bruno Haible  <bruno@clisp.org>
27371
27372         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
27373         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
27374         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
27375         gl_linked_remove_at): Use it.
27376
27377 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27378         and Simon Josefsson <jas@extundo.com>
27379
27380         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
27381
27382         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
27383
27384 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27385
27386         * modules/close-stream: New file.
27387         * modules/closeout (Description): Make it clear that it exits
27388         with a diagnostic on error.
27389         (Depends-on): Add close-stream.  Remove fpending, stdbool.
27390         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
27391
27392 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27393
27394         * m4/close-stream.m4: New file.
27395
27396 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
27397
27398         * lib/close-stream.c, lib/close-stream.h: New files.
27399
27400 2006-07-22  Bruno Haible  <bruno@clisp.org>
27401
27402         Merge from GNU gettext 0.15.
27403
27404         2006-05-01  Bruno Haible  <bruno@clisp.org>
27405
27406                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
27407
27408         2006-07-22  Bruno Haible  <bruno@clisp.org>
27409
27410                 * modules/javaversion: New file.
27411                 * MODULES.html.sh (Java): Add javaversion.
27412
27413         2006-03-12  Bruno Haible  <bruno@clisp.org>
27414
27415                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
27416
27417         2005-12-04  Bruno Haible  <bruno@clisp.org>
27418
27419                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
27420                 (untested).
27421
27422         2006-06-21  Bruno Haible  <bruno@clisp.org>
27423
27424                 Avoid warnings from recent versions of mcs.
27425                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
27426                 -o, -L, -r any more. Use options documented since mcs-1.0
27427                 instead. Similarly for -g.
27428
27429         2005-12-04  Bruno Haible  <bruno@clisp.org>
27430
27431                 * build-aux/csharpcomp.sh.in: Suffix for resources is
27432                 .resources, not .resource.
27433
27434         2005-07-09  Bruno Haible  <bruno@clisp.org>
27435
27436                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
27437                 add a .dll suffix.
27438                 Reported by Mark Junker <mjscod@gmx.de>.
27439
27440         2006-07-22  Bruno Haible  <bruno@clisp.org>
27441
27442                 * modules/gettext: Upgrade to gettext-0.15.
27443                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
27444                 m4/visibility.m4.
27445                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
27446
27447 2006-07-22  Bruno Haible  <bruno@clisp.org>
27448
27449         Merge from GNU gettext 0.15.
27450
27451         2006-03-25  Bruno Haible  <bruno@clisp.org>
27452
27453                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
27454
27455         2006-07-21  Bruno Haible  <bruno@clisp.org>
27456
27457                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
27458                 "1.1".
27459
27460         2006-05-09  Bruno Haible  <bruno@clisp.org>
27461
27462                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
27463                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
27464                 for the conftestver execution.
27465
27466         2006-05-01  Bruno Haible  <bruno@clisp.org>
27467
27468                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
27469                 optional target-version argument. Verify that the compiler
27470                 groks source of the specified source-version, or add -source
27471                 option as necessary. Verify that the compiler produces
27472                 bytecode in the specified target-version, or add -target and
27473                 -source options as necessary. Make the result of the test
27474                 available as variable CONF_JAVAC. Also log error output in
27475                 config.log.
27476
27477         2006-03-11  Bruno Haible  <bruno@clisp.org>
27478
27479                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
27480
27481         2006-05-09  Bruno Haible  <bruno@clisp.org>
27482
27483                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
27484                 CLASSPATH_SEPARATOR to a semicolon.
27485
27486         2006-03-12  Bruno Haible  <bruno@clisp.org>
27487
27488                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
27489                 available as variable CONF_JAVA, for subsequent autoconf
27490                 tests. Also log error output in config.log.
27491
27492         2006-07-19  Bruno Haible  <bruno@clisp.org>
27493
27494                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
27495                 that getline works on glibc2 systems. Needed to avoid trouble
27496                 in relocatable.c.
27497                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
27498
27499         2005-12-04  Bruno Haible  <bruno@clisp.org>
27500
27501                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
27502                 launcher (untested).
27503
27504         2005-12-04  Bruno Haible  <bruno@clisp.org>
27505
27506                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
27507
27508         2006-07-22  Bruno Haible  <bruno@clisp.org>
27509
27510                 * gettext.m4: Update from GNU gettext-0.15.
27511                 * nls.m4: Likewise.
27512                 * po.m4: Likewise.
27513                 * inttypes-pri.m4: Likewise.
27514                 * inttypes-h.m4: Renamed from inttypes.m4.
27515                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
27516
27517 2006-07-22  Bruno Haible  <bruno@clisp.org>
27518
27519         Merge from GNU gettext 0.15.
27520
27521         2005-07-05  Bruno Haible  <bruno@clisp.org>
27522
27523                 * printf-args.c (printf_fetchargs): Work around broken
27524                 definition of wint_t on mingw.
27525
27526         2005-02-12  Bruno Haible  <bruno@clisp.org>
27527
27528                 * xallocsa.h: Add extern "C" for C++.
27529
27530         2006-05-17  Bruno Haible  <bruno@clisp.org>
27531
27532                 Cygwin portability.
27533                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
27534
27535         2006-04-30  Bruno Haible  <bruno@clisp.org>
27536
27537                 * progreloc.c: Include <mach-o/dyld.h> if available.
27538                 (find_executable): Use _NSGetExecutablePath when possible.
27539
27540         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
27541
27542                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
27543                 function.
27544
27545         2005-12-29  Bruno Haible  <bruno@clisp.org>
27546
27547                 * progreloc.c (set_program_name_and_installdir): Fix
27548                 compilation error.
27549
27550         2005-12-04  Bruno Haible  <bruno@clisp.org>
27551
27552                 Cygwin portability.
27553                 * progreloc.c: Include <windows.h> also on Cygwin.
27554                 (find_executable): Add support for Cygwin.
27555                 (set_program_name_and_installdir): Handle also platforms with
27556                 nonempty EXEEXT.
27557
27558         2006-07-11  Bruno Haible  <bruno@clisp.org>
27559
27560                 * javacomp.c: Fix a comment.
27561                 Reported by Jim Meyering.
27562
27563         2006-04-30  Bruno Haible  <bruno@clisp.org>
27564
27565                 * javacomp.h (compile_java_class): Add source_version,
27566                 target_version arguments.
27567                 * javacomp.c: Rewritten to choose only a compiler that
27568                 respects the specified source_version and target_version.
27569
27570         2006-06-27  Bruno Haible  <bruno@clisp.org>
27571
27572                 Assume correct S_ISDIR macro.
27573                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
27574
27575         2006-07-22  Bruno Haible  <bruno@clisp.org>
27576
27577                 * javaversion.h: New file, from GNU gettext.
27578                 * javaversion.c: New file, from GNU gettext.
27579                 * javaversion.java: New file, from GNU gettext.
27580                 * javaversion.class: New file, from GNU gettext.
27581
27582         2006-05-17  Bruno Haible  <bruno@clisp.org>
27583
27584                 Cygwin portability.
27585                 * javaexec.c (execute_java_class): Test for jview program
27586                 also on Cygwin.
27587
27588         2006-04-09  Bruno Haible  <bruno@clisp.org>
27589
27590                 * fatal-signal.c: Don't include string.h.
27591                 (at_fatal_signal): Use a copying loop instead of memcpy.
27592
27593         2005-12-04  Bruno Haible  <bruno@clisp.org>
27594
27595                 * csharpexec.c: Add support for 'clix' launcher (untested).
27596                 (execute_csharp_using_sscli): New function.
27597                 (execute_csharp_program): Call it.
27598
27599         2006-06-21  Bruno Haible  <bruno@clisp.org>
27600
27601                 Avoid warnings from recent versions of mcs.
27602                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
27603                 -o, -L, -r any more. Use options documented since mcs-1.0
27604                 instead. Similarly for -g.
27605
27606         2005-07-09  Bruno Haible  <bruno@clisp.org>
27607
27608                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
27609                 add a .dll suffix.
27610                 Reported by Mark Junker <mjscod@gmx.de>.
27611
27612         2006-06-17  Bruno Haible  <bruno@clisp.org>
27613
27614                 * config.charset: Update for NetBSD 3.0.
27615
27616         2006-05-17  Bruno Haible  <bruno@clisp.org>
27617
27618                 Cygwin portability.
27619                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
27620
27621         2006-05-16  Bruno Haible  <bruno@clisp.org>
27622
27623                 * localcharset.c [CYGWIN]: Include <windows.h>.
27624                 (get_charset_aliases): For Cygwin, return the same CPxxx
27625                 aliases list as under WIN32.
27626                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
27627                 the environment variables. Fall back to GetACP().
27628
27629         2006-04-05  Bruno Haible  <bruno@clisp.org>
27630
27631                 * config.charset: Update Juan Manuel Guerrero's address.
27632
27633         2005-02-12  Bruno Haible  <bruno@clisp.org>
27634
27635                 * allocsa.h: Add extern "C" for C++.
27636
27637         2005-02-10  Bruno Haible  <bruno@clisp.org>
27638
27639                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
27640                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
27641
27642         2006-07-22  Bruno Haible  <bruno@clisp.org>
27643
27644                 * gettext.h: Update to GNU gettext-0.15.
27645
27646 2006-07-22  Bruno Haible  <bruno@clisp.org>
27647
27648         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
27649         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
27650         lib-prefix.m4, longdouble.m4, ssize_t.m4.
27651
27652 2006-07-21  Eric Blake  <ebb9@byu.net>
27653
27654         * modules/stdlib-safer: New file.
27655         * MODULES.html.sh (File stream based Input/Output): Add
27656         stdlib-safer.
27657
27658 2006-07-21  Eric Blake  <ebb9@byu.net>
27659
27660         * lib/stdlib-safer.h: New file from coreutils, required by
27661         stdlib--.h.
27662
27663 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
27664
27665         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
27666
27667 2006-07-20  Bruno Haible  <bruno@clisp.org>
27668
27669         * gnulib-tool: Recognize new option --assume-autoconf.
27670         (autoconf_minversion): New variable.
27671         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
27672
27673 2006-07-20  Bruno Haible  <bruno@clisp.org>
27674
27675         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
27676
27677 2006-07-19  Derek R. Price  <derek@ximbiot.com>
27678
27679         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
27680         Reindent and repaginate.
27681
27682 2006-07-19  Derek Price  <derek@ximbiot.com>
27683
27684         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
27685         Correct grammar.
27686
27687 2006-07-17  Bruno Haible  <bruno@clisp.org>
27688
27689         * modules/list: New file.
27690         * modules/array-list: New file.
27691         * modules/carray-list, modules/carray-list-tests: New files.
27692         * modules/linked-list, modules/linked-list-tests: New files.
27693         * modules/avltree-list, modules/avltree-list-tests: New files.
27694         * modules/rbtree-list, modules/rbtree-list-tests: New files.
27695         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
27696         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
27697         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
27698         * modules/oset: New file.
27699         * modules/array-oset: New file.
27700         * modules/avltree-oset, modules/avltree-oset-tests: New files.
27701         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
27702         * tests/test-carray_list.c: New file.
27703         * tests/test-linked_list.c: New file.
27704         * tests/test-avltree_list.c: New file.
27705         * tests/test-rbtree_list.c: New file.
27706         * tests/test-linkedhash_list.c: New file.
27707         * tests/test-avltreehash_list.c: New file.
27708         * tests/test-rbtreehash_list.c: New file.
27709         * tests/test-avltree_oset.c: New file.
27710         * tests/test-rbtree_oset.c: New file.
27711         * MODULES.html.sh (Container data structures): New section.
27712
27713 2006-07-17  Bruno Haible  <bruno@clisp.org>
27714
27715         * m4/gl_list.m4: New file.
27716
27717 2006-07-17  Bruno Haible  <bruno@clisp.org>
27718
27719         * lib/gl_list.h: New file.
27720         * lib/gl_list.c: New file.
27721         * lib/gl_array_list.h: New file.
27722         * lib/gl_array_list.c: New file.
27723         * lib/gl_carray_list.h: New file.
27724         * lib/gl_carray_list.c: New file.
27725         * lib/gl_linked_list.h: New file.
27726         * lib/gl_linked_list.c: New file.
27727         * lib/gl_anylinked_list1.h: New file.
27728         * lib/gl_anylinked_list2.h: New file.
27729         * lib/gl_avltree_list.h: New file.
27730         * lib/gl_avltree_list.c: New file.
27731         * lib/gl_anyavltree_list1.h: New file.
27732         * lib/gl_anyavltree_list2.h: New file.
27733         * lib/gl_rbtree_list.h: New file.
27734         * lib/gl_rbtree_list.c: New file.
27735         * lib/gl_anyrbtree_list1.h: New file.
27736         * lib/gl_anyrbtree_list2.h: New file.
27737         * lib/gl_anytree_list1.h: New file.
27738         * lib/gl_anytree_list2.h: New file.
27739         * lib/gl_linkedhash_list.h: New file.
27740         * lib/gl_linkedhash_list.c: New file.
27741         * lib/gl_anyhash_list1.h: New file.
27742         * lib/gl_anyhash_list2.h: New file.
27743         * lib/gl_avltreehash_list.h: New file.
27744         * lib/gl_avltreehash_list.c: New file.
27745         * lib/gl_rbtreehash_list.h: New file.
27746         * lib/gl_rbtreehash_list.c: New file.
27747         * lib/gl_anytreehash_list1.h: New file.
27748         * lib/gl_anytreehash_list2.h: New file.
27749
27750         * lib/gl_oset.h: New file.
27751         * lib/gl_oset.c: New file.
27752         * lib/gl_array_oset.h: New file.
27753         * lib/gl_array_oset.c: New file.
27754         * lib/gl_avltree_oset.h: New file.
27755         * lib/gl_avltree_oset.c: New file.
27756         * lib/gl_rbtree_oset.h: New file.
27757         * lib/gl_rbtree_oset.c: New file.
27758         * lib/gl_anytree_oset.h: New file.
27759
27760 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27761
27762         * m4/mkancesdirs.m4: New file.
27763         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
27764         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
27765         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
27766         it.
27767
27768 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27769
27770         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
27771         * lib/mkancesdirs.h: New files.
27772         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
27773         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
27774         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
27775         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
27776         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
27777         callers changed.  Revamp internals significantly, by not
27778         attempting to create directories that are temporarily more
27779         permissive than the final results.  Do not attempt to use
27780         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
27781         This removes some race conditions, fixes some bugs, and simplifies
27782         things.  Use new dirchownmod function to do owner and mode changes.
27783         * lib/mkdir-p.h: Likewise.
27784         * lib/modechange.c (octal_to_mode): New function.
27785         (struct mode_change): New member mentioned.
27786         (make_node_op_equals): New arg mentioned.  All callers changed.
27787         (mode_compile): Keep track of which mode bits the user has explicitly
27788         mentioned.
27789         (mode_adjust): New arg DIR, so that we implement the X op correctly.
27790         New arg PMODE_BITS, to keep track of which mode bits the user
27791         mentioned; it treats S_ISUID and S_ISGID speciall.
27792         All callers changed.
27793         * lib/modechange.h: Likewise.
27794
27795 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
27796
27797         * MODULES.html.sh: Add mkancestors.
27798         * modules/mkancesdirs: New module.
27799         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
27800         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
27801         The chdir-safer and afs files are now orphans; I'll remove them
27802         unless someone speaks up.
27803         Add lib/dirchownmod.c, lib/dirchownmod.h.
27804         (Depends-on): Remove alloca, chown, save-cwd, dirname.
27805         Add lchown, mkancesdirs.
27806         (Maintainer): Add self.
27807
27808 2006-07-15  Karl Berry  <karl@gnu.org>
27809
27810         * gnulib-tool: help message wording/arrangement.
27811
27812 2006-07-14  Simon Josefsson  <jas@extundo.com>
27813
27814         * doc/gnulib.texi (Libtool and Windows): New section.
27815
27816 2006-07-12  Simon Josefsson  <jas@extundo.com>
27817
27818         * modules/gendocs (License): Fix license, approved by Karl.
27819
27820 2006-07-12  Eric Blake  <ebb9@byu.net>
27821
27822         * MODULES.html.sh: Add gendocs.
27823
27824 2006-07-11  Eric Blake  <ebb9@byu.net>
27825
27826         * modules/fdl: New module, to install doc/fdl.texi.
27827         * MODULES.html.sh: Add new section for documentation modules.
27828         * gnulib-tool: Avoid space-tab.
27829         (--doc-base): New option, to manage files from doc.
27830
27831 2006-07-11  Eric Blake  <ebb9@byu.net>
27832
27833         * m4/absolute-header.m4: Fix comments to match recent change.
27834
27835 2006-07-11  Eric Blake  <ebb9@byu.net>
27836
27837         * gnulib-tool: List --doc-base before --tests-base.
27838
27839 2006-07-11  Derek R. Price  <derek@ximbiot.com>
27840
27841         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
27842
27843 2006-07-11  Bruno Haible  <bruno@clisp.org>
27844
27845         * README: Mention where to put documentation.
27846
27847 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27848
27849         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
27850
27851 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
27852
27853         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
27854         to stdint.m4.
27855
27856 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
27857
27858         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
27859         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
27860         "no/such/file/stdint.h" when there is no such file, so that
27861         the resulting C code can be parsed by dodgy compilers.
27862         Problems reported by Bob Proulx.
27863
27864 2006-07-10  Derek R. Price  <derek@ximbiot.com>
27865
27866         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
27867         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
27868         macros into the GNU _D_EXACT_NAMLEN.
27869         * lib/savedir.c:  Likewise.
27870         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
27871
27872 2006-07-10  Derek R. Price  <derek@ximbiot.com>
27873         and Paul Eggert  <eggert@cs.ucla.edu>
27874
27875         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
27876         * m4/savedir.m4:
27877         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
27878         macros into the GNU _D_EXACT_NAMLEN.
27879
27880 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27881
27882         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
27883         around the absolute name, to work around a problem with the HP-UX
27884         11.23 native C compiler, reported by Bob Proulx.
27885
27886 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27887
27888         * doc/maintain.texi, make-stds.texi: Sync from
27889         <http://savannah.gnu.org/projects/gnustandards>.
27890
27891 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
27892
27893         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
27894
27895 2006-07-09  Jim Meyering  <jim@meyering.net>
27896
27897         * m4/glob.m4: Remove a doubled word in a comment.
27898
27899 2006-07-09  Jim Meyering  <jim@meyering.net>
27900
27901         * lib/argp-pv.c: Remove a doubled word in a comment.
27902         * lib/check-version.c (check_version): Likewise.
27903         * lib/javacomp.c (compile_java_class): Likewise.
27904
27905 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
27906
27907         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
27908         for the benefit of people using Autoconf 2.60.  If you want to
27909         support older Autoconf versions you can copy m4/onceonly_2_57.m4
27910         (or m4/onceonly.m4, if pre-2.57) manually.
27911
27912 2006-07-08  Jim Meyering  <jim@meyering.net>
27913
27914         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
27915         comment.
27916         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
27917         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
27918         comment.
27919
27920 2006-07-08  Jim Meyering  <jim@meyering.net>
27921
27922         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
27923
27924 2006-07-07  Simon Josefsson  <jas@extundo.com>
27925
27926         * tests/test-crc.c: Change expected crc value, the test vector
27927         were probably computed using the old broken crc.c?
27928
27929 2006-07-06  Simon Josefsson  <jas@extundo.com>
27930
27931         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
27932         now the canonical place for the M4 file).
27933
27934         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
27935         from the sys_socket dependency now.
27936
27937         * modules/inet_pton (Files): Ditto.
27938
27939         * modules/inet_ntop (Files): Ditto.
27940
27941 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
27942
27943         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
27944         not gl_PREREQ_GETUSERSHELL.
27945
27946 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27947
27948         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
27949         with only one argument, for Autoconf 2.60.
27950         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
27951         expand to nothing, so add a shell command to avoid syntax error.
27952         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
27953
27954 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27955
27956         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
27957
27958 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
27959
27960         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
27961         no longer needed.  Check for isblank decl.
27962         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
27963         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
27964         of existence.
27965
27966 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
27967
27968         * lib/getloadavg.c: Use __VMS, not VMS.
27969         * lib/getopt.c: Likewise.
27970         * lib/getpagesize.h: Likewise.
27971         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
27972         and probably does not work.
27973
27974 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
27975
27976         * lib/.cppi-disable: Add wcwidth.
27977         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
27978         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
27979         (ISGRAPH): Remove.  All uses changed to isgraph.
27980         (FOLD) [!defined _LIBC]: Remove special case.
27981         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
27982         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
27983         HAVE_ISBLANK.
27984         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
27985         case.
27986
27987 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
27988
27989         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
27990         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
27991         brackets.  Other minor changes to suppress some compiler
27992         warnings.
27993
27994 2006-07-06  Derek R. Price  <derek@ximbiot.com>
27995         and Paul Eggert  <eggert@cs.ucla.edu>
27996
27997         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
27998         of invoking obsolescent AC_HEADER_DIRENT macro.
27999         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
28000         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
28001         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
28002         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
28003         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
28004         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
28005         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
28006         * m4/readdir.m4: Remove; no longer needed.
28007
28008 2006-07-06  Derek R. Price  <derek@ximbiot.com>
28009         and Paul Eggert  <eggert@cs.ucla.edu>
28010
28011         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
28012         Don't worry about this obsolete case any more.
28013         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
28014         directories.
28015         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
28016         worry about this obsolete case any more.
28017         * lib/fts.c: Likewise.
28018         * lib/getcwd.c: Likewise.
28019         * lib/glob.h: Likewise.
28020         * lib/savedir.c: Likewise.
28021
28022 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28023
28024         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
28025         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
28026         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
28027         needed.
28028         All uses removed.
28029         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28030         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
28031         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
28032         needed.
28033         * m4/getdate.m4 (gl_GETDATE): Likewise.
28034         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
28035         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
28036         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
28037         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28038         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
28039         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28040         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
28041         needed.
28042
28043 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28044
28045         * lib/memcasecmp.c: Include <limits.h>.
28046         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
28047         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
28048         Don't assume isdigit succeeds only on '0' through '9'.
28049
28050 2006-07-05  Eric Blake  <ebb9@byu.net>
28051
28052         * modules/getaddrinfo (Depends-on): Add snprintf.
28053
28054 2006-07-05  Eric Blake  <ebb9@byu.net>
28055
28056         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
28057         to avoid 'header present but could not be compiled' on cygwin.
28058
28059 2006-07-05  Eric Blake  <ebb9@byu.net>
28060
28061         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
28062         missing from netdb.h.
28063         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
28064
28065 2006-07-05  Derek R. Price  <derek@ximbiot.com>
28066
28067         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
28068         no longer needed.
28069         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
28070         * m4/getdate.m4 (gl_GETDATE): Likewise.
28071         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
28072         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
28073         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
28074         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
28075         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
28076
28077 2006-07-05  Derek R. Price  <derek@ximbiot.com>
28078
28079         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
28080         All uses of is_space replaced by isspace.
28081         * lib/exit.h: Don't talk about STDC_HEADERS.
28082         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
28083         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
28084         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
28085         replaced by isprint etc.
28086         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
28087         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
28088         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
28089         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
28090         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
28091         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
28092
28093 2006-07-05  Bruno Haible  <bruno@clisp.org>
28094
28095         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
28096         the function exists, before testing against AIX.
28097         Reported by Martin Lambers <marlam@marlam.de>.
28098
28099 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
28100
28101         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
28102         From Mark D. Baushke.
28103
28104 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
28105
28106         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
28107         to the absolute name, not just one, to bypass Sun C 5.8's
28108         "warning: #include of /usr/include/... may be non-portable".
28109
28110 2006-07-04  Eric Blake  <ebb9@byu.net>
28111
28112         * modules/dirname-tests: New test module.
28113         * tests/test-dirname.c: New file, replacing dirname.c
28114         TEST_DIRNAME section that was recently deleted.
28115
28116 2006-07-04  Bruno Haible  <bruno@clisp.org>
28117
28118         Assume ANSI C header files and <ctype.h> functions.
28119         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
28120         (mbsnwidth): Use isprint, iscntrl instead.
28121
28122 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28123
28124         Merge from coreutils.
28125         * MODULES.html.sh: Add xstrtold.
28126         * modules/xstrtold: New file.
28127         * modules/cycle-check (Files): Add lib/same-inode.h.
28128         * modules/dirname (Files): Add m4/double-slash-root.m4.
28129         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
28130         * modules/mkdir-p (Files): Add lib/same-inode.h.
28131         * modules/same (Files): Add lib/same-inode.h.
28132
28133 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28134
28135         * m4/absolute-header.m4: Renamed from full-header-path.m4.
28136         This is to keep the terminology clean; POSIX talks about
28137         "absolute pathnames", not "full pathnames", but the GNU
28138         Coding Standards say to use "path" for something else;
28139         so use "absolute" to keep both sides happy.
28140         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
28141         Set gl_absolute_header, not gl_full_header_path.
28142         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
28143         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
28144         All uses changed.
28145
28146         Merge from coreutils.
28147
28148         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28149
28150         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
28151         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
28152         want to require the building of c-strtod.o.
28153         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
28154         needs -lm directly.
28155         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
28156
28157         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28158
28159         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
28160         --as-needed option if available.  Problem reported by Albert Chin in
28161         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
28162         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
28163         cc merely issues a bunch of annoying warnings for --as-needed
28164         (this problem was reported by Bob Proulx).  Also, try linking with
28165         -lm to detect a bug in binutils 2.16 (this problem was reported
28166         by Ralf Wildenhues).
28167
28168         2006-06-18  Jim Meyering  <jim@meyering.net>
28169
28170         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
28171         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
28172         macro.
28173         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
28174         also check for glibc-2.4's abort-inducing bug.
28175
28176         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
28177         Low-probability clean-up should be to use rmdir to get rid of
28178         the just-created directory, not unlink.
28179
28180         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
28181         configure fail, and request a bug report to inform us about it.
28182         Add a comment that, barring reports to the contrary, in 2007 we'll
28183         assume ftruncate is universally available.
28184
28185         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
28186
28187         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
28188
28189         2006-03-12  Jim Meyering  <jim@meyering.net>
28190
28191         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
28192         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
28193         * m4/same.m4 (gl_SAME): Likewise.
28194         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
28195
28196         2006-03-11  Eric Blake  <ebb9@byu.net>
28197
28198         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
28199         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
28200         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
28201         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
28202
28203 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28204
28205         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
28206         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
28207         reported by Mark D. Baushke, one in
28208         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
28209
28210         Merge from coreutils.
28211
28212         * lib/.cppi-disable: Add stdint_.h.
28213         * lib/.cvsignore: Add stdint.h.
28214
28215         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
28216
28217         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
28218         both double and long double versions.
28219         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
28220         * lib/xstrtold.c: New file.
28221         * lib/xstrtod.h (xstrtold): New decl.
28222
28223         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
28224
28225         * lib/filemode.c (setst): Remove.
28226         (strmode): Rewrite to avoid setst.  This makes the code shorter,
28227         (arguably) clearer, and the generated code is a bit smaller on my
28228         Debian GNU/Linux stable x86 host.
28229
28230         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
28231
28232         * lib/filemode.c: Include "filemode.h" first, to test the interface.
28233         Assume that filemode.h includes sys/types.h and sys/stat.h.
28234         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
28235         (ftypelet): Reorder to put common cases first, for efficiency.
28236         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
28237         to do 'M'.
28238         (strmode): Renamed from mode_string, and now stores 12 bytes instead
28239         of 10, for compatibility with FreeBSD.  All callers changed.
28240         (filemodestring): Now stores 12 bytes instead of 10, and sets file
28241         types that can't be deduced solely from st_mode.  First arg is now a
28242         const pointer.
28243         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
28244         (strmode): Renamed from mode_string.
28245         (filemodestring): New decl.
28246         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
28247         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
28248         needed.
28249         (S_ISPORT, S_ISWHT): New macros, if not already defined.
28250
28251         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
28252
28253         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
28254         fsusage.h now does that.  Include fsusage.h first, to test interface.
28255         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
28256         at most one method (the old code could have generated decls that
28257         didn't conform to C89, not that this was ever exercised).
28258         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
28259
28260         2006-03-19  Jim Meyering  <jim@meyering.net>
28261
28262         Work even in a chroot where d_ino values for entries in "/"
28263         don't match the stat.st_ino values for the same names.
28264         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
28265         number, iterate through all entries again, using lstat instead.
28266         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
28267         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
28268
28269         * lib/getcwd.c (__getcwd): Clarify a comment.
28270         Use memcpy in place of a call to strcpy.
28271
28272         2006-03-12  Jim Meyering  <jim@meyering.net>
28273
28274         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
28275         matches that of the current directory (which we're about to chdir ".."
28276         out of), then save the dev-ino of the parent, instead.
28277
28278         * lib/same-inode.h (SAME_INODE): New file/macro.
28279         * lib/chdir-safer.c (SAME_INODE): Remove definition.
28280         Include "same-inode.h", instead.
28281         * lib/same.c: Likewise.
28282         * lib/cycle-check.h: Include "same-inode.h".
28283         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
28284         * lib/cycle-check.c (SAME_INODE): Remove definition.
28285         * lib/root-dev-ino.h: Include "same-inode.h".
28286
28287         2006-03-11  Eric Blake  <ebb9@byu.net>
28288
28289         * lib/same.c (same_name): s/base_name/last_component/
28290         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
28291         * lib/filenamecat.c (file_name_concat): Likewise.
28292
28293         2006-03-11  Eric Blake  <ebb9@byu.net>,
28294                     Paul Eggert  <eggert@cs.ucla.edu>
28295
28296         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
28297         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
28298         drive prefix.
28299         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
28300         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
28301         (last_component): New method.
28302         * lib/dirname.c (dir_len): Determine when drive letters need a
28303         subsequent slash.  Preserve // when it is special.
28304         (dir_name): Don't append dot when drive letter is absolute.
28305         [TEST_DIRNAME]: Move into a full-blown gnulib test.
28306         * lib/basename.c (base_name): New semantics - malloc the result.
28307         Preserve // when it is special.  Preserve relative files that look
28308         like drive letters.
28309         (base_len): Preserve // when it is special.
28310         (last_component): New method, similar to old base_name semantics.
28311         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
28312         base_name.  Strip redundant slashes from ///.
28313
28314 2006-07-03  Jim Meyering  <jim@meyering.net>
28315
28316         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
28317         macro is used before the first cycle_check call.
28318
28319 2006-07-03  Eric Blake  <ebb9@byu.net>
28320
28321         * modules/dirname (Depends-on): Add xstrndup.
28322
28323 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28324
28325         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
28326         test cases, so that config.log is a bit easier to follow.
28327
28328 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
28329
28330         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
28331         both are 64 bits, since this seems to be the tradition, and this
28332         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
28333         we ever run into a host that prefers long long to long in this
28334         case, we'll need another configure-time test.  Problem reported by
28335         Jim Meyering.
28336
28337 2006-07-02  Eric Blake  <ebb9@byu.net>
28338
28339         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
28340
28341 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
28342
28343         * modules/inttypes (Depends-on): No longer depends on stdint.
28344         * modules/stdint (Description): Say more about assumptions.
28345         Say that the fast types might differ.  Say macros are used.
28346         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
28347         (Makefile.am): Revise list of substituted symbols to match
28348         new stdint.m4.
28349         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
28350         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
28351         * tests/test-stdint.c (verify_same_types)
28352         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
28353         the code conforms to C99/C89.
28354         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
28355         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
28356
28357 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
28358
28359         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
28360         but fix a bug, by requiring at least 64 bits.
28361         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
28362         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
28363         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
28364         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
28365
28366         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
28367         changes.  Make 2.59 a prerequisite.  Check and substitute for
28368         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
28369         inttypes.h.  Do not use special include files; just use the
28370         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
28371         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
28372         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
28373         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
28374         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
28375         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
28376         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
28377         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
28378         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
28379         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
28380         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
28381         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
28382         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
28383         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
28384         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
28385         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
28386         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
28387         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
28388         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
28389         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
28390         WINT_MAX.  Check for C99 conformance more strictly, by detecting
28391         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
28392         not check for things that C99 does not require, e.g., int8_t.  If
28393         a test isn't needed unless <stdint.h> isn't working, and is
28394         unlikely to be needed for any other reason, then don't do it
28395         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
28396         size_t, since we assume C89 freestanding at least.  Do not check
28397         for sig_atomic_t, wchar_t, or wint_t, since the code now does
28398         the right thing even if the types are not defined.  Instead use:
28399         (gl_STDINT_TYPE_PROPERTIES): New macro.
28400         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
28401         testing whether <sys/types.h> clashes, as Autoconf does this for
28402         us now.  All uses removed.
28403         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
28404         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
28405         (gl_CHECK_TYPE_SAME):
28406         Remove; no longer needed.
28407         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
28408         exists, since we'll return 0 anyway in that case.
28409         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
28410
28411 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
28412
28413         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
28414         possible collision with system files.
28415         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
28416         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
28417         WCHAR_MIN and WCHAR_MAX in this case.
28418         (<stddef.h>): Do not include; no longer needed.
28419         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
28420         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
28421         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
28422         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
28423         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
28424         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
28425         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
28426         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
28427         !defined(__c99))]: Include in this case too, since it's harmless
28428         now.
28429         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
28430         dangerous to do so.
28431         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
28432         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
28433         (_STDINT_MIN, _STDINT_MAX): New macros.
28434         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
28435         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
28436         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
28437         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
28438         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
28439         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
28440         macros, not typedefs; this simplifies things quite a bit.
28441         Use long int for all types narrower than int64_t.
28442         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
28443         Define in terms of long long int or int64_t or long int,
28444         not int64_t or int32_t.  This saves some compile-time testing.
28445         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
28446         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
28447         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
28448         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
28449         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
28450         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
28451         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
28452         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
28453         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
28454         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
28455         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
28456         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
28457         undef any previous version and define our own version, for
28458         simplicity and consistency with the new macros for types.
28459         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
28460         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
28461         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
28462         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
28463         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
28464         @WINT_T_SUFFIX@ to keep things simple here.
28465         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
28466         Simplify by assuming typical 8/16/32/64 host, since we're
28467         already doing that elsewhere anyway.
28468         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
28469         and assume long long int is 64 bits if available.  This
28470         speeds up 'configure'.
28471
28472 2006-07-01  Eric Blake  <ebb9@byu.net>
28473
28474         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
28475         Reported by Andreas Buening.
28476
28477 2006-07-01  Eric Blake  <ebb9@byu.net>
28478
28479         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
28480
28481 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
28482
28483         * lib/getaddrinfo.c: fixed typo
28484
28485 2006-06-29  Jim Meyering  <jim@meyering.net>
28486
28487         * modules/strftime (Maintainer): Add my name, since with the
28488         FPRINTFTIME changes strftime.c has forked from glibc.
28489
28490 2006-06-29  Eric Blake  <ebb9@byu.net>
28491
28492         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
28493
28494 2006-06-29  Eric Blake  <ebb9@byu.net>
28495
28496         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
28497
28498 2006-06-29  Eric Blake  <ebb9@byu.net>
28499
28500         * lib/stat_.h: New file.
28501
28502 2006-06-29  Eric Blake  <ebb9@byu.net>
28503
28504         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
28505         unused static function.
28506
28507 2006-06-29  Eric Blake  <ebb9@byu.net>
28508
28509         * doc/functions.texi (Function Portability): Document missing lstat
28510         on mingw.
28511
28512 2006-06-29  Eric Blake  <ebb9@byu.net>
28513
28514         * MODULES.html.sh: Add sys_stat.
28515         * modules/sys_stat: New module.
28516         * modules/mkstemp (Depends-on): Add sys_stat.
28517
28518 2006-06-29  Derek R. Price  <derek@ximbiot.com>
28519
28520         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
28521
28522 2006-06-29  Derek R. Price  <derek@ximbiot.com>
28523
28524         * m4/c-bs-a.m4: Removed.
28525
28526 2006-06-29  Derek R. Price  <derek@ximbiot.com>
28527
28528         * lib/strftime.c: Assume strftime() exists.
28529
28530 2006-06-29  Derek Price  <derek@ximbiot.com>
28531
28532         * modules/c-bs-a: Removed - \a is C89.
28533         * MODULES.html.sh: Remove c-bs-a.
28534
28535 2006-06-29  Bruno Haible  <bruno@clisp.org>
28536
28537         * modules/wcwidth (License): Change to LGPL.
28538
28539 2006-06-28  Simon Josefsson  <jas@extundo.com>
28540
28541         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
28542         on _WIN32.
28543
28544         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
28545         getnameinfo.
28546
28547 2006-06-28  Simon Josefsson  <jas@extundo.com>
28548
28549         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
28550
28551 2006-06-28  Simon Josefsson  <jas@extundo.com>
28552
28553         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
28554         functions there.  It will succeed on Windows XP, but on Windows
28555         2000 and (presumably) earlier, it will fail, and use the internal
28556         re-implementation.
28557         (use_win32_p): New function.
28558         (getaddrinfo): Use strtoul on servname, to support numeric ports.
28559         Support AI_NUMERICSERV to disable getservbyname.
28560         (getnameinfo): New function, only supports
28561         NI_NUMERICHOST|NI_NUMERICSERV for now.
28562
28563         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
28564         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
28565         getnameinfo.
28566
28567 2006-06-28  Eric Blake  <ebb9@byu.net>
28568
28569         * modules/wcwidth: New file.
28570         * modules/mbchar (Depends-on): Add wcwidth.
28571         * modules/mbswidth (Depends-on): Add wcwidth.
28572         * MODULES.html.sh: Add wcwidth.
28573
28574 2006-06-28  Eric Blake  <ebb9@byu.net>
28575
28576         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
28577         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
28578
28579 2006-06-28  Eric Blake  <ebb9@byu.net>
28580
28581         * lib/xvasprintf.h: Fix comments.
28582
28583 2006-06-28  Eric Blake  <ebb9@byu.net>
28584
28585         * lib/mbchar.h (wcwidth): Include wcwidth.h.
28586         * lib/mbswidth.c (wcwidth): Move from here...
28587         * lib/wcwidth.h: ...to this new file.
28588
28589 2006-06-28  Derek R. Price  <derek@ximbiot.com>
28590
28591         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
28592
28593         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
28594         it's obsolete.
28595         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
28596
28597 2006-06-28  Derek R. Price  <derek@ximbiot.com>
28598
28599         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
28600         Autoconf 2.60 says this stuff was obsolete.
28601
28602 2006-06-28  Bruno Haible  <bruno@clisp.org>
28603
28604         * modules/wcwidth (Files): Add m4/wchar_t.m4.
28605
28606 2006-06-28  Bruno Haible  <bruno@clisp.org>
28607
28608         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
28609         gt_TYPE_WCHAR_T.
28610
28611 2006-06-28  Bruno Haible  <bruno@clisp.org>
28612
28613         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
28614         declaration for wcwidth.
28615         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
28616
28617 2006-06-28  Bruno Haible  <bruno@clisp.org>
28618
28619         * lib/mkdtemp.c [MINGW]: Include <io.h>.
28620         (mkdir): Define using _mkdir.
28621
28622 2006-06-28  Bruno Haible  <bruno@clisp.org>
28623
28624         * lib/getaddrinfo.h: Fix POSIX URL.
28625         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
28626         _WIN32.
28627         (use_win32_p): Make static.
28628         (getaddrinfo): Reject service name if it is empty or does not consist
28629         solely of decimal digits, or if its value is > 65535.
28630         (getnameinfo): Remove useless casts.
28631
28632 2006-06-27  Simon Josefsson  <jas@extundo.com>
28633
28634         * modules/sys_select: New file, suggested by Bruno Haible, Paul
28635         Eggert and Martin Lambers.
28636
28637 2006-06-27  Simon Josefsson  <jas@extundo.com>
28638
28639         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
28640         Eggert and Martin Lambers.
28641
28642 2006-06-27  Bruno Haible  <bruno@clisp.org>
28643
28644         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
28645         result to 0, not to empty.
28646         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
28647
28648 2006-06-27  Bruno Haible  <bruno@clisp.org>
28649
28650         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
28651
28652 2006-06-26  Simon Josefsson  <jas@extundo.com>
28653
28654         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
28655         present.
28656
28657 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
28658
28659         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
28660         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
28661         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
28662
28663 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
28664
28665         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
28666
28667 2006-06-26  Bruno Haible  <bruno@clisp.org>
28668
28669         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
28670
28671 2006-06-26  Bruno Haible  <bruno@clisp.org>
28672
28673         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
28674
28675 2006-06-26  Bruno Haible  <bruno@clisp.org>
28676
28677         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
28678         SGI C compiler in pre-C99 mode.
28679         Suggested by Mark D. Baushke and Larry Jones.
28680
28681 2006-06-26  Bruno Haible  <bruno@clisp.org>
28682
28683         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
28684         WCHAR_MAX.
28685         Reported by Mark D. Baushke and Larry Jones.
28686
28687 2006-06-26  Bruno Haible  <bruno@clisp.org>
28688
28689         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
28690         in pre-C99 mode.
28691         Suggested by Mark D. Baushke and Larry Jones.
28692
28693 2006-06-23  Simon Josefsson  <jas@extundo.com>
28694             Bruno Haible  <bruno@clisp.org>
28695
28696         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
28697         Emit mostlyclean-local rule.
28698         (func_emit_tests_Makefile_am): Likewise.
28699         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
28700
28701 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
28702
28703         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
28704
28705 2006-06-23  Bruno Haible  <bruno@clisp.org>
28706
28707         * tests/test-stdint.c: Update to match ISO C 99 Technical
28708         Corrigendum 1.
28709
28710 2006-06-23  Bruno Haible  <bruno@clisp.org>
28711
28712         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
28713
28714 2006-06-23  Bruno Haible  <bruno@clisp.org>
28715
28716         * lib/stdint_.h: Treat IRIX like OpenBSD.
28717
28718 2006-06-23  Bruno Haible  <bruno@clisp.org>
28719
28720         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
28721         ISO C 99 Technical Corrigendum 1.
28722
28723 2006-06-22  Simon Josefsson  <jas@extundo.com>
28724
28725         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
28726         MinGW.
28727
28728 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
28729
28730         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
28731         needed.  Some compiler complained about some of them.  Problem reported
28732         by Larry Jones in
28733         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
28734
28735 2006-06-21  Simon Josefsson  <jas@extundo.com>
28736
28737         * tests/test-getaddrinfo.c: New file.
28738
28739         * modules/getaddrinfo-tests: New file.
28740
28741         * MODULES.html.sh: Add inet_pton.
28742
28743         * modules/inet_pton: New file.
28744
28745 2006-06-21  Simon Josefsson  <jas@extundo.com>
28746
28747         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
28748         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
28749         of using the (limited) gnulib implementation on Windows XP.
28750
28751         * m4/inet_pton.m4: New file.
28752
28753 2006-06-21  Simon Josefsson  <jas@extundo.com>
28754
28755         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
28756         variable.
28757
28758         * lib/socket_.h: Don't define WINVER.
28759
28760         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
28761         slightly modified to work in gnulib.
28762
28763 2006-06-21  Simon Josefsson  <jas@extundo.com>
28764
28765         * doc/gnulib.texi (Windows sockets): Add.
28766
28767 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
28768
28769         * lib/read-file.c (fread_file): Start with buffer allocation of
28770         0 bytes rather than 1 byte; this simplifies the code.
28771         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
28772         code to free buffer and save/restore errno.
28773         (internal_read_file): Remove unused local.
28774
28775 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
28776
28777         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
28778         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
28779         Problem reported by Denis Excoffier in
28780         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
28781
28782 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28783
28784         * modules/sys_socket, modules/socklen: Include sys/types since
28785         FreeBSD 4.x's sys/socket.h needs it.
28786
28787 2006-06-19  Simon Josefsson  <jas@extundo.com>
28788
28789         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
28790
28791 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
28792
28793         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
28794
28795 2006-06-19  Bruno Haible  <bruno@clisp.org>
28796
28797         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
28798         and FULL_PATH_INTTYPES_H in angle brackets.
28799         Reported by Mark D. Baushke <mdb@gnu.org>.
28800
28801 2006-06-17  Eric Blake  <ebb9@byu.net>
28802
28803         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
28804         errno.
28805
28806 2006-06-17  Bruno Haible  <bruno@clisp.org>
28807
28808         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
28809         <sys/inttypes.h>.
28810
28811 2006-06-17  Bruno Haible  <bruno@clisp.org>
28812
28813         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
28814         whether errno is declared. Assume <errno.h> declares errno.
28815
28816 2006-06-17  Bruno Haible  <bruno@clisp.org>
28817
28818         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
28819
28820 2006-06-17  Bruno Haible  <bruno@clisp.org>
28821
28822         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
28823         problem on Solaris 2.5.1.
28824
28825 2006-06-16  Eric Blake  <ebb9@byu.net>
28826
28827         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
28828         * lib/unicodeio.c [!defined errno]: Likewise.
28829         * lib/strtol.c [!defined errno]: Likewise.
28830         * lib/strtod.c [!defined errno]: Likewise.
28831
28832 2006-06-15  Eric Blake  <ebb9@byu.net>
28833
28834         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
28835
28836 2006-06-15  Eric Blake  <ebb9@byu.net>
28837
28838         * config/srclist.txt (ssize_t.m4): Lose sync.
28839
28840 2006-06-15  Bruno Haible  <bruno@clisp.org>
28841
28842         * modules/stdint (Files): Include m4/full-header-path.m4,
28843         m4/size_max.m4, m4/wchar_t.m4.
28844         (Makefile.am): Many more substitutions.
28845         * modules/stdint-tests: New file.
28846         * tests/test-stdint.c: New file.
28847
28848 2006-06-15  Bruno Haible  <bruno@clisp.org>
28849
28850         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
28851         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
28852         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
28853         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
28854         gl_CHECK_TYPE_SAME): New macros.
28855
28856 2006-06-15  Bruno Haible  <bruno@clisp.org>
28857
28858         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
28859
28860 2006-06-15  Bruno Haible  <bruno@clisp.org>
28861
28862         * lib/stdint_.h: Rewritten to be fully auto-configured.
28863         Fixes bug on HP-UX/IA64.
28864
28865 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
28866
28867         * lib/getdate.y (__attribute__): Don't define if already defined.
28868         Problem reported by Larry Jones.
28869         * lib/utimens.c (__attribute__): Likewise.
28870
28871 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
28872
28873         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
28874         reported by Andreas Schwab.
28875
28876 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28877             Bruno Haible  <bruno@clisp.org>
28878
28879         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
28880         check for the declaration of strnlen and a run test that exposes the
28881         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
28882         rpl_strndup.
28883
28884 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28885             Bruno Haible  <bruno@clisp.org>
28886
28887         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
28888
28889 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28890
28891         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
28892         compile test, for Tru64 4.0D.
28893
28894 2006-05-28  Karl Berry  <karl@gnu.org>
28895
28896         * config/srclist.txt (printf-args.c): lose sync.
28897
28898 2006-05-26  Martin Lambers  <marlam@marlam.de>
28899
28900         * lib/getpass.c: Updates the test for the native W32 API, and adds
28901         missing includes, thus fixing compilation warnings.
28902
28903 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
28904
28905         * lib/exclude.c (exclude_fnmatch): New function.
28906         (excluded_file_name): Call exclude_fnmatch.
28907         * lib/exclude.h (excluded_file_name): New prototype
28908
28909 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28910
28911         * lib/tempname.c (small_open, large_open): New macros.
28912         (__open, __open64) [!_LIBC]: Remove.
28913         (__gen_tempname): Use small_open and large_open instead of __open
28914         and __open64.  This fixes a portability bug on HP-UX 11.11i
28915         reported by Simon Wing-Tang in
28916         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
28917
28918 2006-05-24  Bruno Haible  <bruno@clisp.org>
28919
28920         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
28921         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
28922         Reported by Thorsten Maerz <torte@netztorte.de> via
28923         Aaron Stone <aaron@serendipity.cx>.
28924
28925 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28926
28927         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
28928         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
28929         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
28930         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
28931         not really conditional on the cache.
28932         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
28933
28934 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28935
28936         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
28937         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
28938         (my_usleep): Don't mishandle maximum value.
28939
28940 2006-05-19  Jim Meyering  <jim@meyering.net>
28941
28942         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
28943
28944 2006-05-17  Bruno Haible  <bruno@clisp.org>
28945
28946         Cygwin portability.
28947         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
28948
28949 2006-05-17  Bruno Haible  <bruno@clisp.org>
28950
28951         * lib/stdint_.h: Fix recognition of Cygwin.
28952
28953 2006-05-15  Bruno Haible  <bruno@clisp.org>
28954
28955         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
28956         on libtool patch by Ralf Wildenhues.
28957
28958 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
28959
28960         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
28961         test for C99 conformance; (bool) 0.5 is an integer constant
28962         expression, but (bool) -0.5 is not.  Problem reported by Fedor
28963         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
28964
28965 2006-05-11  Simon Josefsson  <jas@extundo.com>
28966
28967         * m4/xvasprintf.m4: Fix obvious typo.
28968
28969 2006-05-11  Jim Meyering  <jim@meyering.net>
28970
28971         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
28972         James Lemley.
28973
28974 2006-05-10  Simon Josefsson  <jas@extundo.com>
28975
28976         * lib/md4.c: Typo fix, update copyright years.
28977         (K1, K2): Don't use L because it turn computations into 64-bit on
28978         64-bit platforms.
28979
28980 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
28981
28982         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
28983         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
28984         unwanted sign propagation, e.g., on hosts with 64-bit int.
28985         There still are some problems with reeelly weird theoretical hosts
28986         (e.g., 33-bit int) but it's not worth worrying about now.
28987         * lib/sha1.c (rol): Likewise.
28988         (K1, K2, K3, K4): Remove unnecessary L suffix.
28989
28990 2006-05-10  Bruno Haible  <bruno@clisp.org>
28991
28992         * lib/des.c: Cast to avoid warnings.
28993
28994 2006-05-09  Bruno Haible  <bruno@clisp.org>
28995
28996         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
28997         (Depends-on): Depend also on xsize, stdarg.
28998         (configure.ac): Add gl_XVASPRINTF.
28999
29000 2006-05-09  Bruno Haible  <bruno@clisp.org>
29001
29002         * m4/xvasprintf.m4: New file.
29003
29004 2006-05-09  Bruno Haible  <bruno@clisp.org>
29005
29006         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
29007         (EOVERFLOW): Define fallback value.
29008         (xstrcat): New function.
29009         (xvasprintf): Recognize the special case of a string concatenation.
29010
29011 2006-05-08  Eric Blake  <ebb9@byu.net>
29012
29013         * gnulib-tool (func_version): Base copyright year on CVS date.
29014         (func_emit_copyright_notice): New function.
29015         (func_emit_lib_Makefile_am): Use it.
29016         (func_emit_tests_Makefile_am): Likewise.
29017         (func_import): Likewise.
29018
29019 2006-05-08  Bruno Haible  <bruno@clisp.org>
29020
29021         * modules/stdarg: New file.
29022         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
29023
29024 2006-05-08  Bruno Haible  <bruno@clisp.org>
29025
29026         * m4/stdarg.m4: New file, from GNU gettext.
29027
29028 2006-05-08  Bruno Haible  <bruno@clisp.org>
29029
29030         * config/srclist.txt (build-aux/config.rpath): different from latest
29031         release.
29032
29033 2006-05-08  Bruno Haible  <bruno@clisp.org>
29034
29035         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
29036
29037 2006-05-05  Jim Meyering  <jim@meyering.net>
29038
29039         * m4/warning.m4: New file, derived from bison's file by the same name.
29040
29041 2006-05-03  Bruno Haible  <bruno@clisp.org>
29042
29043         * lib/stdint_.h: Shorter URL.
29044         * lib/inttypes.h: Likewise.
29045
29046 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29047
29048         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
29049
29050 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29051
29052         * lib/verify.h: Document the internals better.  Most of this change
29053         was written by Bruno Haible.
29054
29055 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
29056
29057         * doc/verify.texi: New file, partly based on a proposal by
29058         Bruno Haible.
29059
29060 2006-05-02  Bruno Haible  <bruno@clisp.org>
29061
29062         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
29063         test from here...
29064         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
29065
29066 2006-04-29  Bruno Haible  <bruno@clisp.org>
29067
29068         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
29069         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
29070
29071 2006-04-29  Bruno Haible  <bruno@clisp.org>
29072
29073         * gnulib-tool: Make --update option actually work.
29074
29075 2006-04-29  Bruno Haible  <bruno@clisp.org>
29076
29077         * doc/gcd.texi: New file.
29078         * doc/gnulib.texi: Include it.
29079
29080 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
29081
29082         * lib/getdate.y (get_date): When adding relative date, start with the
29083         initial time, not with the result of the first mktime call.
29084
29085 2006-04-25  Bruno Haible  <bruno@clisp.org>
29086
29087         * gnulib-tool (func_import): Output the include directives in three
29088         blocks, sorted separately.
29089         Reported by Ben Pfaff <blp@cs.stanford.edu>.
29090
29091 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
29092
29093         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
29094         to define main with arguments, for C++.  Reported by Eric Blake.
29095         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
29096         Prefer 'int main ()' to 'int main (void)', for C++.
29097         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
29098         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
29099         for 'main', for C99 and C++.
29100
29101 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
29102
29103         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
29104         Don't assume that exit status -1 is valid.
29105         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
29106         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
29107         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
29108         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
29109         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
29110         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
29111         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
29112         functions can be used without declaring them, or that you can
29113         exit with status -1.
29114         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
29115
29116 2006-04-24  Karl Berry  <karl@gnu.org>
29117
29118         * config/srclist.txt (longdouble.m4): sync lost.
29119
29120 2006-04-24  Eric Blake  <ebb9@byu.net>
29121
29122         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
29123
29124 2006-04-24  Bruno Haible  <bruno@clisp.org>
29125
29126         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
29127         poll() implementation in AIX.
29128         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29129
29130 2006-04-24  Bruno Haible  <bruno@clisp.org>
29131
29132         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
29133         assigned exactly once.
29134
29135 2006-04-23  Claudio Fontana  <claudio@gnu.org>
29136             Bruno Haible  <bruno@clisp.org>
29137
29138         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
29139         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
29140         for AM_CPPFLAGS.
29141
29142 2006-04-23  Bruno Haible  <bruno@clisp.org>
29143
29144         * modules/copy-file: Depend on unistd.
29145         * modules/execute: Likewise.
29146         * modules/fatal-signal: Likewise.
29147         * modules/findprog: Likewise.
29148         * modules/mkdtemp : Likewise.
29149         * modules/pipe: Likewise.
29150         * modules/wait-process: Likewise.
29151
29152 2006-04-23  Bruno Haible  <bruno@clisp.org>
29153
29154         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
29155         condition was already detected.
29156         Reported by Ben Pfaff <blp@cs.stanford.edu>.
29157
29158 2006-04-23  Bruno Haible  <bruno@clisp.org>
29159
29160         * lib/copy-file.c: Include <unistd.h> unconditionally.
29161         * lib/execute.c: Likewise.
29162         * lib/fatal-signal.c: Likewise.
29163         * lib/findprog.c: Likewise.
29164         * lib/mkdtemp.c: Likewise.
29165         * lib/pipe.h: Likewise.
29166         * lib/pipe.c: Likewise.
29167         * lib/wait-process.h: Likewise.
29168
29169 2006-04-23  Bruno Haible  <bruno@clisp.org>
29170
29171         * gnulib-tool (func_usage): Fix --import description. Document
29172         --update.
29173         (func_import): Create temporary file in a temporary directory, if
29174         --dry-run is specified. Silence errors from 'grep' when there are no
29175         m4 files in $m4dir.
29176         (func_create_testdir): Silence errors from 'grep' when there are no
29177         m4 files in $m4dir.
29178         Reported by Karl Berry <karl@freefriends.org>.
29179
29180 2006-04-20  Bruno Haible  <bruno@clisp.org>
29181
29182         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
29183         one argument, so that the code will be portable to Autoconf 2.60.
29184         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
29185         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
29186         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
29187
29188 2006-04-19  Derek Price  <derek@ximbiot.com>
29189             Eric Blake  <ebb9@byu.net>
29190
29191         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
29192         rather than "/full/path.h".  Update comment to match.  Shorten &
29193         generalize m4_translit call via AS_TR_CPP.
29194
29195 2006-04-19  Derek Price  <derek@ximbiot.com>
29196             Eric Blake  <ebb9@byu.net>
29197
29198         * lib/inttypes.h: Correct grammar in comment.
29199
29200 2006-04-18  Derek Price  <derek@ximbiot.com>
29201             Paul Eggert  <eggert@cs.ucla.edu>
29202
29203         * modules/inttypes: New file.
29204         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
29205
29206 2006-04-18  Derek Price  <derek@ximbiot.com>
29207             Paul Eggert  <eggert@cs.ucla.edu>
29208
29209         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
29210         New files.
29211
29212 2006-04-18  Derek Price  <derek@ximbiot.com>
29213             Paul Eggert  <eggert@cs.ucla.edu>
29214
29215         * lib/inttypes.h: New file.
29216         * lib/strtoimax.c: Assume <inttypes.h>.
29217
29218 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
29219
29220         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
29221         isn't mounted.  Problem reported by Kir Kolyshkin.
29222
29223 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
29224
29225         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
29226         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
29227         Derek R. Price.
29228         * lib/regex.h (RE_DUP_MAX): Update comment to match current
29229         implementation.
29230
29231 2006-04-12  Eric Blake  <ebb9@byu.net>
29232
29233         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
29234         is now done automatically by the corresponding Autoconf macro.
29235
29236 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
29237
29238         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
29239         time_r.h.
29240
29241 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29242
29243         Merge regex changes from libc, removing some of our
29244         POSIX-conformance changes that were rejected and redoing them in a
29245         less-intrusive way.
29246
29247         * lib/regcomp.c (re_compile_internal, init_dfa):
29248         Length arg is now size_t, not Idx.  All uses changed.
29249         (peek_token): Forward decl now says internal_function.
29250         (__re_error_msgid, __re_error_msgid_idx):
29251         Now static rather than extern with attribute_hidden.
29252         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
29253         For some reason libc prefers K&R style defns for external functions.
29254         (regerror) [!defined _LIBC]: Likewise.
29255         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
29256         (seek_collating_symbol_entry, lookup_collation_sequence_value):
29257         (build_range_exp, build_collating_symbol):
29258         Use K&R-style defn.
29259         (re_compile_fastmap): Use '\0' to memset, not 0.
29260         (utf8_sb_map): Make the calculations more obvious.
29261         (init_dfa, parse_bracket_exp, build_charclass_op):
29262         Call calloc and cast result, as glibc does.
29263         (init_word_char, fetch_token, peek_token, peek_token_bracket):
29264         (build_range_exp, build_collating_symbol):
29265         Now internal functions.
29266
29267         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
29268
29269         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
29270         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
29271         Don't depend on VMS; depend on __VMS instead, for POSIX
29272         namespace cleanness.
29273         (regoff_t): Define to ssize_t, not long int.
29274
29275         Remove the REG_ macros named below.  Instead, make the old names
29276         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
29277         __USE_GNU_REGEX.
29278         (REG_BACKSLASH_ESCAPE_IN_LISTS):
29279         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
29280         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
29281         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
29282         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
29283         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
29284         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
29285         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
29286         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
29287         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
29288         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
29289         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
29290         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
29291         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
29292         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
29293         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
29294         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
29295         (REG_NREGS):
29296         Remove.  All uses replaced by the old RE_* names.
29297         (RE_BACKSLASH_ESCAPE_IN_LISTS):
29298         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
29299         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
29300         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
29301         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
29302         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
29303         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
29304         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
29305         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
29306         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
29307         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
29308         Don't bother having these macros be independent of each others'
29309         values, since they no longer exist in the POSIX name space.
29310
29311         Rename the following member names back to their old names,
29312         unless !__USE_GNU_REGEX.  All uses changed back.
29313         (buffer): Renamed from re_buffer.
29314         (allocated): Renamed from re_allocated.
29315         (used): Renamed from re_used.
29316         (syntax): Renamed from re_syntax.
29317         (fastmap): Renamed from re_fastmap.
29318         (translate): Renamed from re_translate.
29319         (can_be_null): Renamed from re_can_be_null.
29320         (regs_allocated): Renamed from re_regs_allocated.
29321         (fastmap_accurate): Renamed from re_fastmap_accurate.
29322         (no_sub): Renamed from re_no_sub.
29323         (not_bol): Renamed from re_not_bol.
29324         (not_eol): Renamed from re_not_eol.
29325         (newline_anchor): Renamed from re_newline_anchor.
29326         (num_regs): Renamed from rm_num_regs.
29327         (start): Renamed from rm_start.
29328         (end): Renamed from rm_end.
29329
29330         (free_state): Move up a bit.
29331
29332         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
29333         #define to be empty.
29334         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
29335         when that is what is intended.
29336         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
29337         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
29338         (MAX): New macro.
29339         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
29340         All uses changed back to re_malloc, etc.  It's now the caller's
29341         responsibility to check for overflow; all callers changed.
29342         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
29343         (re_x2nrealloc): Remove.
29344         (free_state): Remove decl.
29345
29346         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
29347         (re_set_registers, re_exec):
29348         Use K&R-style defn.
29349
29350         2006-01-31  Roland McGrath  <roland@redhat.com>
29351
29352         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
29353         Reported by Mike Frysinger <vapier@gentoo.org>.
29354
29355         2006-01-15  Andreas Jaeger  <aj@suse.de>
29356
29357         [BZ #1950]
29358         * lib/regex_internal.c (re_string_reconstruct): Adjust for
29359         build_wcs_upper_buffer change.
29360         (build_wcs_upper_buffer): Change return type.
29361
29362         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
29363
29364         * lib/regex_internal.h: Include <stdint.h> if available.
29365
29366         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
29367
29368         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
29369
29370         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
29371
29372         * lib/regcomp.c: Adjust for changed secondary hash function.
29373
29374         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
29375
29376         * lib/regex.h: Pretty printing.
29377         Clean up namespace a bit.
29378
29379         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
29380
29381         * lib/regexec.c (update_cur_sifted_state, check_arrival,
29382         check_arrival_add_next_nodes): Avoid using uninitialized variable.
29383
29384         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
29385                     Ulrich Drepper  <drepper@redhat.com>
29386
29387         [BZ #1302]
29388         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
29389         changed.
29390         (bitset_word_t): Renamed from bitset_word.  All uses changed.
29391
29392         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
29393
29394         [BZ #281]
29395         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
29396         * lib/regcomp.c: Remove unnecessary uses of
29397         unsigned RE_TRANSLATE_TYPE.
29398         * lib/regex_internal.h: Likewise.
29399         * lib/regex_internal.c: Likewise.
29400         * lib/regexec.c: Likewise.
29401         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
29402
29403         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
29404
29405         * lib/regexec.c (find_recover_state): Remove unnecessary
29406         initialization.
29407         (transit_state_bkref): Make DFA a const pointer.
29408         (get_subexp): Likewise.
29409         (check_arrival): Likewise.
29410         (update_cur_sifted_state): Likewise.
29411         (re_search_internal): Likewise.
29412         (prune_impossible_nodes): Likewise.
29413         (acquire_init_state_context): Likewise.
29414         (proceed_next_node): Likewise.
29415         (set_regs): Likewise.
29416         (free_fail_stack_return): Likewise.
29417         (check_arrival_expand_ecl): Mark DFA parameter as const.
29418         (check_arrival_expand_ecl_sub): Likewise.
29419         (check_subexp_limits): Likewise.
29420         (sub_epsilon_src_nodes):  Likewise.
29421         (add_epsilon_src_nodes):  Likewise.
29422         (merge_state_array): Likewise.
29423         (update_regs): Likewise.
29424         (build_trtable): Likewise.
29425         (sift_states_backward): Mark MCTX parameter as const.
29426         (build_sifted_states): Likewise.
29427         (update_cur_sifted_state): Likewise.
29428         (sift_states_mkref): Likewise.
29429         (check_arrival_expand_ecl): Mark eclosure as const.
29430         (check_dst_limits_calc_pos_1): Likewise.
29431         * lib/regex_internal.h (re_match_context_t): Make dfa a const
29432         pointer.
29433
29434         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
29435
29436         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
29437         (transit_state_sb): Likewise.
29438         (transit_state_mb): Likewise.
29439         (sift_states_iter_mb): Likewise.
29440         (check_arrival_add_next_nodes): Likewise.
29441         (check_node_accept_bytes): Change first parameter to pointer-to-const.
29442         [_LIBC] (re_search_2_stub): Use mempcpy.
29443
29444         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
29445         mbrtowc for very simple UTF-8 case.
29446
29447         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
29448         a pointer-to-const.
29449         (re_acquire_state_context): Likewise.
29450         * lib/regex_internal.h: Adjust prototypes.
29451
29452         * lib/regex.c: Prevent using C++ compilers.
29453
29454         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
29455         (re_acquire_state_context): Likewise.
29456
29457 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29458
29459         * modules/regex (Depends-on): Add ssize_t.
29460
29461 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29462
29463         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
29464         translation table.
29465
29466 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
29467
29468         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
29469
29470 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
29471             Bruno Haible  <bruno@clisp.org>
29472
29473         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
29474         <sys/types.h> and <inttypes.h>.
29475
29476 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29477
29478         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
29479         `__error_t_defined', so argp.h will not typedef the former.
29480
29481 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
29482
29483         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
29484         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
29485         glibc names.  Even if glibc is changed to conform to POSIX, the
29486         traditional names will be available anyway, since regex depends on
29487         the extensions module.  Also, fix a longstanding typo in the
29488         implementation of Spencer ERE test #75 from grep 2.3.  Problems
29489         reported by Emanuele Giaquinta.  Also, change sense of cached
29490         variable, so that the message makes sense.
29491
29492 2006-03-24  Simon Josefsson  <jas@extundo.com>
29493
29494         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
29495         including some doc fixes.
29496         (base64_encode_alloc): Fix +1 bug on allocation failures.
29497
29498 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29499
29500         * lib/base64.c (base64_encode): Do not read past end of array with
29501         unsanitized input on systems with CHAR_BIT > 8.
29502
29503 2006-03-24  Eric Blake  <ebb9@byu.net>
29504
29505         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
29506
29507 2006-03-22  Karl Berry  <karl@gnu.org>
29508
29509         * config/srclist.txt (*setenv.[ch]): get from coreutils.
29510         * config/srclistvars.sh (COREUTILS): new var.
29511
29512 2006-03-17  Jim Meyering  <jim@meyering.net>
29513
29514         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
29515         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
29516
29517 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
29518
29519         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
29520         no longer needs it.  Instead, check that regoff_t is as least
29521         as wide as ptrdiff_t.
29522
29523         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
29524         so that our regex.h stays compatible with the installed regex.
29525         This is helpful for installers who configure --without-included-regex.
29526         Problem reported by Emanuele Giaquinta.
29527
29528 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
29529
29530         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
29531         Typedef to long int, not to off_, as POSIX will likely change
29532         in that direction.
29533
29534 2006-03-15  Eric Blake  <ebb9@byu.net>
29535
29536         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
29537
29538 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
29539
29540         * lib/argp-help.c (validate_uparams): Fix typo
29541         * lib/argp-parse.c (argp_default_options): Consistently begin help
29542         messages with a lowercase letter.
29543
29544 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
29545
29546         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
29547         overrun buffers and shouldn't be used (much as gets shouldn't be
29548         used).
29549         * lib/time_r.c (asctime_r, ctime_r): Likewise.
29550
29551 2006-03-08  Simon Josefsson  <jas@extundo.com>
29552
29553         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
29554         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29555
29556 2006-03-08  Simon Josefsson  <jas@extundo.com>
29557
29558         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
29559         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29560
29561 2006-03-08  Simon Josefsson  <jas@extundo.com>
29562
29563         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
29564         signal that configure disabled the device.
29565
29566 2006-03-08  Simon Josefsson  <jas@extundo.com>
29567
29568         * build-aux/maint.mk: Fix refresh-po, to handle no translated
29569         languages.
29570
29571 2006-03-07  Simon Josefsson  <jas@extundo.com>
29572
29573         * modules/getopt (Depends-on): Add unistd.
29574
29575         * modules/unistd: New file.
29576
29577 2006-03-07  Simon Josefsson  <jas@extundo.com>
29578
29579         * modules/gc-random: New file.
29580
29581 2006-03-07  Simon Josefsson  <jas@extundo.com>
29582
29583         * m4/unistd_h.m4: New file.
29584
29585 2006-03-07  Simon Josefsson  <jas@extundo.com>
29586
29587         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
29588         test to be side-effect free by storing the result in the cache
29589         variable gl_cv_lib_readline, and moving the assignment of
29590         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
29591         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
29592
29593 2006-03-07  Simon Josefsson  <jas@extundo.com>
29594
29595         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
29596         error on missing devices (the functions will return an error).
29597
29598         * m4/gc.m4: Move random stuff to gc-random.m4
29599
29600 2006-03-07  Simon Josefsson  <jas@extundo.com>
29601
29602         * lib/unistd_.h: New file.
29603
29604 2006-03-07  Simon Josefsson  <jas@extundo.com>
29605
29606         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
29607
29608 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
29609
29610         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
29611         Problem reported by Juan Manuel Guerrero.
29612
29613 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
29614
29615         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
29616         the unistd module.
29617         * lib/getlogin_r.c: Likewise.
29618         * lib/getlogin_r.h: Likewise.
29619         * lib/glob.c: Likewise.
29620         * lib/pagealign_alloc.c: Likewise.
29621         * lib/unistd_.h: Remove; no longer needed.
29622
29623 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
29624
29625         * MODULES.html.sh (Support for systems lacking POSIX:2001):
29626         Add unistd.
29627         * modules/c-stack (Depends-on): Add unistd.
29628         * modules/getlogin_r: Likewise.
29629         * modules/glob: Likewise.
29630         * modules/pagealign_alloc: Likewise.
29631         * modules/unistd (Files): Remove lib/unistd_.h.
29632         (EXTRA_DIST): Remove.
29633         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
29634         need unistd_.h.
29635         (MOSTLYCLEANFILES): Remove unistd.h-t.
29636
29637 2006-03-03  Simon Josefsson  <jas@extundo.com>
29638
29639         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
29640
29641 2006-03-03  Simon Josefsson  <jas@extundo.com>
29642
29643         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
29644         libidn and bison.
29645
29646 2006-03-03  Simon Josefsson  <jas@extundo.com>
29647
29648         * build-aux/maint.mk: Add indent target.
29649
29650 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
29651
29652         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
29653         our replacement poll.h in any case, to avoid a differing
29654         declaration from a system header.  Seen on AIX.
29655
29656 2006-03-01  Simon Josefsson  <jas@extundo.com>
29657
29658         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
29659         <kasal@ucw.cz>.
29660
29661 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29662
29663         * modules/gettime (Depends-on): Add extensions module.
29664         * modules/nanosleep (Depends-on): Likewise.
29665         * modules/settime (Depends-on): Likewise.
29666
29667 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
29668
29669         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
29670         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
29671         pedantically.
29672         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
29673         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
29674
29675         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
29676         not "==".  Reported by Ralf Wildenhues.
29677
29678 2006-03-01  Karl Berry  <karl@gnu.org>
29679
29680         * doc/Copyright/request-*: new files, synced from gnuorg.
29681
29682 2006-03-01  Karl Berry  <karl@gnu.org>
29683
29684         * config/srclist.txt (Copyright/*): new entries.
29685
29686 2006-02-28  Simon Josefsson  <jas@extundo.com>
29687
29688         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
29689
29690 2006-02-27  Simon Josefsson  <jas@extundo.com>
29691
29692         * lib/base64.h: Indent #define's.  From Jim Meyering
29693         <jim@meyering.net>.
29694
29695 2006-02-27  Jim Meyering  <jim@meyering.net>
29696
29697         Revert the change of 2006-02-24, so these files can continue
29698         to be sync'd from gettext.
29699         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
29700         of `config.h'.
29701
29702 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
29703
29704         * modules/intprops: New file.
29705         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
29706         Add intprops.
29707         * modules/getloadavg (Files): Remove lib/intprops.h.
29708         (Depends-on): Add intprops.
29709         * modules/human: Likewise.
29710         * modules/inttostr: Likewise.
29711         * modules/openat: Likewise.
29712         * modules/sig2str: Likewise.
29713         * modules/userspec: Likewise.
29714         * modules/utimecmp: Likewise.
29715         * modules/xnanosleep: Likewise.
29716         * modules/xstrtol: Likewise.
29717
29718 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
29719
29720         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
29721         * modules/lock-tests (TESTS): Use $(EXEEXT).
29722         * modules/tls-tests: Likewise.
29723         * modules/argp-tests: Likewise.
29724         (check_PROGRAMS): New var, replacing...
29725         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
29726
29727 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29728
29729         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
29730         `config.h'.
29731
29732 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
29733
29734         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
29735
29736 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29737
29738         Sync from coreutils.
29739         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
29740         gl_CHDIR_SAFER.
29741
29742 2006-02-22  Jim Meyering  <jim@meyering.net>
29743
29744         Sync from coreutils.
29745         * m4/chdir-safer.m4: New file.
29746
29747 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
29748
29749         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
29750         AT_FDCWD exceeds INT_MAX.
29751         * lib/openat.h (AT_FDCWD): Likewise.
29752
29753 2006-02-17  Eric Blake  <address@hidden>
29754
29755         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
29756
29757 2006-02-16  Simon Josefsson  <jas@extundo.com>
29758
29759         * modules/getaddrinfo (Depends-on): Add sys_socket.
29760
29761 2006-02-15  Simon Josefsson  <jas@extundo.com>
29762
29763         * build-aux/maint.mk: Add dsyntax-check rule.
29764
29765 2006-02-15  Eric Blake  <ebb9@byu.net>
29766
29767         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
29768         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
29769         'present but cannot compile' warnings on cygwin.
29770         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
29771         use ws2tcpip.h if sys/socket.h works.
29772         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
29773         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
29774
29775 2006-02-14  Simon Josefsson  <jas@extundo.com>
29776
29777         * modules/maintainer-makefile (Files): Rename.
29778
29779         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
29780         and (the local) Makefile.cfg to maint-cfg.mk.
29781
29782         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
29783         to the latter.
29784
29785         * modules/maintainer-makefile: New module.
29786
29787         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
29788         severaly stripped to make it possible to build it up from scratch
29789         with reliable tests.
29790
29791         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
29792         fixes to permit overriding the default actions when configure and
29793         makefile are not available.
29794
29795 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
29796
29797         Sync from coreutils.
29798         * modules/lstat (Depends-on): Don't depend on xalloc.
29799         (License): Change from GPL to LGPL, since this is now simply a
29800         replacement for a libc function.
29801
29802 2006-02-14  Jim Meyering  <jim@meyering.net>
29803
29804         Sync from coreutils.
29805
29806         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
29807         failure on deficient systems, and simplify gnulib lgpl dependencies.
29808         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
29809         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
29810
29811         * lib/xalloc-die.c: Remove unused definition of N_.
29812
29813 2006-02-14  Jim Meyering  <jim@meyering.net>
29814
29815         Sync from coreutils.
29816         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
29817         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
29818         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
29819         double-quote uses of that variable, to accommodate the rare case in
29820         which getmntent is available in none of the libraries checked.  This
29821         happens at least on FreeBSD 5.0.
29822
29823 2006-02-13  Simon Josefsson  <jas@extundo.com>
29824
29825         * gnulib-tool (Usage): Fix --import, from
29826         karl@freefriends.org (Karl Berry).
29827
29828 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
29829
29830         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
29831
29832 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
29833
29834         * lib/argp-namefrob.h: Restore changes accidentally lost during the
29835         "autoupdate" on 2005-12-12.
29836
29837 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
29838
29839         * modules/closeout (Depends-on): Remove atexit.
29840
29841 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
29842
29843         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
29844         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
29845
29846 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
29847
29848         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
29849         __EXTENSIONS__ if this causes compilation to fail.  Problem
29850         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
29851         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
29852
29853 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
29854
29855         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
29856         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
29857         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
29858         All uses changed.
29859
29860 2006-01-26  Simon Josefsson  <jas@extundo.com>
29861
29862         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
29863         prototype is visible on mingw32.
29864
29865         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
29866         for mingw32.
29867
29868         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
29869         mingw32).
29870
29871 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
29872
29873         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
29874         attempt to open for write; this always fails, at least on POSIX
29875         hosts.  This reinstates the 2006-01-09 change, which was
29876         inadvertently removed.
29877
29878 2006-01-26  Bruno Haible  <bruno@clisp.org>
29879
29880         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
29881         Reported by Paul Eggert.
29882
29883 2006-01-26  Bruno Haible  <bruno@clisp.org>
29884             Paul Eggert  <eggert@cs.ucla.edu>
29885
29886         * lib/stdbool_.h (_Bool)
29887         [(! (defined __cplusplus || defined __BEOS__)
29888           && !defined __GNUC__
29889           && !(defined __HP_cc || defined __xlc__
29890                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
29891                || defined __sgi))]:
29892         #define to signed char in these cases too; this simplifies
29893         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
29894         etc., separately) and makes it more conservative.
29895
29896 2006-01-25  Simon Josefsson  <jas@extundo.com>
29897
29898         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
29899         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
29900         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
29901
29902 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
29903
29904         * lib/argp-namefrob.h: Bugfix. Remove stray #
29905
29906 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
29907
29908         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
29909         so that we test the test.
29910         Check for yet another HP-UX cc bug involving *bool |= bool.
29911
29912 2006-01-25  Karl Berry  <karl@gnu.org>
29913
29914         * config/srclist.txt (vasnprintf.c): sync lost.
29915
29916 2006-01-25  Jim Meyering  <jim@meyering.net>
29917
29918         Sync from the stable (b5) branch of coreutils:
29919
29920         * lib/fts.c (fts_children): Don't let close() clobber errno from
29921         failed fchdir().
29922
29923         * lib/fts.c (fts_stat): When following a symlink-to-directory,
29924         don't necessarily interpret stat-fails+lstat-succeeds as indicating
29925         a dangling symlink.  That can also happen at least for ELOOP.
29926         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
29927         FYI, this bug predates the inclusion of fts.c in coreutils.
29928
29929         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
29930         in their own block, so pre-c99 compilers don't object.
29931
29932         Avoid the double-free (first in fts_read, second in fts_close) that
29933         would occur when an `active' directory is made inaccessible (e.g.,
29934         via chmod a-x) during a traversal.
29935         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
29936         before returning.  Reproduce this failure by
29937         mkdir -p a/b; cd a; chmod a-x . b
29938         Reported by Stavros Passas.
29939
29940 2006-01-25  Jim Meyering  <jim@meyering.net>
29941
29942         * lib/fileblocks.c: Remove more useless parentheses.
29943         * lib/readutmp.h: Likewise.
29944
29945 2006-01-25  Bruno Haible  <bruno@clisp.org>
29946
29947         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
29948         warnings.
29949         Reported by Paul Eggert.
29950
29951 2006-01-25  Bruno Haible  <bruno@clisp.org>
29952
29953         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
29954         rid of a trap command. For Solaris sh.
29955         Reported by Mark D. Baushke <mdb@gnu.org>.
29956
29957 2006-01-24  Simon Josefsson  <jas@extundo.com>
29958
29959         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
29960         Bruno.
29961
29962 2006-01-24  Karl Berry  <karl@gnu.org>
29963
29964         * config/srclist.txt (argp-namefrob.h): sync lost.
29965
29966 2006-01-24  Jim Meyering  <jim@meyering.net>
29967
29968         * modules/openat (Files): Add lib/intprops.h.
29969         From Mark D. Baushke.
29970
29971 2006-01-24  Jim Meyering  <jim@meyering.net>
29972
29973         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
29974         Reported by Mark D. Baushke.
29975
29976 2006-01-24  Jim Meyering  <jim@meyering.net>
29977
29978         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
29979
29980 2006-01-24  Bruno Haible  <bruno@clisp.org>
29981
29982         * modules/strnlen (Maintainer): Change from glibc to all.
29983
29984 2006-01-24  Bruno Haible  <bruno@clisp.org>
29985
29986         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
29987         Patch by Paul Eggert.
29988
29989 2006-01-24  Bruno Haible  <bruno@clisp.org>
29990
29991         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
29992         already has it.
29993         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
29994         2005-11-26.
29995
29996         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
29997         'signed char' to avoid problems with the built-in _Bool type.
29998         Reported by Paul Eggert on 2005-11-26.
29999
30000 2006-01-24  Bruno Haible  <bruno@clisp.org>
30001
30002         * gnulib-tool (func_import): Avoid constructing complicated sed
30003         expressions inside backquote.
30004         Report and solution by Mark D. Baushke <mdb@gnu.org>.
30005
30006 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
30007
30008         These changes imported from libc.
30009         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
30010         test and two separate function calls.
30011         * lib/strndup.c (__strndup): Add libc_hidden_def.
30012
30013 2006-01-23  Simon Josefsson  <jas@extundo.com>
30014
30015         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
30016         Remove the test_*_SOURCES variable: automake infers it by default.
30017         * modules/tls-tests: Likewise.
30018
30019 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30020
30021         Work around porting bugs reported by Dieter in
30022         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
30023         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
30024         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
30025         Include "getopt.h" first, to check interface.
30026         (getenv): Declare only if defined HAVE_DECL_GETENV &&
30027         !HAVE_DECL_GETENV.
30028         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
30029         (__strndup): Revert to K&R-style function dfns, the glibc style.
30030         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
30031         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
30032         Include strnlen.h first, to get prototype properly.
30033         (strnlen): Renamed from __strnlen.
30034         Remove weak alias.
30035
30036 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30037
30038         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
30039
30040 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30041
30042         * config/srclist.txt: Adjust to reflect glibc reorganization.
30043         This affects only comments.
30044
30045 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
30046
30047          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
30048          Reported by Bruce Korb <bkorb@gnu.org>.
30049
30050 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
30051
30052         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
30053         to pacify gcc -Wswitch-default.
30054
30055 2006-01-22  Bruno Haible  <bruno@clisp.org>
30056
30057         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
30058         temporary buffer for sprintf, take into account the precision also
30059         for 'd', 'i', 'u', 'o', 'x', 'X'.
30060
30061 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
30062
30063         * modules/argp-tests: New module
30064         * tests/test-argp.c: New file
30065         * tests/test-argp-2.sh: New file
30066
30067 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
30068
30069         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
30070         (__argp_base_name): Removed
30071         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
30072         typo.
30073         (__argp_base_name): Provide macro definition or extern declaration
30074         depending on the configuration
30075
30076 2006-01-20  Simon Josefsson  <jas@extundo.com>
30077
30078         * modules/inet_ntop (Depends-on): Depend on sys_socket.
30079
30080 2006-01-20  Simon Josefsson  <jas@extundo.com>
30081
30082         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
30083
30084 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
30085
30086         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
30087         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
30088         Suggested by Bruno Haible.
30089
30090 2006-01-20  Karl Berry  <karl@gnu.org>
30091
30092         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
30093         until changes propagate, I guess.
30094
30095 2006-01-19  Simon Josefsson  <jas@extundo.com>
30096
30097         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
30098
30099 2006-01-19  Simon Josefsson  <jas@extundo.com>
30100
30101         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
30102
30103 2006-01-19  Simon Josefsson  <jas@extundo.com>
30104
30105         * gnulib-tool: Set check_PROGRAMS.
30106
30107         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
30108         modules/des-tests, modules/gc-arcfour-tests,
30109         modules/gc-arctwo-tests, modules/gc-des-tests,
30110         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
30111         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
30112         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
30113         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
30114         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
30115         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
30116         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
30117         test_*_SOURCES.
30118
30119 2006-01-18  Simon Josefsson  <jas@extundo.com>
30120
30121         * modules/socklen (Depends-on): Depend on sys_socket.
30122
30123 2006-01-18  Simon Josefsson  <jas@extundo.com>
30124
30125         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
30126         modules/des-tests, modules/gc-arcfour-tests,
30127         modules/gc-arctwo-tests, modules/gc-des-tests,
30128         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
30129         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
30130         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
30131         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
30132         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
30133         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
30134         $(EXEEXT) to automake TESTS variable, for mingw32.
30135
30136 2006-01-17  Simon Josefsson  <jas@extundo.com>
30137
30138         * modules/socklen (Include): Need sys/socket.h.
30139
30140 2006-01-17  Bruno Haible  <bruno@clisp.org>
30141
30142         * modules/ssize_t (Include): Add <sys/types.h>.
30143
30144 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
30145
30146         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
30147         it's not portable and it doesn't work with cross-compiles.
30148         Problem reported by Bruno Haible.  Fix missing-$ typo in
30149         'test "gl_cv_ignore_unused_libraries" ...' that prevented
30150         -zignore from being used with Sun's C compiler.
30151
30152 2006-01-12  Simon Josefsson  <jas@extundo.com>
30153
30154         * lib/base64.c: Fix warning, reported by Bruno Haible
30155         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
30156
30157 2006-01-12  Bruno Haible  <bruno@clisp.org>
30158
30159         * modules/ldd: New file.
30160         * build-aux/ldd.sh.in: New file.
30161         * MODULES.html.sh (Support for building libraries and executables): Add
30162         ldd.
30163
30164 2006-01-12  Bruno Haible  <bruno@clisp.org>
30165
30166         * m4/ldd.m4: New file.
30167
30168 2006-01-12  Bruno Haible  <bruno@clisp.org>
30169
30170         * gnulib-tool (func_import, func_create_testdir): Don't go into an
30171         endless loop while replacing $auxdir with build-aux.
30172
30173 2006-01-11  Simon Josefsson  <jas@extundo.com>
30174
30175         * lib/stdint_.h (SIZE_MAX): Add missing (.
30176
30177 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
30178
30179         Sync from coreutils.
30180         * lib/md5.c: Fix commentary typos.
30181         (alignof, UNALIGNED_P): No need for a GCC-specific version.
30182         * lib/md5.h (__attribute__): Remove; unused.
30183         * lib/sha1.c: Fix commentary to match md5 better.
30184         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
30185         so that we don't need to worry about alignment.  All uses changed.
30186         This merges the 2005-10-28 md5 change into sha1.
30187
30188 2006-01-11  Jim Meyering  <jim@meyering.net>
30189
30190         Sync from coreutils.
30191         * lib/md5.c (OP): Fix spacing.
30192
30193 2006-01-11  Bruno Haible  <bruno@clisp.org>
30194
30195         Ensure automatic ordering between gl_LOCK and gl_ARGP.
30196         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
30197         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
30198
30199 2006-01-11  Bruno Haible  <bruno@clisp.org>
30200
30201         Ensure automatic ordering between gl_LOCK and gl_ARGP.
30202         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
30203         the "early" section as well.
30204
30205 2006-01-11  Bruno Haible  <bruno@clisp.org>
30206
30207         Avoid "ar: no archive members specified" error on MacOS X.
30208         * gnulib-tool (func_modules_add_dummy): New function.
30209         (func_import, func_create_testdir): Invoke it.
30210
30211 2006-01-11  Bruno Haible  <bruno@clisp.org>
30212
30213         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
30214         with $auxdir in AC_CONFIG_FILES statements.
30215
30216 2006-01-11  Bruno Haible  <bruno@clisp.org>
30217
30218         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
30219         Initialize also noinst_HEADERS to empty.
30220
30221 2006-01-11  Bruno Haible  <bruno@clisp.org>
30222
30223         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
30224         variables.
30225         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
30226         autoreconf.
30227
30228 2006-01-11  Bruno Haible  <bruno@clisp.org>
30229
30230         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
30231         overridable by the user.
30232         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30233
30234 2006-01-10  Simon Josefsson  <jas@extundo.com>
30235
30236         * modules/sys_socket: New file.
30237
30238 2006-01-10  Simon Josefsson  <jas@extundo.com>
30239
30240         * m4/sys_socket_h.m4: New file.
30241
30242 2006-01-10  Simon Josefsson  <jas@extundo.com>
30243
30244         * lib/socket_.h: New file.
30245
30246 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30247
30248         * modules/readutmp (Maintainer): Add myself.
30249
30250 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30251
30252         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
30253         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
30254         People who are still concerned with buggy memcmp implementations
30255         can invoke gl_FUNC_MEMCMP themselves.
30256
30257 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
30258
30259         * lib/regex_internal.h (BITSET_WORD_BITS):
30260         Work around a bug in 64-bit PGC (before version 6.1-2), where the
30261         preprocessor mishandles large unsigned values as if they were signed.
30262         Problem reported by Claudio Fontana in
30263         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
30264
30265 2006-01-10  Jim Meyering  <jim@meyering.net>
30266
30267         Avoid the double-free (first in fts_read, second in fts_close) that
30268         would occur when an `active' directory is made inaccessible (e.g.,
30269         via chmod a-x) during a traversal.
30270         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
30271         before returning.  Reproduce this failure by
30272         mkdir -p a/b; cd a; chmod a-x . b
30273         Reported by Stavros Passas.
30274
30275         Sync from coreutils.
30276         * lib/sha1.c: Tweak grammar in a comment.
30277
30278 2006-01-10  Jim Meyering  <jim@meyering.net>
30279
30280         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
30281         Patch by Joerg Sonnenberger.
30282
30283 2006-01-10  Bruno Haible  <bruno@clisp.org>
30284
30285         * modules/readutmp: Depend on module free.
30286         * modules/strtok_r: Depend on module restrict.
30287
30288 2006-01-10  Bruno Haible  <bruno@clisp.org>
30289
30290         * modules/gettext (configure.ac): Add an invocation of
30291         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
30292
30293 2006-01-10  Bruno Haible  <bruno@clisp.org>
30294
30295         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
30296         Reported by Werner Lemberg <wl@gnu.org>.
30297
30298 2006-01-10  Bruno Haible  <bruno@clisp.org>
30299
30300         * lib/localcharset.c: Update from GNU gettext.
30301
30302 2006-01-10  Bruno Haible  <bruno@clisp.org>
30303
30304         * lib/argp.h (__const): Remove macro. Use const instead.
30305         * lib/argp-fmtstream.h (__const): Likewise.
30306         * lib/glob_.h (__const): Remove macro.
30307         * lib/glob-libc.h: Use const instead of __const.
30308
30309 2006-01-10  Bruno Haible  <bruno@clisp.org>
30310
30311         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
30312         variable.
30313         Needed to avoid an automake error regarding the 'gettext' module.
30314
30315 2006-01-09  Simon Josefsson  <jas@extundo.com>
30316
30317         * modules/inet_ntop (Depends-on): Add restrict.
30318
30319 2006-01-09  Simon Josefsson  <jas@extundo.com>
30320
30321         * modules/gc-rijndael-tests (License): Put under LGPL.
30322
30323         * modules/gc-des-tests (License): Likewise.
30324
30325         * modules/gc-arcfour-tests (License): Likewise.
30326
30327         * modules/gc-arctwo-tests (License): Likewise.
30328
30329         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
30330
30331         * modules/gc-hmac-sha1-tests (Files): Likewise.
30332
30333         * modules/gc-hmac-md5-tests (License): Likewise.
30334
30335         * modules/gc-sha1-tests (License): Likewise.
30336
30337         * modules/gc-md5-tests (License): Likewise.
30338
30339         * modules/gc-md4-tests (License): Likewise.
30340
30341         * modules/gc-md2-tests (License): Likewise.
30342
30343         * modules/gc-tests (License): Likewise.
30344
30345         * modules/des-tests (License): Likewise.
30346
30347         * modules/md4-tests (License): Likewise.
30348
30349         * modules/md2-tests (License): Likewise.
30350
30351 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
30352
30353         Sync from coreutils:
30354
30355         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
30356         * modules/lib-ignore: New file.
30357         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
30358         chdir-safer.m4, lchmod.m4.
30359         * modules/openat: Add mkdirat.c, openat-priv.h.
30360
30361 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
30362
30363         Sync from coreutils.
30364         * m4/lib-ignore.m4: New file.
30365         * m4/lchmod.m4: New file.
30366
30367 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
30368
30369         Sync from coreutils.
30370         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
30371         for write access: POSIX says that must fail.
30372         * lib/fts.c (diropen): Likewise.
30373         * lib/save-cwd.c (save_cwd): Likewise.
30374         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
30375         well, for minor improvements on hosts that lack O_DIRECTORY.
30376         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
30377         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
30378         Fall back on chown if open failed with EACCES.
30379
30380         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
30381         Report an error at compile-time if only a 1-second nominal clock
30382         resolution is found.
30383
30384         * lib/lchmod.h: New file.
30385         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
30386         (make_dir_parents): Use lchown rather than chown, and
30387         lchmod rather than chmod.
30388
30389         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
30390         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
30391         "proc" reported by n0dalus.
30392
30393         * lib/mountlist.c: Include <limits.h>.
30394         (dev_from_mount_options)
30395         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
30396         New function.  It no longer assumes "dev=" has the System V meaning
30397         on Linux (since it doesn't).  It also parses "dev=" more carefully.
30398         (read_file_system_list)
30399         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
30400         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
30401         dev= in that case.
30402
30403         * lib/posixtm.h (PDS_PRE_2000): New macro.
30404         * lib/posixtm.c (year): Arg is now syntax_bits rather than
30405         allow_century.  All usages changed.  Reject dates outside the range
30406         1969-1999 if PDS_PRE_2000 is used.
30407
30408 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
30409
30410         Sync from coreutils.
30411         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
30412         (Time of day items): Mention the possibility of leap seconds.
30413         Problem reported by Dr. David Alan Gilbert.
30414
30415 2006-01-09  Jim Meyering  <jim@meyering.net>
30416
30417         Sync from coreutils.
30418
30419         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
30420
30421         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
30422
30423         * lib/modechange.c (mode_compile): Reject an invalid mode string
30424         that starts with an octal digit.  From Andreas Gruenbacher.
30425
30426         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
30427         and dup to open_safer and dup_safer, respectively.
30428         (openat_permissive): Fix typo in comment.
30429
30430         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
30431         "gettext.h"; either no longer needed or are guaranteed by openat.h.
30432         (_): Remove; no longer needed.
30433         (openat): Renamed from rpl_openat; no need for rpl_openat
30434         since openat.h renames openat for us.
30435         Replace most of the body with a call to openat_permissive,
30436         to avoid duplicate code.
30437         Port to (probably hypothetical) environments were mode_t is
30438         wider than int.
30439         (openat_permissive): Require mode arg, so that we can check
30440         types better.  Put it just after flags.  Change cwd failure
30441         indicator from pointer-to-bool to pointer-to-errno-value.
30442         All callers changed.
30443         Invoke openat_save_fail and/or openat_restore_fail if
30444         cwd_errno is null, so that openat can call us.
30445         (openat_permissive, fdopendir, fstatat, unlinkat):
30446         Simplify errno handling to avoid some duplicate code,
30447         as it's OK to set errno on success.
30448         * lib/openat.h: Revamp code so that function macros depend on
30449         __OPENAT_PREFIX only, not also on AT_FDCWD.
30450         (openat_ro): Remove.  Caller changed to use openat_permissive.
30451         (openat_permissive): Now a macro, if not a function.
30452         (openat_restore_fail, openat_save_fail): Now always functions,
30453         since mkdirat needs them even if __OPENAT_PREFIX is defined.
30454
30455         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
30456         and openat.c.
30457         * lib/mkdirat.c: Include openat-priv.h.
30458         Remove definitions of macros defined therein.
30459         * lib/openat.c: Likewise.
30460
30461         * lib/mkdirat.c (mkdirat): New file and function.
30462         * lib/openat.h (mkdirat): Declare.
30463
30464         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
30465
30466         * lib/openat.h (openat_permissive): Declare.
30467         (openat_ro): Define.
30468
30469         * lib/openat.c (EXPECTED_ERRNO): New macro.
30470         (openat_permissive): New function -- used in remove.c rewrite.
30471         (all functions): Set errno just before returning, only if there
30472         was an actual failure.
30473         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
30474
30475         Emulate openat-family functions using Linux's procfs, if possible.
30476         Idea and some code based on Ulrich Drepper's glibc changes.
30477
30478         * lib/openat.c: (BUILD_PROC_NAME): New macro.
30479         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
30480         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
30481         before falling back on save_cwd and restore_cwd.
30482         (fdopendir, fstatat, unlinkat): Likewise.
30483
30484         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
30485         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
30486
30487         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
30488         as second argument to va_arg.  Otherwise, some versions of gcc
30489         warn that `if this code is reached, the program will abort'.
30490
30491 2006-01-09  Jim Meyering  <jim@meyering.net>
30492
30493         Sync from coreutils.
30494         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
30495         Require openat-priv.h.
30496
30497 2006-01-09  Bruno Haible  <bruno@clisp.org>
30498
30499         * modules/strnlen (Include): Use strnlen.h.
30500
30501 2006-01-09  Bruno Haible  <bruno@clisp.org>
30502
30503         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
30504
30505 2006-01-09  Bruno Haible  <bruno@clisp.org>
30506
30507         * lib/sysexit_.h (EX_OK): New macro.
30508         Suggested by Martin Lambers <marlam@marlam.de>.
30509
30510 2006-01-09  Bruno Haible  <bruno@clisp.org>
30511
30512         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
30513         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
30514
30515 2006-01-09  Bruno Haible  <bruno@clisp.org>
30516
30517         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
30518         numbers.
30519
30520 2006-01-09  Bruno Haible  <bruno@clisp.org>
30521
30522         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
30523         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
30524         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
30525         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
30526
30527 2006-01-09  Bruno Haible  <bruno@clisp.org>
30528
30529         * build-aux/javacomp.sh.in: New file, moved from lib/.
30530         * modules/javacomp-script (Files): Update.
30531         (configure.ac): Add AC_CONFIG_FILES invocation.
30532         (EXTRA_DIST): Remove variable.
30533
30534         * build-aux/javaexec.sh.in: New file, moved from lib/.
30535         * modules/javaexec (Files): Update.
30536         (configure.ac): Add AC_CONFIG_FILES invocation.
30537         (EXTRA_DIST): Remove javaexec.sh.in.
30538
30539         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
30540         * modules/csharpcomp-script (Files): Update.
30541         (configure.ac): Add AC_CONFIG_FILES invocation.
30542         (EXTRA_DIST): Remove variable.
30543
30544         * build-aux/csharpexec.sh.in: New file, moved from lib/.
30545         * modules/csharpexec (Files): Update.
30546         (configure.ac): Add AC_CONFIG_FILES invocation.
30547         (EXTRA_DIST): Remove csharpexec.sh.in.
30548
30549 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
30550
30551         Sync from coreutils.
30552
30553         Add POSIX ACL support
30554         * lib/acl.h (copy_acl, set_acl): Add declarations.
30555         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
30556         systems other than Linux.
30557         (chmod_or_fchmod): New function: use fchmod when possible,
30558         and chmod otherwise.
30559         (file_has_acl): Add a POSIX ACL implementation, with a
30560         Linux-specific subcase.
30561         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
30562         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
30563         acls are unsupported.
30564         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
30565         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
30566         are unsupported.
30567
30568 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
30569
30570         Sync from coreutils.
30571         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
30572
30573 2006-01-07  Bruno Haible  <bruno@clisp.org>
30574
30575         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
30576         gl_EARLY.
30577
30578 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
30579
30580         * lib/strftime.c (tzname): Don't declare if it is already #defined.
30581         Problem reported for Mingw by Mark Junker.
30582
30583 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
30584
30585         * README: Gnulib normally doesn't generate a tarball.
30586
30587 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
30588
30589         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
30590         long int, not int, for nanosecond counts, so that people who are
30591         used to POSIX struct timespec won't be surprised.  Reported by Jim
30592         Meyering.
30593
30594 2005-12-28  Bruno Haible  <bruno@clisp.org>
30595
30596         * build-aux/config.rpath: Update from GNU gettext.
30597
30598 2005-12-16  Jim Meyering  <jim@meyering.net>
30599
30600         * modules/fprintftime: New module.
30601         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
30602
30603 2005-12-16  Jim Meyering  <jim@meyering.net>
30604
30605         * m4/fprintftime.m4: New file.
30606
30607 2005-12-16  Jim Meyering  <jim@meyering.net>
30608
30609         * lib/fprintftime.c, lib/fprintftime.h: New files.
30610
30611 2005-12-15  Simon Josefsson  <jas@extundo.com>
30612
30613         * modules/socklen (configure.ac): Fix M4 macro name, to align with
30614         new m4/socklen.m4.
30615
30616 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
30617
30618         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
30619         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
30620
30621 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
30622
30623         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
30624         * lib/argp-help.c (fill_in_uparams): Check if the constructed
30625         struct uparams is valid. Fall back to the default values if it is
30626         not.
30627
30628 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
30629
30630         * modules/argp (Files): Add argp-pin.c
30631         (Depends-on): dirname
30632         (lib_SOURCES): Add argp-pin.c
30633
30634 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
30635
30636         * m4/argp.m4:  Check if program_invocation_name and
30637         program_invocation_short_name are declared and define appropriate
30638         macros if they are not.
30639
30640 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
30641
30642         * lib/argp-help.c (__argp_base_name): New function
30643         (__argp_short_program_name): Rewrite using __argp_base_name
30644         * lib/argp-namefrob.h: Define program_invocation_name and
30645         program_invocation_short_name if requested
30646         (__argp_base_name): Add prototype
30647         * lib/argp-parse.c (argp_def): Use gettext wrappers
30648         (argp_default_parser): Use __argp_base_name
30649         * lib/argp-pin.c: New file. Defines program_invocation_name and
30650         program_invocation_short_name on systems that lack them.
30651
30652 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
30653
30654         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
30655         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
30656         porting problem reported by Georg Schwarz in
30657         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
30658
30659 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
30660
30661         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
30662         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
30663         porting problem reported by Georg Schwarz in
30664         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
30665
30666 2005-12-05  Bruno Haible  <bruno@clisp.org>
30667
30668         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
30669         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
30670         Reported by Mark Junker <mjscod@gmx.de>.
30671
30672 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
30673
30674         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
30675         Use implementation from Albert Chin, with some
30676         comments/corrections by Stepan Kasal and myself.
30677
30678 2005-12-02  Bruno Haible  <bruno@clisp.org>
30679
30680         * gnulib-tool (func_import): Accept GPLed build tool modules when
30681         --lgpl is given.
30682         * modules/csharpcomp-script: New file.
30683         * modules/csharpcomp: Depend on it.
30684         * modules/javacomp-script: New file.
30685         * modules/javacomp: Depend on it.
30686         Suggested by Simon Josefsson.
30687
30688 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
30689
30690         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
30691         statement, to work around an HP-UX 10.20 compiler bug reported by
30692         Peter O'Gorman.
30693
30694 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
30695
30696         * modules/savedir (Depends-on): Add openat.
30697
30698 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
30699
30700         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
30701         (uintmax_t) [defined uintmax_t]: Do not declare.
30702         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
30703         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
30704         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
30705         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
30706         sake of portability to weird hosts that C allows (though we don't
30707         know of any practical examples).
30708
30709         * lib/savedir.h (fdsavedir): New decl.
30710         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
30711         contains most of the former guts of savedir.
30712         (savedir): Use savedirstream.
30713         Include "openat.h".
30714
30715 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
30716
30717         * modules/obstack (Files): Add m4/ulonglong.m4.
30718         Problem reported by Davide Angelocola.
30719
30720 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
30721
30722         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
30723         coreutils no longer futzes with rounding modes.
30724
30725 2005-11-14  Jim Meyering  <jim@meyering.net>
30726
30727         * lib/mkstemp-safer.c: Include <config.h>, required for possible
30728         replacement of mkstemp.
30729
30730 2005-11-10  Simon Josefsson  <jas@extundo.com>
30731
30732         * lib/readline.c: Remove EOL.
30733
30734 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30735
30736         * modules/gethrxtime (Depends-on): Add gettime.
30737
30738 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30739
30740         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
30741         or gettimeofday; no longer needed.
30742
30743 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
30744
30745         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
30746         time business.
30747         (gethrxtime) [! (HAVE_NANOUPTIME
30748         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
30749         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
30750         our own approximation.
30751
30752 2005-11-08  Eric Blake  <ebb9@byu.net>
30753
30754         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
30755
30756 2005-11-08  Eric Blake  <ebb9@byu.net>
30757
30758         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
30759
30760 2005-11-04  Bruno Haible  <bruno@clisp.org>
30761
30762         * gnulib-tool: Implement --update mode.
30763
30764 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
30765
30766         Fix porting problem reported by Theodoros V. Kalamatianos.
30767         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
30768         Don't assume that futimes failing means we must fail.
30769
30770 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
30771
30772         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
30773         variables to suggest the intended function of the PATH_MAX check.
30774
30775 2005-10-30  Kean Johnston  <jkj@sco.com>
30776
30777         Trivial changes to support SCO systems.
30778         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
30779         as PATH_MAX.
30780         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
30781         where __ptr is null when no I/O is pending.
30782
30783 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
30784
30785         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
30786         leave errno alone.  Problem reported by Dmitry V. Levin.
30787
30788 2005-10-28  Simon Josefsson  <jas@extundo.com>
30789
30790         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
30791         Test more.
30792
30793         * tests/test-gc-md2.c, tests/test-md2.c: New files.
30794
30795         * modules/md2, modules/md2-tests: New files.
30796
30797 2005-10-28  Simon Josefsson  <jas@extundo.com>
30798
30799         * m4/inet_ntop.m4: More tests.
30800
30801         * m4/gc-md2.m4, md2.m4: New file.
30802
30803 2005-10-28  Simon Josefsson  <jas@extundo.com>
30804
30805         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
30806         "restrict" keywords, as per POSIX.  Protect the function
30807         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
30808         Don't use K&R prototypes.  Check the sprintf return values.
30809         Re-define EAFNOSUPPORT if not present.  Indent.
30810
30811         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
30812         suggested by Bruno Haible <bruno@clisp.org>.
30813
30814         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
30815
30816         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
30817
30818         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
30819         libgcrypt).
30820
30821         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
30822
30823         * lib/md2.h, lib/md2.c: New files.
30824
30825 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
30826
30827         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
30828         errno alone.  Problem reported by Frederic Jolliton.
30829
30830 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
30831
30832         * modules/verify (License): Change from GPL to LGPL.  This is a
30833         tiny module and there are apparently near-equivalents that are
30834         under the BSD license.
30835
30836 2005-10-24  Simon Josefsson  <jas@extundo.com>
30837
30838         * modules/sha1: Relicense to LGPL.
30839
30840 2005-10-24  Simon Josefsson  <jas@extundo.com>
30841
30842         * lib/md4.h: Shrink buffer size, now that we changed the type.
30843
30844 2005-10-23  Simon Josefsson  <jas@extundo.com>
30845
30846         * gnulib-tool (func_import): Fix --tests-base.
30847
30848 2005-10-22  Simon Josefsson  <jas@extundo.com>
30849
30850         * modules/arcfour (Depends-on): Need stdint.
30851
30852 2005-10-22  Simon Josefsson  <jas@extundo.com>
30853
30854         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
30855         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
30856
30857 2005-10-22  Simon Josefsson  <jas@extundo.com>
30858
30859         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
30860         suggested by Bruno Haible <bruno@clisp.org>.
30861
30862 2005-10-22  Simon Josefsson  <jas@extundo.com>
30863
30864         * lib/crc.h: Include stddef.h, for size_t.
30865
30866 2005-10-22  Simon Josefsson  <jas@extundo.com>
30867
30868         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
30869         arcfour_context struct (simplify test vector testing in GNU
30870         Shishi).
30871
30872 2005-10-21  Simon Josefsson  <jas@extundo.com>
30873
30874         * modules/des, modules/des-tests: New files.
30875
30876         * modules/gc-des, modules/gc-des-tests: New files.
30877
30878         * tests/test-des.c, tests/test-gc-des.c: New file.
30879
30880 2005-10-21  Simon Josefsson  <jas@extundo.com>
30881
30882         * modules/arctwo, modules/arctwo-tests: New files.
30883
30884         * tests/test-arctwo.c: New file.
30885
30886         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
30887
30888         * tests/test-gc-arctwo.c: New file.
30889
30890 2005-10-21  Simon Josefsson  <jas@extundo.com>
30891
30892         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
30893         Bruno Haible <bruno@clisp.org>.
30894
30895         * m4/gc-des.m4: New file.
30896
30897 2005-10-21  Simon Josefsson  <jas@extundo.com>
30898
30899         * m4/arctwo.m4: New file.
30900
30901         * m4/gc-arctwo.m4: New file.
30902
30903 2005-10-21  Simon Josefsson  <jas@extundo.com>
30904
30905         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
30906         block.
30907
30908 2005-10-21  Simon Josefsson  <jas@extundo.com>
30909
30910         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
30911         <bruno@clisp.org>.
30912
30913         * lib/hmac-sha1.c (hmac_sha1): Likewise.
30914
30915         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
30916         Bruno Haible <bruno@clisp.org>.
30917
30918         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
30919         <bruno@clisp.org>.
30920
30921 2005-10-21  Simon Josefsson  <jas@extundo.com>
30922
30923         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
30924
30925 2005-10-21  Simon Josefsson  <jas@extundo.com>
30926
30927         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
30928
30929 2005-10-21  Simon Josefsson  <jas@extundo.com>
30930
30931         * lib/des.h, lib/des.c: New files.
30932
30933         * lib/gc-gnulib.c: Support DES.c
30934
30935 2005-10-21  Simon Josefsson  <jas@extundo.com>
30936
30937         * lib/arctwo.h, lib/arctwo.c: New files.
30938
30939         * lib/gc-gnulib.c: Support ARCTWO.
30940
30941 2005-10-21  Simon Josefsson  <jas@extundo.com>
30942
30943         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
30944         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30945
30946 2005-10-21  Simon Josefsson  <jas@extundo.com>
30947
30948         * gnulib-tool (func_import, func_create_testdir): Define automake
30949         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
30950         Makefile.am snippet),
30951         suggested by Bruno Haible <bruno@clisp.org>.
30952
30953         * modules/gc (Makefile.am): Use it.
30954
30955 2005-10-21  Bruno Haible  <bruno@clisp.org>
30956
30957         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
30958         patch.
30959
30960 2005-10-19  Simon Josefsson  <jas@extundo.com>
30961
30962         * tests/test-gc-rijndael.c: New file.
30963
30964         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
30965
30966 2005-10-19  Simon Josefsson  <jas@extundo.com>
30967
30968         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
30969         interface too.
30970
30971 2005-10-19  Simon Josefsson  <jas@extundo.com>
30972
30973         * tests/test-gc-arcfour.c: New file.
30974
30975         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
30976
30977 2005-10-19  Simon Josefsson  <jas@extundo.com>
30978
30979         * modules/gc-md4, modules/gc-md4-tests: New file.
30980
30981         * tests/test-gc-md4.c: New file.
30982
30983 2005-10-19  Simon Josefsson  <jas@extundo.com>
30984
30985         * m4/gc-md4.m4: New file.
30986
30987 2005-10-19  Simon Josefsson  <jas@extundo.com>
30988
30989         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
30990         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
30991         <kasal@ucw.cz>.
30992
30993 2005-10-19  Simon Josefsson  <jas@extundo.com>
30994
30995         * m4/gc-arcfour.m4: New file.
30996
30997         * m4/gc-rijndael.m4: New file.
30998
30999 2005-10-19  Simon Josefsson  <jas@extundo.com>
31000
31001         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
31002
31003 2005-10-19  Simon Josefsson  <jas@extundo.com>
31004
31005         * lib/gc-gnulib.c: Support ARCFOUR.
31006
31007 2005-10-19  Simon Josefsson  <jas@extundo.com>
31008
31009         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
31010         support.
31011
31012         * lib/gc.h: Add ECB enum type.
31013
31014         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
31015
31016 2005-10-18  Simon Josefsson  <jas@extundo.com>
31017
31018         * tests/test-md5.c: New file.
31019
31020         * modules/md5-tests: New file.
31021
31022 2005-10-18  Simon Josefsson  <jas@extundo.com>
31023
31024         * tests/test-md4.c: New file.
31025
31026         * modules/md4, modules/md4-tests: New files.
31027
31028 2005-10-18  Simon Josefsson  <jas@extundo.com>
31029
31030         * m4/md4.m4: New file.
31031
31032 2005-10-18  Simon Josefsson  <jas@extundo.com>
31033
31034         * lib/md4.h, lib/md4.c: New files, based on md5.?.
31035
31036 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
31037
31038         * gnulib-tool (func_create_testdir): Omit the second check whether
31039         BUILT_SOURCES in nonempty.
31040
31041 2005-10-17  Simon Josefsson  <jas@extundo.com>
31042
31043         * tests/test-rijndael.c: New file.
31044
31045 2005-10-17  Simon Josefsson  <jas@extundo.com>
31046
31047         * modules/sha1: Depend on stdint instead of md5.
31048
31049         * modules/md5: Depend on stdint, remove uint32_t.
31050
31051 2005-10-17  Simon Josefsson  <jas@extundo.com>
31052
31053         * modules/gc-sha1-tests: New file.
31054
31055         * tests/test-gc-sha1.c: New file.
31056
31057 2005-10-17  Simon Josefsson  <jas@extundo.com>
31058
31059         * m4/md5.m4: Remove call to uint32_t.m4.
31060
31061 2005-10-17  Simon Josefsson  <jas@extundo.com>
31062
31063         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
31064
31065         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
31066         md5.h.
31067
31068         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
31069
31070         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
31071
31072 2005-10-17  Simon Josefsson  <jas@extundo.com>
31073
31074         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
31075
31076 2005-10-17  Simon Josefsson  <jas@extundo.com>
31077
31078         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
31079
31080 2005-10-17  Simon Josefsson  <jas@extundo.com>
31081
31082         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
31083
31084         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
31085
31086 2005-10-17  Bruno Haible  <bruno@clisp.org>
31087
31088         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
31089         that it can also be used in a test.
31090
31091 2005-10-16  Bruno Haible  <bruno@clisp.org>
31092
31093         * gnulib-tool (func_emit_tests_Makefile_am): Also define
31094         TESTS_ENVIRONMENT, so that individual tests can augment it.
31095
31096         * gnulib-tool (func_create_testdir): Use an intermediate target for
31097         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
31098         macros, like $(ALLOCA_H), which cannot be passed through the command
31099         line.
31100
31101 2005-10-15  Simon Josefsson  <jas@extundo.com>
31102
31103         * modules/rijndael-tests: New file.
31104
31105         * modules/rijndael: New file.
31106
31107 2005-10-15  Simon Josefsson  <jas@extundo.com>
31108
31109         * m4/rijndael.m4: New file.
31110
31111 2005-10-15  Simon Josefsson  <jas@extundo.com>
31112
31113         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
31114
31115         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
31116
31117 2005-10-14  Simon Josefsson  <jas@extundo.com>
31118
31119         * tests/test-arcfour.c: New file.
31120
31121         * modules/arcfour, modules/arcfour-tests: New files.
31122
31123 2005-10-14  Simon Josefsson  <jas@extundo.com>
31124
31125         * m4/arcfour.m4: New file.
31126
31127 2005-10-14  Simon Josefsson  <jas@extundo.com>
31128
31129         * lib/arcfour.h, lib/arcfour.c: New files.
31130
31131 2005-10-14  Roland McGrath  <roland@redhat.com>
31132
31133         Import from libc.  [BZ #1331]
31134         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
31135         macro argument.
31136         Reported by Matej Vela <vela@debian.org>.
31137
31138 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31139
31140         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
31141         include <wchar.h>; no longer needed.
31142
31143 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
31144
31145         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
31146
31147 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
31148         and  Ulrich Drepper  <drepper@redhat.com>
31149
31150         Import from libc.
31151         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
31152         instead of inline stream orientation test and two separate
31153         function calls.  Pay no attention to USE_IN_LIBIO.
31154
31155 2005-10-13  Simon Josefsson  <jas@extundo.com>
31156
31157         * modules/gc-hmac-md5-tests: New file.
31158
31159         * tests/test-gc-hmac-sha1.c: New file.
31160
31161         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
31162
31163         * modules/gc-hmac-md5-tests: New file.
31164
31165         * tests/test-gc-md5.c: New file.
31166
31167         * modules/gc-md5-tests: New file.
31168
31169 2005-10-13  Simon Josefsson  <jas@extundo.com>
31170
31171         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
31172         Move memory allocation outside of loop.
31173
31174 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
31175
31176         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
31177         intermediate directory is in a read-only file system.  Problem
31178         reported by Eric Blake.
31179
31180 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
31181
31182         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
31183
31184 2005-10-12  Simon Josefsson  <jas@extundo.com>
31185
31186         * tests/test-hmac-sha1.c: New file.
31187
31188         * modules/hmac-sha1-tests: New file.
31189
31190         * modules/hmac-sha1: New file.
31191
31192 2005-10-12  Simon Josefsson  <jas@extundo.com>
31193
31194         * modules/gc-sha1: New file.
31195
31196 2005-10-12  Simon Josefsson  <jas@extundo.com>
31197
31198         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
31199
31200         * tests/test-gc-pbkdf2-sha1.c: New file.
31201
31202 2005-10-12  Simon Josefsson  <jas@extundo.com>
31203
31204         * modules/gc-md5, modules/gc-hmac-md5: New files.
31205
31206         * modules/gc (Files): Remove md5, memxor and hmac files.
31207
31208 2005-10-12  Simon Josefsson  <jas@extundo.com>
31209
31210         * m4/gc-pbkdf2-sha1.m4: New file.
31211
31212         * m4/gc-hmac-sha1.m4: New file.
31213
31214         * m4/gc-sha1: New file.
31215
31216         * m4/hmac-sha1.m4: New file.
31217
31218 2005-10-12  Simon Josefsson  <jas@extundo.com>
31219
31220         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
31221
31222         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
31223
31224 2005-10-12  Simon Josefsson  <jas@extundo.com>
31225
31226         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
31227         suggested by Bruno Haible <bruno@clisp.org>.
31228
31229 2005-10-12  Simon Josefsson  <jas@extundo.com>
31230
31231         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
31232
31233 2005-10-12  Simon Josefsson  <jas@extundo.com>
31234
31235         * lib/gc-pbkdf2-sha1.c: New file.
31236
31237         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
31238
31239 2005-10-12  Simon Josefsson  <jas@extundo.com>
31240
31241         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
31242
31243         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
31244
31245 2005-10-12  Simon Josefsson  <jas@extundo.com>
31246
31247         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
31248         GC_USE_HMAC_MD5, respectively.
31249
31250         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
31251         (gc_md5): Fix typo.
31252
31253         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
31254
31255         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
31256
31257         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
31258
31259 2005-10-12  Bruno Haible  <bruno@clisp.org>
31260
31261         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
31262         Reported by Stepan Kasal <kasal@ucw.cz>.
31263
31264 2005-10-11  Simon Josefsson  <jas@extundo.com>
31265
31266         * tests/test-crc.c: New file.
31267
31268         * modules/crc, modules/crc-tests: New files.
31269
31270 2005-10-11  Simon Josefsson  <jas@extundo.com>
31271
31272         * m4/crc.m4: New file.
31273
31274 2005-10-11  Simon Josefsson  <jas@extundo.com>
31275
31276         * lib/gc.h: Add gc_hash and gc_hash_buffer.
31277
31278         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
31279
31280         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
31281
31282 2005-10-11  Simon Josefsson  <jas@extundo.com>
31283
31284         * lib/crc.h, lib/crc.c: New files.
31285
31286         * lib/gc.h (gc_hash_buffer): Add doc.
31287
31288 2005-10-11  Bruno Haible  <bruno@clisp.org>
31289
31290         * modules/c-strcasestr: New file.
31291         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
31292
31293 2005-10-11  Bruno Haible  <bruno@clisp.org>
31294
31295         * modules/c-strcase: New file.
31296         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
31297
31298 2005-10-11  Bruno Haible  <bruno@clisp.org>
31299
31300         * lib/strcasecmp.c: Include limits.h.
31301         (strcasecmp): Avoid integer overflow on exotic platforms.
31302         * lib/strncasecmp.c: Include limits.h.
31303         (strncasecmp): Avoid integer overflow on exotic platforms.
31304         Reported by Paul Eggert.
31305
31306 2005-10-11  Bruno Haible  <bruno@clisp.org>
31307
31308         * lib/c-strcasestr.h: New file, from GNU gettext.
31309         * lib/c-strcasestr.c: New file, from GNU gettext.
31310
31311 2005-10-11  Bruno Haible  <bruno@clisp.org>
31312
31313         * lib/c-strcase.h: New file, from GNU gettext.
31314         * lib/c-strcasecmp.c: New file, from GNU gettext.
31315         * lib/c-strncasecmp.c: New file, from GNU gettext.
31316
31317 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
31318
31319         * modules/mempcpy (License): GPL -> LGPL.
31320         * modules/strchrnul (License): Likewise.
31321         * modules/sysexits (License): Likewise.
31322
31323 2005-10-08  Simon Josefsson  <jas@extundo.com>
31324
31325         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
31326
31327 2005-10-07  Simon Josefsson  <jas@extundo.com>
31328
31329         * m4/memxor.m4: Remove gl_C_RESTRICT call.
31330
31331 2005-10-06  Simon Josefsson  <jas@extundo.com>
31332
31333         * tests/test-hmac-md5.c: New file.
31334
31335         * modules/hmac-md5-tests: New file.
31336
31337         * modules/hmac-md5: New file.
31338
31339 2005-10-06  Simon Josefsson  <jas@extundo.com>
31340
31341         * m4/hmac-md5.m4: New file.
31342
31343         * m4/memxor.m4: Require gl_C_RESTRICT.
31344
31345 2005-10-06  Simon Josefsson  <jas@extundo.com>
31346
31347         * lib/memxor.c (memxor): Avoid casts and warnings.
31348
31349 2005-10-06  Simon Josefsson  <jas@extundo.com>
31350
31351         * lib/hmac-md5.c: New file.
31352
31353         * lib/hmac.h: New file.
31354
31355 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
31356
31357         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
31358         promotes to int, not unsigned int, to catch the AIX 5.3
31359         compiler bug.
31360
31361 2005-10-05  Simon Josefsson  <jas@extundo.com>
31362
31363         * modules/memxor: New file.
31364
31365         * modules/iconv (Files): Move config.rpath to havelib, it is used
31366         there.
31367
31368         * modules/havelib (Files): Add config.rpath.
31369
31370 2005-10-05  Simon Josefsson  <jas@extundo.com>
31371
31372         * m4/memxor.m4: New file.
31373
31374 2005-10-05  Simon Josefsson  <jas@extundo.com>
31375
31376         * lib/memxor.c (memxor): Fix compiler error.
31377
31378         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
31379         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
31380
31381         * lib/memxor.h, lib/memxor.c: New files.
31382
31383         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
31384         we assume all systems have it, suggested by Jim Meyering
31385         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
31386         any systems lack sys/socket.h; mingw32 is known to lack it, but we
31387         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
31388         same reasons.
31389
31390 2005-10-05  Simon Josefsson  <jas@extundo.com>
31391
31392         * config/srclist.txt: Add glibc bug 1423 for md5.h.
31393
31394 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
31395
31396         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
31397         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
31398         needed, since the source code now assumes these .h files.
31399
31400 2005-10-05  Derek Price  <derek@ximbiot.com>
31401
31402         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
31403
31404 2005-10-05  Bruno Haible  <bruno@clisp.org>
31405
31406         * modules/stdint (License): Change to LGPL.
31407
31408 2005-10-04  Simon Josefsson  <jas@extundo.com>
31409
31410         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
31411         D. Baushke" <mdb@gnu.org>.
31412
31413 2005-10-04  Bruno Haible  <bruno@clisp.org>
31414
31415         * lib/verify.h (verify_true): Provide alternative definition for C++.
31416
31417 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
31418
31419         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
31420         (SSIZE_MAX): New macro, if not already defined.
31421         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
31422         than 2 GiB.
31423
31424 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
31425
31426         Sync from coreutils.
31427         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
31428         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
31429         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
31430         ULLONG_MAX doesn't work with 2.7.2.1.
31431
31432 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
31433
31434         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
31435         From Ben Pfaff.
31436
31437         * modules/exclude (Depends-on): Depend on verify.
31438         * modules/strtoimax (Depends-on): Likewise.
31439         * modules/utimecmp (Depends-on): Likewise.
31440
31441 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
31442
31443         * lib/exclude.c: Include verify.h.
31444         (verify): Remove.  All callers changed to use verify.h's version.
31445         * lib/strtoimax.c: Likewise.
31446         * lib/utimecmp.c: Likewis.e
31447
31448         Sync from coreutils.
31449         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
31450         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
31451         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
31452         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
31453         bother returning ENOSYS if settimeofday or stime fails; just let
31454         them return whatever errno they want to return.
31455         * lib/utimens.c: Include unistd.h, for dup2.
31456         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
31457         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
31458
31459 2005-10-02  Jim Meyering  <jim@meyering.net>
31460
31461         Sync from coreutils.
31462         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
31463         from glibc-2.2.5 that fails for read-only files.
31464
31465 2005-10-02  Jim Meyering  <jim@meyering.net>
31466
31467         Sync from coreutils.
31468         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
31469         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
31470         `#if HAVE_CONFIG_H'.
31471         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
31472         Remove AT_FDCWD test.
31473         Do not consume the fd unless successful.
31474         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
31475         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
31476         block, so that we don't even try to compile it if settimeofday is
31477         available.  This works around a compilation failure on OSF1 V5.1,
31478         due to stime requiring a `long int*' while tv_sec is `int'.
31479
31480 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
31481
31482         Sync from coreutils.
31483         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
31484         against `yes', rather than just testing for nonempty.
31485
31486 2005-10-01  Simon Josefsson  <jas@extundo.com>
31487
31488         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
31489         and Darwin.
31490
31491         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
31492         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
31493         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
31494         freeaddrinfo and gai_strerror are declared by the POSIX headers.
31495         Check if struct addrinfo is declared.
31496
31497 2005-10-01  Simon Josefsson  <jas@extundo.com>
31498
31499         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
31500         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
31501         AI_* and EAI_* definitions.  Protect function declarations.
31502
31503 2005-10-01  Jim Meyering  <jim@meyering.net>
31504
31505         Sync from coreutils.
31506
31507         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
31508         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
31509         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
31510         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
31511         in the inet and nsl libraries.  Required on Solaris 5.7.
31512
31513 2005-10-01  Jim Meyering  <jim@meyering.net>
31514
31515         Sync from coreutils.
31516         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
31517         in the inet and nsl libraries.  Required on Solaris 5.7.
31518
31519 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
31520
31521         * lib/getdelim.c (getdelim): Remove unused variables.
31522
31523 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
31524
31525         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
31526         so that the code works even with ancient cpp.  Portability problem
31527         with GCC 2.7.2.1 reported by Thomas M.Ott.
31528
31529 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
31530
31531         * modules/regex (Depends-on): Add strcase.
31532
31533         * modules/gethostname (Licence): Change from GPL to LGPL, since
31534         gethostname.c is a trivial implementation of a standard library
31535         function.
31536         * modules/poll (License): Change from GPL to LGPL, since it's
31537         derived from LGPL code.
31538
31539 2005-09-27  Jim Meyering  <jim@meyering.net>
31540
31541         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
31542         HAVE_CONFIG_H.
31543
31544         * lib/intprops.h (signed_type_or_expr__): Define.
31545         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
31546         for unsigned types.
31547
31548 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
31549
31550         * lib/verify.h (verify_expr): Remove, replacing with:
31551         (verify_true): New macro that returns true instead of void.
31552         (verify_type__): Remove.
31553         (verify): Use verify_true rather than verify_type__.
31554
31555 2005-09-26  Bruno Haible  <bruno@clisp.org>
31556
31557         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
31558         is necessary.
31559         (lib_SOURCES): Remove mbchar.c.
31560         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
31561         (Files): Add m4/mbrtowc.m4.
31562         * modules/mbiter: Likewise.
31563         * modules/mbuiter: Likewise.
31564
31565 2005-09-26  Bruno Haible  <bruno@clisp.org>
31566
31567         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
31568         compile mbchar.c if they are not both present.
31569         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
31570         * m4/mbiter.m4 (gl_MBITER): Likewise.
31571         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
31572         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
31573         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
31574
31575 2005-09-25  Jim Meyering  <jim@meyering.net>
31576
31577         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
31578         also uses socklen_t.
31579
31580 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
31581
31582         * lib/utimens.c (ENOSYS): Define if not already defined.
31583         (futimens): Support having a null PATH if the file descriptor
31584         is nonnegative.
31585
31586         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
31587         Remove.
31588         (__attribute): Define to empty unless GCC 3.1 or later.
31589         This works around a core dump on OpenBSD 3.4, which has GCC
31590         2.95.3, which dumps core when given __attribute__(()).  It also
31591         simplifies other tests, since we really don't want to bother with
31592         worrying about which ancient version of GCC supported what.
31593         Original problem reported by Yoann Vandoorselaere, with part of
31594         the fix suggested by Derek Price.
31595
31596 2005-09-24  Jim Meyering  <jim@meyering.net>
31597
31598         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
31599         so we can once again use a positive bitfield width of 1 -- now we
31600         don't have to explain why we were using a bitfield width of 2.
31601
31602 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
31603
31604         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
31605         and similarly for the other external symbols.  Problem reported
31606         by James Gallager.
31607
31608         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
31609         bug reported by Jim Meyering.
31610
31611         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
31612         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
31613         not needed, since socklen is a prerequisite module.
31614
31615 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
31616
31617         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
31618         Problem reported by Eric Blake.
31619         (getaddrinfo): Initialize se so that it's not garbage.
31620         Redo internal storage allocation so that it doesn't make unportable
31621         assumptions about alignment.
31622         Fix a memory leak.
31623
31624         * lib/utimens.c (futimens): Use futimesat if available.
31625         Prefer it to futimes since it doesn't have the futimes bug.
31626
31627         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
31628         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
31629         Instead, declare a function that returns a pointer to an array,
31630         and use verify_type__ to declare the size of the array.
31631         Problem and germ of a solution reported by Bruno Haible.
31632         (verify_type__): Use 2, not 1, for bitfield size, to avoid
31633         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
31634
31635 2005-09-23  Jim Meyering  <jim@meyering.net>
31636
31637         Sync from coreutils.
31638         Correct build failure (socklen_t not defined) on at least
31639         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
31640         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
31641
31642 2005-09-23  Jim Meyering  <jim@meyering.net>
31643
31644         * modules/getaddrinfo (Depends-on): Add socklen.
31645
31646 2005-09-23  Bruno Haible  <bruno@clisp.org>
31647
31648         * tests/test-verify.c: New file.
31649
31650 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
31651
31652         Sync from coreutils.
31653
31654         * modules/argmatch (Depends-on): Add verify.
31655         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
31656         unistd-safer.
31657         * modules/save-cwd (Depends-on): Likewise.
31658
31659         * modules/openat (Files): Add lib/openat-die.c.
31660         (Depends-on): Remove error, exitfail.
31661         Add dirname.
31662
31663         * modules/verify: New file.
31664         * MODULES.html.sh (Diagnostics <assert.h>): New section,
31665         with "verify" module.
31666
31667 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
31668
31669         Sync from coreutils.
31670
31671         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
31672         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
31673         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
31674         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
31675         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
31676         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
31677         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
31678         Don't bother checking for string.h, stdlib.h, unistd.h.
31679         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
31680         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
31681         module's job.
31682         * m4/jm-macros.m4 (gl_MACROS): Likewise.
31683         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
31684
31685         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
31686         (gl_GETDATE): Use it.
31687
31688         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
31689
31690 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
31691
31692         Sync from coreutils.
31693
31694         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
31695         stat-time.h.
31696         * lib/argmatch.h: Include verify.h
31697         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
31698         (ARGMATCH_ASSERT): Remove; unused.
31699         * lib/canonicalize.c: Assume STDC_HEADERS.
31700         * lib/exclude.c: Include "strcase.h".
31701         * lib/regex_internal.h [!defined _LIBC]: Likewise.
31702         * lib/getusershell.c: Include stdio--.h rather than stdio.h
31703         and stdio-safer.h.
31704         (getusershell): Call fopen, not fopen_safer.
31705         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
31706         Do not include unistd-safer.h.
31707         (save_cwd): Don't call fd_safer; no longer needed
31708         now that we include fcntl--.h.
31709
31710         * lib/getdate.y (relative_time): New type.
31711         (RELATIVE_TIME_0): New constant.
31712         (parser_control): Use relative_time instead of doing it ourselves.
31713         (%union): Add new relative_time rel member.
31714         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
31715         Now typeless.
31716         (relunit, relunit_snumber): Now of type rel.
31717         (zone, rel, relunit, get_date): Adjust to above changes.
31718
31719         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
31720         Do not include unistd-safer.h.
31721         (getloadavg): Don't call fd_safer; no longer needed
31722         now that we include fcntl--.h.
31723
31724         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
31725         (make_dir_parents): Treat ENOSYS like EEXIST.
31726
31727         Improve quality of diagnostics on restore_cwd failure.
31728         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
31729         (make_dir_parents): Last arg is now int * (for errno), not bool *.
31730         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
31731         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
31732         each time through the loop.  Do not diagnose restore_cwd failure;
31733         that is the caller's job (and perhaps the caller does not care).
31734
31735         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
31736         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
31737         If the file already exists but is not a directory, don't bother
31738         to try to make its parents.
31739         Close potential file descriptor leak if we can't chdir("/") (!).
31740         Don't always return true if chdir($PWD) fails; return true only
31741         if the requested action was done successfully (except for the
31742         chdir($PWD)).
31743         Don't log final directory unless we actually made it.
31744         Refactor to avoid duplicate code to fix up permissions.
31745         Don't attempt to fix up parent permissions if chdir($PWD) fails.
31746
31747         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
31748         to make it a bit faster and (I hope) clearer.
31749         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
31750         Fix bug in formats like %2N.
31751
31752         * lib/verify.h: New file.
31753
31754 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
31755
31756         Sync from coreutils.
31757         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
31758
31759 2005-09-22  Jim Meyering  <jim@meyering.net>
31760
31761         Sync from coreutils.
31762
31763         * m4/lstat.m4 (gl_FUNC_LSTAT):
31764         Use AC_LIBSOURCES to require lstat.c and lstat.h.
31765         Remove obsolete comment.
31766         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
31767         * m4/xstrtod.m4: Likewise.
31768
31769         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
31770
31771 2005-09-22  Jim Meyering  <jim@meyering.net>
31772
31773         Sync from coreutils.
31774
31775         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
31776
31777         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
31778         the .tm_year member, since otherwise gcc-4.0 would now warn about
31779         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
31780
31781         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
31782         order to avoid an unsuppressible warning from gcc on 64-bit systems.
31783
31784         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
31785         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
31786         when run in a time zone for which daylight savings time is in effect
31787         for the starting date.
31788
31789         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
31790         stop us from restricting permissions of just-created absolute-named
31791         directories.
31792         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
31793         to restore initial working directory.
31794         * lib/mkdir-p.c (make_dir_parents): New parameter:
31795         different_working_dir, to tell caller if/when we change the working
31796         directory and are unable to return to the initial one.
31797         * lib/mkdir-p.h (make_dir_parents): Update prototype.
31798         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
31799         `return false'.  This fixes a bug introduced on 2004-07-30.
31800
31801         * lib/openat.c (fdopendir): Be sure to close the supplied
31802         file descriptor before returning.  This makes our replacement
31803         implementation a little closer to Solaris's, where fdopendir
31804         ties the file descriptor to the returned DIR* pointer.
31805         * lib/openat.c (unlinkat): New function.
31806         * lib/openat.h (unlinkat): Add prototype.
31807         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
31808         (openat_restore_fail): Rename from openat_restore_die.
31809         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
31810
31811         Provide an alternative to exiting immediately upon save_cwd or
31812         restore_cwd failure.  Now, an application can arrange e.g.,
31813         to perform a longjump in that case.
31814         * lib/openat.c: Include dirname.h.
31815         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
31816         (rpl_openat, fdopendir, fstatat): Call openat_save_die
31817         and openat_restore_die rather than calling error directly.
31818         Don't include "error.h" or "exitfail.h"; they're no longer needed.
31819
31820         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
31821         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
31822         define.
31823
31824         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
31825         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
31826                             int utc, int nanoseconds);
31827         Background:
31828         date should not have to allocate a megabyte of virtual memory to
31829         handle a format argument like +%1048575T.  When implemented with
31830         strftime, it must allocate such a buffer, use strftime to fill it
31831         in, print it, then free it.
31832         With fprintftime, it simply prints everything and exits.
31833         With no need for memory allocation, that's one fewer way to fail.
31834         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
31835         optional field width, not before, so we accept %9:z, not %:9z.
31836         (my_strftime): Be sure to use L_('x') for literals.
31837
31838         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
31839         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
31840         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
31841         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
31842         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
31843         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
31844         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
31845         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
31846         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
31847         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
31848         * lib/xgethostname.c, lib/xreadlink.c:
31849         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
31850
31851         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
31852         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
31853         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
31854         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
31855         and don't include <sys/file.h>).
31856
31857 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
31858
31859         Sync from coreutils.
31860
31861         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
31862         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
31863         [!LDAV_DONE]: Avoid unused variable warning.
31864
31865 2005-09-21  Bruno Haible  <bruno@clisp.org>
31866
31867         * lib/unicodeio.h (unicode_to_mb): New declaration.
31868
31869 2005-09-20  Derek Price  <derek@ximbiot.com>
31870
31871         * lib/getaddrinfo.c: Don't include <netdb.h> included from
31872         getaddrinfo.h.
31873
31874 2005-09-20  Bruno Haible  <bruno@clisp.org>
31875
31876         * gnulib-tool: Remove trailing slashes from the values specified for
31877         --source-base, --m4-base, --tests-base, --aux-dir.
31878         Suggested by Simon Josefsson <jas@extundo.com>.
31879
31880 2005-09-20  Bruno Haible  <bruno@clisp.org>
31881
31882         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
31883         func_modules_to_filelist, func_import, func_create_testdir): Make all
31884         sorting results locale-independent, so that gnulib-cache.m4 doesn't
31885         change when gnulib-tool is invoked in a different locale.
31886
31887 2005-09-19  Simon Josefsson  <jas@extundo.com>
31888
31889         * m4/socklen.m4: Fix typo.
31890
31891 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31892
31893         Use a consistent style for including <config.h>.
31894         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
31895         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
31896         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
31897         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
31898         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
31899         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
31900         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
31901         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
31902         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
31903         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
31904         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
31905         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
31906         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
31907         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
31908         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
31909         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
31910         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
31911         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
31912         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
31913         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
31914         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
31915         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
31916         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
31917         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
31918         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
31919         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
31920         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
31921         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
31922         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
31923         lib/xstrtoumax.c, lib/yesno.c:
31924         Standardize inclusion of config.h.
31925         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
31926         lib/inttostr.h:  Removed inclusion of config.h from header files.
31927         * lib/inttostr.c:  Adjusted in-tree users.
31928         * lib/timespec.h: Remove superfluous warning to include config.h.
31929         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
31930         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
31931         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
31932         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
31933         config.h with HAVE_CONFIG_H.
31934
31935 2005-09-19  Jim Meyering  <jim@meyering.net>
31936
31937         * modules/pathmax (License): Change to LGPL.
31938
31939 2005-09-19  Derek Price  <derek@ximbiot.com>
31940
31941         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
31942
31943 2005-09-19  Bruno Haible  <bruno@clisp.org>
31944
31945         * gnulib-tool (import): Provide default for --tests-base.
31946
31947 2005-09-19  Bruno Haible  <bruno@clisp.org>
31948
31949         * doc/quote.texi: New file, extracted from gnulib.texi.
31950         * doc/ctime.texi: New file, extracted from gnulib.texi.
31951         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
31952         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
31953         * doc/gnulib.texi: Include them.
31954
31955 2005-09-18  Bruno Haible  <bruno@clisp.org>
31956
31957         Portability fix.
31958         * gnulib-tool (func_readlink): New function.
31959         (func_ln_if_changed): Use it.
31960
31961 2005-09-18  Bruno Haible  <bruno@clisp.org>
31962
31963         * gnulib-tool: Support --with-tests also with --import.
31964         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
31965         (func_import): Use variables $testsbase and $inctests. Emit a
31966         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
31967         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
31968         SUBDIRS += $testsdir.
31969         (func_create_testdir): Update.
31970
31971 2005-09-18  Bruno Haible  <bruno@clisp.org>
31972
31973         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
31974         instead of $dry_run.
31975         (func_cp_if_changed, func_mv_if_changed): Remove functions.
31976         (func_ln_if_changed): Don't handle dry-run here.
31977         (func_import): In dry-run mode, detect more precisely which actions
31978         would be performed, and don't use "...ing" verbs.
31979
31980 2005-09-18  Bruno Haible  <bruno@clisp.org>
31981
31982         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
31983         (func_import): Use join on two temporary files instead of three nested
31984         loops, in order to determine which files are new or old.
31985
31986 2005-09-18  Bruno Haible  <bruno@clisp.org>
31987
31988         * gnulib-tool (func_import): Comment out code that spits out the
31989         new files with --dry-run.
31990
31991 2005-09-18  Bruno Haible  <bruno@clisp.org>
31992
31993         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
31994
31995 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
31996
31997         * lib/stat-time.h: New file.
31998         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
31999         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
32000         in a different way.
32001         (timespec_cmp): New function.
32002         * lib/utimecmp.c: Include stat-time.h.
32003         (SYSCALL_RESOLUTION): Depend on whether various struct stat
32004         members exist, not on the obsolescent ST_MTIM_NSEC.
32005         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
32006
32007 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
32008
32009         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
32010
32011 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
32012
32013         * MODULES.html.sh (File system functions): Add stat-time.
32014         * modules/stat-time: New file.
32015         * modules/timespec (Files): Remove m4/st_mtim.m4; this
32016         is now done in a different way, by the stat-time module.
32017         * modules/utimecmp (Depends-on): Add stat-time.
32018
32019 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32020
32021         * m4/st_mtim.m4: Remove.  Superseded by...
32022         * m4/stat-time.m4: New file.
32023         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
32024         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
32025
32026 2005-09-15  Derek Price  <derek@ximbiot.com>
32027
32028         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
32029
32030 2005-09-15  Derek Price  <derek@ximbiot.com>
32031
32032         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
32033         * lib/regex_internal.c: Ditto, using this...
32034         (__GNUC_PREREQ): ...new macro.
32035         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
32036         using...
32037         (__GNUC_PREREQ): ...this new macro.
32038
32039         * lib/strstr.h: Include string.h. Define strstr as a macro here.
32040
32041 2005-09-15  Derek Price  <derek@ximbiot.com>
32042             Paul Eggert  <eggert@cs.ucla.edu>
32043
32044         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
32045         changes, consolidating in...
32046         * lib/regex_internal.h: ...this file.
32047
32048 2005-09-13  Jim Meyering  <jim@meyering.net>
32049
32050         * lib/canon-host.c: Filter through gnu indent and reword comments
32051         slightly.
32052         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
32053
32054 2005-09-13  Derek Price  <derek@ximbiot.com>
32055
32056         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
32057         failure.
32058         Reported by Jim Meyering  <jim@meyering.net>.
32059
32060 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
32061
32062         * lib/base64.c: Typo.
32063         (base64_encode): Put b64str in initialized data section.
32064
32065 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
32066
32067         Merge glibc and coreutils changes into gnulib, plus a few
32068         extra fixes.
32069         * lib/md5.c: Use #error rather than a string.
32070         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
32071         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
32072         (__attribute__): Define to empty for non recent-GCC.
32073         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
32074         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
32075         Renamed from their non-__ counterparts, with new macros replacing
32076         them if not _LIBC.  Add __THROW attribute.
32077         (rol): Remove.
32078         (struct md5_ctx): Align buffer if using GCC.
32079         * lib/sha1.h (struct sha1_ctx): Likewise.
32080         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
32081         The old name was backwards.
32082         (NOTSWAP): Remove; not used.
32083         (rol): New macro, moved here from md5.h.
32084         (sha1_process_block): Remove a FIXME that doesn't make sense.
32085
32086 2005-09-12  Derek Price  <derek@ximbiot.com>
32087
32088         Return usable errors from canon-host.
32089         * lib/canon-host.h: New file.
32090         * lib/canon-host.c (canon_host): Wrap...
32091         (canon_host_r): ...this new function, which now relies exclusively on
32092         getaddrinfo.
32093         (ch_strerror): New function.
32094         (last_cherror): New global.
32095         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
32096         interface.
32097         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
32098         void *.
32099         (freeaddrinfo): Free ai->ai_canonname when set.
32100
32101 2005-09-12  Derek Price  <derek@ximbiot.com>
32102
32103         Make canon-host require getaddrinfo.
32104         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
32105         AC_LIBSOURCE canon-host.h.  Call...
32106         (gl_PREREQ_CANON_HOST): ...this new function, which requires
32107         gl_GETADDRINFO.
32108         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
32109
32110 2005-09-12  Derek Price  <derek@ximbiot.com>
32111
32112         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
32113         LGPL.
32114         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
32115
32116 2005-09-12  Derek Price  <derek@ximbiot.com>
32117
32118         * lib/gai_strerror.c: Include config.h when available.  Include
32119         getaddrinfo.h before other headers to test interface.
32120         Reported by Larry Jones <lawrence.jones@ugs.com>.
32121
32122 2005-09-12  Derek Price  <derek@ximbiot.com>
32123             Paul Eggert  <eggert@cs.ucla.edu>
32124
32125         * modules/glob (Files): Add glob-libc.h.
32126
32127 2005-09-12  Derek Price  <derek@ximbiot.com>
32128             Paul Eggert  <eggert@cs.ucla.edu>
32129
32130         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
32131         glob_.h, glob-libc.h.
32132         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
32133
32134 2005-09-12  Derek Price  <derek@ximbiot.com>
32135             Paul Eggert  <eggert@cs.ucla.edu>
32136
32137         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
32138         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
32139         protecting things that should be done only in gnulib contexts.
32140         * lib/glob_.h: New file, containing only the glob things needed for
32141         gnulib.
32142         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
32143         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
32144         (glob, globfree, glob_pattern_p): Now defined simply in terms of
32145         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
32146         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
32147         and to respect the namespace rules better.
32148
32149 2005-09-08  Simon Josefsson  <jas@extundo.com>
32150
32151         * modules/socklen: New file.
32152
32153 2005-09-08  Simon Josefsson  <jas@extundo.com>
32154
32155         * m4/socklen.m4: New file.
32156
32157 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32158
32159         * modules/utimens (Files): Add m4/utimbuf.m4, since
32160         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
32161         Reported by Sergey Poznyakoff.
32162
32163 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32164
32165         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
32166         definitions, since that's the preferred style in glibc.
32167         Fix a minor spacing issue, and update copyright notice to match
32168         glibc's.
32169
32170 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32171
32172         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
32173
32174 2005-09-06  Simon Josefsson  <jas@extundo.com>
32175
32176         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
32177         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
32178
32179 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
32180
32181         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
32182         warning.
32183
32184 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
32185
32186         * config/srclist.txt: Add glibc bug 1302.
32187
32188 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
32189
32190         Change bitset word type from unsigned int to unsigned long int,
32191         as this has better performance on typical 64-bit hosts.
32192         Port bitset code to hosts with unusual word sizes.
32193         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
32194         (build_collating_symbol):
32195         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
32196         argument is a bitset.  This is merely a style issue, but it makes
32197         it clearer that an entire array is expected.
32198         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
32199         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
32200         Port to the case where bitset_word is not the same as unsigned int.
32201         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
32202         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
32203         Likewise.
32204         * lib/regexec.c (check_dst_limits_calc_pos_1,
32205         check_subexp_matching_top):
32206         (build_trtable, group_nodes_into_DFAstates):
32207         Likewise.
32208         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
32209         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
32210         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
32211         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
32212         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
32213         * lib/regcomp.c (optimize_subexps, lower_subexp):
32214         Work even if bitset_word has holes in its bitwise representation.
32215         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
32216         * lib/regexec.c (check_dst_limits_calc_pos_1,
32217         check_subexp_matching_top):
32218         Likewise.
32219         * lib/regex_internal.c (re_string_reconstruct):
32220         Don't assume UCHAR_MAX == 255.
32221         * lib/regex_internal.h (bitset_set_all): Likewise.
32222         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
32223         All uses changed.
32224         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
32225         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
32226         All uses changed.
32227         (BITSET_WORD_MAX): New macro.
32228         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
32229         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
32230         (bitset_empty, bitset_copy):
32231         Prefer sizeof (bitset) to multiplying it out ourselves.
32232         (bitset_not_merge): Remove; unused.
32233         (bitset_contain): Return bool, not unsigned int with one bit on.
32234         All callers changed.
32235         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
32236         alignment than re_node_set; do this by defining a new internal
32237         type struct dests_alloc and using it to allocate memory.
32238
32239 2005-09-05  Bruno Haible  <bruno@clisp.org>
32240
32241         * gnulib-tool (func_import): Fix comparison in handling of symbolic
32242         links.
32243
32244 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
32245
32246         * modules/size_max (Makefile.am): Add size_max.h
32247
32248 2005-09-04  Derek Price  <derek@ximbiot.com>
32249
32250         * gnulib-tool (func_import): Fix reversed $symbolic logic.
32251
32252 2005-09-03  Simon Josefsson  <jas@extundo.com>
32253
32254         * gnulib-tool: Fix typo.
32255
32256 2005-09-03  Simon Josefsson  <jas@extundo.com>
32257
32258         * config/srclist.txt: Add glibc bug 1293.
32259
32260 2005-09-03  Derek Price  <derek@ximbiot.com>
32261
32262         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
32263         From Larry Jones <lawrence.jones@ugs.com>.
32264
32265 2005-09-02  Simon Josefsson  <jas@extundo.com>
32266
32267         * modules/socklen: New file.
32268
32269 2005-09-02  Simon Josefsson  <jas@extundo.com>
32270
32271         * modules/havelib: New module.
32272
32273         * modules/gettext, modules/iconv, modules/lock, modules/readline:
32274         Use havelib.
32275
32276 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
32277
32278         Check for arithmetic overflow when calculating sizes, to prevent
32279         some buffer-overflow issues.  These patches are conservative, in the
32280         sense that when I couldn't determine whether an overflow was possible,
32281         I inserted a run-time check.
32282         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
32283         macros.
32284         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
32285         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
32286         (re_xnrealloc, re_x2nrealloc): New inline functions.
32287         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
32288         parse_bracket_exp):
32289         (build_equiv_class, build_charclass): Check for arithmetic overflow
32290         in size expression calculations.
32291         * lib/regex_internal.c (re_string_realloc_buffers):
32292         (build_wcs_upper_buffer, re_node_set_add_intersect):
32293         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
32294         (re_dfa_add_node, register_state): Likewise.
32295         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
32296         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
32297         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
32298         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
32299
32300 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
32301
32302         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
32303         m4/ulonglong.m4.  Problem reported by Martin Lambers.
32304
32305 2005-09-02  Bruno Haible  <bruno@clisp.org>
32306
32307         Support for lib vs. lib64 distinction on biarch platforms.
32308         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
32309         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
32310         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
32311
32312 2005-09-02  Bruno Haible  <bruno@clisp.org>
32313
32314         * gnulib-tool (import): In the other first-use case, provide defaults
32315         as well.
32316
32317 2005-09-02  Bruno Haible  <bruno@clisp.org>
32318
32319         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
32320         patches not yet found in the latest gettext release.
32321
32322 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32323
32324         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
32325         to avoid a collision with bits/local_lim.h in glibc.
32326         All uses changed.  Problem reported by Dmitry V. Levin in
32327         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
32328
32329         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
32330         bugs in int versus size_t comparisons.
32331         (re_string_context_at): Fix bug where the code assumed that
32332         Idx is signed.
32333
32334         Use bool where appropriate.
32335         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
32336         All callers changed.
32337         (calc_eclosure_iter): Likewise, for ROOT arg.
32338         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
32339         (build_charclass_op): Likewise, for NON_MATCH arg.
32340         * lib/regex_internal.c (re_string_allocate, re_string_construct):
32341         (re_string_construct_common): Likewise, for ICASE arg.
32342         * lib/regexec.c (re_search_2_stub, re_search_stub):
32343         Likewise, for RET_LEN arg.
32344         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
32345         (set_regs): Likewise, for FL_BACKTRACK arg.
32346         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
32347         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
32348         (calc_eclosure_iter, parse_bracket_exp):
32349         Use bool for internal variables that are booleans.
32350         * lib/regexec.c (re_search_internal, check_matching,
32351         proceed_next_node):
32352         (set_regs, build_sifted_states, sift_states_bkref):
32353         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
32354         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
32355         (find_collation_sequence_value):
32356         Likewise.
32357         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
32358         (re_node_set_compare):
32359         Return bool, not int. All callers changed.
32360         * lib/regexec.c (check_halt_node_context, check_dst_limits):
32361         (build_trtable, check_node_accept): Likewise.
32362         * lib/regex_internal.h: Include stdbool.h.
32363
32364         Fix bugs uncovered when converting to bool.
32365         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
32366         failure instead of charging ahead blindly.
32367         * lib/regex_internal.c (register_state): Likewise.
32368         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
32369         for freeing internal storage.
32370         (group_nodes_into_DFA_states): Use unsigned int, not int, for
32371         bitset pieces used as boolean, to avoid undefined behavior
32372         on hosts that do int overflow checking.
32373
32374 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32375
32376         * config/srclist.txt: Add glibc bugs 1285-1287.
32377
32378 2005-09-01  Jim Meyering  <jim@meyering.net>
32379
32380         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
32381         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
32382         Require gl_STAT_MACROS, too.
32383
32384 2005-09-01  Bruno Haible  <bruno@clisp.org>
32385
32386         * gnulib-tool (import): In the first-use case, provide defaults.
32387
32388 2005-09-01  Bruno Haible  <bruno@clisp.org>
32389
32390         * gnulib-tool (func_import): Remove the .tmp files.
32391
32392 2005-09-01  Bruno Haible  <bruno@clisp.org>
32393
32394         * gnulib-tool (func_import): Fix handling of symbolic links.
32395
32396 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32397
32398         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
32399         old glibc regex code mishandles strings longer than 2**31 bytes.
32400         This patch fixes this when the regex code is used in gnulib
32401         (i.e., outside glibc).
32402
32403         This patch should not affect the use of the regex code inside
32404         glibc.  No doubt this problem also needs to be handled for glibc
32405         as well, but the result will be an incompatible change to the
32406         glibc ABI, and the old ABI will have to be supported too.  That
32407         can be the the subject for another patch.
32408
32409         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
32410         governing whether the rest of this patch is active.  By default,
32411         the macro is disabled and the patch has no effect.
32412         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
32413         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
32414         (struct re_pattern_buffer, re_search, re_search_2, re_match):
32415         (re_match_2, re_set_registers): Use the new types.
32416         * lib/regex_internal.h (Idx, re_hashval_t): New types.
32417         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
32418         New macros.
32419         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
32420         (re_string_context_at, bin_tree_t, re_dfastate_t):
32421         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
32422         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
32423         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
32424         (re_string_char_size_at, re_string_wchar_at):
32425         (re_string_elem_size_at):
32426         Use the new types and macros to port to 64-bit hosts.
32427         Use unsigned types for internal values, so that the code
32428         mostly works even for arrays larger than SSIZE_MAX.
32429         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
32430         (search_duplicated_node, calc_eclosure_iter, fetch_number):
32431         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
32432         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
32433         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
32434         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
32435         (calc_inveclosure, parse_dup_op, build_range_exp):
32436         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
32437         (fetch_number, create_token_tree, mark_opt_subexp):
32438         Likewise.
32439         * lib/regex_internal.c (re_string_construct_common,
32440         create_ci_newstate):
32441         (create_cd_newstate, re_string_allocate, re_string_construct):
32442         (re_string_realloc_buffers, build_wcs_upper_buffer):
32443         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
32444         (re_string_reconstruct, re_string_peek_byte_case):
32445         (re_string_fetch_byte_case, re_string_context_at):
32446         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
32447         (re_node_set_init_copy, re_node_set_add_intersect):
32448         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
32449         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
32450         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
32451         (re_acquire_state, re_acquire_state_context, register_state):
32452         Likewise.
32453         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
32454         search_cur_bkref_entry):
32455         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
32456         (re_search_internal, re_search_2_stub, re_search_stub)
32457         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
32458         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
32459         (update_cur_sifted_state, check_dst_limits):
32460         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
32461         (check_subexp_limits, sift_states_bkref, merge_state_array):
32462         (check_subexp_matching_top, get_subexp, get_subexp_sub):
32463         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
32464         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
32465         (expand_bkref_cache, check_node_accept_bytes):
32466         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
32467         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
32468         (acquire_init_state_context, check_halt_node_context):
32469         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
32470         (sift_states_backward, clean_state_log_if_needed):
32471         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
32472         (find_recover_state, transit_state_sb, transit_state_mb):
32473         (transit_state_bkref, build_trtable, match_ctx_clean):
32474         Likewise.
32475         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
32476         to work around an assumption that REG_MISSING is negative.
32477
32478         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
32479         (seek_collating_symbol_entry) [defined _LIBC]:
32480         (lookup_collation_sequence_value) [defined _LIBC]:
32481         (build_range_exp, build_collating_symbol) [defined _LIBC]:
32482         Use prototypes rather than old-style function definitions.
32483         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
32484         (transit_state_sb) [0]:
32485         (find_collation_sequence_value) [defined _LIBC]: Likewise.
32486
32487         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
32488         rm_eo.
32489
32490         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
32491         (optimize_subexps, lower_subexp):
32492         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
32493         since the signed shift might overflow.  Use 1u<<31 instead.
32494         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
32495         Likewise.
32496         * lib/regexec.c (check_dst_limits_calc_pos_1,
32497         check_subexp_matching_top): Likewise.
32498
32499         * lib/regcomp.c (optimize_subexps, lower_subexp):
32500         Use CHAR_BIT rather than 8, for clarity.
32501         * lib/regexec.c (check_dst_limits_calc_pos_1):
32502         (check_subexp_matching_top): Likewise.
32503         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
32504         have to worry about portability issues when shifting it left.
32505         Remove no-longer-needed test for table_size > 0.
32506         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
32507         in a word, as the resulting behavior is undefined.
32508         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
32509         in one case, a <= should have been an <, and in another case the
32510         whole test was missing.
32511         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
32512         the standard name CHAR_BIT.
32513         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
32514         this is not true on one's complement and signed-magnitude hosts.
32515
32516         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
32517         next_last_offset.
32518         (struct re_dfa_t): Remove unused member states_alloc.
32519         * lib/regcomp.c (init_dfa): Don't initialize unused members.
32520
32521 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32522
32523         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
32524         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
32525         and large-file glibc and in 32-bit large-file Solaris.
32526
32527 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32528
32529         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
32530         lengths fit in regoff_t; this isn't true if regoff_t is the same
32531         width as size_t.
32532         * lib/regex.c (re_search_internal): 5th arg is LAST_START
32533         (= START + RANGE) instead of RANGE.  This avoids overflow
32534         problems when regoff_t is the same width as size_t.
32535         All callers changed.
32536         (re_search_2_stub): Check for overflow when adding the
32537         sizes of the two strings.
32538         (re_search_stub): Check for overflow when adding START
32539         to RANGE; if it occurs, substitute the extreme value.
32540
32541 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32542
32543         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
32544
32545 2005-08-31  Jim Meyering  <jim@meyering.net>
32546
32547         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
32548         a pointer-to-const.
32549         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
32550         (register_state): Likewise.
32551         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
32552         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
32553         (group_nodes_into_DFAstates): Likewise.
32554
32555 2005-08-31  Jim Meyering  <jim@meyering.net>
32556
32557         * check-module: Add a FIXME comment.
32558
32559 2005-08-31  Eric Blake  <ebb9@byu.net>
32560
32561         * modules/unistd-safer (Files): Add unistd--.h.
32562         * modules/stdio-safer (Files): Add stdio--.h.
32563
32564 2005-08-31  Derek Price  <derek@ximbiot.com>
32565
32566         * lib/getdelim.c (getdelim): Return EOF on EOF.
32567         Reported by Larry Jones <lawrence.jones@ugs.com>.
32568
32569 2005-08-31  Bruno Haible  <bruno@clisp.org>
32570
32571         Avoid unnecessary diffs in the generated lib/Makefile.am.
32572         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
32573         the generated files.
32574         (func_import): Don't set cmd.
32575
32576 2005-08-31  Bruno Haible  <bruno@clisp.org>
32577
32578         * lib/strstr.c: Include <stddef.h>, for NULL.
32579         * lib/strcasestr.c: Likewise.
32580         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
32581
32582 2005-08-31  Bruno Haible  <bruno@clisp.org>
32583
32584         * gnulib-tool: New option --macro-prefix.
32585         (func_import): Use macro_prefix.
32586         (import): Handle option --macro-prefix.
32587
32588 2005-08-31  Bruno Haible  <bruno@clisp.org>
32589
32590         * gnulib-tool (import): Rename most ac_* variables to cached_*.
32591         Also use new variables cached_lgpl, cached_libtool.
32592
32593 2005-08-31  Bruno Haible  <bruno@clisp.org>
32594
32595         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
32596         always instantiating them.
32597
32598 2005-08-31  Bruno Haible  <bruno@clisp.org>
32599
32600         * gnulib-tool (func_import): Read the previous cached settings
32601         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
32602         earlier added by gnulib but are now dropped. Warn when a gnulib file
32603         overwrites a non-gnulib file.
32604
32605 2005-08-31  Bruno Haible  <bruno@clisp.org>
32606
32607         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
32608         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
32609         projects that don't keep autogenerated files in CVS. Put into
32610         actioncmd only the specified modules, not the transitive closure.
32611
32612 2005-08-31  Bruno Haible  <bruno@clisp.org>
32613
32614         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
32615         Create directories that shall be filled.
32616         (import): Don't look for gl_* macros in configure.ac. Recurse across
32617         all directories containing a gnulib-cache.m4 files, if meaningful.
32618
32619 2005-08-31  Bruno Haible  <bruno@clisp.org>
32620
32621         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
32622         (import): Set seen_libtool when we see gl_LIBTOOL.
32623
32624 2005-08-31  Bruno Haible  <bruno@clisp.org>
32625
32626         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
32627         declaration macro definitions from generated gnulib.m4.
32628
32629 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
32630
32631         * lib/iconvme.h: Add prototype for iconv_alloc.
32632
32633 2005-08-29  Simon Josefsson  <jas@extundo.com>
32634
32635         * lib/iconvme.c: Fix errno.
32636
32637 2005-08-29  Bruno Haible  <bruno@clisp.org>
32638
32639         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
32640         that it works when the directory contains spaces.
32641
32642 2005-08-29  Bruno Haible  <bruno@clisp.org>
32643
32644         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
32645
32646 2005-08-29  Bruno Haible  <bruno@clisp.org>
32647
32648         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
32649         Emit more advice.
32650
32651 2005-08-29  Bruno Haible  <bruno@clisp.org>
32652         and Stepan Kasal  <kasal@ucw.cz>
32653
32654         * check-module: If more parameters are given, check each of them
32655         separately; add more exceptions, as noted by Jim Meyering.
32656         (check_module): New procedure.
32657         (%exempt_header): Now contains all exceptions.
32658
32659 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
32660
32661         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
32662
32663 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
32664
32665         * lib/iconvme.c: Split iconv_string into iconv_alloc.
32666
32667 2005-08-28  Bruno Haible  <bruno@clisp.org>
32668
32669         * m4/gnulib-tool.m4: New file.
32670
32671 2005-08-27  Jim Meyering  <jim@meyering.net>
32672
32673         * modules/unistd-safer (Files): Add pipe-safer.c.
32674         * modules/fcntl-safer (Files): Add creat-safer.c.
32675
32676 2005-08-27  Jim Meyering  <jim@meyering.net>
32677
32678         * m4/stdlib-safer.m4: New file.  From coreutils.
32679         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
32680         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
32681         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
32682         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
32683         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
32684
32685 2005-08-27  Jim Meyering  <jim@meyering.net>
32686
32687         * lib/fopen-safer.c: Merge minor changes from coreutils.
32688         * lib/dup-safer.c: Likewise.
32689         * lib/fd-safer.c: Likewise.
32690
32691         Merge from coreutils.
32692         * lib/stdio--.h: New file.
32693         * lib/stdlib--.h: New file.
32694         * lib/mkstemp-safer.c: New file.
32695
32696         GNU tar needs these.
32697         * lib/pipe-safer.c: New file.
32698         * lib/creat-safer.c: New file.
32699         * lib/fcntl--.h (creat): Define to creat_safer.
32700         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
32701         * lib/unistd--.h (pipe): Define to pipe_safer.
32702         * lib/unistd-safer.h: Declare pipe_safer.
32703
32704 2005-08-26  Simon Josefsson  <jas@extundo.com>
32705
32706         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
32707         Haible <bruno@clisp.org>.
32708
32709 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
32710
32711         * lib/regex_internal.h: Remove all references to
32712         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
32713         or better.
32714         (bitset_not, bitset_merge, bitset_not_merge):
32715         (bitset_mask, re_string_allocate, re_string_construct):
32716         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
32717         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
32718         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
32719         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
32720         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
32721         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
32722         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
32723         (re_acquire_state_context):
32724         Remove unnecessary forward decls.
32725         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
32726         Put __attribute at function definition,
32727         now that the function decl has been removed.
32728         * lib/regex_internal.c (re_string_peek_byte_case):
32729         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
32730         Likewise.
32731
32732 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
32733
32734         * m4/regex.m4: Add AC_PREREQ(2.50).
32735         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
32736
32737 2005-08-25  Simon Josefsson  <jas@extundo.com>
32738
32739         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
32740         __fsetlocking.
32741
32742 2005-08-25  Simon Josefsson  <jas@extundo.com>
32743
32744         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
32745         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
32746         GLIBC specific code.
32747
32748 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32749
32750         Make regex safe for g++.  This fixes one real bug (an "err"
32751         that should have been "*err").  g++ problem reported by
32752         Sam Steingold.
32753         * lib/regex_internal.h (re_calloc): New macro, consistent with
32754         re_malloc etc.  All callers of calloc changed to use re_calloc.
32755         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
32756         not int.  All callers changed.
32757         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
32758         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
32759         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
32760         (find_recover_state): Change "err" to "*err"; this fixes what
32761         appears to be a real bug.
32762         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
32763         versus int.
32764
32765 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32766
32767         * modules/regex (Depends-on): Add malloc, since the code
32768         assumes that !malloc(0) means failure.
32769
32770 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32771
32772         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
32773
32774         alloca modernization/simplification for regex.
32775         * lib/regex.c: Remove portability cruft for alloca.  This no longer
32776         needs to be at the start of the file, and can be moved into
32777         regex_internal.h and simplified.
32778         * lib/regex_internal.h: Include <alloca.h>.
32779         (__libc_use_alloca) [!defined _LIBC]: New macro.
32780         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
32781         now works outside glibc.
32782
32783 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32784
32785         * config/srclist.txt: Add glibc bugs 1241, 1245.
32786
32787 2005-08-25  Jim Meyering  <jim@meyering.net>
32788
32789         * lib/open-safer.c: Include <config.h>.
32790         Otherwise, we'd lose LARGEFILE support in any file using
32791         e.g. "fcntl--.h"
32792
32793 2005-08-25  Bruno Haible  <bruno@clisp.org>
32794
32795         * m4/minmax.m4: Require autoconf 2.52.
32796         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
32797         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
32798         alternatives of translit over the alphabet.
32799         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
32800
32801 2005-08-24  Simon Josefsson  <jas@extundo.com>
32802
32803         * tests/test-getpass.c: New file.
32804
32805 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
32806
32807         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
32808         for GNU regex features.
32809
32810 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
32811
32812         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
32813         * lib/regex.h (regerror): Likewise.
32814
32815         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
32816         requires this.  (The code never needed it.)
32817
32818         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
32819         All uses of recently-renamed identifiers changed to use the new,
32820         POSIX-compliant names.  The code will build and run just fine
32821         without these changes, but it's better to eat our own dog food
32822         and use the standard-conforming names.
32823
32824         * lib/regex.h: Fix a multitude of POSIX name space violations.
32825         These changes have an effect only for programs that define
32826         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
32827         do not change anything for programs compiled in the normal way.
32828         Also, there is no effect on the ABI.
32829
32830         (_REGEX_SOURCE): New macro.
32831         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
32832         defined and _GNU_SOURCE is not; this fixes a name space violation.
32833
32834         Rename the following macros to obey POSIX requirements.
32835         The old names are still visible as macros if _REGEX_SOURCE is defined.
32836         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
32837         RE_BACKSLASH_ESCAPE_IN_LISTS.
32838         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
32839         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
32840         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
32841         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
32842         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
32843         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
32844         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
32845         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
32846         (REG_INTERVALS): renamed from RE_INTERVALS.
32847         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
32848         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
32849         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
32850         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
32851         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
32852         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
32853         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
32854         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
32855         RE_UNMATCHED_RIGHT_PAREN_ORD.
32856         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
32857         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
32858         (REG_DEBUG): renamed from RE_DEBUG.
32859         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
32860         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
32861         unusual, since we can't clash with the POSIX REG_ICASE.
32862         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
32863         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
32864         (REG_NO_SUB): renamed from RE_NO_SUB.
32865         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
32866         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
32867         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
32868         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
32869         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
32870         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
32871         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
32872         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
32873         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
32874         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
32875         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
32876         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
32877         RE_SYNTAX_POSIX_MINIMAL_BASIC.
32878         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
32879         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
32880         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
32881         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
32882         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
32883         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
32884         (REG_FIXED): Renamed from REGS_FIXED.
32885         (REG_NREGS): Renamed from RE_NREGS.
32886
32887         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
32888         of other REG_* macros, since POSIX says the user is allowed to
32889         #undef these macros selectively.
32890
32891         (reg_errcode_t): Update comment stating what other tables need
32892         to be consistent.
32893
32894         Rename the following enum values to obey POSIX requirements.
32895         The old names are still visible as macros.
32896         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
32897         is not defined, since GNU is supposed to be a superset of POSIX as
32898         much as possible, and since we want reg_errcode_t to be a signed
32899         type for implementation consistency.
32900         (_REG_NOERROR): Renamed from REG_NOERROR.
32901         (_REG_NOMATCH): Renamed from REG_NOMATCH.
32902         (_REG_BADPAT): Renamed from REG_BADPAT.
32903         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
32904         (_REG_ECTYPE): Renamed from REG_ECTYPE.
32905         (_REG_EESCAPE): Renamed from REG_EESCAPE.
32906         (_REG_ESUBREG): Renamed from REG_ESUBREG.
32907         (_REG_EBRACK): Renamed from REG_EBRACK.
32908         (_REG_EPAREN): Renamed from REG_EPAREN.
32909         (_REG_EBRACE): Renamed from REG_EBRACE.
32910         (_REG_BADBR): Renamed from REG_BADBR.
32911         (_REG_ERANGE): Renamed from REG_ERANGE.
32912         (_REG_ESPACE): Renamed from REG_ESPACE.
32913         (_REG_BADRPT): Renamed from REG_BADRPT.
32914         (_REG_EEND): Renamed from REG_EEND.
32915         (_REG_ESIZE): Renamed from REG_ESIZE.
32916         (_REG_ERPAREN): Renamed from REG_ERPAREN.
32917         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
32918         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
32919         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
32920         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
32921
32922         (_REG_RE_NAME, _REG_RM_NAME): New macros.
32923         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
32924         changed.  But support the old name if the new one is not defined
32925         and if _REGEX_SOURCE.
32926
32927         Change the following member names in struct re_pattern_buffer.
32928         The old names are still supported if !_REGEX_SOURCE.
32929         The new names are always supported, regardless of _REGEX_SOURCE.
32930         (re_buffer): Renamed from buffer.
32931         (re_allocated): Renamed from allocated.
32932         (re_used): Renamed from used.
32933         (re_syntax): Renamed from syntax.
32934         (re_fastmap): Renamed from fastmap.
32935         (re_translate): Renamed from translate.
32936         (re_can_be_null): Renamed from can_be_null.
32937         (re_regs_allocated): Renamed from regs_allocated.
32938         (re_fastmap_accurate): Renamed from fastmap_accurate.
32939         (re_no_sub): Renamed from no_sub.
32940         (re_not_bol): Renamed from not_bol.
32941         (re_not_eol): Renamed from not_eol.
32942         (re_newline_anchor): Renamed from newline_anchor.
32943
32944         Change the following member names in struct re_registers.
32945         The old names are still supported if !_REGEX_SOURCE.
32946         The new names are always supported, regardless of _REGEX_SOURCE.
32947         (rm_num_regs): Renamed from num_regs.
32948         (rm_start): Renamed from start.
32949         (rm_end): Renamed from end.
32950
32951         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
32952         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
32953         Prepend __ to parameter names.
32954
32955         Undo yesterday's changes.
32956
32957 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
32958
32959         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
32960         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
32961         lib/regex.c.
32962
32963 2005-08-24  Jim Meyering  <jim@meyering.net>
32964
32965         Sync from coreutils.
32966         * m4/fcntl-safer.m4: New file.
32967
32968         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
32969         and object files for this module.
32970
32971 2005-08-24  Jim Meyering  <jim@meyering.net>
32972
32973         Sync from coreutils.
32974         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
32975
32976 2005-08-24  Jim Meyering  <jim@meyering.net>
32977
32978         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
32979         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
32980
32981 2005-08-24  Jim Meyering  <jim@meyering.net>
32982
32983         * modules/fcntl-safer: New module.
32984         * modules/fts (Depends-on): Add fcntl-safer.
32985         * MODULES.html.sh (File descriptor based Input/Output):
32986         Add fcntl-safer.
32987
32988 2005-08-24  Bruno Haible  <bruno@clisp.org>
32989
32990         Support for unit test modules.
32991         * modules/README: Mention tests modules.
32992         * modules/TEMPLATE-TESTS: New file.
32993         * gnulib-tool: New options --extract-tests-module, --with-tests and
32994         --tests-base (unused for the moment).
32995         (testsbase, inctests): New variables.
32996         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
32997         (func_verify_module): Exclude TEMPLATE-TESTS.
32998         (func_verify_nontests_module, func_verify_tests_module): New functions.
32999         (func_get_dependencies): Add implicit dependency for tests modules.
33000         (func_get_tests_module): New function.
33001         (func_modules_transitive_closure): When --with-tests was specified,
33002         include the unit tests as well, unless explicitly avoided.
33003         (func_emit_lib_Makefile_am): Ignore the tests modules here.
33004         (func_emit_tests_Makefile_am): New function.
33005         (func_create_testdir): When --with-tests was specified, emit a
33006         tests/ directory.
33007         * MODULES.html.sh (Future developments): Update.
33008
33009 2005-08-24  Bruno Haible  <bruno@clisp.org>
33010
33011         * modules/tls-tests: New file.
33012         * tests/test-tls.c: New file, from GNU gettext.
33013
33014 2005-08-24  Bruno Haible  <bruno@clisp.org>
33015
33016         * modules/lock-tests: New file.
33017         * tests/test-lock.c: New file, from GNU gettext.
33018
33019 2005-08-24  Bruno Haible  <bruno@clisp.org>
33020
33021         * lib/lock.h: Add multiple inclusion guard.
33022         * lib/tls.h: Add multiple inclusion guard.
33023
33024 2005-08-24  Bruno Haible  <bruno@clisp.org>
33025
33026         * gnulib-tool: Add support for the --aux-dir option to
33027         --create-testdir, --create-megatestdir, --test, --megatest.
33028         (func_create_testdir, func_create_megatestdir): Optionally emit a
33029         AC_CONFIG_AUX_DIR directive.
33030         (create-testdir, create-megatestdir, test, megatest): Provide a
33031         default value for $auxdir.
33032
33033 2005-08-24  Bruno Haible  <bruno@clisp.org>
33034
33035         * gnulib-tool (import): Use compound statement instead of subshell
33036         where possible.
33037
33038 2005-08-24  Bruno Haible  <bruno@clisp.org>
33039
33040         * gnulib-tool (import): Change --aux-dir default to "build-aux".
33041
33042 2005-08-24  Bruno Haible  <bruno@clisp.org>
33043
33044         * gnulib-tool (func_version): Update.
33045
33046 2005-08-24  Bruno Haible  <bruno@clisp.org>
33047
33048         * gnulib-tool (func_import, func_create_testdir,
33049         func_create_megatestdir): Quote all autoconf macro arguments.
33050
33051 2005-08-24  Bruno Haible  <bruno@clisp.org>
33052
33053         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
33054         option --force, because --force causes the aclocal.m4 of each
33055         subdirectory to be newer than the corresponding config.h.in.
33056
33057 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33058
33059         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
33060         All contents moved to gl_REGEX.
33061         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
33062         assume that it does.
33063
33064 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33065
33066         * lib/regex.h (REG_NOSYS)
33067         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
33068         Define, since POSIX requires it as of 2001.
33069         (_REG_ENOSYS)
33070         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
33071         New private symbol, used to keep the enum signed in all cases.
33072         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
33073         Youngman in
33074         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
33075
33076         * lib/regex_internal.c (re_string_skip_chars, register_state):
33077         (calc_state_hash):
33078         Remove forward decls; no longer needed now that we use prototypes.
33079         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
33080         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
33081         (clean_state_log_if_needed): Likewise.
33082
33083 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
33084
33085         * config/srclist.txt: Add glibc bugs 1231-1233.
33086
33087 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33088
33089         Fix problems reported by Sam Steingold in
33090         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
33091         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
33092         assumed that reg_errcode_t is a signed type, which is not
33093         necessarily true if _XOPEN_SOURCE is not defined.
33094         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
33095         since some compilers warn about it otherwise.
33096
33097 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33098
33099         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
33100         (init_word_char, create_initial_state, duplicate_node_closure):
33101         (fetch_token, peek_token_bracket, build_range_exp):
33102         (build_collating_symbol): Remove forward decls; no longer needed
33103         now that we use prototypes.
33104
33105         * lib/regcomp.c:
33106         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
33107         (re_compile_fastmap_iter, regcomp, regerror, regfree):
33108         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
33109         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
33110         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
33111         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
33112         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
33113         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
33114         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
33115         (build_range_exp, build_collating_symbol, parse_bracket_exp):
33116         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
33117         (build_charclass, build_charclass_op, fetch_number, create_tree):
33118         (create_token_tree, mark_opt_subexp, duplicate_tree):
33119         Use prototypes rather than old-style definitions.
33120
33121         * lib/regex_internal.c:
33122         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
33123         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
33124         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
33125         (re_string_reconstruct, re_string_peek_byte_case):
33126         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
33127         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
33128         (re_node_set_init_copy, re_node_set_add_intersect):
33129         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
33130         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
33131         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
33132         (re_acquire_state, re_acquire_state_context, register_state):
33133         (create_ci_newstate, create_cd_newstate, free_state):
33134         Likewise.
33135         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
33136         re_search_2):
33137         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
33138         (re_search_internal, prune_impossible_nodes):
33139         (acquire_init_state_context, check_matching, static):
33140         (check_halt_node_context, check_halt_state_context, proceed_next_node):
33141         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
33142         (update_regs, sift_states_backward, build_sifted_states):
33143         (clean_state_log_if_needed, merge_state_array):
33144         (update_cur_sifted_state, add_epsilon_src_nodes):
33145         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
33146         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
33147         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
33148         (find_recover_state, check_subexp_matching_top, transit_state_mb):
33149         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
33150         (check_arrival, check_arrival_add_next_nodes):
33151         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
33152         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
33153         (check_node_accept_bytes, check_node_accept, extend_buffers):
33154         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
33155         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
33156         (sift_ctx_init):
33157         Likewise.
33158
33159         * lib/regex_internal.h:
33160         (re_string_allocate, re_string_construct, re_string_reconstruct):
33161         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
33162         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
33163         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
33164         (re_string_context_at, re_string_peek_byte_case):
33165         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
33166         is defined, since we now use prototypes always.
33167
33168         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
33169         C89 or better.  All uses removed.
33170
33171 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33172
33173         * config/srclist.txt: Add glibc bugs 1220-1227.
33174
33175 2005-08-20  Jim Meyering  <jim@meyering.net>
33176
33177         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
33178         of unused local, dfa.
33179
33180 2005-08-20  Bruno Haible  <bruno@clisp.org>
33181
33182         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
33183
33184 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33185
33186         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
33187         (re_node_set_insert_last, re_dfa_add_node):
33188         Rename local variables to avoid GCC shadowing warnings.
33189
33190 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33191
33192         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
33193         [defined lint]: Suppress bogus uninitialized-variable warnings.
33194
33195         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
33196         and let the caller return REG_ESPACE if out of space.  This
33197         removes an uninitialied-variable warning with GCC 4.0.1, and also
33198         avoids taking the address of a local variable.  All callers
33199         changed.
33200
33201 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33202
33203         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
33204         $LIBCSRC/posix/regexec.c.
33205         Add glibc bug 1217 for regcomp.c.
33206
33207 2005-08-19  Jim Meyering  <jim@meyering.net>
33208
33209         * lib/regexec.c (proceed_next_node): Redo local variables to
33210         avoid GCC shadowing warnings.
33211
33212 2005-08-18  Bruno Haible  <bruno@clisp.org>
33213
33214         * lib/strstr.c (strstr): Fix return value in multibyte case.
33215         * lib/strcasestr.c (strcasestr): Likewise.
33216
33217 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33218
33219         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
33220
33221 2005-08-17  Jim Meyering  <jim@meyering.net>
33222
33223         Make the %s format (seconds since the epoch) work for a negative
33224         number and when used with a zero-padded field width, e.g. %015s.
33225
33226         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
33227         label so that it precedes the code to set `digits'.  Otherwise,
33228         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
33229         print `00-22'.  Now, it prints `-0022', as it should.
33230
33231 2005-08-17  Bruno Haible  <bruno@clisp.org>
33232
33233         * modules/strstr (Files): Add m4/mbrtowc.m4.
33234         (Depends-on): Add mbuiter.
33235
33236 2005-08-17  Bruno Haible  <bruno@clisp.org>
33237
33238         * modules/strcasestr: New file.
33239         * MODULES.html.sh (String handling, based on ANSI C 89): Add
33240         strcasestr.
33241
33242 2005-08-17  Bruno Haible  <bruno@clisp.org>
33243
33244         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
33245
33246 2005-08-17  Bruno Haible  <bruno@clisp.org>
33247
33248         * modules/mbuiter: New file.
33249         * MODULES.html.sh (Extended multibyte and wide character utilities):
33250         Add mbuiter.
33251
33252 2005-08-17  Bruno Haible  <bruno@clisp.org>
33253
33254         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
33255         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
33256
33257 2005-08-17  Bruno Haible  <bruno@clisp.org>
33258
33259         * m4/strcasestr.m4: New file.
33260
33261 2005-08-17  Bruno Haible  <bruno@clisp.org>
33262
33263         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
33264         * lib/strstr.c: Completely rewritten, with multibyte locale support.
33265
33266 2005-08-17  Bruno Haible  <bruno@clisp.org>
33267
33268         * lib/strcasestr.h: New file.
33269         * lib/strcasestr.c: New file.
33270
33271 2005-08-17  Bruno Haible  <bruno@clisp.org>
33272
33273         * lib/strcasecmp.c: Use mbuiter.h.
33274
33275 2005-08-17  Bruno Haible  <bruno@clisp.org>
33276
33277         * lib/mbuiter.h: New file.
33278
33279 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
33280
33281         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
33282         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
33283         and gl_GETOPT are both invoked via different paths (as happens
33284         with GNU tar CVS because it uses both argp and getopt), the former
33285         wins.
33286
33287 2005-08-16  Bruno Haible  <bruno@clisp.org>
33288
33289         * modules/tls: New file.
33290         * MODULES.html.sh (Multithreading): Add tls.
33291
33292 2005-08-16  Bruno Haible  <bruno@clisp.org>
33293
33294         * modules/strnlen1: New file.
33295         * MODULES.html.sh (String handling): Add strnlen1.
33296
33297 2005-08-16  Bruno Haible  <bruno@clisp.org>
33298
33299         * modules/strcase (Files): Add m4/mbrtowc.m4.
33300         (Depends-on): Add strnlen1, mbchar.
33301
33302 2005-08-16  Bruno Haible  <bruno@clisp.org>
33303
33304         * modules/mbiter: New file.
33305         * MODULES.html.sh (Extended multibyte and wide character utilities):
33306         Add mbiter.
33307
33308 2005-08-16  Bruno Haible  <bruno@clisp.org>
33309
33310         * modules/mbfile: New file.
33311         * MODULES.html.sh (Extended multibyte and wide character utilities):
33312         Add mbfile.
33313
33314 2005-08-16  Bruno Haible  <bruno@clisp.org>
33315
33316         * modules/mbchar: New file.
33317         * MODULES.html.sh (Extended multibyte and wide character utilities):
33318         New section.
33319
33320 2005-08-16  Bruno Haible  <bruno@clisp.org>
33321
33322         * m4/tls.m4: New file, from GNU gettext.
33323
33324 2005-08-16  Bruno Haible  <bruno@clisp.org>
33325
33326         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
33327         always.
33328         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
33329
33330 2005-08-16  Bruno Haible  <bruno@clisp.org>
33331
33332         * m4/mbiter.m4: New file.
33333
33334 2005-08-16  Bruno Haible  <bruno@clisp.org>
33335
33336         * m4/mbfile.m4: New file.
33337
33338 2005-08-16  Bruno Haible  <bruno@clisp.org>
33339
33340         * m4/mbchar.m4: New file.
33341
33342 2005-08-16  Bruno Haible  <bruno@clisp.org>
33343
33344         * lib/tls.h: New file, from GNU gettext.
33345         * lib/tls.c: New file, from GNU gettext.
33346
33347 2005-08-16  Bruno Haible  <bruno@clisp.org>
33348
33349         * lib/strnlen1.h: New file.
33350         * lib/strnlen1.c: New file.
33351
33352 2005-08-16  Bruno Haible  <bruno@clisp.org>
33353
33354         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
33355         (mbi_init): Update.
33356         (mbi_avail, mbi_advance): Let the iteration end before the terminating
33357         NUL byte, not after it.
33358
33359 2005-08-16  Bruno Haible  <bruno@clisp.org>
33360
33361         * lib/strcase.h (strcasecmp): Add note in comments.
33362         * lib/strncasecmp.c: Use code from strcasecmp.c.
33363         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
33364         (strcasecmp): Work correctly in multibyte locales.
33365
33366 2005-08-16  Bruno Haible  <bruno@clisp.org>
33367
33368         * lib/mbiter.h: New file.
33369
33370 2005-08-16  Bruno Haible  <bruno@clisp.org>
33371
33372         * lib/mbfile.h: New file.
33373
33374 2005-08-16  Bruno Haible  <bruno@clisp.org>
33375
33376         * lib/mbchar.h: New file.
33377         * lib/mbchar.c: New file.
33378
33379 2005-08-16  Bruno Haible  <bruno@clisp.org>
33380
33381         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
33382         the valid ones. Makes the comparison operations transitive:
33383         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
33384         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
33385
33386 2005-08-15  Simon Josefsson  <jas@extundo.com>
33387
33388         * modules/ssize_t (License): Change to 'unlimited'.
33389
33390         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
33391
33392 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33393
33394         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
33395         Add comments for each pending glibc patch.
33396
33397 2005-08-15  Bruno Haible  <bruno@clisp.org>
33398
33399         * lib/regex.h (__restrict_arr): Don't define to __restrict if
33400         __cplusplus is defined.
33401
33402 2005-08-14  Jim Meyering  <jim@meyering.net>
33403
33404         Sync from coreutils.
33405
33406         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
33407         Use the hash-table-based cycle-detection code not just when
33408         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
33409         Reported by James Youngman in
33410         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
33411         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
33412         FTS_TIGHT_CYCLE_CHECK.
33413         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
33414         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
33415         once again.
33416         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
33417         * lib/fts.c (fd_safer): Remove decl.
33418         Include fcntl--.h rather than unistd-safer.h
33419         (fts_safe_changedir): Don't call fd_safer; no longer needed
33420         now that we include fcntl--.h.
33421
33422 2005-08-12  Simon Josefsson  <jas@extundo.com>
33423
33424         * modules/getndelim2: Use ssize_t module.
33425         * modules/getnline: Likewise.
33426         * modules/safe-read: Likewise.
33427         * modules/xreadlink: Likewise.
33428
33429         * modules/ssize_t: New file.
33430
33431 2005-08-12  Simon Josefsson  <jas@extundo.com>
33432
33433         * m4/readline.m4: Look for termcap, curses or ncurses if required.
33434
33435 2005-08-12  Simon Josefsson  <jas@extundo.com>
33436
33437         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
33438         ssize_t.
33439
33440 2005-08-12  Simon Josefsson  <jas@extundo.com>
33441
33442         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
33443         readline, getdelim and check_version.
33444         (Support for systems lacking ISO C 99: Sizes of integer types):
33445         Add size_max.
33446
33447 2005-08-12  Bruno Haible  <bruno@clisp.org>
33448
33449         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
33450
33451 2005-08-11  Simon Josefsson  <jas@extundo.com>
33452
33453         * modules/readline: New file.
33454
33455         * modules/strnlen (Files): Add strnlen.h.
33456
33457 2005-08-11  Simon Josefsson  <jas@extundo.com>
33458
33459         * m4/readline.m4: New file.
33460
33461 2005-08-11  Simon Josefsson  <jas@extundo.com>
33462
33463         * lib/readline.h, readline.c: New file.
33464
33465 2005-08-11  Simon Josefsson  <jas@extundo.com>
33466
33467         * doc/gnulib.texi (Initial import, Finishing touches): Mention
33468         gl_AVOID.
33469
33470 2005-08-11  Bruno Haible  <bruno@clisp.org>
33471
33472         * lib/strnlen.h (strnlen): Change parameter name to match comment.
33473
33474 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
33475
33476         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
33477
33478 2005-08-10  Simon Josefsson  <jas@extundo.com>
33479
33480         * tests/test-iconvme.c: New file.
33481
33482 2005-08-10  Simon Josefsson  <jas@extundo.com>
33483
33484         * m4/strnlen.m4: New file.
33485
33486         * m4/strndup.m4: Don't check for strnlen declaration, done in
33487         strnlen.m4.
33488
33489 2005-08-10  Simon Josefsson  <jas@extundo.com>
33490
33491         * lib/strndup.c: Use strnlen.h.
33492
33493         * lib/strnlen.h: New file.
33494
33495 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
33496
33497         * README: Typos.
33498
33499 2005-08-02  Simon Josefsson  <jas@extundo.com>
33500
33501         * modules/readline: New file.
33502
33503 2005-08-02  Simon Josefsson  <jas@extundo.com>
33504
33505         * modules/getdelim: New file.
33506
33507         * modules/getline: Rewrite, don't use getndelim2.
33508
33509 2005-08-02  Simon Josefsson  <jas@extundo.com>
33510
33511         * m4/getline.m4: Separate out getdelim stuff into separate module.
33512
33513         * m4/getdelim.m4: New file.
33514
33515 2005-08-02  Simon Josefsson  <jas@extundo.com>
33516
33517         * lib/getline.h, getline.c: Rewrite.
33518
33519         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
33520
33521 2005-07-31  Bruno Haible  <bruno@clisp.org>
33522
33523         * lib/lock.h (gl_lock_initializer): New macro.
33524         (gl_lock_define_initialized): Use it.
33525         (gl_rwlock_initializer): New macro.
33526         (gl_rwlock_define_initialized): Use it.
33527         (gl_recursive_lock_initializer): New macro.
33528         (gl_recursive_lock_define_initialized): Use it.
33529
33530 2005-07-30  Karl Berry  <karl@gnu.org>
33531
33532         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
33533         Report from Ben Pfaff, regarding getopt.
33534
33535 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
33536
33537         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
33538         normal way.
33539         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
33540         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
33541         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
33542         (gl_GETOPT): Use the new macros.  Most of the implementation
33543         is moved to the new macros.  This is for programs like Emacs
33544         that don't want all the functionality of gl_GETOPT.
33545
33546 2005-07-26  Bruno Haible  <bruno@clisp.org>
33547
33548         * m4/lock.m4: Update from GNU gettext.
33549
33550 2005-07-26  Bruno Haible  <bruno@clisp.org>
33551
33552         * lib/lock.h: Update from GNU gettext.
33553         * lib/lock.c: Update from GNU gettext.
33554
33555 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
33556
33557         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
33558         obsolescent AC_TRY_RUN.  Include the default includes files, for
33559         'exit'.
33560
33561 2005-07-24  Bruno Haible  <bruno@clisp.org>
33562
33563         * modules/visibility: New file.
33564         * MODULES.html.sh (Misc): Add visibility.
33565
33566 2005-07-24  Bruno Haible  <bruno@clisp.org>
33567
33568         * m4/visibility.m4: New file.
33569
33570 2005-07-24  Bruno Haible  <bruno@clisp.org>
33571
33572         * doc/visibility.texi: New file.
33573
33574 2005-07-22  Bruno Haible  <bruno@clisp.org>
33575
33576         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
33577         $(ALLOCA_H), redundant through BUILT_SOURCES.
33578         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
33579         redundant through BUILT_SOURCES.
33580         * modules/byteswap (Makefile.am): Remove explicit dependency on
33581         $(BYTESWAP_H), redundant through BUILT_SOURCES.
33582         * modules/fnmatch (Makefile.am): Remove explicit dependency on
33583         $(FNMATCH_H), redundant through BUILT_SOURCES.
33584         * modules/getopt (Makefile.am): Remove explicit dependency on
33585         $(GETOPT_H), redundant through BUILT_SOURCES.
33586         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
33587         redundant through BUILT_SOURCES.
33588         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
33589         redundant through BUILT_SOURCES.
33590         * modules/stdbool (Makefile.am): Remove explicit dependency on
33591         $(STDBOOL_H), redundant through BUILT_SOURCES.
33592         * modules/stdint (Makefile.am): Remove explicit dependency on
33593         $(STDINT_H), redundant through BUILT_SOURCES.
33594         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
33595         Remove explicit dependency on $(SYSEXITS_H).
33596         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
33597
33598 2005-07-18  Simon Josefsson  <jas@extundo.com>
33599
33600         * lib/check-version.c (check_version): Accept identical versions too.
33601
33602 2005-07-18  Bruno Haible  <bruno@clisp.org>
33603
33604         * modules/lock: New file.
33605         * MODULES.html.sh (Multithreading): New section.
33606
33607 2005-07-18  Bruno Haible  <bruno@clisp.org>
33608
33609         * m4/lock.m4: New file, from GNU gettext.
33610
33611 2005-07-18  Bruno Haible  <bruno@clisp.org>
33612
33613         * lib/lock.h: New file, from GNU gettext.
33614         * lib/lock.c: New file, from GNU gettext.
33615
33616 2005-07-18  Bruno Haible  <bruno@clisp.org>
33617
33618         * lib/lock.h (gl_once_t): New type.
33619         (gl_once_define, gl_once): New macros.
33620         * lib/lock.c (fresh_once): New variable.
33621         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
33622         functions.
33623
33624 2005-07-16  Simon Josefsson  <jas@extundo.com>
33625
33626         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
33627         workaround, suggested by Bruno.
33628
33629 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
33630
33631         * modules/xalloc (Depends-on): Add xalloc-die.
33632         * modules/xvasprintf (Depends-on): Add xalloc-die.
33633
33634 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
33635
33636         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
33637         with a minor change.
33638
33639 2005-07-15  Bruno Haible  <bruno@clisp.org>
33640
33641         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
33642         When using lib/poll.c, define poll as rpl_poll.
33643
33644 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
33645
33646         * modules/argp (Depends-on): Remove unlocked-io.
33647
33648 2005-07-14  Derek Price  <derek@ximbiot.com>
33649
33650         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
33651         for glob symlink bug.
33652
33653 2005-07-14  Bruno Haible  <bruno@clisp.org>
33654
33655         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
33656         Instead, test for *_unlocked function declarations directly.
33657
33658 2005-07-11  Simon Josefsson  <jas@extundo.com>
33659
33660         * modules/size_max: New file.
33661
33662         * modules/xsize: Depend on size_max module for size_max.m4.
33663
33664 2005-07-11  Simon Josefsson  <jas@extundo.com>
33665
33666         * lib/size_max.h: New file.
33667
33668 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
33669
33670         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
33671         copyright symbol and the year.
33672         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
33673         (version_etc_va): Use parameterized copyright notice.
33674         Reword to conform to the current GNU coding standards.
33675
33676 2005-07-11  Karl Berry  <karl@gnu.org>
33677
33678         * doc/gnulib.texi (Quoting): new node.
33679         (Initial import): more info, from Patrice.
33680
33681 2005-07-11  Bruno Haible  <bruno@clisp.org>
33682
33683         * gnulib-tool (func_usage): Document option --avoid.
33684         (Command line options): Handle --avoid.
33685         (func_acceptable): New function.
33686         (func_modules_transitive_closure): Use it.
33687
33688 2005-07-11  Bruno Haible  <bruno@clisp.org>
33689
33690         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
33691         Reported by Jim Meyering.
33692
33693 2005-07-10  Bruno Haible  <bruno@clisp.org>
33694
33695         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
33696         Needed when size_t is smaller than 'unsigned int'.
33697         Reported by Paul Eggert.
33698
33699 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
33700
33701         * modules/argp (Depends-on): Add unlocked-io
33702
33703 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
33704
33705         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
33706         block of defines.
33707
33708 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
33709
33710         * config/srclist.txt: Comment out regcomp.c, since we have a porting
33711         fix now.
33712
33713 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
33714         and Paul Eggert  <eggert@cs.ucla.edu>
33715
33716         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
33717         in wint_t, not wchar_t.  Remove now-unnecessary cast.
33718
33719 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
33720
33721         * modules/regex (Files): Add lib/regex_internal.c,
33722         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
33723         (Depends-on): Add extensions.
33724         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
33725
33726 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
33727
33728         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
33729         pathconf.
33730         * m4/same.m4 (gl_SAME): Likewise.
33731         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
33732
33733         * m4/regex.m4: Adjust to new libc regex implementation.
33734         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
33735         all the .c and .h parts of (the new) regex.
33736         Quote the m4 stuff better.
33737         Check for RE_ICASE bug of old gnulib.
33738         Check for REG_STARTEND of recent libc.
33739         Rename local variables from jm_* to gl_*.
33740         Quote operand of "test -f".
33741         Say "recent enough" version of libc, not "version 2".
33742         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
33743         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
33744         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
33745         Remove check for btowc, isascii.
33746         Require AM_LANGINFO_CODESET.
33747
33748 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
33749
33750         * lib/regex.c, regex.h: Sync from libc.
33751         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
33752         * lib/regexec.c:
33753         New files, synced from libc, except that regex_internal.h
33754         currently has a small porting fix.
33755
33756 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
33757
33758         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
33759         regex_internal.c, regexec.c.
33760         Add regex_internal.h too, but as a comment, since the libc version
33761         is currently broken in gnulib mode.
33762
33763 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
33764
33765         Support programs like Emacs that use gnulib but not gettext.
33766         * MODULES.html.sh (Internationalization functions): Add gettext-h.
33767         * modules/gettext-h: New file.
33768         * modules/gettext (Files): Remove lib/gettext.h.
33769         (Depends-on): Add gettext-h.
33770         (Makefile.am): Remove lib_SOURCES.
33771         * modules/argmatch, modules/c-stack, modules/closeout:
33772         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
33773         * modules/execute, modules/file-type, modules/getaddrinfo:
33774         * modules/getopt, modules/human, modules/javacomp:
33775         * modules/javaexec, modules/mkdir-p, modules/obstack:
33776         * modules/openat, modules/pagealign_alloc, modules/pipe:
33777         * modules/quotearg, modules/regex, modules/rpmatch:
33778         * modules/unicodeio, modules/userspec, modules/version-etc:
33779         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
33780         * modules/xsetenv:
33781         Depend on gettext-h, not gettext.
33782
33783 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
33784
33785         * gnulib-tool (func_import): Add support for 'public domain' license.
33786         * modules/alloca, modules/atexit, modules/memmove:
33787         Now public domain, not GPL.
33788         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
33789         * modules/realloc, modules/strerror, modules/strtod:
33790         Now LGPL, not GPL.
33791
33792 2005-07-05  Bruno Haible  <bruno@clisp.org>
33793
33794         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
33795         autoconf CVS. Needed for mingw.
33796
33797 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33798
33799         Remove the dependency of the strftime module on the tzset module.
33800         * modules/strftime (Depends-on): Remove dependency on tzset.
33801
33802 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33803
33804         Remove the dependency of the strftime module on the tzset module.
33805         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
33806         gl_FUNC_TZSET_CLOBBER.
33807
33808 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33809
33810         Remove the dependency of the strftime module on the tzset module.
33811         * lib/strftime.c (my_strftime)
33812         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
33813         Copy the input structure, to work around some of the bug with
33814         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
33815         Solaris releases, you should also use the tzset module, but we won't
33816         require it as a dependency any more since we don't want LGPLed code
33817         to depend on GPLed code.
33818
33819 2005-07-02  Jim Meyering  <jim@meyering.net>
33820
33821         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
33822         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
33823         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
33824         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
33825
33826 2005-07-02  Jim Meyering  <jim@meyering.net>
33827
33828         * lib/backupfile.c (backup_args): Change a `0' to NULL.
33829
33830 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
33831
33832         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
33833         declares only 'struct timespec;' (!).
33834
33835 2005-07-01  Jim Meyering  <jim@meyering.net>
33836
33837         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
33838         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
33839         * lib/save-cwd.c, tempname.c:
33840         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
33841         and don't include <sys/file.h>).
33842
33843 2005-06-29  Jim Meyering  <jim@meyering.net>
33844
33845         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
33846         type name.  Use the variable name instead.
33847         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
33848         Likewise.
33849
33850 2005-06-28  Simon Josefsson  <jas@extundo.com>
33851
33852         * modules/check-version (Files): Add check-version.m4.
33853
33854 2005-06-28  Simon Josefsson  <jas@extundo.com>
33855
33856         * m4/check-version.m4: New file, suggested by Jim Meyering
33857         <jim@meyering.net>.
33858
33859 2005-06-28  Simon Josefsson  <jas@extundo.com>
33860
33861         * lib/check-version.h, lib/check-version.c: New files.
33862
33863 2005-06-28  Simon Josefsson  <jas@extundo.com>
33864
33865         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
33866         collision with global variable.  Better indentation.  Don't
33867         increment buffer pointer beyond buffer end.  Based on comments
33868         from Paul Eggert <eggert@cs.ucla.edu>.
33869
33870         * lib/base64.h: Indent.
33871
33872 2005-06-28  Simon Josefsson  <jas@extundo.com>
33873
33874         * doc/gnulib.texi (Library version handling): New section.
33875
33876 2005-06-28  Jim Meyering  <jim@meyering.net>
33877
33878         * check-module (find_included_lib_files): Hard-code another
33879         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
33880         but modules/fts-lgpl (correctly) does not list those files.
33881
33882         * modules/canonicalize (Files): Add lib/pathmax.h.
33883
33884 2005-06-25  Simon Josefsson  <jas@extundo.com>
33885
33886         * modules/check-version: New file.
33887
33888 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
33889
33890         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
33891         initializer of struct addrinfo, as an indication that we don't
33892         care how many members the structure has.
33893
33894 2005-06-24  Derek Price  <derek@ximbiot.com>
33895         and Bruno Haible  <bruno@clisp.org>
33896
33897         Remove stat module & update lstat.
33898         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
33899         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
33900         * m4/stat.m4: Remove this file.
33901
33902 2005-06-24  Derek Price  <derek@ximbiot.com>
33903         and Bruno Haible  <bruno@clisp.org>
33904
33905         Remove stat module & update lstat.
33906         * lib/stat.c: Remove this file...
33907         (slash_aware_lstat): ...moving this content and its support...
33908         * lib/lstat.c (rpl_lstat): ...into here.
33909         * lib/lstat.h: New file.
33910
33911 2005-06-24  Derek Price  <derek@ximbiot.com>
33912         and Bruno Haible  <bruno@clisp.org>
33913
33914         Remove stat module & update lstat.
33915         * config/srclist.txt (libc sources): Remove stat.
33916
33917 2005-06-24  Derek Price  <derek@ximbiot.com>
33918         and Bruno Haible  <bruno@clisp.org>
33919
33920         Remove stat module & update lstat.
33921         * MODULES.html.sh (stat): Remove.
33922         * MODULES.html: Regenerated.
33923         * modules/lstat (Description): Correct function name.
33924         (Files): Add "lstat.h".
33925         (Depends-on): Remove stat, add xalloc, stat-macros.
33926         * modules/stat: Remove this file.
33927         (Include): Add "lstat.h", remove <sys/stat.h>.
33928
33929 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
33930
33931         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
33932         (ranged_convert): Don't save conversion in a temporary struct.
33933         This causes a warning with GCC 4.0.0, and anyway in the typical
33934         case it's not worth the extra 100 bytes or so of code.
33935         (ranged_convert, __mktime_internal): When calling a function via a
33936         pointer P, use P () rather than (*P) (), as we now assume C89 or
33937         better.
33938
33939 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
33940
33941         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
33942         "who -r" failed to give output.  Problem reported by Tim Waugh.
33943
33944         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
33945         (xcalloc): Use it to avoid needless tests.
33946         Problem reported by Jim Meyering.
33947
33948 2005-06-20  Derek Price  <derek@ximbiot.com>
33949
33950         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
33951         unnecessary for Autoconfs > 2.59c.
33952
33953 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
33954
33955         * lib/argp.h (__option_is_short): Check upper limit of
33956         __key. Isprint() requires its argument to have the value
33957         of an unsigned char or EOF.
33958
33959 2005-06-16  Jim Meyering  <jim@meyering.net>
33960
33961         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
33962         when either N or S is zero.
33963
33964 2005-06-16  Derek Price  <derek@ximbiot.com>
33965
33966         * m4/bison.m4: Declare YACC & YFLAGS precious.
33967
33968 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
33969
33970         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
33971         multibyte string or pattern, fall back on unibyte matching.
33972         Problem reported by James Youngman.
33973
33974 2005-06-08  Bruno Haible  <bruno@clisp.org>
33975
33976         * modules/csharpcomp: New file.
33977         * MODULES.html.sh (C#): Add csharpcomp.
33978
33979 2005-06-08  Bruno Haible  <bruno@clisp.org>
33980
33981         * m4/csharpcomp.m4: New file, from GNU gettext.
33982
33983 2005-06-08  Bruno Haible  <bruno@clisp.org>
33984
33985         * lib/csharpcomp.h: New file, from GNU gettext.
33986         * lib/csharpcomp.c: New file, from GNU gettext.
33987         * lib/csharpcomp.sh.in: New file, from GNU gettext.
33988
33989 2005-06-08  Bruno Haible  <bruno@clisp.org>
33990
33991         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
33992         warning on mingw.
33993
33994 2005-06-07  Derek Price  <derek@ximbiot.com>
33995
33996         Sync from CVS.
33997         * lib/glob_.h: Indent nested #ifdef.
33998
33999 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34000
34001         Sync from coreutils.
34002         Use "file name" when talking about file names, instead of "filename"
34003         or "path", as per the GNU coding standards.
34004         * lib/mkdir-p.c: Renamed from makepath.c.
34005         (make_dir_parents): Renamed from make_path.  All callers changed.
34006         * lib/mkdir-p.h: Likewise.  All includers changed.
34007         * lib/filenamecat.c: Renamed from path-concat.c.
34008         (file_name_concat): Renamed from path_concat.  All callers changed.
34009         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
34010         * lib/filenamecat.h: Likewise.  All includers changed.
34011         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
34012         in comments or local variable names.
34013         * lib/basename.c: Likewise.
34014         * lib/canonicalize.c, canonicalize.h: Likewise.
34015         * lib/dirname.c, dirname.h: Likewise.
34016         * lib/euidaccess.c: Likewise.
34017         * lib/exclude.c: Likewise
34018         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
34019         * lib/fsusage.c, fsuage.h: Likewise.
34020         * lib/fts.c, fts_.h: Likewise.
34021         * lib/getcwd.c: Likewise.
34022         * lib/getloadavg.c: Likewise.
34023         * lib/mkstemp.c: Likewise.
34024         * lib/mountlist.c, mountlist.h: Likewise.
34025         * lib/openat.c, openat.h: Likewise.
34026         * lib/readlink-stub.c: Likewise.
34027         * lib/readutmp.c, readutmp.h: Likewise.
34028         * lib/rename.c: Likewise.
34029         * lib/rmdir.c: Likewise.
34030         * lib/same.c: Likewise.
34031         * lib/savedir.c: Likewise.
34032         * lib/stripslash.c: Likewise.
34033         * lib/tempname.c: Likewise.
34034         * lib/xreadlink.c: Likewise.
34035         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
34036         All uses changed.
34037         * lib/exclude.h: Likewise.
34038
34039         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
34040         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34041         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
34042         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34043         * lib/pathmax.h: Include <limits.h> unconditionally, since other
34044         files have been getting away with it for years (MORE/BSD 4.3
34045         is extinct now).
34046         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
34047         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
34048
34049         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
34050         Define to 256, not 255, as per modern POSIX.
34051
34052 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34053
34054         Sync from coreutils.
34055         Use "file name" when talking about file names, instead of "filename"
34056         or "path", as per the GNU coding standards.
34057         * MODULES.html.sh: mkdir-p renamed from makepath.
34058         filenamecat renamed from path-concat.
34059         * modules/filenamecat: Renamed from modules/path-concat.
34060         (Files): filenamecat.h and filenamecat.c renamed from
34061         path-concat.h and path-concat.c.
34062         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
34063         (Include): filenamecat.h, not path-concat.h.
34064         * modules/mkdir-p: Renamed from modules/makepath.
34065         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
34066         makepath.c.
34067         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
34068         (Include): mkdir-p.h, not makepath.h.
34069
34070 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
34071
34072         Sync from coreutils.
34073         * m4/mkdir-p.m4: Renamed from makepath.m4.
34074         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
34075         Rename files from makepath.c to mkdir-p.c, and from
34076         makepath.h to mkdir-p.h.
34077         * m4/filenamecat.m4: Renamed from path-concat.m4.
34078         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
34079         Rename files from path-concat.c to filenamecat.c,
34080         and from path-concat.h to filenamecat.h.
34081         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
34082         "file name" in local variables or comments.
34083         * m4/rename.m4: Likewise.
34084
34085 2005-06-01  Bruno Haible  <bruno@clisp.org>
34086
34087         * modules/csharpexec: New file.
34088         * MODULES.html.sh (C#): New section.
34089
34090 2005-06-01  Bruno Haible  <bruno@clisp.org>
34091
34092         * m4/csharp.m4: New file, from GNU gettext.
34093         * m4/csharpexec.m4: New file, from GNU gettext.
34094
34095 2005-06-01  Bruno Haible  <bruno@clisp.org>
34096
34097         * lib/csharpexec.h: New file, from GNU gettext.
34098         * lib/csharpexec.c: New file, from GNU gettext.
34099         * lib/csharpexec.sh.in: New file, from GNU gettext.
34100
34101 2005-05-31  Derek Price  <derek@ximbiot.com>
34102             Paul Eggert  <eggert@cs.ucla.edu>
34103
34104         Sync from cvs.
34105         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
34106
34107 2005-05-31  Derek Price  <derek@ximbiot.com>
34108             Paul Eggert  <eggert@cs.ucla.edu>
34109
34110         Sync from cvs.
34111         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
34112
34113 2005-05-29  Derek Price  <derek@ximbiot.com>
34114
34115         * config/srclist.txt (glob_.h, glob.c): Add these files.
34116
34117 2005-05-29  Derek Price  <derek@ximbiot.com>
34118
34119         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
34120         * modules/glob: New file.
34121         * modules/getlogin_r: Add link to POSIX spec in description.
34122
34123 2005-05-29  Derek Price  <derek@ximbiot.com>
34124             Paul Eggert  <eggert@cs.ucla.edu>
34125
34126         * m4/glob.m4: New file.
34127
34128 2005-05-29  Derek Price  <derek@ximbiot.com>
34129             Paul Eggert  <eggert@cs.ucla.edu>
34130
34131         * lib/glob_.h, lib/glob.c: New files.
34132
34133 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34134
34135         * modules/fts (Files): Remove m4/inttypes-pri.m4.
34136         * modules/fts-lgpl (Depends-on): Remove gettext.
34137
34138 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34139
34140         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
34141         and don't require gt_INTTYPES_PRI.
34142
34143 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
34144
34145         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
34146
34147         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
34148         the configuration hassle isn't worth it.
34149         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
34150         (LONGEST_MODIFIER, PRIuMAX): Remove.
34151
34152 2005-05-27  Bruno Haible  <bruno@clisp.org>
34153
34154         * lib/getlogin_r.h: Remove second include of <stddef.h>.
34155
34156 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
34157
34158         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
34159         _POSIX_PTHREAD_SEMANTICS for Solaris.
34160
34161 2005-05-25  Derek Price  <derek@ximbiot.com>
34162
34163         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
34164
34165 2005-05-25  Derek Price  <derek@ximbiot.com>
34166             Paul Eggert  <eggert@cs.ucla.edu>
34167
34168         * modules/getlogin_r, m4/getlogin_r.m4: New files.
34169         * lib/getlogin_r.c, getlogin_r.h: New files.
34170
34171 2005-05-25  Bruno Haible  <bruno@clisp.org>
34172             Derek Price  <derek@ximbiot.com>
34173
34174         * lib/getlogin_r.h: Simplify API documentation.
34175
34176 2005-05-23  Derek Price  <derek@ximbiot.com>
34177
34178         * modules/minmax (Files): Add m4/minmax.m4.
34179         (configure.ac): Add gl_MINMAX.
34180
34181 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
34182
34183         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
34184         so that unistd-safer.h (GPL'ed code) need not be included.
34185
34186 2005-05-22  Bruno Haible  <bruno@clisp.org>
34187
34188         * m4/minmax.m4: New file.
34189         Based on a patch by Derek Price <derek@ximbiot.com>.
34190
34191 2005-05-22  Bruno Haible  <bruno@clisp.org>
34192
34193         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
34194         (INT64_MIN): Fix definition.
34195         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
34196
34197         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
34198         NEED_SIGNED_INT_TYPES.
34199
34200         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
34201         HAVE_SYSTEM_INTTYPES.
34202
34203 2005-05-22  Bruno Haible  <bruno@clisp.org>
34204
34205         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
34206         Also include <sys/param.h> if it defines MIN, MAX.
34207         Based on a patch by Derek Price <derek@ximbiot.com>.
34208
34209 2005-05-21  Jim Meyering  <jim@meyering.net>
34210
34211         * modules/fts (Files): Add m4/inttypes-pri.m4.
34212         (Depends-on): Add lstat and remove gettext.  Alphabetize.
34213
34214 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34215
34216         New fts module.
34217         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
34218         (setup_dir, free_dir): New functions.
34219         (enter_dir, leave_dir): Define trivial
34220         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
34221         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
34222         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
34223         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
34224         Move to fts-cycle.c.
34225         (fts_open): Use setup_dir.
34226         (fts_close): Use free_dir.
34227         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
34228         This adds a label and some gotos, but the alternatives were messier.
34229         Check for memory allocation failure when entering a dir.
34230         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
34231         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
34232         (FTS): New member fts_cycle, that is a union that contains the
34233         old active_dir_ht and cycle_state.  All uses changed to mention
34234         fts_cycle.ht and fts_cycle.state.
34235         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
34236         fts.c, with the following changes:
34237         (setup_dir, free_dir): New functions.
34238         (enter_dir): Now returns bool.  Return true if successful, false
34239         if memory exhausted.  All callers changed.
34240         Do not bother partly cleaning up on
34241         memory allocation failure; that is free_dir's job.
34242         However, free ad if hash_insert fails, to avoid memory leak.
34243         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
34244         fts->fts_options to see which union member to use.
34245
34246 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34247
34248         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
34249         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
34250
34251 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
34252
34253         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
34254
34255 2005-05-20  Jim Meyering  <jim@meyering.net>
34256
34257         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
34258         Now a macro, to pacify GCC.
34259
34260 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
34261
34262         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
34263         of -1.
34264
34265 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
34266
34267         * lib/chown.c (rpl_chown): Return -1 on failure.
34268
34269 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
34270
34271         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
34272         Don't check for stddef.h.
34273         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
34274         don't use its results.
34275         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
34276         since we include them unconditionally.  Don't require
34277         AM_STDBOOL_H, since stdbool is a prerequisite.
34278         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
34279         since we assume C89 or better.
34280         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
34281         as we don't use their results.
34282         Don't check for fchdir, memmove, memset, strrchr, as we use
34283         them unconditionally.
34284         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
34285         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
34286
34287 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
34288
34289         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
34290         Include <stddef.h> unconditionally, since we assume C89 now.
34291         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
34292         * lib/fts.c: Include fts_.h first, to check interface.
34293         Do not include intprops.h; no longer needed.
34294         Include cycle-check.h and hash.h, since fts_.h no longer does.
34295         Remove unnecessary casts of closedir to void.
34296         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
34297         decide whether to decrement nlinks.
34298         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
34299         (FTS): Use struct hash_table * instead of Hash_table, so that
34300         we no longer need to include hash.h here.
34301
34302 2005-05-18  Jim Meyering  <jim@meyering.net>
34303
34304         * modules/dirfd (License): Change to LGPL.  Most of the code
34305         is already in the public domain.
34306
34307 2005-05-18  Jim Meyering  <jim@meyering.net>
34308
34309         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
34310         Reported by Yoann Vandoorselaere.
34311
34312 2005-05-17  Jim Meyering  <jim@meyering.net>
34313
34314         * m4/fts.m4: New file, from coreutils.
34315
34316 2005-05-17  Jim Meyering  <jim@meyering.net>
34317
34318         * lib/fts.c, lib/fts_.h: New files, from coreutils.
34319
34320 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34321
34322         Sync from coreutils.
34323         * m4/unlinkdir.m4: New file.
34324
34325 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34326
34327         Sync from coreutils.
34328         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
34329         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
34330         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
34331         White space changes only.
34332         * lib/makepath.c (make_path): Port to hosts where leading "//" is
34333         special.
34334         * lib/yesno.c: Include getline.h, not ctype.h.
34335         (yesno): Don't remove leading white space; POSIX doesn't allow it.
34336         Use getline to remove arbitrary restriction on response length.
34337
34338 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34339
34340         * config/srclist-update: Spell out "Street" in FSF postal
34341         mail address; this is the style the FSF seems to prefer.
34342
34343         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
34344         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
34345         this updates FSF postal mail address.
34346
34347         Sync from coreutils.
34348         * modules/unlinkdir: New file.
34349         * modules/yesno (Depends-on): Add getline.
34350         * MODULES.html.sh (File system functions): Add unlinkdir.
34351
34352 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
34353
34354         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
34355         lib/strsep.h:
34356         Change the initial comment to refer to GPL, not LGPL.
34357         gnulib-tool will change it to LGPL as needed.
34358
34359         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
34360         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
34361         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
34362         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
34363         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
34364         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
34365         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
34366         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
34367         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
34368         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
34369         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
34370         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
34371         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
34372         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
34373         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
34374         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
34375         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
34376         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
34377         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
34378         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
34379         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
34380         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
34381         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
34382         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
34383         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
34384         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
34385         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
34386         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
34387         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
34388         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
34389         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
34390         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
34391         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
34392         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
34393         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
34394         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
34395         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
34396         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
34397         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
34398         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
34399         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
34400         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
34401         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
34402         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
34403         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
34404         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
34405         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
34406         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
34407         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
34408         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
34409         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
34410         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
34411         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
34412         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
34413         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
34414         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
34415         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
34416         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
34417         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
34418         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
34419         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
34420         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
34421         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
34422         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
34423         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
34424         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
34425         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
34426         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
34427         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
34428         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
34429         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
34430         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
34431         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
34432         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
34433         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
34434         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
34435         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
34436         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
34437         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
34438         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
34439         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
34440         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
34441         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
34442         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
34443         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
34444         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
34445         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
34446         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
34447         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
34448         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
34449         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
34450         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
34451         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
34452         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
34453         lib/yesno.c, lib/yesno.h:
34454         Update FSF postal mail address.
34455
34456 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
34457
34458         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
34459         tests/test-memmem.c, tests/test-stpncpy.c:
34460         Update FSF postal mail address.
34461
34462 2005-05-13  Bruno Haible  <bruno@clisp.org>
34463
34464         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
34465         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
34466         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
34467         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
34468         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
34469         Add support for 64-bit integers in the MSVC compiler.
34470
34471 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
34472
34473         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
34474
34475 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
34476
34477         * gnulib-tool (func_import): Sort and uniquify recommended includes.
34478
34479 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
34480
34481         * doc/getdate.texi (General date syntax): Don't say that date
34482         date --iso-8601=ns generates acceptable dates; it doesn't yet.
34483         Problem reported by Nic Ferrier.
34484
34485 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34486
34487         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
34488         specified in ai_socktype. Fix invalid ai_protocol
34489         check. ai_protocol is usually set to 0 or depending on
34490         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
34491         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
34492         ai_socktype / ai_protocol in the returned addrinfo structure.
34493
34494 2005-05-10  Simon Josefsson  <jas@extundo.com>
34495
34496         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
34497         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34498
34499 2005-05-10  Karl Berry  <karl@gnu.org>
34500
34501         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
34502         (from http://www.gnu.org/licenses).
34503         * doc/COPYING.LIB: also rename to COPYING.LESSER.
34504         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
34505         fdl.texi suffices.
34506
34507 2005-05-10  Karl Berry  <karl@gnu.org>
34508
34509         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
34510         (COPYING.DOC): remove.
34511
34512         * config/srclist-update: new FSF address.
34513
34514 2005-05-10  Derek Price  <derek@ximbiot.com>
34515
34516         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
34517         possible.
34518
34519 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34520             Bruno Haible  <bruno@clisp.org>
34521
34522         * modules/inet_ntop: New file.
34523         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
34524         inet_ntop.
34525
34526 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34527             Bruno Haible  <bruno@clisp.org>
34528
34529         * m4/inet_ntop.m4: New file.
34530
34531 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34532             Bruno Haible  <bruno@clisp.org>
34533
34534         * lib/inet_ntop.h: New file.
34535         * lib/inet_ntop.c: New file, from glibc with modifications.
34536
34537 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
34538
34539         * modules/time_r (License): Change to LGPL.
34540         * modules/extensions (License): Change to LGPL.  Actually,
34541         the license is more permissive than that, but currently gnulib-tool
34542         doesn't know how to handle more-permissive licenses.
34543
34544         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
34545         Problem reported by Dave Love.
34546
34547 2005-05-08  Jim Meyering  <jim@meyering.net>
34548
34549         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
34550         blank.
34551
34552 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
34553
34554         * modules/argmatch (Depends-on): Add stdbool.
34555         * modules/backupfile (Depends-on): Likewise.
34556         * modules/chdir-long (Depends-on): Likewise.
34557         * modules/closeout (Depends-on): Likewise.
34558         * modules/cycle-check (Depends-on): Likewise.
34559         * modules/dirname (Depends-on): Likewise.
34560         * modules/fnmatch (Depends-on): Likewise.
34561         * modules/fsusage (Depends-on): Likewise.
34562         * modules/fwriteerror (Depends-on): Likewise.
34563         * modules/getcwd (Depends-on): Likewise.
34564         * modules/getloadavg (Depends-on): Likewise.
34565         * modules/hard-locale (Depends-on): Likewise.
34566         * modules/makepath (Depends-on): Likewise.
34567         * modules/mountlist (Depends-on): Likewise.
34568         * modules/nanosleep (Depends-on): Likewise.
34569         * modules/posixtm (Depends-on): Likewise.
34570         * modules/quotearg (Depends-on): Likewise.
34571         * modules/readtokens (Depends-on): Likewise.
34572         * modules/readtokens0 (Depends-on): Likewise.
34573         * modules/readutmp (Depends-on): Likewise.
34574         * modules/save-cwd (Depends-on): Likewise.
34575         * modules/strftime (Depends-on): Likewise.
34576         * modules/userspec (Depends-on): Likewise.
34577         * modules/utimecmp (Depends-on): Likewise.
34578         * modules/xgetcwd (Depends-on): Likewise.
34579         * modules/xnanosleep (Depends-on): Likewise.
34580         * modules/xstrtod (Depends-on): Likewise.
34581         * modules/yesno (Depends-on): Likewise.
34582
34583 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
34584
34585         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
34586         needless checks.
34587
34588 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
34589
34590         Merge from coreutils.  Among other things,
34591         add bulletproofing for cases where stdin, stdout, or stderr are closed.
34592         * lib/fd-safer.c: New file.
34593         * lib/fcntl-safer.h, open-safer.c: Remove.
34594         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
34595         * lib/dup-safer.c: Include unistd-safer.h first.
34596         Don't include errno.h.
34597         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
34598         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
34599         * lib/file-type.c: Rely on file-type.h change.
34600         * lib/getloadavg.c: Include unistd-safer.h.
34601         (getloadavg): Use safer open.
34602         * lib/getusershell.c: Include "stdio-safer.h".
34603         (getusershell): Use safer fopen.
34604         * lib/long-options.c (long_options): Use NULL rather than 0.
34605         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
34606         'free'.
34607         * lib/modechange.c: Likewise.
34608         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
34609         (MODE_DONE): New constant.
34610         (struct mode_change): Remove 'next' member.
34611         (make_node_op_equals): New function; like the old one of the
34612         same name, except it allocates an array.
34613         (mode_compile, mode_create_from_ref): Use it.
34614         (mode_compile): Allocate result as an array, not a linked list.
34615         Parse octal string ourself, so that we catch mistakes like "+0".
34616         (mode_adjust): Arg is an array, not a linked list.
34617         * lib/modechange.c: Include stat-macros.h, xalloc.h.
34618         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
34619         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
34620         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
34621         Remove.  This is now stat-macros.h's job.
34622         (talloc): Remove.  All callers replaced by xalloc, so that
34623         our invokers don't have to worry about reporting memory failures.
34624         (make_node_op_equals): Remove.
34625         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
34626         New constants.
34627         (struct mode_change): Moved here from modechange.h.
34628         (mode_append_entry): Remove.
34629         (mode_compile): Remove MASKED_OPS arg, since it encouraged
34630         apps to have incorrect behavior.  Use simpler algorithm for head
34631         and tail.  Don't futz with umask; that's now the job of mode_adjust.
34632         Detect more invalid usages rather than having somewhat-random behavior.
34633         Don't insert an "a=" action, as that leads to incorrect behavior.
34634         (mode_compile, mode_create_from_ref): Return NULL on error instead
34635         of an enum, since now there's only one way to have an error.  All
34636         callers changed.
34637         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
34638         at the correct time.  Simplify calculation of "+u" and its ilk.
34639         Don't mishandle "+X".
34640         (mode_free): Remove "register" and localize decls.
34641         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
34642         (struct mode_change): Move to modechange.c; callers don't
34643         need to see this stuff.
34644         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
34645         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
34646         (mode_change, mode_adjust): Reflect the new signatures noted above.
34647         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
34648         that might redefine system include files.
34649         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
34650         (my_usleep): Use NULL rather than (void *) 0.
34651         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
34652         Use siginterrupt to specify that system calls should be interrupted.
34653         (rpl_nanosleep): Move initialization of suspended closer to call of
34654         my_usleep.
34655         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
34656         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
34657         (desirable_utmp_entry): New function.
34658         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
34659         using x2nrealloc, to simplify logic.
34660         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
34661         size calculation.  Do not assume utmp file is a regular file.
34662         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
34663         (READ_UTMP_CHECK_PIDS): New constant.
34664         * lib/save-cwd.c: Include unistd-safer.h.
34665         (save_cwd): Use fd_safer.
34666         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
34667         [!_LIBC] Include "stat-macros.h" instead.
34668         * lib/unistd-safer.h (fd_safer): New decl.
34669
34670 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
34671
34672         * modules/getloadavg (Depends-on): Add unistd-safer.
34673         * modules/getusershell (Depends-on): Add stdio-safer.
34674         * modules/lstat (Depends-on): Remove xalloc.
34675         * modules/mkstemp (Depends-on): Add stat-macros.
34676         * modules/modechange (Depends-on): Remove xstrtol.
34677         Add stat-macros, xalloc.
34678         * modules/save-cwd (Depends-on): Add unistd-safer.
34679         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
34680         * modules/unistd-safer (Files): Add lib/fd-safer.c
34681         (Makefile.am): Remove lib_SOURCES.
34682
34683         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
34684         Remove fcntl-safer; unistd-safer supersedes it.
34685
34686 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
34687
34688         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
34689         AC_HEADER_STAT.
34690         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
34691         (gl_PREREQ_CHOWN): Remove.
34692         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
34693         it.  Don't require AC_HEADER_STAT.
34694         (gl_PREREQ_LSTAT): Remove.
34695         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
34696         Don't require AC_HEADER_STAT.
34697         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
34698         (gl_PREREQ_RMDIR): Remove.
34699         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
34700         mention stat-macros.h or AC_HEADER_STAT, since we'll make
34701         the stat-macros module a prerequisite.
34702         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
34703         * m4/filemode.m4 (gl_FILEMODE): Likewise.
34704         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
34705         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
34706         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
34707         variable names.
34708         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
34709         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
34710         variable prefixes.
34711         * m4/fcntl-safer.m4: Remove.
34712         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
34713         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
34714         Invoke gl_PREREQ_FD_SAFER.
34715         (gl_PREREQ_FD_SAFER): New macro.
34716         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
34717         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
34718         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
34719         Remove duplicate call to AC_LIBOBJ(readutmp).
34720         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
34721
34722         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
34723         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
34724
34725 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
34726
34727         * MODULES.html.sh (Misc): Add byteswap.
34728
34729 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
34730
34731         * modules/getcwd (Depends-on): Add extensions.
34732         * modules/openat (Depends-on): Likewise.
34733
34734 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
34735
34736         * modules/byteswap: New file.
34737
34738 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
34739
34740         * m4/byteswap.m4: New file.
34741
34742 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
34743
34744         * lib/byteswap_.h: New file.
34745
34746 2005-04-25  Karl Berry  <karl@gnu.org>
34747
34748         * m4/gettext.m4: Update from GNU gettext 0.14.4.
34749
34750 2005-04-25  Albert Chin  <china@thewrittenword.com>
34751
34752         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
34753         Toolkit C bug.
34754
34755 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
34756
34757         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
34758         (func_ln_if_changed) Remove forcibly for no error message
34759         in case file does not exist.
34760
34761 2005-04-19  Simon Josefsson  <jas@extundo.com>
34762
34763         * gnulib-tool (Options): Make --symlink mean --symbolic.
34764
34765 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
34766
34767         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
34768
34769 2005-04-16  Simon Josefsson  <jas@extundo.com>
34770
34771         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
34772
34773 2005-04-15  Simon Josefsson  <jas@extundo.com>
34774
34775         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
34776
34777 2005-04-15  Simon Josefsson  <jas@extundo.com>
34778
34779         * gnulib-tool: Rename --symlink to --symbolic.
34780
34781 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
34782
34783         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
34784         symbolic links to files instead of copying/moving.  Add --aux-dir,
34785         specifying directory relative --dir where auxiliary build tools
34786         are placed.
34787
34788 2005-04-14  Bruno Haible  <bruno@clisp.org>
34789
34790         * modules/allocsa (License): Change to LGPL.
34791         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
34792
34793 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34794
34795         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
34796         that "UTC +1 second" continues to work.  Problem reported
34797         by Dmitry V. Levin.
34798         (relunit_snumber): New rule.
34799         (relunit): Use it.
34800
34801 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
34802
34803         * lib/getdate.y (universal_time_zone_table): New constant.
34804         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
34805         universal_time_zone_table.
34806         (lookup_zone): Prefer universal_time_zone_table to
34807         local_time_zone_table, so that "GMT" time stamps are allowed in
34808         London during the summer.  Problem reported by Ian Abbott.
34809
34810 2005-04-12  Jim Meyering  <jim@meyering.net>
34811
34812         * lib/human.c (humblock): Set *options even when returning due to
34813         xstrtoumax conversion failure.  Thanks to a used-uninitialized
34814         warning from gcc-4.
34815
34816 2005-04-09  Jim Meyering  <jim@meyering.net>
34817
34818         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
34819         -Wuninitialized: initialize tm0.tm_year.
34820
34821 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
34822
34823         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
34824         count, since there's no maximum.  All uses changed.
34825         Add member dsts_seen.
34826         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
34827         not being INT_MAX.
34828         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
34829         Use pc_rels_seen to decide whther a date is absolute.
34830
34831         * lib/getdate.y (number): Don't overwrite year.
34832         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
34833         check.
34834
34835 2005-04-02  Simon Josefsson  <jas@extundo.com>
34836
34837         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
34838         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
34839
34840 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
34841
34842         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
34843         where no absolute path name can be longer than PATH_MAX.
34844
34845 2005-03-27  Jim Meyering  <jim@meyering.net>
34846
34847         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
34848
34849 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
34850
34851         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
34852         "one's complement" -> "ones' complement" in comment, as per Knuth.
34853         "value of type" -> "type or expression" in comment.
34854         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
34855
34856 2005-03-26  Jim Meyering  <jim@meyering.net>
34857
34858         Comment nits.
34859         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
34860         Correct typos: s/or/of/.
34861
34862 2005-03-26  Jim Meyering  <jim@meyering.net>
34863
34864         * modules/check-include-files: Move to ../ and rename to...
34865         * check-module: ...this.
34866
34867 2005-03-25  Jim Meyering  <jim@meyering.net>
34868
34869         * modules/xvasprintf (Files): Add xalloc.h.
34870
34871 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
34872
34873         * modules/gettext (Files): config/config.rpath ->
34874         build-aux/config.rpath
34875         * modules/iconv (Files): Likewise.
34876         Problem reported by Oskar Liljeblad.
34877
34878 2005-03-23  Jim Meyering  <jim@meyering.net>
34879
34880         * modules/check-include-files: New script to check for
34881         missing dependencies, multiple includes, etc.
34882
34883         * modules/c-strtold (Depends-on): Add xalloc.
34884         * modules/c-strtod (Depends-on): Add xalloc.
34885         * modules/hash (Depends-on): Add xalloc.
34886         (Files): Remove lib/xalloc.h.
34887
34888         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
34889         * modules/userspec (Files): Add lib/inttostr.h.
34890
34891 2005-03-23  Jim Meyering  <jim@meyering.net>
34892
34893         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
34894
34895 2005-03-22  Jim Meyering  <jim@meyering.net>
34896
34897         * modules/stat-macros: New module.
34898         * modules/canonicalize, modules/euidaccess, modules/file-type,
34899         * modules/filemode, modules/lchown, modules/makepath,
34900         * modules/rmdir, modules/stat: Depend on new stat-macros module
34901         rather than listing lib/stat-macros.h manually.
34902         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
34903
34904 2005-03-22  Jim Meyering  <jim@meyering.net>
34905
34906         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
34907
34908 2005-03-22  Bruno Haible  <bruno@clisp.org>
34909
34910         * config/srclist.txt: Replace target directory 'config' with
34911         'build-aux'.
34912         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
34913         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
34914         ../build-aux/.
34915
34916 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
34917
34918         * modules/chdir-long (Depends-on): Add mempcpy.
34919
34920         * modules/acl, modules/backupfile, modules/c-strtod,
34921         modules/c-strtold, modules/canon-host, modules/canonicalize,
34922         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
34923         modules/exclude, modules/exitfail, modules/file-type,
34924         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
34925         modules/getdate, modules/getline, modules/getpagesize,
34926         modules/getpass, modules/getugroups, modules/group-member,
34927         modules/hard-locale, modules/hash, modules/human, modules/idcache,
34928         modules/inttostr, modules/long-options, modules/makepath,
34929         modules/md5, modules/memcasecmp, modules/memcoll,
34930         modules/modechange, modules/mountlist, modules/path-concat,
34931         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
34932         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
34933         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
34934         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
34935         modules/strftime, modules/strndup, modules/strverscmp,
34936         modules/timespec, modules/unlocked-io, modules/userspec,
34937         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
34938         modules/yesno:
34939         Remove lib_SOURCES line from Makefile.am section, as this is now
34940         done automatically by the corresponding Autoconf macro.
34941
34942 2005-03-21  Jim Meyering  <jim@meyering.net>
34943
34944         Changes imported from coreutils.
34945
34946         * lib/cycle-check.c: Don't include xalloc.h.
34947
34948         * lib/path-concat.c: Don't include assert.h.
34949         (path_concat): Remove assertion that would have triggered
34950         for ABASE starting with more than one slash.
34951         Reported by Andreas Schwab.
34952
34953         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
34954         properly when ABASE is an absolute file name.
34955         Correct the description of this function.
34956         Include <assert.h>.
34957         Add an assertion and a test driver.
34958         This fixes a bug introduced on 2004-07-02.
34959         Andreas Schwab reported the resulting failure of cp --parents:
34960         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
34961
34962 2005-03-21  Jim Meyering  <jim@meyering.net>
34963
34964         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
34965         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
34966
34967 2005-03-21  Jim Meyering  <jim@meyering.net>
34968         and  Paul Eggert  <eggert@cs.ucla.edu>
34969
34970         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
34971         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
34972         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
34973         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
34974         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
34975         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
34976         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
34977         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
34978         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
34979         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
34980         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
34981         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
34982         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
34983         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
34984         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
34985         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
34986         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
34987         for these modules.
34988
34989 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
34990
34991         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
34992         (which shouldn't happen), generate nothing instead of returning 0
34993         immediately, so that nstrftime (NULL, ...) doesn't return 0.
34994
34995 2005-03-16  Bruno Haible  <bruno@clisp.org>
34996
34997         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
34998         HAVE_LONGLONG_64BIT.
34999
35000 2005-03-16  Bruno Haible  <bruno@clisp.org>
35001
35002         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
35003         HAVE_LONGLONG_64BIT.
35004
35005 2005-03-16  Bruno Haible  <bruno@clisp.org>
35006
35007         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
35008         HAVE_LONGLONG_64BIT.
35009
35010 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
35011
35012         * lib/strftime.c (my_strftime): Prepend space to format so that we can
35013         reliably distinguish strftime failure from empty output on POSIX
35014         hosts.
35015
35016 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
35017
35018         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
35019         (iconv_string): Don't guess a size-zero buffer, as that might cause
35020         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
35021         result would be 'too large', where 'too large' is (heuristically)
35022         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
35023         overflow concerns.  This will prevent some unwanted malloc failures
35024         when the inputs are very large.
35025
35026 2005-03-15  Karl Berry  <karl@gnu.org>
35027
35028         * config/srclist.txt (config.rpath): from gettext.
35029         * config/config.rpath: update.
35030
35031 2005-03-15  Bruno Haible  <bruno@clisp.org>
35032
35033         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
35034         to 'negate'.
35035
35036         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
35037         variable.
35038
35039         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
35040         results.
35041
35042 2005-03-14  Simon Josefsson  <jas@extundo.com>
35043
35044         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
35045         <fx@gnu.org>.
35046
35047 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
35048
35049         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
35050         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
35051         intprops.h.
35052         * lib/strtol.c: Likewise.
35053
35054 2005-03-14  Jim Meyering  <jim@meyering.net>
35055
35056         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
35057         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
35058         to be nonzero so that we (and caller) can detect the difference
35059         between a valid zero-length expansion and an error return, even
35060         when the underlying strftime fails before writing anything into
35061         that location.
35062
35063 2005-03-14  Bruno Haible  <bruno@clisp.org>
35064
35065         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
35066         Update from GNU gettext 0.14.3.
35067
35068 2005-03-10  Jim Meyering  <jim@meyering.net>
35069
35070         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
35071
35072 2005-03-10  Jim Meyering  <jim@meyering.net>
35073
35074         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
35075         so that this module works on systems without fchdir.
35076
35077 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
35078
35079         Factor int-properties macros into a single file, except for
35080         glibc-related files.
35081         * lib/intprops.h: New file.
35082         * lib/getloadavg.c: Include it instead of limits.h.
35083         (INT_STRLEN_BOUND): Remove.
35084         * lib/human.c: Include intprops.h.
35085         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
35086         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
35087         302/1000.
35088         * lib/inttostr.h: Include intprops.h instead of limits.h.
35089         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
35090         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
35091         for consistency with intprops.h.
35092         (time_t_is_integer, twos_complement_arithmetic): Use them.
35093         * lib/sig2str.h: Include <signal.h>, intprops.h.
35094         (INT_STRLEN_BOUND): Remove.
35095         * lib/strftime.c (TYPE_SIGNED): Remove.
35096         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
35097         * lib/strtol.c: Adjust comments to match intprops.h.
35098         * lib/userspec.c: Include intprops.h.
35099         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
35100         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
35101         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
35102         instead of rolling our own expressions.
35103         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
35104
35105         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
35106         instead of int.
35107         (my_strftime): Do not mishandle years close to INT_MAX, by doing
35108         the right thing even if adding 1900 would overflow.  Similarly
35109         for tm_mon + 1 and tm_yday + 1.
35110         Make %Y always equivalent to %C%y, and similarly for %G and %g.
35111         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
35112         (DO_SIGNED_NUMBER): New macro.
35113         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
35114
35115 2005-03-07  Bruno Haible  <bruno@clisp.org>
35116
35117         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
35118
35119 2005-03-07  Bruno Haible  <bruno@clisp.org>
35120
35121         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
35122
35123 2005-03-04  Derek R. Price  <derek@ximbiot.com>
35124
35125         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
35126         (func_import): Only replace files via --import when they have actually
35127         changed.
35128
35129 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35130
35131         * m4/mmap-anon.m4: New file.
35132         * m4/pagealign_alloc.m4: New file.
35133
35134 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35135             Bruno Haible  <bruno@clisp.org>
35136
35137         * modules/pagealign_alloc: New file.
35138         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
35139
35140 2005-03-03  Derek R. Price  <derek@ximbiot.com>
35141             Bruno Haible  <bruno@clisp.org>
35142
35143         * lib/pagealign_alloc.h: New file.
35144         * lib/pagealign_alloc.c: New file.
35145
35146 2005-03-03  Bruno Haible  <bruno@clisp.org>
35147
35148         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
35149         Use an all-permissive copyright notice, recommended by RMS.
35150
35151 2005-03-02  Bruno Haible  <bruno@clisp.org>
35152
35153         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
35154         of AIX, the replacement has to be done only after <string.h> is
35155         included, therefore not in config.h. stpncpy.h does the replacement,
35156         and stpncpy.c uses it.
35157
35158 2005-03-02  Bruno Haible  <bruno@clisp.org>
35159
35160         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
35161         stpncpy.c uses it.
35162
35163 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35164
35165         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
35166         The workaround isn't strictly needed for POSIX conformance, and
35167         it's too much of a pain to configure and maintain.  We'll ask
35168         people to fix their kernels instead.
35169         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
35170         (NANOSLEEP_BUG_WORKAROUND): Remove.
35171         (xnanosleep): Remove the workaround.
35172
35173 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35174
35175         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
35176         Reported by Derek Price.
35177         (Include): Add "timespec.h".
35178
35179         * modules/xnanosleep (Depends-on): Remove gethrxtime.
35180
35181 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35182
35183         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
35184         to detect nanosleep bug.
35185
35186 2005-03-01  Bruno Haible  <bruno@clisp.org>
35187
35188         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
35189
35190 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
35191
35192         * modules/gethrxtime: New file.
35193         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
35194         (Depends-on): Add gethrxtime.
35195         (configure.ac): Add gl_XNANOSLEEP.
35196         (Makefile.am): Remove lib_SOURCES line.
35197
35198 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
35199
35200         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
35201         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
35202
35203 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
35204
35205         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
35206         * lib/timespec.h (gettime): Return void, since it always
35207         succeeds now.  All uses changed.
35208         * lib/gettime.c (gettime) Likewise.
35209         [HAVE_NANOTIME]: Prefer nanotime.
35210         Assume gettimeofday succeeds, as POSIX requires.
35211         Assime time () succeeds, since other code already does.
35212         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
35213         (timespec_subtract): Remove.
35214         (NANOSLEEP_BUG_WORKAROUND): New constant.
35215         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
35216         things considerably.  Use it only on GNU/Linux hosts, since the
35217         workaround shouldn't be needed elsewhere.
35218
35219 2005-02-24  Bruno Haible  <bruno@clisp.org>
35220
35221         * modules/gettext (Files): Add m4/glibc2.m4.
35222
35223 2005-02-24  Bruno Haible  <bruno@clisp.org>
35224
35225         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
35226         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
35227         * m4/progtest.m4:
35228         Update from GNU gettext 0.14.2.
35229         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
35230
35231 2005-02-24  Bruno Haible  <bruno@clisp.org>
35232
35233         * lib/localcharset.c: Update from GNU gettext 0.14.2.
35234         * lib/config.charset: Update from GNU gettext 0.14.2.
35235
35236 2005-02-24  Bruno Haible  <bruno@clisp.org>
35237
35238         * lib/gettext.h: Update from GNU gettext 0.14.2.
35239
35240 2005-02-23  Simon Josefsson  <jas@extundo.com>
35241
35242         * m4/iconvme.m4: New file.
35243
35244 2005-02-23  Jim Meyering  <jim@meyering.net>
35245
35246         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
35247         change.
35248         Thanks to Bruno Haible for catching it.
35249
35250 2005-02-22  Simon Josefsson  <jas@extundo.com>
35251
35252         * modules/iconvme: New file.
35253
35254         * MODULES.html.sh: Add iconvme.
35255
35256 2005-02-22  Simon Josefsson  <jas@extundo.com>
35257
35258         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
35259
35260 2005-02-22  Simon Josefsson  <jas@extundo.com>
35261
35262         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
35263
35264 2005-02-22  Jim Meyering  <jim@meyering.net>
35265
35266         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
35267         s/ifndef/ifdef/.
35268
35269 2005-02-20  Neil Conway  <neilc@samurai.com>
35270
35271         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
35272         returned by OSX/Darwin if the specified buffer is not large
35273         enough for the hostname.
35274
35275 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35276
35277         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
35278         pass it to _help, otherwise the latter coredumps trying to
35279         dereference state.root_argp.
35280
35281 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
35282
35283         * modules/chdir-long (Depends-on): Add memrchr.
35284         * modules/memrchr (Files): Add lib/memrchr.h.
35285         (Include): "memrchr.h".
35286
35287 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
35288
35289         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
35290
35291 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
35292
35293         * lib/memrchr.h: New file.
35294         * lib/chdir-long.c: Include it.
35295         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
35296         Don't bother including stddef.h.
35297
35298 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
35299
35300         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
35301         inclusion.
35302         Include <sys/types.h>, for dev_t.
35303         (ME_DUMMY, ME_REMOTE): Move from here....
35304         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
35305         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
35306         Dmitry V. Levin.
35307         Include mountlist.h first, to test the interface.
35308
35309 2005-01-29  Bruno Haible  <bruno@clisp.org>
35310
35311         * lib/progname.c (program_name): Initialize.
35312         Needed when linking statically on MacOS X.
35313
35314 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
35315
35316         Sync from coreutils.
35317         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
35318         (Depends-on): Add c-strtod.
35319         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
35320
35321 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
35322
35323         Sync from coreutils.
35324         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
35325
35326         Remove files that are specific to coreutils.
35327         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
35328
35329 2005-01-28  Bruno Haible  <bruno@clisp.org>
35330
35331         * modules/javacomp: New file.
35332         * MODULES.html.sh (Java): Add javacomp.
35333
35334 2005-01-28  Bruno Haible  <bruno@clisp.org>
35335
35336         * m4/javacomp.m4: New file, from GNU gettext.
35337
35338 2005-01-28  Bruno Haible  <bruno@clisp.org>
35339
35340         * lib/javacomp.sh.in: New file, from GNU gettext.
35341         * lib/javacomp.h: New file, from GNU gettext.
35342         * lib/javacomp.c: New file, from GNU gettext.
35343
35344 2005-01-26  Simon Josefsson  <jas@extundo.com>
35345
35346         * lib/gai_strerror.c: Use GPL in header.
35347
35348 2005-01-26  Bruno Haible  <bruno@clisp.org>
35349
35350         * modules/javaexec: New file.
35351         * MODULES.html.sh (Java): Add javaexec.
35352
35353 2005-01-26  Bruno Haible  <bruno@clisp.org>
35354
35355         * m4/javaexec.m4: New file, from GNU gettext.
35356
35357 2005-01-26  Bruno Haible  <bruno@clisp.org>
35358
35359         * lib/javaexec.sh.in: New file, from GNU gettext.
35360         * lib/javaexec.h: New file, from GNU gettext.
35361         * lib/javaexec.c: New file, from GNU gettext.
35362
35363 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35364
35365         * modules/lchown (Depends-on): Remove lchown.h
35366
35367 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35368
35369         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
35370         must be defined if the header file was not found, in order
35371         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
35372
35373 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35374
35375         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
35376         initializers for struct pentry_state.
35377         (__argp_error): Check return value of __asprintf
35378         (__argp_failure): Translate error message
35379
35380         * lib/argp-parse.c: Removed braces around the expansion of N_()
35381
35382 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
35383
35384         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
35385         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
35386         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
35387         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
35388         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
35389         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
35390         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
35391         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
35392         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
35393         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
35394         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
35395         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
35396         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
35397         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
35398         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
35399         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
35400         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
35401         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
35402         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
35403         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
35404         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
35405         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
35406         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
35407         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
35408         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
35409         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
35410         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
35411         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
35412         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
35413         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
35414         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
35415         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
35416         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
35417         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
35418         xstrtol.m4, xstrtoumax.m4, yesno.m4:
35419         Use an all-permissive copyright notice, recommended by RMS.
35420
35421 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
35422
35423         * modules/chdir-long (Depends-on): Remove mempcpy.
35424
35425 2005-01-21  Jim Meyering  <jim@meyering.net>
35426
35427         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
35428         same value as for Solaris 9.
35429
35430         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
35431         component length.  This included changing the parameter to be
35432         of type `char *' rather than `char const *'.
35433         * lib/chdir-long.h (chdir_long): Update prototype.
35434
35435         * lib/openat.c (fdopendir, fstatat): New functions.
35436         * lib/openat.h: Include headers required for use of DIR and struct
35437         stat.
35438         [AT_SYMLINK_NOFOLLOW]: Define.
35439         (fdopendir, fstatat): Add prototypes.
35440
35441 2005-01-21  Bruno Haible  <bruno@clisp.org>
35442
35443         * modules/classpath: New file.
35444         * MODULES.html.sh (Java): Add classpath.
35445
35446 2005-01-21  Bruno Haible  <bruno@clisp.org>
35447
35448         * lib/classpath.h: New file, from GNU gettext.
35449         * lib/classpath.c: New file, from GNU gettext.
35450
35451 2005-01-20  Simon Josefsson  <jas@extundo.com>
35452
35453         * modules/version-etc-fsf: New file.
35454
35455 2005-01-20  Simon Josefsson  <jas@extundo.com>
35456
35457         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
35458         * lib/version-etc.c: Remove version_etc_copyright.
35459         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
35460         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
35461
35462 2005-01-20  Simon Josefsson  <jas@extundo.com>
35463
35464         * lib/base64.h (isbase64): Add.
35465
35466         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
35467         using a unsigned prototype, don't inline.
35468         (base64_decode): Use it.
35469
35470 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
35471
35472         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
35473         it.
35474
35475 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
35476
35477         * lib/save-cwd.c (save_cwd): Remove code to support the case
35478         where fchdir is missing or flaky.
35479
35480 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
35481
35482         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
35483
35484 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
35485
35486         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
35487         AC_LIBSOURCES now does this.
35488         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
35489         with new ullong_max module.
35490
35491 2005-01-19  Bruno Haible  <bruno@clisp.org>
35492
35493         * modules/sh-quote: New file.
35494         * MODULES.html.sh (Executing programs): Add sh-quote.
35495
35496 2005-01-19  Bruno Haible  <bruno@clisp.org>
35497
35498         * lib/sh-quote.h: New file, from GNU gettext.
35499         * lib/sh-quote.c: New file, from GNU gettext.
35500
35501 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
35502
35503         Merge from coreutils.
35504         * m4/ullong_max.m4: New file.
35505         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
35506         (gl_MACROS): Assume localeconv exists.
35507
35508 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
35509
35510         Merge changes from coreutils, as described below in several
35511         changelogs dated today.
35512
35513         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
35514         (O_DIRECTORY): Remove; not needed here, since "." must be
35515         a directory.  All uses removed.
35516         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
35517         universal on Suns, and we also need to test for IRIX.
35518         Revamp code to use 'if' rather than '#if'.
35519         Avoid unnecessary comparison of cwd->desc to 0.
35520
35521         * lib/utimens.c (futimens): Robustify the previous patch, by checking
35522         for known valid error numbers rather than observed invalid ones.
35523
35524 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
35525
35526         * modules/ullong_max: New file.
35527
35528         * modules/chdir-long, modules/openat: New files.
35529         * modules/save-cwd (Depends-on): Depend on chdir-long.
35530         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
35531
35532 2005-01-18  Jim Meyering  <jim@meyering.net>
35533
35534         Merge from coreutils.
35535         * m4/chdir-long.m4, m4/openat.m4: New files.
35536         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
35537         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
35538         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
35539         is sane and DOES follow symlinks.  Besides, testing 20 different
35540         systems found no broken chown implementations.
35541         Prompted by a change in rsync's copy of this macro.
35542         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
35543
35544         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
35545
35546         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
35547         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
35548         NULL-means-set-to-current-time semantics.
35549         Remove temporary file immediately, rather than waiting
35550         for configure's at-exit trap code to do it.
35551
35552 2005-01-18  Jim Meyering  <jim@meyering.net>
35553
35554         * lib/version-etc.c (version_etc_copyright): Update copyright date.
35555
35556         * lib/utimens.c (futimens): Account for the fact that futimes
35557         can also fail with errno == ENOSYS or errno == ENOENT.
35558         Patch from Dmitry V. Levin.
35559
35560         Change the name of the robust chdir function from chdir to chdir_long.
35561         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
35562         (restore_cwd): Use chdir_long, not chdir.
35563         * lib/chdir-long.c: Renamed from chdir.c.
35564         * lib/chdir-long.h: Renamed from chdir.h.
35565         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
35566         Hurd.
35567
35568 2005-01-18  Bruno Haible  <bruno@clisp.org>
35569
35570         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
35571         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
35572         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
35573         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
35574         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
35575         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
35576         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
35577         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
35578         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
35579         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
35580         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
35581         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
35582         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
35583         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
35584         Use an all-permissive copyright notice, recommended by RMS.
35585
35586 2005-01-18  Bob Proulx  <bob@proulx.com>
35587
35588         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
35589         simplify offsetof() macro construct to avoid compile failure with
35590         native HP-UX 11.0 ANSI C compiler.
35591
35592 2005-01-17  Bruno Haible  <bruno@clisp.org>
35593
35594         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
35595         redundant because stpncpy.m4 takes care of it.
35596
35597 2005-01-17  Bruno Haible  <bruno@clisp.org>
35598
35599         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
35600
35601 2005-01-17  Bruno Haible  <bruno@clisp.org>
35602
35603         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
35604         used.
35605
35606 2005-01-17  Bruno Haible  <bruno@clisp.org>
35607
35608         * lib/fwriteerror.h (fwriteerror): Change specification to include
35609         fclose.
35610         * lib/fwriteerror.c: Include <stdbool.h>.
35611         (fwriteerror): At the end, close the file stream. Record whether
35612         stdout was already closed.
35613
35614 2005-01-17  Bruno Haible  <bruno@clisp.org>
35615
35616         * lib/execute.c (environ): Declare if needed.
35617         * lib/pipe.c (environ): Likewise.
35618         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
35619
35620 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35621
35622         * modules/argp: Depend on vsnprintf
35623
35624 2005-01-10  Jim Meyering  <jim@meyering.net>
35625
35626         * modules/closeout (Depends-on): Add atexit.
35627
35628 2005-01-06  Bruno Haible  <bruno@clisp.org>
35629
35630         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
35631
35632 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
35633
35634         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
35635         definitions to be after all include files, to avoid collisions.
35636         Problem reported by Bob Proulx.
35637
35638 2005-01-04  Jim Meyering  <jim@meyering.net>
35639
35640         Changes imported from coreutils.
35641         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
35642         as the mkstemp template, use a temporary directory and an
35643         8.3-friendly template to avoid trouble on systems like DJGPP.
35644         Reported by Juan M. Guerrero via Stepan Kasal.
35645         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
35646         close. Remove the temporary directory right away, rather than waiting
35647         for configure's at-exit trap code to do it.
35648         Suggestion from Stepan Kasal.
35649
35650 2005-01-01  Simon Josefsson  <jas@extundo.com>
35651
35652         * gnulib-tool: Print #include directives when --import'ing.
35653
35654 2004-12-28  Simon Josefsson  <jas@extundo.com>
35655
35656         * tests/test-base64.c: Include required header files.  Remove
35657         unused variables.
35658
35659 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
35660
35661         * modules/error (Depends-on): Remove gettext.
35662
35663 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
35664
35665         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
35666         not needed.  This removes a dependency on the gettext module.
35667         [defined _LIBC]: Do not include <libintl.h>; not needed.
35668
35669 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
35670
35671         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
35672         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
35673
35674 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
35675
35676         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
35677         HAVE_DECL_STRTOLD.
35678
35679 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
35680
35681         * modules/getdate (Depends-on): Remove alloca-opt.
35682
35683 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
35684
35685         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
35686
35687 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
35688
35689         * lib/argp-parse.c: Include <stddef.h>.
35690         (alignof, alignto): New macros.
35691         (parser_init): Don't assume that void * is aligned sufficiently
35692         for struct option.
35693
35694         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
35695         need to extend the stack.
35696         (YYINITDEPTH): New macro, so that the initial stack isn't overly
35697         large.
35698
35699 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35700
35701         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
35702
35703 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
35704
35705         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
35706         (2004-10-24) change.  Apparently this was a false alarm.
35707
35708         * modules/getdate: Depend on alloca-opt, not alloca.
35709
35710 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
35711
35712         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
35713         Remove now-obsolete comment about AIX.
35714         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
35715         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
35716         (YYMAXDEPTH): New macro.
35717
35718 2004-12-18  Simon Josefsson  <jas@extundo.com>
35719
35720         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
35721
35722 2004-12-18  Bruno Haible  <bruno@clisp.org>
35723
35724         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
35725
35726 2004-12-18  Bruno Haible  <bruno@clisp.org>
35727
35728         * lib/fatal-signal.c (fatal_signals): Make non-const.
35729         (init_fatal_signals): New function.
35730         (uninstall_handlers, install_handlers): Ignore signals that were set to
35731         SIG_IGN.
35732         (at_fatal_signal): Call init_fatal_signals.
35733         (init_fatal_signal_set): Likewise. Ignore signals that were set to
35734         SIG_IGN.
35735         Reported by Paul Eggert.
35736
35737 2004-12-18  Bruno Haible  <bruno@clisp.org>
35738
35739         * doc/alloca.texi: New file.
35740         * doc/alloca-opt.texi: New file.
35741
35742 2004-12-17  Jim Meyering  <jim@meyering.net>
35743
35744         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
35745         Otherwise, install-sh could exit with improper exit status when
35746         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
35747
35748 2004-12-16  Simon Josefsson  <jas@extundo.com>
35749
35750         * tests/test-base64.c: Add license.
35751
35752 2004-12-15  Stepan Kasal  <address@hidden>
35753
35754         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
35755
35756 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
35757
35758         * modules/getcwd (Files): Add m4/d-ino.m4.
35759         Suggested by Mark D. Baushke.
35760
35761 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
35762
35763         * lib/getdate.y (textint): New member "negative".
35764         (time_zone_hhmm): New function.
35765         Expect 14 shift-reduce conflicts, not 13.
35766         (o_colon_minutes): New rule.
35767         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
35768         (yylex): Set the "negative" member of signed numbers.
35769
35770 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
35771
35772         * doc/getdate.texi (Time of day items, Time zone items):
35773         Describe new formats +00:00, UTC+00:00.
35774
35775 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
35776
35777         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
35778         spurious "-l"s.  Problem reported by Stepan Kasal.
35779
35780 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
35781
35782         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
35783         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
35784
35785 2004-12-04  Simon Josefsson  <jas@extundo.com>
35786
35787         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
35788         Vandoorselaere <yoann@prelude-ids.org>.
35789
35790 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
35791
35792         Changes imported from coreutils.
35793         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
35794         exist.
35795         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
35796
35797 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
35798
35799         Changes imported from coreutils.
35800         * lib/hard-locale.c: Assume <locale.h> exists.
35801         Include "strdup.h".
35802         (GLIBC_VERSION): New macro.
35803         (hard_locale): Assume setlocale exists.
35804         Rewrite to avoid #ifdef.
35805         Use strdup rather than malloc + strcpy.
35806         * lib/human.c: Assume <locale.h> exists.
35807         (human_readable): Assume localeconv exists.
35808
35809 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
35810
35811         * modules/hard-locale (Depends-on): Add strdup.
35812
35813 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
35814
35815         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
35816         convert T2, not T.  (Imported from libc.)
35817
35818 2004-11-30  Simon Josefsson  <jas@extundo.com>
35819
35820         * modules/restrict (License): Change to LGPL.
35821
35822 2004-11-30  Simon Josefsson  <jas@extundo.com>
35823
35824         * m4/restrict.m4: Add copyright and copying conditions.
35825
35826 2004-11-30  Simon Josefsson  <jas@extundo.com>
35827
35828         * m4/base64.m4: New file.
35829
35830 2004-11-30  Simon Josefsson  <jas@extundo.com>
35831
35832         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
35833         base64.
35834
35835         * tests/test-base64.c: New file.
35836
35837         * modules/base64: New file.
35838
35839 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
35840
35841         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
35842         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
35843
35844         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
35845
35846 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
35847
35848         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
35849         (__getcwd.c): Don't restore errno; glibc doesn't.
35850         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
35851         first, falling back to our code only if its results look suspicious.
35852         Ensure that the resulting buffer is only as large as necessary.
35853
35854         * lib/readutmp.c: Include readutmp.h first.
35855         Include <errno.h>, since readutmp.h no longer does that.
35856         * lib/readutmp.h: Don't include <errno.h>,
35857         <sys/param.h>, <time.h>; not needed to establish interface.
35858         (errno): Remove decl.
35859         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
35860         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
35861         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
35862
35863 2004-11-28  Simon Josefsson  <jas@extundo.com>
35864
35865         * lib/base64.h, base64.c: New file.
35866
35867 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
35868
35869         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
35870
35871 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
35872
35873         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
35874         (Depends-on): Remove pathmax, same.  Add mempcpy.
35875         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
35876         (Makefile.am): Append getcwd.h to lib_SOURCES.
35877         (Include): Add getcwd.h.
35878         (Maintainer): Change from Jim Meyering to "all, glibc",
35879         since getdate now uses intended-for-glibc code.
35880         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
35881         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
35882
35883 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
35884
35885         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
35886         HP's ANSI C compiler.
35887         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
35888         Declaring int functions causes warnings on some modern systems and
35889         shouldn't be needed to compile on ancient ones.
35890         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
35891         defined.
35892
35893         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
35894         with the following changes.
35895         (__set_errno): Parenthesize properly.
35896         Include <stdbool.h>.
35897         (MIN, MAX, MATCHING_INO): New macros.
35898         (__getcwd): Define with prototype, not K&R form.
35899         Use heuristics to allocate default buffer on stack if possible.
35900         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
35901         behavior, and to avoid the PATH_MAX limit when computing
35902         ../../../../...
35903         Use MATCHING_INO to compare inode number to file.
35904         Check for arithmetic overflow in size calculations.
35905         Fix bug in reallocation of dot array that caused getcwd to fail
35906         on directories nested deeper than 75.
35907         Be more careful about saving errno on error.
35908         Do not use realloc; use only free+malloc, as this is a bit
35909         more flexible and avoids a needless copy operation.
35910         Do not inspect st_dev and st_ino for symbolic links; POSIX
35911         doesn't specify the latter.
35912         Check for closedir errors.
35913         Avoid needless casts.
35914         Use "#ifdef weak_alias" around weak_alias, to be like other
35915         glibc code.
35916         The following changes to getcwd.c have effect only when used in
35917         gnulib; they have no effect inside glibc proper.
35918         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
35919         as alloca isn't used.
35920         (alloca, __alloca): Likewise.
35921         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
35922         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
35923         unconditionally, as gnulib assumes C89 or better.
35924         Do not include <sys/param.h>.
35925         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
35926         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
35927         better.
35928         (NULL) [!defined NULL]: Remove; we assume C89 or better.
35929         Include <dirent.h> in a way that is compatible with modern Autoconf.
35930         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
35931         New macros, if not already defined.
35932         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
35933         Use "_LIBC", not "defined _LIBC", for consistency.
35934         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
35935         a mempcpy module.
35936         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
35937         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
35938         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
35939         credit only to Jim Meyering and adjust the copyright dates.
35940         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
35941         <stdlib.h>, <unistd.h>, "pathmax.h".
35942         Instead, include "xgetcwd.h" (first) and "getcwd.h".
35943         (INITIAL_BUFFER_SIZE): Remove.
35944         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
35945
35946 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
35947
35948         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
35949         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
35950         Use the _ONCE methods, for efficiency.
35951         Check for fcntl.h.  In test program, include <errno.h>
35952         and <fcntl.h> if available.  Remove old K&R cruft from
35953         test program.  Check for common errors in GNU/Linux,
35954         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
35955         don't do AC_LIBOBJ, as that's getcwd.m4's job.
35956         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
35957         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
35958         name accordingly.
35959         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
35960         accommodate new getcwd.c.
35961         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
35962         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
35963         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
35964         that's all we need now.
35965
35966 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35967
35968         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
35969         argp-parse.c depends on getopt internals, that means we should
35970         always use our getopt, to be on the safe side.
35971         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
35972         order not to spoil the result of an eventual previous invocation
35973         of gl_GETOPT_SUBSTITUTE.
35974
35975 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
35976
35977         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
35978         redefinition warnings. To avoid them, include the defines
35979         in `#if !defined __need_getopt ... #endif'. The only place
35980         where __getopt_argv_const is used is in definitions
35981         of getopt_long and getopt_long_only below, which are as well
35982         protected by `#ifndef __need_getopt'.
35983         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
35984         __need_getopt after including <stdio.h> and <unistd.h> These
35985         headers might have defined it.
35986
35987 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
35988
35989         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
35990
35991 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
35992
35993         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
35994         (futimens): New function, which uses futimes if available.
35995         (futimens, utimens): Support timespec==NULL, with same semantics
35996         as utime and utimens.
35997         * lib/utimens.h (futimens): New decl.
35998
35999 2004-11-23  Jim Meyering  <jim@meyering.net>
36000
36001         * lib/getopt_.h: Remove trailing blanks.
36002
36003 2004-11-23  Jim Meyering  <jim@meyering.net>
36004
36005         * lib/__fpending.c: Add comment.
36006
36007 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
36008
36009         * modules/canonicalize (Depends-on): Add xreadlink.
36010         Problem reported by James Youngman.
36011
36012 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
36013
36014         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
36015         New macros.
36016         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
36017         optopt): Use them instead of invoking ## directly; otherwise, the
36018         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
36019
36020 2004-11-19  Bruno Haible  <bruno@clisp.org>
36021
36022         * lib/strtok_r.c: Move comments from here...
36023         * lib/strtok_r.h: ... to here.
36024
36025 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
36026
36027         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
36028         implementations that mishandle size_t overflow.
36029
36030 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
36031
36032         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
36033         might fail.  Problem reported by Yoann Vandoorselaere.
36034         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
36035         implementations that mishandle size_t overflow.
36036
36037 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36038
36039         * modules/canon-host (Depends-on): Add strdup.
36040
36041 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36042
36043         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
36044
36045 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36046
36047         * lib/canon-host.c: Include "strdup.h".
36048         (canon_host): Use getaddrinfo if available, so that IPv6 works.
36049         Use strdup instead of malloc/strcpy to duplicate strings.
36050
36051         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
36052         (human_space_before_unit): New constant.
36053         * lib/human.c (human_readable): Support it.
36054
36055         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
36056         (xgetcwd): Set errno correctly when failing.
36057         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
36058         the failure is actually due to a PATH_MAX problem.
36059
36060         Further getopt changes to make it more likely that glibc will
36061         buy the changes back.
36062         * lib/getopt.c (POSIXLY_CORRECT): New constant.
36063         (getopt): Use it, so to preserve glibc semantic
36064         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
36065         when compiling for libc.
36066         * lib/getopt_.h (__getopt_argv_const): Bring it back.
36067         (getopt_long, getopt_long_only): Use it.
36068
36069         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
36070         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
36071         (getopt): Argv is now char * const *, as per standard.
36072         (_getopt_internal_r, _getopt_internal): Argv is now char **,
36073         not char *__getopt_argv_const *.
36074         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
36075         _getopt_long_only_r): Likewise.
36076         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
36077         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
36078         _getopt_long_r, _getopt_long_only_r): Likewise.
36079         * lib/getopt_.h (__getopt_argv_const): Remove.
36080         (getopt): Argv is now char * const *, as per standard.
36081
36082         * lib/getdate.y (tORDINAL): New token.
36083         (day, relunit): Allow it for relative times.
36084         (relative_time_table): Use tORDINAL for ordinals.
36085
36086 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
36087
36088         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
36089         Document that "second" isn't allowed as an ordinal number.
36090
36091 2004-11-16  Jim Meyering  <jim@meyering.net>
36092
36093         * modules/closeout (Depends-on): Add fpending.
36094
36095 2004-11-15  Jim Meyering  <jim@meyering.net>
36096
36097         * lib/closeout.c: Include "__fpending.h" once again.
36098         Include <stdbool.h>.
36099         (close_stdout): Don't fail just because stdout was closed initially,
36100         since some programs don't write to stdout in the normal course of
36101         operation (other than --version and --help), and we don't want this
36102         function to make e.g. `touch file >&-' fail.
36103         But do fail if it was closed and someone has tried to write to it.
36104         E.g., `printf foo >&-' must fail.
36105
36106 2004-11-13  Jim Meyering  <jim@meyering.net>
36107
36108         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
36109
36110 2004-11-12  Simon Josefsson  <jas@extundo.com>
36111
36112         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
36113         small doc fix is still pending.
36114
36115 2004-11-11  Simon Josefsson  <jas@extundo.com>
36116
36117         * modules/strtok_r: New file.
36118
36119         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36120         strtok_r.
36121
36122 2004-11-11  Simon Josefsson  <jas@extundo.com>
36123
36124         * m4/strtok_r.m4: New file.
36125
36126         * m4/getopt.m4: Replace opterr.
36127
36128 2004-11-11  Simon Josefsson  <jas@extundo.com>
36129
36130         * lib/strtok_r.h, strtok_r.c: New file.
36131
36132 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
36133
36134         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
36135         of replacing opterr, getopt, etc.  This should handle the
36136         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
36137
36138 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
36139
36140         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
36141         we can stop lying to compilers about the constness of argv when we
36142         are compiled outside glibc.
36143         (getopt, getopt_long, getopt_long_only): Use it.
36144         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
36145         _getopt_internal, getopt): Likewise.
36146         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
36147         _getopt_long_only_r): Likewise.
36148         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
36149         _getopt_long_r, _getopt_long_only_r): Likewise.
36150
36151         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
36152         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
36153         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
36154         the other external symbols.
36155         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
36156         declaration, since the above renaming now works around collisions.
36157
36158 2004-11-11  Jim Meyering  <jim@meyering.net>
36159
36160         * lib/linebreak.c: Remove trailing blanks.
36161         * lib/alloca_.h: Likewise.
36162         * lib/acosl.c: Likewise.
36163         * lib/euidaccess.c: Likewise.
36164         * lib/allocsa.h: Likewise.
36165
36166 2004-11-10  Simon Josefsson  <jas@extundo.com>
36167
36168         * m4/getaddrinfo.m4: New file.
36169
36170 2004-11-10  Simon Josefsson  <jas@extundo.com>
36171
36172         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
36173
36174 2004-11-10  Simon Josefsson  <jas@extundo.com>
36175
36176         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
36177         getaddrinfo.
36178
36179         * modules/getaddrinfo: New file.
36180
36181 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36182
36183         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
36184
36185 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36186
36187         * lib/mktime.c (SHR): New macro, which is a portable
36188         substitute for >> that should work even on Crays.
36189         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
36190         Problem reported by Mark D. Baushke in
36191         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
36192         * lib/getdate.y (SHR): Likewise.
36193         (tm_diff): Use it.
36194         * lib/strftime.c (SHR): Likewise.
36195         (tm_diff): Use it.
36196         * lib/quotearg.c (struct quoting_options): Use unsigned int for
36197         quote_these_too, so that right shifts are well defined.  All uses
36198         changed.
36199
36200 2004-11-10  Jim Meyering  <jim@meyering.net>
36201
36202         Ensure that no close failure goes unreported.
36203         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
36204         return early when it seems there's nothing to flush.
36205         Don't include __fpending.h.
36206
36207 2004-11-10  Jim Meyering  <jim@meyering.net>
36208
36209         * modules/closeout (Depends-on): Remove fpending.
36210
36211 2004-11-10  Jim Meyering  <jim@meyering.net>
36212
36213         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
36214
36215 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
36216
36217         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
36218         gl_FUNC_STRFTIME.
36219         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
36220         and AC_REQUIRE when possible, to avoid duplicate checks.
36221         Check for <wchar.h>.
36222
36223 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
36224
36225         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
36226
36227 2004-11-09  Bruno Haible  <bruno@clisp.org>
36228
36229         * m4/sockpfaf.m4: New file.
36230
36231 2004-11-05  Bruno Haible  <bruno@clisp.org>
36232
36233         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
36234         Reported by Mark D. Baushke <mdb@cvshome.org>.
36235
36236 2004-11-04  Bruno Haible  <bruno@clisp.org>
36237
36238         2004-09-11  Bruno Haible  <bruno@clisp.org>
36239                 * allocsa.valgrind: New file.
36240         2004-02-06  Bruno Haible  <bruno@clisp.org>
36241                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
36242                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
36243                 Reported by Christopher Seip <chris.seip@hp.com>.
36244
36245 2004-11-04  Bruno Haible  <bruno@clisp.org>
36246
36247         * modules/allocsa (Files): Add lib/allocsa.valgrind.
36248         (Makefile.am): Distribute it.
36249
36250 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
36251
36252         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
36253         with errno == ERANGE if the buffer is too small.
36254         Problem reported by Mark D. Baushke.
36255
36256 2004-11-03  Albert Chin  <china@thewrittenword.com>
36257             Paul Eggert  <eggert@cs.ucla.edu>
36258
36259         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
36260         equivalent, substitute $ac_type for equivalent type rather than
36261         blindly using uint32_t *always* which won't work if uint32_t is not
36262         available.  Define _UINT32_T to work around typedef of uint32_t if
36263         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
36264         2.5.1.
36265
36266 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
36267
36268         * m4/jm-macros.m4: Sync from coreutils.
36269         (gl_MACROS): Check for mbrlen, for pathchk.
36270         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
36271
36272 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
36273
36274         * lib/xreadlink.c (MAXSIZE): New macro.
36275         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
36276         size does not exceed MAXSIZE.  Avoid cast.
36277         As suggested by Mark D. Baushke in
36278         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
36279         if readlink fails with buffer size just under MAXSIZE, try again
36280         with MAXSIZE.
36281
36282 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
36283
36284         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
36285
36286 2004-11-02  Derek R. Price  <derek@ximbiot.com>
36287         and  Paul Eggert  <eggert@cs.ucla.edu>
36288
36289         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
36290         (get_date): Overparenthesize to avoid GCC warning.
36291
36292 2004-11-02  Bruno Haible  <bruno@clisp.org>
36293
36294         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
36295         returns void.
36296
36297 2004-11-02  Bruno Haible  <bruno@clisp.org>
36298
36299         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
36300         function returns void.
36301
36302 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
36303
36304         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
36305         fflush_unlocked, flockfile, funlockfile, funlockfile,
36306         fputs_unlocked, putc_unlocked.
36307
36308 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
36309
36310         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
36311         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
36312         already declared.
36313
36314 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
36315
36316         * modules/getdate (Files): Add doc/getdate.texi.
36317         (Depends-on): Add setenv, xalloc.
36318
36319 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
36320
36321         * lib/getdate.y: Add support for TZ="foo" within a date string.
36322         Fix some bugs near time_t boundaries.  Reject dates with
36323         out-of-range components, e.g., "Sept 31".
36324         Include <stdlib.h>, "setenv.h", "xalloc.h".
36325         (ISDIGIT_LOCALE): Remove; unused.
36326         Note that the TZ and time functions used here are not reentrant.
36327         (mktime_ok, get_tz): New functions.
36328         (TZBUFSIZE): New constant.
36329         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
36330         This requires that we sometimes generate our own TZ="XXX..." setting.
36331
36332 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
36333
36334         * doc/getdate.texi: New file, from coreutils with modifications for
36335         the new TZ parsing.
36336
36337 2004-10-27  Derek R. Price  <derek@ximbiot.com>
36338
36339         * lib/mktime.c (not_equal_tm): Remove redundant check.
36340
36341 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
36342
36343         * modules/regex (lib_SOURCES): Add regex.c.
36344         Reported by James Youngman in
36345         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
36346
36347 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
36348
36349         * lib/getdate.y: Use Bison 1.875 features, and some minor
36350         code cleanups.  This change does not affect semantics.
36351         Don't include <stdlib.h>; no longer needed.
36352         Don't include unlocked-io.h; only the "#if TEST" code uses
36353         stdio, and performance isn't crucial there.
36354         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
36355         Bison 1.875 features as described below.
36356         All uses of "PC." replaced by "pc->".
36357         (YYSTYPE): Add a forward declaration.
36358         (yylex, yyerror): Use full prototypes in forward decls.
36359         Use "%pure-parser" rather than obsolescent "%pure_parser".
36360         Use %parse-param and %lex-param instead of obsolescent
36361         YYPARSE_PARAM and YYLEX_PARAM.
36362         (meridian_table, month_and_day_table, time_units_table,
36363         relative_time_table, time_zone_table, military_table,
36364         lookup_zone, lookup_word, get_date):
36365         Use NULL instead of 0 where appropriate.
36366         (to_hour): Avoid abort (), to avoid a dependency on
36367         stdlib.h.
36368         (yyerror, yylex): Now accepts parser_control * arg.
36369         (main) [TEST]: Use '\0' rather than 0 for char.
36370
36371 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
36372
36373         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
36374
36375 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
36376
36377         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
36378         It's now the caller's responsibility to handle the case where
36379         !HAVE_GETPAGESIZE && !defined getpagesize.
36380
36381         * lib/mktime.c (leapyear): Arg is long int, not int.
36382
36383 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
36384
36385         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
36386
36387 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
36388
36389         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
36390         missing.  Problem reported by James Youngman.
36391
36392 2004-10-16  Simon Josefsson  <jas@extundo.com>
36393
36394         * gnulib-tool: Fix comments.  Fix parse problem.
36395         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
36396
36397 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
36398
36399         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
36400         implementation of getopt_long.  Problem reported by Alexander Taler in:
36401         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
36402
36403 2004-10-15  Bruno Haible  <bruno@clisp.org>
36404
36405         * gnulib-tool: Untabify. Initialize supplied_libname.
36406         (func_usage): More homogenous output.
36407         (func_modules_transitive_closure, func_modules_to_filelist,
36408         func_emit_lib_Makefile_am): New functions.
36409         (func_import): New function, extracted from big case statement. Use
36410         func_get_license, func_modules_transitive_closure,
36411         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
36412         opt_lgpl. Don't use test -a, as it's not portable.
36413         (func_create_testdir): Use func_modules_transitive_closure,
36414         func_modules_to_filelist, func_emit_lib_Makefile_am.
36415
36416 2004-10-15  Bruno Haible  <bruno@clisp.org>
36417
36418         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
36419
36420 2004-10-15  Bruno Haible  <bruno@clisp.org>
36421
36422         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
36423         the portions belonging to each module.
36424         Suggested by Derek Robert Price <derek@ximbiot.com>.
36425
36426 2004-10-12  Simon Josefsson  <jas@extundo.com>
36427
36428         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
36429         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
36430         to real functions.
36431
36432 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36433
36434         * modules/vsnprintf: New file.
36435
36436 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36437
36438         * m4/vsnprintf.m4: New file.
36439
36440 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36441
36442         * lib/vsnprintf.h: New file.
36443         * lib/vsnprintf.c: New file.
36444
36445 2004-10-11  Bruno Haible  <bruno@clisp.org>
36446
36447         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
36448         vsnprintf.
36449
36450 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
36451
36452         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
36453
36454 2004-10-07  Bruno Haible  <bruno@clisp.org>
36455
36456         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
36457         fits into the provided buffer.
36458
36459 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
36460
36461         * lib/diacrit.c, diacrit.h: Add GPL notice.
36462
36463         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
36464         notice.
36465         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
36466         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
36467         This avoids a potential constant-folding bug.
36468
36469 2004-10-05  Bruno Haible  <bruno@clisp.org>
36470
36471         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
36472         for the declaration of strsep.
36473
36474 2004-10-05  Bruno Haible  <bruno@clisp.org>
36475
36476         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
36477
36478 2004-10-04  Simon Josefsson  <jas@extundo.com>
36479
36480         * modules/memmem: New file.
36481         * tests/test-memmem.c: New file.
36482         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
36483
36484 2004-10-04  Simon Josefsson  <jas@extundo.com>
36485
36486         * m4/memmem.m4: New file.
36487
36488 2004-10-04  Simon Josefsson  <jas@extundo.com>
36489
36490         * lib/memmem.h: New file.
36491         * lib/memmem.c: New file, taken from glibc.
36492
36493 2004-10-04  Simon Josefsson  <jas@extundo.com>
36494
36495         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
36496         '#ifdef USE_UNLOCKED_IO'.
36497
36498 2004-10-04  Simon Josefsson  <jas@extundo.com>
36499
36500         * config/srclist.txt: Add memmem from glibc.
36501
36502 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
36503
36504         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
36505
36506         * modules/argmatch, modules/argp, modules/closeout, modules/error,
36507         modules/exclude, modules/getdate, modules/getline,
36508         modules/getndelim2, modules/getpass, modules/getpass-gnu,
36509         modules/getusershell, modules/linebuffer, modules/md5,
36510         modules/mountlist, modules/posixtm, modules/readtokens,
36511         modules/readutmp, modules/regex, modules/sha1,
36512         modules/version-etc, modules/yesno:
36513         Remove dependency on unlocked-io.
36514
36515 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
36516
36517         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
36518
36519         * m4/unlocked-io.m4: Add copyright notice.
36520         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
36521
36522 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
36523
36524         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
36525         * lib/xmalloc.c (xmemdup): Likewise.
36526         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
36527         XFREE): Remove these long-obsolescent macros.
36528         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
36529         * lib/xstrdup.c: Remove.
36530
36531         * lib/regex.c (re_comp): Cast gettext return value to char *,
36532         Problem reported by Martin Neitzel via Mark D. Baushke.
36533
36534 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
36535
36536         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
36537         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
36538         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
36539         regex.c, sha1.c, version-etc.c, yesno.c:
36540         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
36541         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
36542         the includer's responsibility.
36543
36544         Sync from coreutils.
36545
36546         * lib/modechange.c (mode_compile): Don't decrement a pointer that
36547         points to the start of a string, as the C Standard says the
36548         resulting behavior is undefined.
36549
36550         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
36551         simple -> simple_backups, numbered_existing ->
36552         numbered_existing_backups, numbered -> numbered_backups
36553         to avoid shadowing problems.  All uses changed.
36554         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
36555         * lib/backupfile.c (check_extension, numbered_backup):
36556         Rename locals to avoid shadowing 'basename'.
36557         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
36558         once.
36559
36560         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
36561         * lib/.cvsignore: Add getopt.h.
36562
36563 2004-10-04  Bruno Haible  <bruno@clisp.org>
36564
36565         * modules/README: New file.
36566         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
36567         not a module.
36568
36569 2004-10-02  Jim Meyering  <jim@meyering.net>
36570
36571         * lib/dirfd.h, getpagesize.h: Add copyright notice.
36572
36573 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36574
36575         * modules/strsep: New file.
36576
36577 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36578
36579         * m4/strsep.m4: New file.
36580
36581 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
36582
36583         * lib/strsep.h: New file.
36584         * lib/strsep.c: New file.
36585
36586 2004-10-01  Simon Josefsson  <jas@extundo.com>
36587
36588         * lib/snprintf.c (snprintf): Handle size==0.
36589
36590 2004-10-01  Simon Josefsson  <jas@extundo.com>
36591             Bruno Haible  <bruno@clisp.org>
36592
36593         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
36594         (snprintf): Declare 'args'.
36595
36596 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
36597
36598         * lib/snprintf.c: Remove comments as to why each header is needed.
36599
36600 2004-10-01  Bruno Haible  <bruno@clisp.org>
36601
36602         * MODULES.html.sh: Add strsep.
36603
36604 2004-09-30  Simon Josefsson  <jas@extundo.com>
36605
36606         * modules/snprintf: New file.
36607
36608 2004-09-30  Simon Josefsson  <jas@extundo.com>
36609
36610         * m4/snprintf.m4: New file.
36611
36612 2004-09-30  Simon Josefsson  <jas@extundo.com>
36613
36614         * lib/snprintf.h, lib/snprintf.c: New files.
36615
36616 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
36617
36618         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
36619         (hol_entry_help): Never translate an empty string.
36620         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
36621         * lib/argp.h (OPTION_NO_TRANS): New option.
36622
36623 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
36624
36625         * modules/argp (Maintainer): Replace Simon Josefsson
36626         by Sergey Poznyakoff.
36627
36628 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
36629
36630         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
36631         changes merged back into glibc.
36632
36633 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
36634
36635         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
36636
36637 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
36638
36639         * lib/xvasprintf.c: Include xalloc.h.
36640         (xvasprintf): Use xalloc_die, not xmalloc_die.
36641
36642 2004-09-29  Bruno Haible  <bruno@clisp.org>
36643
36644         * modules/alloca-opt: New file, derived from modules/alloca.
36645         * modules/allocsa: Depend on alloca-opt instead of alloca.
36646         * modules/setenv: Likewise.
36647         * modules/vasnprintf: Likewise.
36648         * MODULES.html.sh: Add alloca-opt.
36649
36650 2004-09-28  Simon Josefsson  <jas@extundo.com>
36651
36652         * gnulib-tool: New parameter --lgpl, to asseert that modules are
36653         LGPL, and to replace license template from GPL to LGPL.
36654
36655 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
36656
36657         * modules/dummy: Change license to LGPL.
36658
36659 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
36660
36661         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
36662
36663 2004-09-24  Simon Josefsson  <jas@extundo.com>
36664
36665         * modules/minmax (License): Change from GPL to LGPL.
36666
36667 2004-09-23  Simon Josefsson  <jas@extundo.com>
36668
36669         * gnulib-tool (--import): Typo.
36670
36671 2004-09-23  Simon Josefsson  <jas@extundo.com>
36672
36673         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
36674
36675 2004-09-22  Bruno Haible  <bruno@clisp.org>
36676
36677         * modules/*: Add 'License' field.
36678         * gnulib-tool: Accept --extract-license option.
36679         (func_get_license): New function.
36680
36681 2004-09-21  Bruno Haible  <bruno@clisp.org>
36682
36683         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
36684         Reported by Simon Josefsson.
36685
36686 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
36687
36688         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
36689         gl_AC_TYPE_LONG_LONG.
36690
36691 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
36692
36693         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
36694
36695 2004-09-18  Simon Josefsson  <jas@extundo.com>
36696         and  Paul Eggert  <eggert@cs.ucla.edu>
36697
36698         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
36699         calls with autoreconf.  Define GL_LIB.
36700
36701 2004-09-14  Karl Berry  <karl@gnu.org>
36702
36703         * config/srclist.txt: unsync setenv.c, sigh.
36704
36705 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
36706
36707         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
36708         Problem reported by Bruno Haible in:
36709         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
36710
36711 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
36712
36713         * config/srclist.txt: Comment out argp-pvh.c.
36714
36715 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
36716
36717         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
36718         in case some system header has #define'd it.  Problem reported by
36719         Soeren D. Schulze in
36720         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
36721
36722 2004-09-09  Karl Berry  <karl@gnu.org>
36723
36724         * regex.[ch]: delete from the root.  These were supposed to be
36725                 synced with emacs cvs, but this has not happened for about
36726                 a year, and anyway nothing else uses emacs regex.[ch].
36727                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
36728                 lib/regex[.ch] is untouched.
36729
36730 2004-09-09  Bruno Haible  <bruno@clisp.org>
36731
36732         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
36733
36734 2004-09-09  Bruno Haible  <bruno@clisp.org>
36735
36736         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
36737         modifications.
36738         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
36739
36740 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
36741
36742         * modules/xvasprintf: New file.
36743         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
36744
36745 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
36746
36747         * lib/xvasprintf.h: New file.
36748         * lib/xvasprintf.c: New file.
36749         * lib/xasprintf.c: New file.
36750
36751 2004-09-08  Bruno Haible  <bruno@clisp.org>
36752
36753         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
36754
36755 2004-09-08  Bruno Haible  <bruno@clisp.org>
36756
36757         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
36758         length is > INT_MAX.
36759         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
36760         more.
36761
36762 2004-09-08  Bruno Haible  <bruno@clisp.org>
36763
36764         * lib/stdint_.h: New file, taken from GNU clisp.
36765
36766 2004-09-08  Bruno Haible  <bruno@clisp.org>
36767             Oskar Liljeblad  <oskar@osk.mine.nu>
36768
36769         * modules/stdint: New file.
36770         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
36771
36772 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
36773
36774         Import from coreutils.
36775         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
36776         strings on unbounded length.  alloca's performance benefits aren't
36777         that important here.
36778         (V_STRDUP): Remove.
36779         (parse_with_separator): New function, with most of the internals
36780         of the old parse_user_spec.  Allow user to omit both user and group,
36781         for compatibility with FreeBSD.
36782         Clone only the user name, not the entire spec.
36783         Do not set *uid, *gid unless entirely successful.
36784         Avoid memory leak in some failing cases.
36785         Fix regression for USER.GROUP reported by Dmitry V. Levin in
36786         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
36787         (parse_user_spec): Rewrite to use parse_with_separator.
36788
36789 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
36790
36791         * modules/userspec: Don't depend on alloca.
36792
36793 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
36794
36795         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
36796
36797 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
36798
36799         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
36800         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
36801         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
36802
36803 2004-08-16  Simon Josefsson  <jas@extundo.com>
36804
36805         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
36806         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
36807         Add --dry-run for --import.
36808         Let user provided command line parameters override configure.ac
36809         settings.
36810
36811 2004-08-12  Simon Josefsson  <jas@extundo.com>
36812
36813         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
36814         as discussed with Paul Eggert in threads rooted at
36815         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
36816         and
36817         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
36818         Before, the test was empty, and relied on ELIDE_CODE in source
36819         code.)
36820         (gl_PREREQ_GETOPT): New macro.
36821         (gl_GETOPT): Use them.
36822
36823 2004-08-12  Simon Josefsson  <jas@extundo.com>
36824
36825         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
36826         * lib/getopt_.h: Renamed from getopt.h.
36827
36828 2004-08-12  Simon Josefsson  <jas@extundo.com>
36829
36830         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
36831         Change default library name from libfoo to libgnu.
36832         Now, if you have a configure.ac that says:
36833                 gl_SOURCE_BASE(gl)
36834                 gl_M4_BASE(gl/m4)
36835                 gl_MODULES(error getopt etcetera)
36836                 gl_INIT
36837         you can import all you need by running:
36838                 ../gnulib/gnulib-tool --import
36839
36840         * modules/getopt (Files): Rename getopt.h to getopt_.h.
36841         (Makefile.am): Rewrite, use logic from argz.
36842         (Include): Use <getopt.h> instead of "getopt.h".
36843
36844 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
36845
36846         * modules/argp (Files): Add m4/unlocked-io.m4.
36847         (Depends-on): Add extensions.
36848
36849 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
36850
36851         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
36852         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
36853         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
36854         Check for program_invocation_name, program_invocation_short_name,
36855         flockfile, funlockfile, features.h, _getopt_long_only_r.
36856
36857 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
36858
36859         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
36860         its complicated substitute.
36861         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
36862         and program_invocation_name.
36863         (__argp_basename) [!_LIBC]: Remove; the only use was
36864         replaced by its body.
36865         (__argp_short_program_name): Change condition from
36866         !defined __argp_short_program_name to
36867         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
36868         to match argp-namefrob.h.
36869         (__argp_failure): Don't assume strerror_r returns char *.
36870         * lib/argp-parse.c (N_): Define unconditionally.
36871         (argp_default_options): Fill out initializers with 0 to avoid
36872         gcc warnings.
36873
36874 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
36875
36876         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
36877         getopt1.c.
36878
36879 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
36880
36881         Merge from coreutils.
36882
36883         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
36884
36885         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
36886         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
36887
36888 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
36889
36890         Merge from coreutils.
36891
36892         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
36893         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
36894         for Reliant Unix 5.43.
36895
36896         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
36897         (union fooround): Use uintmax_t, not long int.
36898         The rest is a merge from libc:
36899         [defined _LIBC]: Include <shlib-compat.h>.
36900         (_obstack) [defined _LIBC]: Remove after 2.3.4.
36901
36902         * lib/settime.c (settime): Recode to avoid warning with
36903         Sun Forte C 6U2.
36904
36905         * lib/strverscmp.c: Convert to UTF-8.
36906
36907 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
36908
36909         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
36910         m4/uintmax_t.m4.
36911
36912 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
36913
36914         * modules/xalloc-die: New file.
36915         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
36916
36917         * modules/md5 (Files): Add m4/uint32_t.m4.
36918         * modules/sha1: Renamed from modules/sha.
36919         (Files):
36920         Rename lib/sha.h to lib/sha1.h.
36921         Rename lib/sha.c to lib/sha1.c.
36922         Rename m4/sha.m4 to m4/sha1.m4.
36923         (lib_SOURCES): Likewise.
36924         (configure.ac): Rename gl_SHA to gl_SHA1.
36925         (Include): sha.h -> sha1.h.
36926
36927 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
36928
36929         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
36930         * m4/sha1.m4: Renamed from sha.m4.
36931         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
36932
36933 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
36934
36935         * lib/obstack.h (obstack_empty_p):
36936         Don't assume that chunk->contents is suitably aligned.
36937         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
36938         Likewise. Problem reported by Benno in
36939         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
36940
36941         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
36942         readable.  This could be improved further but it'd take some work.
36943
36944 2004-08-08  Simon Josefsson  <jas@extundo.com>
36945
36946         * modules/xgethostname (Depends-on): Remove exit and error (not
36947         used).
36948
36949         * modules/getpass-gnu: Add getpass.h.
36950         (Depends-on): Add stdbool.
36951         * modules/getpass: Add getpass.h.
36952
36953 2004-08-08  Simon Josefsson  <jas@extundo.com>
36954
36955         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
36956         Check getpass declaration.
36957
36958 2004-08-08  Simon Josefsson  <jas@extundo.com>
36959
36960         * lib/xgethostname.c: Don't include error.h (not used).
36961
36962         * lib/getpass.h: Add.
36963         * lib/getpass.c: Include getpass.h first.
36964
36965 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
36966
36967         * lib/xalloc-die.c: New file.
36968         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
36969         All uses removed.
36970         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
36971         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
36972         xalloc-die.c.
36973         (_, N_, xalloc_die): Move to xalloc-die.c.
36974         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
36975         so that we needn't mess with xalloc_msg_memory_exhausted.
36976
36977         * lib/sha1.h: Renamed from sha.h.
36978         (SHA1_H): Renamed from _SHA_H.
36979         (sha1_ctx): Renamed from sha_ctx.
36980         (sha1_init_ctx): Renamed from sha_init_ctx.
36981         (sha1_process_block): Renamed from sha_process_block.
36982         (sha1_process_bytes): Renamed from sha_process_bytes.
36983         (sha1_finish_ctx): Renamed from sha_finish_ctx.
36984         (sha1_read_ctx): Renamed from sha_read_ctx.
36985         (sha1_stream): Renamed from sha_stream.
36986         (sha1_buffer): Renamed from sha_buffer.
36987         * lib/sha1.c: Likewise; renamed from sha.c.
36988         Do not include <sys/types.h>.
36989         Include <stddef.h> rather than <stdlib.h>.
36990
36991 2004-08-08  Bruno Haible  <bruno@clisp.org>
36992
36993         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
36994         FILESYSTEM_PREFIX_LEN.
36995         * lib/progreloc.c: Likewise.
36996         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
36997
36998 2004-08-06  Simon Josefsson  <jas@extundo.com>
36999
37000         * modules/progname (Depends-on): Don't depend on stdbool.
37001
37002 2004-08-06  Simon Josefsson  <jas@extundo.com>
37003
37004         * modules/getsubopt: New file.
37005         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
37006         getsubopt.
37007
37008 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37009
37010         More merge from coreutils.
37011
37012         * m4/utimens.m4, m4/utimecmp.m4: New files.
37013         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
37014         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
37015         prereq.m4, sha.m4: Import changes from coreutils.
37016
37017 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37018
37019         More merge from coreutils.
37020         * modules/raise, modules/readtokens0, modules/utimens:
37021         * modules/utimecmp, module/xnanosleep: New files.
37022         * modules/strftime: Add lib/strftime.h.
37023         Change include from <time.h> to "strftime.h".
37024         * modules/yesno: Add lib/yesno.h.
37025         * modules/backupfile: Remove lib/addext.c.
37026         * modules/euidaccess: Add stat-macros.h.
37027         * modules/canonicalize, modules/euidaccess,
37028         modules/filemode, modules/lchown, modules/makepath,
37029         modules/rmdir, modules/stat: Likewise.
37030
37031 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
37032
37033         Merge from tar.
37034         * lib/argp-help.c (make_hol, hol_append): Don't assume that
37035         SIZE_MAX is a valid preprocessor constant.
37036         (__argp_basename): Change from "#ifndef _LIBC"
37037         to "#ifndef __argp_short_program_name", so that
37038         we don't compile these functions for tar.
37039
37040         More merges from coreutils.
37041         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
37042         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
37043         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
37044         * lib/addext.c: Remove; no longer needed.
37045         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
37046         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
37047         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
37048         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
37049         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
37050         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
37051         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
37052         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
37053         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
37054         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
37055         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
37056         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
37057         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
37058         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
37059         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
37060         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
37061         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
37062         Import changes from coreutils.
37063
37064 2004-08-05  Simon Josefsson  <jas@extundo.com>
37065
37066         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
37067
37068 2004-08-05  Simon Josefsson  <jas@extundo.com>
37069
37070         * m4/getsubopt.m4: New file.
37071
37072 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37073
37074         Merge from coreutils.
37075
37076         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
37077         * m4/getcwd-path-max.m4: New files.
37078
37079         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
37080         FILESYSTEM_PREFIX_LEN ->
37081         FILE_SYSTEM_PREFIX_LEN.
37082         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
37083         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
37084         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
37085         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
37086
37087         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
37088         prerequisite modules now handle the DOS stuff.
37089         Don't check for unistd.h.
37090
37091 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37092
37093         Merge from coreutils.
37094
37095         * lib/.gdb-history: Remove; this doesn't belong here.
37096
37097         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
37098         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
37099         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
37100         * lib/getcwd.c: New files.
37101
37102         * lib/dirname.h: Include <stdbool.h>.
37103         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
37104         for consistency with POSIX terminology.  All uses changed.
37105         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
37106         (strip_trailing_slashes): Use bool for booleans.
37107         * lib/stripslash.c (strip_trailing_slashes): Likewise.
37108
37109         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
37110         sometimes returns a positive errno value even when it succeeds.
37111         (print_errno_message) [!LIBC]: Fall back on strerror if
37112         __strerror_r fails.
37113
37114         * lib/path-concat.c (mempcpy): Don't define if a system header defines
37115         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
37116         (longest_relative_suffix): New function.
37117         (path_concat): Use it.  Assume first argument is not NULL.
37118         Port to DOS.  Omit redundant separators.
37119         Report an error instead of returning NULL.
37120         Use mempcpy instead of memcpy.
37121         (xpath_concat): Remove: not declared or used.
37122
37123         * lib/same.h: Include <stdbool.h>
37124         (same_name): Return bool, not int.
37125         * lib/same.c (same_name): Likewise.
37126         (errno): Don't declare; we assume C89 or better now.
37127
37128         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
37129         if not already defined.
37130
37131         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
37132         * lib/dup-safer.c (errno): Likewise.
37133
37134 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
37135
37136         Merge from coreutils.
37137         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
37138         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
37139         * modules/path-concat: Don't depend on strdup.
37140
37141 2004-08-03  Simon Josefsson  <jas@extundo.com>
37142
37143         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
37144         * lib/progname.h: Don't include stdbool.h.
37145
37146 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37147
37148         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
37149         * MODULES.html.sh (func_all_modules): Remove fatal.
37150
37151 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37152
37153         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
37154
37155 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
37156
37157         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
37158         working.
37159
37160 2004-08-02  Simon Josefsson  <jas@extundo.com>
37161
37162         * lib/getsubopt.h: New file, with comments from Bruno Haible.
37163         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
37164         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
37165
37166 2004-08-01  Simon Josefsson  <jas@extundo.com>
37167
37168         * lib/xgetdomainname.c: Include stdlib.h, for free().
37169
37170 2004-07-19  Bruno Haible  <bruno@clisp.org>
37171
37172         * MODULES.html.sh (func_all_modules): Add dummy.
37173
37174 2004-07-16  Simon Josefsson  <jas@extundo.com>
37175
37176         * modules/dummy: New file.
37177
37178 2004-07-16  Simon Josefsson  <jas@extundo.com>
37179
37180         * lib/dummy.c: New file.
37181
37182 2004-07-16  Bruno Haible  <bruno@clisp.org>
37183
37184         * lib/backupfile.h: Add extern "C" for C++.
37185         * lib/closeout.h: Likewise.
37186         * lib/copy-file.h: Likewise.
37187         * lib/findprog.h: Likewise.
37188         * lib/full-write.h: Likewise.
37189         * lib/pathname.h: Likewise.
37190         * lib/progname.h: Likewise.
37191         * lib/stpcpy.h: Likewise.
37192         * lib/stpncpy.h: Likewise.
37193         * lib/strcase.h: Likewise.
37194         * lib/strstr.h: Likewise.
37195         * lib/xalloc.h: Likewise.
37196
37197         * lib/mbswidth.h: Add extern "C" for C++.
37198         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
37199
37200 2004-07-13  Robert Millan  <robertmh@gnu.org>
37201
37202         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
37203
37204 2004-07-09  Simon Josefsson  <jas@extundo.com>
37205
37206         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
37207         failed without this.)
37208
37209 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
37210
37211         * modules/chown (Files): Add lib/fchown-stub.c, since
37212         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
37213
37214 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
37215
37216         * lib/fchown-stub.c: New file.
37217
37218 2004-06-24  Jim Meyering  <jim@meyering.net>
37219
37220         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
37221
37222 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37223
37224         * modules/argz: Omit "#include".
37225
37226         * MODULES.html.sh (func_all_modules): Add calloc, to match
37227         2004-06-01 addition of calloc module.
37228
37229 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37230
37231         * m4/argz.m4: New file, which is autoupdated from libtool.
37232
37233 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37234
37235         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
37236         libtool.
37237
37238 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
37239
37240         * config/srclist-update: Don't insist on "USA." before the
37241         close-comment, as libtool omits the period and puts the */ on a
37242         separate line.
37243         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
37244         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
37245
37246 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
37247
37248         * modules/argz: New file.
37249         * MODULES.html.sh (func_all_modules): Add argz.
37250
37251 2004-06-12  Jim Meyering  <jim@meyering.net>
37252         and  Paul Eggert  <eggert@cs.ucla.edu>
37253
37254         * modules/hash (Files): Add lib/xalloc.h.
37255         * modules/pipe (Depends-on): Add wait-process.
37256         * modules/stat (Depends-on): Add xalloc.
37257         * modules/userspec (Files): Add lib/userspec.h.
37258         * modules/xstrto
37259
37260         Upgrade from gettext-0.13.
37261         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
37262         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
37263         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
37264
37265 2004-06-10  Jim Meyering  <jim@meyering.net>
37266
37267         * lib/calloc.c: New file.
37268
37269 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
37270
37271         * lib/getdate.y (yylex): Allow space between sign and number.
37272         Problem reported by Dan Jacobson.
37273
37274 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
37275
37276         Merge from coreutils CVS.
37277
37278         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
37279         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
37280         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
37281         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
37282         xstrtol.m4: Fix copyright date and/or serial number.
37283
37284         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
37285         See if we need an fchown replacement.
37286         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
37287         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
37288         and use the replacement function if we detect either defect.
37289
37290         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
37291         gl_UTIMECMP.
37292
37293 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
37294         and  Jim Meyering  <jim@meyering.net>
37295
37296         Merge from coreutils CVS.
37297
37298         * lib/stat-macros.h: New file, with contents from file-type.h
37299         and coreutils' system.h.
37300         * lib/file-type.c: Include "stat-macros.h".
37301         * lib/file-type.h (file_type): Move all macro definitions to new file,
37302         stat-macros.h.
37303
37304         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
37305         Wrap old code with this conditional.
37306         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
37307         function that does not dereference symlinks.
37308         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
37309
37310         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
37311         dependency problems.
37312         (xreadlink): Accept new arg SIZE, for efficiency.
37313         All decls and uses changed.
37314         * lib/xreadlink.h: Include <stddef.h>, for size_t.
37315
37316         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
37317         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
37318
37319         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
37320         sysexits.h.
37321
37322 2004-06-01  Jim Meyering  <jim@meyering.net>
37323
37324         * m4/calloc.m4: New file.
37325
37326 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
37327
37328         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
37329         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
37330         Also, fix a typo in a diagnostic.
37331
37332 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
37333
37334         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
37335         or AC_FUNC_REALLOC.
37336
37337 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
37338
37339         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
37340         macros to be defined.
37341         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
37342         the allocator returns NULL because the requested size is zero.
37343
37344 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
37345
37346         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
37347         var.  Add comment explaining why libc still defines it.  This
37348         merges the following patch from glibc:
37349         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
37350
37351 2004-05-20  Andreas Schwab  <schwab@suse.de>
37352
37353         * m4/free.m4: Replace free if it not known to work, not the other
37354         way round.
37355
37356 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
37357
37358         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
37359         present in glibc since revision 1.1 of this file.
37360         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
37361         obstack_alignment_mask, obstack_alloc, obstack_base,
37362         obstack_blank, obstack_blank_fast, obstack_chunk_size,
37363         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
37364         obstack_grow0, obstack_init, obstack_int_grow,
37365         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
37366         obstack_next_free, obstack_object_size, obstack_ptr_grow,
37367         obstack_ptr_grow_fast, obstack_room): Remove declarations of
37368         nonexistent functions.
37369
37370 2004-05-18  Karl Berry  <karl@gnu.org>
37371
37372         * config/srclist.txt: break link for vasnprintf.c.
37373
37374 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
37375
37376         Port obstack to the AS/400, where pointers are 16 bytes wide and
37377         you cannot cast an integer to a valid pointer.  This patch is
37378         currently waiting to be integrated into glibc; see
37379         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
37380
37381         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
37382         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
37383         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
37384         (struct obstack): temp member is now a union of a pointer and
37385         an integer, instead of an integer.  All integer uses changed.
37386         This does not affect the physical layout of struct obstack,
37387         except on hosts (like the AS/400) where the size or alignment of
37388         void * is greater than that of ptrdiff_t.
37389         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
37390         __STDC__)]: Store temporary in pointer member of union, not
37391         integer member.
37392         * lib/obstack.c: Include <stddef.h>, for offsetof.
37393         (struct fooalign): Remove; it doesn't need a name.
37394         (union fooround): Change double to long double, and add void *.
37395         (DEFAULT_ALIGNMENT): Use offsetof to compute.
37396         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
37397         not a macro.  Hence the values are always int; so remove all
37398         casts-to-int in uses.
37399
37400 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
37401
37402         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
37403         we can get this patch merged into glibc.
37404
37405 2004-05-17  Derek R. Price  <derek@ximbiot.com>
37406             Paul Eggert  <eggert@cs.ucla.edu>
37407
37408         * m4/argp: Depend on alloca.
37409
37410 2004-05-17  Derek R. Price  <derek@ximbiot.com>
37411             Paul Eggert  <eggert@cs.ucla.edu>
37412
37413         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
37414         freecoding.
37415
37416 2004-05-17  Bruno Haible  <bruno@clisp.org>
37417
37418         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
37419         precision that consists of a '.' followed by an empty digit string.
37420         Patch by Tor Lillqvist <tml@iki.fi>.
37421
37422 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
37423
37424         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
37425         for backward compatibility with older code.  We need our own
37426         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
37427         it under some other name, and our alloca.h will define it.
37428
37429 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
37430             Derek Price  <derek@ximbiot.com>
37431
37432         * lib/alloca.c: Include <alloca.h>, to get our interface.
37433         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
37434         include <alloca.h> first.  Use C89 prototype for alloca; this
37435         requires including <stddef.h> for size_t.  Use extern "C" if C++.
37436         Use #elif for simplicity, since we can assume C89 now.
37437         Don't try to source the system alloca.h since it will not be found
37438         and to prevent recursively including its replacement.
37439         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
37440         * lib/regex.c: Likewise.
37441
37442 2004-05-16  Derek Price  <derek@ximbiot.com>
37443             Paul Eggert  <eggert@cs.ucla.edu>
37444
37445         getline cleanup.  This changes the getndelim2 API: both order of
37446         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
37447         no delimiter).
37448
37449         * lib/getline.c: Don't include stddef.h or stdio.h, since our
37450         interface does that.
37451         (getline): Always use getdelim, so that we don't have two
37452         copies of this code.
37453         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
37454         if available.
37455         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
37456         (GETNDELIM2_MAXIMUM): New macro.
37457         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
37458         instead of the old practice of delim2==0.  All callers changed.
37459         Return -1 on overflow, instead of returning junk.
37460         Do not set *linesize unless allocation succeeds.
37461         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
37462         that we include sys/types.h.
37463         * lib/getnline.h: Likewise.
37464         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
37465         (getndelim2): Reorder arguments.
37466         * lib/getnline.c (getnline, getndelim):
37467         Don't discard the NMAX argument.
37468         (getnline): Invoke getndelim, to avoid code duplication.
37469         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
37470         of (size_t) -1 by callers of the getnline family.
37471
37472 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
37473
37474         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
37475         Check for gettimeofday.
37476         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
37477         Check for settimeofday, stime.
37478
37479 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
37480
37481         * lib/nanosleep.c (suspended): Change its type from int to
37482         sig_atomic_t volatile.
37483         (first_call): Make it private to rpl_nanosleep, and have it
37484         be zero initially as that's a bit faster.
37485         (my_usleep): Round up fractional times instead of truncating them,
37486         as this is the usual meaning for 'sleep'.
37487
37488         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
37489         doesn't work.
37490         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
37491         (ENOSYS): Define if not defined.
37492         (settime): Fall back on stime if it exists and settimeofday fails.
37493         But don't bother with fallbacks if a method fails with errno == EPERM.
37494
37495 2004-05-11  Jim Meyering  <jim@meyering.net>
37496
37497         Prior to this change, the save_cwd caller required read access to the
37498         current directory on most systems (ones with the fchdir function).
37499
37500         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
37501         fails, try write-only, and finally, resort to using xgetcwd.
37502
37503 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
37504
37505         * lib/obstack.c, obstack.h: Import changes from libc.
37506
37507 2004-04-28  Bruno Haible  <bruno@clisp.org>
37508
37509         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
37510         also implicitly appends .exe to executables.
37511         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
37512         accepts Windows pathnames.
37513         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
37514         Treat Cygwin like Windows, since it now accepts Windows pathnames.
37515         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
37516         Treat Cygwin like Windows, since it now accepts Windows pathnames.
37517         Reported by Derek Robert Price <derek@ximbiot.com>.
37518
37519 2004-04-21  Karl Berry  <karl@gnu.org>
37520
37521         * config/srclist.txt (localcharset.c): break sync.
37522
37523 2004-04-20  Paul Eggert  <eggert@twinsun.com>
37524
37525         * m4/host-os.m4: Add a copyright notice.
37526
37527 2004-04-20  Jim Meyering  <jim@meyering.net>
37528
37529         Change UTILS_ to gl_ in AC_DEFINE'd names.
37530         Change utils_- and jm_-prefixed variables, too.
37531         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
37532         UTILS_FUNC_MKDIR_TRAILING_SLASH.
37533         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
37534
37535         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
37536         Don't emit trailing blanks.
37537         Also rename jm_-prefixed variables to have gl_ prefix.
37538
37539         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
37540         Also rename jm_-prefixed variables to have gl_ prefix.
37541
37542         * m4/jm-macros.m4: Reflect the renamings.
37543         * m4/prereq.m4: Likewise.
37544
37545 2004-04-20  Jim Meyering  <jim@meyering.net>
37546
37547         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
37548         memory.
37549
37550 2004-04-20  Jim Meyering  <jim@meyering.net>
37551             Bruno Haible  <bruno@clisp.org>
37552
37553         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
37554         memory when realloc fails.
37555
37556 2004-04-19  Jim Meyering  <jim@meyering.net>
37557
37558         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
37559         now that readutmp.c may call `free (0)'.
37560
37561 2004-04-19  Bruno Haible  <bruno@clisp.org>
37562
37563         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
37564         * m4/inttypes_h.m4: Likewise.
37565         * m4/stdint_h.m4: Likewise.
37566         * m4/intmax_t.m4: Likewise.
37567         * m4/uintmax_t.m4: Likewise.
37568
37569 2004-04-18  Jim Meyering  <jim@meyering.net>
37570
37571         * m4/prereq.m4: Don't forbid jm_ prefix.
37572
37573         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
37574         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
37575         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
37576         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
37577         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
37578         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
37579         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
37580         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
37581         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
37582         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
37583         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
37584         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
37585         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
37586         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
37587         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
37588         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
37589         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
37590         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
37591         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
37592
37593 2004-04-18  Jim Meyering  <jim@meyering.net>
37594
37595         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
37596         failure, don't leak memory and do call END_UTMP_ENT.
37597
37598 2004-04-16  Jim Meyering  <jim@meyering.net>
37599
37600         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
37601         coreutils' stat program.
37602         (gl_PREREQ): Don't require jm_PREREQ_STAT.
37603
37604 2004-04-11  Paul Eggert  <eggert@twinsun.com>
37605
37606         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
37607         C89.
37608         (CHAR_BIT): Remove, since we assume C89.
37609         Include <stdint.h> if available, as per current Autoconf CVS advice.
37610
37611 2004-03-31  Jim Meyering  <jim@meyering.net>
37612
37613         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
37614         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
37615         * m4/xalloc.m4: Likewise.
37616
37617 2004-03-30  Paul Eggert  <eggert@twinsun.com>
37618
37619         Merge from coreutils.
37620
37621         * m4/inttostr.m4: New file.
37622         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
37623         Require AM_STDBOOL_H and gl_TIMESPEC instead.
37624         Require gl_CLOCK_TIME.
37625         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
37626
37627 2004-03-30  Paul Eggert  <eggert@twinsun.com>
37628
37629         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
37630         not bool, to be more consistent with Unix conventions.
37631         Suggested by Bruno Haible.
37632
37633         Merge from coreutils.
37634
37635         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
37636         * lib/umaxtostr.c: New files.
37637
37638         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
37639         the usual <time.h> dance.
37640         (get_date): Change signature to support fractional time stamps.
37641         All callers changed.
37642         * lib/getdate.y: Include "getdate.h" first, as we can now
37643         assume C89 and don't need to worry about 'const'.
37644         Similarly, include "unlocked-io.h" near start, not in middle.
37645         Include <limits.h>.
37646         (textint.value): Use long int rather than int.
37647         (textint.digits): Use size_t rather than int.
37648         (BILLION, LOG10_BILLION): New constants.
37649         (parser_control): New member rel_ns.  Members day_ordinal,
37650         time_zone, month, day, hour, minutes, rel_year, rel_month,
37651         rel_day, rel_hour, rel_minutes, rel_seconds
37652         are now long int, not int.  Member seconds is now struct timespec,
37653         not int.  New member timespec_seen.  Members dates_seen, days_seen,
37654         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
37655         not int.
37656         (%union.intval): Now long int, not int.
37657         New member timespec.
37658         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
37659         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
37660         (spec): Now is a timespec or an item list.
37661         (timespec, items): New nonterminals.
37662         (time, rel, relunit, number, get_date):
37663         Add support for fractional seconds.
37664         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
37665         (gmtime, localtime, mktime): Remove decls; not needed with C89.
37666         (to_hour): First arg is now long int, not int.
37667         (to_year): Returns long int, not int.
37668         Don't treat year -70 like 70.
37669         (tm_diff): Returns long int, not int.
37670         (lookup_word): Use bool instead of int when appropriate.
37671         (yylex): Use size_t for count, not int.
37672         Detect overflow when parsing large integer constants.
37673         Add support for fractions.
37674         (get_date): Make pointers 'const' if possible.
37675         Use more-portable code to detect integer overflow.
37676         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
37677         Don't use ctime; it's not reliable if the year has >4 digits.
37678
37679         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
37680         This is for compatibility with BSD.
37681
37682         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
37683         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
37684         From coreutils' system.h.
37685
37686         * lib/userspec.c: Don't include "posixver.h".
37687         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
37688         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
37689         compatible extension.  Simplify code by removing a boolean int
37690         that was always nonzero if a string was nonnull.
37691
37692 2004-03-30  Jim Meyering  <jim@meyering.net>
37693
37694         Merge from coreutils.
37695
37696         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
37697         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
37698         on some systems one must include <grp.h> before it.
37699         Reported by Christian Krackowizer.
37700
37701 2004-03-30  Jim Meyering  <jim@meyering.net>
37702
37703         Merge from coreutils.
37704
37705         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
37706
37707         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
37708         an empty input stream.
37709
37710         * lib/readtokens.c: Include <stdbool.h>.
37711         (readtoken): Use `size_t' rather than int/long.
37712         All callers adjusted.
37713         Use `bool' rather than `int' where appropriate.
37714         Use memset rather than an explicit loop.
37715         Use x2nrealloc rather than xrealloc.
37716         Allow the use of `\0' as a delimiter.
37717         (readtokens): Likewise.
37718         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
37719
37720 2004-03-30  Jim Meyering  <jim@meyering.net>
37721
37722         * m4/realloc.m4: Remove file, since now it does no more than
37723         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
37724         the `configure.ac' section of module/realloc.
37725         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
37726
37727 2004-03-30  Bruno Haible  <bruno@clisp.org>
37728
37729         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
37730         nonnull.
37731
37732 2004-03-29  Paul Eggert  <eggert@twinsun.com>
37733
37734         Merge changes to getloadavg.c from coreutils and Emacs.
37735
37736         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
37737         Define to an expression, not to the empty string.
37738         Include cloexec.h and xalloc.h.
37739         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
37740         Use set_cloexec_flag rather than rolling our own.
37741         * lib/cloexec.c, lib/cloexec.h: New files.
37742
37743 2004-03-29  Paul Eggert  <eggert@twinsun.com>
37744
37745         * m4/cloexec.m4: New file.
37746
37747 2004-03-18  Paul Eggert  <eggert@twinsun.com>
37748
37749         * lib/getopt.h: Sync with libc CVS.
37750
37751 2004-03-18  Paul Eggert  <eggert@twinsun.com>
37752             Bruno Haible  <bruno@clisp.org>
37753
37754         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
37755         mbswidth.
37756
37757 2004-03-18  Paul Eggert  <eggert@twinsun.com>
37758             Bruno Haible  <bruno@clisp.org>
37759
37760         * lib/mbswidth.h: Include <wchar.h> only if
37761         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
37762         <wchar.h>.
37763         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
37764
37765 2004-03-09  Paul Eggert  <eggert@twinsun.com>
37766
37767         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
37768         Sync with libc CVS.
37769         * lib/getopt_int.h: New file, also synced from libc.
37770
37771 2004-03-09  Paul Eggert  <eggert@twinsun.com>
37772
37773         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
37774         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
37775         Bring back getopt.c, getopt.h, getopt1.c.
37776
37777 2004-03-07  Paul Eggert  <eggert@twinsun.com>
37778
37779         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
37780         All uses changed.  Check for sa_sigaction member; this fixes
37781         a bug first reported by Jason Andrade in
37782         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
37783
37784 2004-03-07  Paul Eggert  <eggert@twinsun.com>
37785
37786         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
37787         '#if' expressions.  Unlike the code it replaces, it does not
37788         depend on (defined _SC_PAGESIZE).  However, it does depend on
37789         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
37790         first reported by Jason Andrade in
37791         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
37792
37793 2004-02-25  Simon Josefsson  <jas@extundo.com>
37794
37795         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
37796
37797 2004-02-25  Simon Josefsson  <jas@extundo.com>
37798
37799         * lib/strdup.h: New file.
37800         * lib/strdup.c: Include it.
37801         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
37802         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
37803
37804 2004-02-23  Karl Berry  <karl@gnu.org>
37805
37806         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
37807         (from fencepost.gnu.org:/gd/gnuorg).
37808
37809 2004-02-23  Karl Berry  <karl@gnu.org>
37810
37811         * config/srclistvars.sh (GNUORG) [karl]: redefine.
37812         * config/srclist.txt: add maintain/standards documents.
37813
37814 2004-02-18  Bruno Haible  <bruno@clisp.org>
37815
37816         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
37817         Reported by Derek Robert Price <derek@ximbiot.com>.
37818
37819 2004-02-16  Karl Berry  <karl@gnu.org>
37820
37821         * config/mkinstalldirs, install-sh: update from automake.
37822
37823 2004-02-06  Karl Berry  <karl@gnu.org>
37824
37825         * m4/po.m4: update from gettext 0.14.1.
37826
37827 2004-02-06  Karl Berry  <karl@gnu.org>
37828
37829         * lib/config.charset: update from gettext 0.14.1.
37830
37831 2004-02-05  Paul Eggert  <eggert@twinsun.com>
37832
37833         Add comments and code, prompted by suggestions from Bruno Haible
37834         for sh-quote.
37835         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
37836         describing the enum quoting_style values.
37837         * lib/quotearg.c (quotearg_alloc): New function.
37838         (quotearg_buffer_restyled): Treat lone { and } as special.
37839         Treat = as special.  Work around bug with older shells
37840         that "see" a '\' that is really the 2nd byte of a multibyte char.
37841         Quote empty string with shell_quoting_style.
37842
37843 2004-02-03  Bruno Haible  <bruno@clisp.org>
37844
37845         * m4/pipe.m4: New file, from GNU gettext.
37846
37847 2004-02-03  Bruno Haible  <bruno@clisp.org>
37848
37849         * lib/pipe.h: New file, from GNU gettext.
37850         * lib/pipe.c: New file, from GNU gettext.
37851
37852 2004-01-27  Bruno Haible  <bruno@clisp.org>
37853
37854         * m4/execute.m4: New file, from GNU gettext.
37855
37856 2004-01-27  Bruno Haible  <bruno@clisp.org>
37857
37858         * lib/execute.h: New file, from GNU gettext.
37859         * lib/execute.c: New file, from GNU gettext.
37860         * lib/w32spawn.h: New file, from GNU gettext.
37861
37862 2004-01-24  Paul Eggert  <eggert@twinsun.com>
37863
37864         Merge from diffutils.
37865
37866         * lib/file-type.c (file_type): Add typed memory objects.
37867         * lib/file-type.h (S_TYPEISTMO): New macro.
37868
37869         * lib/c-stack.h (c_stack_action): Remove argv argument.
37870         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
37871         (die): Don't calculate message unless segv_action returns.
37872         (get_stack_location, min_address_from_argv, max_address_from_argv,
37873         volatile stack_base, volatile_stack_size): Remove.
37874         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
37875         that every segmentation violation is a stack overflow.  (Ouch!)
37876         See Debian bug 136249 (still outstanding) for more info about why
37877         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
37878
37879 2004-01-24  Paul Eggert  <eggert@twinsun.com>
37880
37881         Exit-status fix from coreutils.
37882
37883         Use exit_failure consistently in place of EXIT_FAILURE,
37884         so that program exit statuses are consistent on failure.
37885
37886         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
37887         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
37888         * lib/argmatch.h: Comment fix to match the above.
37889         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
37890         Now a macro referring to exit_failure, instead of a separate
37891         variable.  Include "exitfail.h" to get it.
37892         * lib/xstrtol.h: Include "exitfail.h".
37893         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
37894
37895         * lib/long-options.c (parse_long_options): Use prototype
37896         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
37897         for clarity.
37898
37899 2004-01-21  Jim Meyering  <jim@meyering.net>
37900
37901         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
37902         so as not to conflict with a different-sized __mktime_internal
37903         function in GNU libc.
37904         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
37905         Problem building statically-linked `ls' reported by Michael Brunnbauer.
37906
37907 2004-01-20  Karl Berry  <karl@gnu.org>
37908
37909         * config/config.guess: update from config.
37910
37911         * config/srclistvars.sh: GNUWWWLICENSES for karl.
37912
37913 2004-01-20  Bruno Haible  <bruno@clisp.org>
37914
37915         Safer stack allocation.
37916         * lib/setenv.c: Include allocsa.h.
37917         (alloca): Remove fallback definition.
37918         (freea): Remove macro.
37919         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
37920         instead of freea.
37921
37922 2004-01-20  Bruno Haible  <bruno@clisp.org>
37923
37924         * m4/eealloc.m4: New file, from GNU gettext.
37925
37926 2004-01-20  Bruno Haible  <bruno@clisp.org>
37927
37928         * m4/allocsa.m4: New file, from GNU gettext.
37929
37930 2004-01-20  Bruno Haible  <bruno@clisp.org>
37931
37932         * lib/xallocsa.h: New file, from GNU gettext.
37933         * lib/xallocsa.c: New file, from GNU gettext.
37934
37935 2004-01-20  Bruno Haible  <bruno@clisp.org>
37936
37937         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
37938
37939 2004-01-20  Bruno Haible  <bruno@clisp.org>
37940
37941         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
37942         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
37943         specially.
37944
37945 2004-01-20  Bruno Haible  <bruno@clisp.org>
37946
37947         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
37948         patch.
37949
37950 2004-01-20  Bruno Haible  <bruno@clisp.org>
37951
37952         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
37953
37954 2004-01-20  Bruno Haible  <bruno@clisp.org>
37955
37956         * lib/eealloc.h: New file.
37957
37958 2004-01-20  Bruno Haible  <bruno@clisp.org>
37959
37960         * lib/binary-io.h: Avoid warnings on Cygwin.
37961
37962 2004-01-20  Bruno Haible  <bruno@clisp.org>
37963
37964         * lib/allocsa.h: New file, from GNU gettext.
37965         * lib/allocsa.c: New file, from GNU gettext.
37966
37967 2004-01-18  Karl Berry  <karl@gnu.org>
37968
37969         * doc/gpl.texi, doc/lgpl.texi: new files.
37970
37971 2004-01-18  Karl Berry  <karl@gnu.org>
37972
37973         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
37974         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
37975
37976 2004-01-15  Paul Eggert  <eggert@twinsun.com>
37977
37978         Merge from coreutils.
37979
37980         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
37981         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
37982         (gl_DEFAULT_POSIX2_VERSION): Move
37983         the documentation from 'configure' into 'config.hin',
37984         so that 'configure --help' isn't burdened by it and
37985         we don't have to worry about its formatting there.
37986         Reword the documentation so that it's more succinct
37987         and can be run together into a single paragraph.
37988         * m4/same.m4 (gl_SAME): Check for pathconf.
37989
37990 2004-01-15  Paul Eggert  <eggert@twinsun.com>
37991
37992         Merge from coreutils.
37993
37994         * lib/posixver.c: Include posixver.h.
37995
37996         * lib/same.c: Include <stdbool.h>, <limits.h>.
37997         (_POSIX_NAME_MAX): Define if not defined.
37998         (MIN): New macro.
37999         (same_name): If file names are silently truncated, report
38000         that the file names are the same if they are the same after
38001         the silent truncation.
38002
38003         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
38004         conversion function.
38005         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
38006         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
38007         longer needed.
38008
38009 2004-01-15  Jim Meyering  <jim@meyering.net>
38010
38011         Merge from coreutils.
38012
38013         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
38014         if no library is required.
38015         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
38016         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
38017         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
38018         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
38019         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
38020         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
38021         value, $ac_cv_search_crypt, if it's "none required".
38022         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
38023         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
38024         not gl_FUNC_GETLOADAVG.
38025         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
38026         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
38027
38028 2004-01-15  Jim Meyering  <jim@meyering.net>
38029
38030         Merge from coreutils.
38031
38032         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
38033         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
38034         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
38035
38036         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
38037         optional configure-time default.
38038
38039         * lib/version-etc.c (version_etc_copyright): Update copyright date.
38040
38041         * lib/xreadlink.c (xreadlink): Correct outdated comment.
38042
38043 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
38044
38045         Merge from coreutils.
38046
38047         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
38048         value, $ac_cv_search_nanosleep, if it's "none required".
38049
38050 2004-01-14  Paul Eggert  <eggert@twinsun.com>
38051
38052         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
38053         with like-named macro in fnmatch.c.
38054         (EXT): Use an internal constant instead.
38055
38056         Merge fnmatch patches from glibc.
38057         * lib/fnmatch.c (mbsinit): Remove define.
38058         Add libc_hidden_ver (__fnmatch, fnmatch).
38059         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
38060         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
38061
38062 2004-01-14  Karl Berry  <karl@gnu.org>
38063
38064         * config/install-sh: update from automake.
38065
38066 2004-01-13  Karl Berry  <karl@gnu.org>
38067
38068         * config/install-sh: update from automake.
38069
38070 2004-01-09  Karl Berry  <karl@gnu.org>
38071
38072         * config/install-sh: update from automake.
38073
38074 2004-01-05  Karl Berry  <karl@gnu.org>
38075
38076         * config/config.{sub,guess}: update from config.
38077
38078 2003-12-31  Karl Berry  <karl@gnu.org>
38079
38080         * config/depcomp: update from automake.
38081
38082 2003-12-14  Karl Berry  <karl@gnu.org>
38083
38084         * lib/config.charset: update from gettext-runtime.
38085
38086 2003-12-03  Paul Eggert  <eggert@twinsun.com>
38087
38088         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
38089         Bug reported by Alfred M. Szmidt.
38090
38091 2003-12-03  Bruno Haible  <bruno@clisp.org>
38092
38093         * m4/gettext.m4: Upgrade from gettext-0.13.
38094         * m4/po.m4: Upgrade from gettext-0.13.
38095         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
38096         * m4/intmax.m4: New file, from gettext-0.13.
38097         * m4/printf-posix.m4: New file, from gettext-0.13.
38098
38099 2003-11-29  Karl Berry  <karl@gnu.org>
38100
38101         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
38102
38103 2003-11-25  Paul Eggert  <eggert@twinsun.com>
38104             Bruno Haible  <bruno@clisp.org>
38105
38106         * lib/printf-parse.h: Don't include sys/types.h.
38107         (ARG_NONE): New macro.
38108         (char_directive): Change type of *arg_index fields to size_t.
38109         * lib/printf-parse.c: Don't include sys/types.h.
38110         (SSIZE_MAX): Remove macro.
38111         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
38112         Remove unnecessary overflow check.
38113         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
38114         fields.
38115
38116 2003-11-25  Bruno Haible  <bruno@clisp.org>
38117
38118         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
38119
38120 2003-11-25  Bruno Haible  <bruno@clisp.org>
38121
38122         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
38123         gt_TYPE_SSIZE_T.
38124
38125 2003-11-24  Paul Eggert  <eggert@twinsun.com>
38126
38127         * modules/alloca: Remove dependency on xalloc.
38128
38129 2003-11-24  Paul Eggert  <eggert@twinsun.com>
38130
38131         * lib/alloca.c: Remove dependency on xalloc module.
38132         (xalloc_die): Remove.
38133         (memory_full) [!defined emacs]: New macro.
38134         [!defined emacs]: Don't include xalloc.h.
38135         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
38136         address arithmetic overflows.  Change datatypes a bit to avoid
38137         unnecessary casts.
38138
38139 2003-11-22  Jim Meyering  <jim@meyering.net>
38140
38141         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
38142         s/size/size_t/.
38143
38144 2003-11-21  Karl Berry  <karl@gnu.org>
38145
38146         * config/config.{sub,guess}: update from config.
38147
38148 2003-11-18  Karl Berry  <karl@gnu.org>
38149
38150         * config/config.{sub,guess}: update from config.
38151
38152         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
38153
38154 2003-11-17  Paul Eggert  <eggert@twinsun.com>
38155
38156         * README: Mention that S+T cannot overflow if S is the size of
38157         an existing object and T is sufficiently small.
38158
38159 2003-11-17  Jim Meyering  <jim@meyering.net>
38160
38161         On systems without utime and without a utimes function capable of
38162         dealing with a NULL struct utimbuf* argument, this utime replacement
38163         could -- in unusual circumstances -- leak a file descriptor.
38164         * lib/utime.c: Include <unistd.h> and <errno.h>.
38165         (utime_null): Be sure to close `fd' and to preserve errno.
38166         Reported by Geoff Collyer via Arnold Robbins.
38167
38168 2003-11-17  Bruno Haible  <bruno@clisp.org>
38169
38170         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
38171         (Depends-on): Add xsize.
38172
38173 2003-11-17  Bruno Haible  <bruno@clisp.org>
38174
38175         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
38176
38177 2003-11-17  Bruno Haible  <bruno@clisp.org>
38178
38179         * lib/vasnprintf.c (alloca): Remove fallback definition.
38180         (freea): Remove definition.
38181         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
38182         Reported by Paul Eggert.
38183
38184 2003-11-16  Paul Eggert  <eggert@twinsun.com>
38185             Bruno Haible  <bruno@clisp.org>
38186
38187         Protect against address arithmetic overflow.
38188         * lib/printf-args.h: Include stddef.h.
38189         (arguments): Change type of field 'count' to size_t.
38190         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
38191         'unsigned int' where appropriate.
38192         * lib/printf-parse.h: Include sys/types.h.
38193         (char_directive): Change type of *arg_index fields to ssize_t.
38194         (char_directives): Change type of fields 'count', max_*_length to
38195         size_t.
38196         * lib/printf-parse.c: Include sys/types.h and xsize.h.
38197         (SSIZE_MAX): Define fallback value.
38198         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
38199         instead of 'int' where appropriate. Check a_allocated, d_allocated
38200         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
38201         * lib/vasnprintf.c: Include xsize.h.
38202         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
38203         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
38204         overflow. Avoid wraparound when converting a width or precision from
38205         decimal to binary.
38206
38207 2003-11-16  Bruno Haible  <bruno@clisp.org>
38208
38209         Update from GNU gettext.
38210         * lib/printf-parse.c: Generalize to it can be compiled for wide
38211         strings.
38212         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
38213         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
38214         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
38215         SNPRINTF): New macros.
38216         Don't include <alloca.h> if the file is used inside libintl.
38217         (local_wcslen): New function, for Solaris 2.5.1.
38218         (VASNPRINTF): Use it instead of wcslen.
38219
38220 2003-11-16  Bruno Haible  <bruno@clisp.org>
38221
38222         * lib/xsize.h (xmax): New function.
38223         (xsum, xsum3, xsum4): Declare as "pure" functions.
38224
38225 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38226
38227         * modules/xalloc (Files): Undo latest change, since xalloc.h
38228         no longer needs SIZE_MAX or PTRDIFF_MAX.
38229
38230 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38231
38232         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
38233         gl_PTRDIFF_MAX.
38234
38235 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38236
38237         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
38238         "return", to pacify some unknown compiler.  Problem reported
38239         by Joerg Schilling.
38240
38241 2003-11-12  Paul Eggert  <eggert@twinsun.com>
38242
38243         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
38244         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
38245         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
38246         heuristic is just as accurate as far as we know, and it removes a
38247         dependency on size_max.m4 and ptrdiff_max.m4.
38248
38249 2003-11-11  Bruno Haible  <bruno@clisp.org>
38250
38251         * modules/xsize (Files): Add m4/size_max.m4.
38252         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
38253
38254 2003-11-11  Bruno Haible  <bruno@clisp.org>
38255
38256         * m4/size_max.m4: New file.
38257         * m4/ptrdiff_max.m4: New file.
38258         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
38259         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
38260         (gl_XALLOC): Invoke it.
38261
38262 2003-11-11  Bruno Haible  <bruno@clisp.org>
38263
38264         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
38265         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
38266         defined.
38267
38268 2003-11-10  Paul Eggert  <eggert@twinsun.com>
38269
38270         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
38271         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
38272         rejected some allocations of exactly SIZE_MAX - 2 bytes.
38273         From Bruno Haible.
38274         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
38275         not (size_t) -1, since it's defined here.
38276
38277 2003-11-09  Karl Berry  <karl@gnu.org>
38278
38279         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
38280
38281 2003-11-06  Paul Eggert  <eggert@twinsun.com>
38282
38283         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
38284         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
38285         Reject sizes of exactly SIZE_MAX bytes.
38286         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
38287         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
38288
38289 2003-11-05  Bruno Haible  <bruno@clisp.org>
38290
38291         * lib/xsize.h: Include limits.h, to avoid a possible collision with
38292         SIZE_MAX defined in <limits.h> on Solaris.
38293
38294 2003-11-04  Jim Meyering  <jim@meyering.net>
38295
38296         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
38297         variable names, rather than @VAR@.
38298         * modules/poll: Likewise.
38299
38300 2003-11-04  Bruno Haible  <bruno@clisp.org>
38301
38302         * modules/xsize: New file.
38303         * modules/linebreak: Depend on xsize.
38304         * MODULES.html.sh (func_all_modules): Add xsize.
38305
38306 2003-11-04  Bruno Haible  <bruno@clisp.org>
38307
38308         * m4/xsize.m4: New file.
38309
38310 2003-11-04  Bruno Haible  <bruno@clisp.org>
38311
38312         * lib/xsize.h: New file.
38313         * lib/linebreak.c: Include xsize.h.
38314         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
38315         argument for overflow.
38316         Suggested by Paul Eggert.
38317
38318 2003-11-03  Karl Berry  <karl@gnu.org>
38319
38320         * config/config.{guess,sub}: update from config.
38321
38322 2003-11-03  Jim Meyering  <jim@meyering.net>
38323
38324         * modules/userspec (lib_SOURCES): Add userspec.h.
38325         (Include): Add "userspec.h".
38326         Improve description.
38327
38328 2003-11-03  Jim Meyering  <jim@meyering.net>
38329
38330         * lib/userspec.c: Include "userspec.h".
38331         * lib/userspec.h: New file.
38332
38333 2003-11-03  Bruno Haible  <bruno@clisp.org>
38334
38335         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
38336
38337 2003-11-03  Bruno Haible  <bruno@clisp.org>
38338
38339         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
38340         available, to avoid (extremely rare) race condition.
38341         Suggested by Paul Eggert.
38342
38343 2003-11-02  Karl Berry  <karl@gnu.org>
38344
38345         * config/srclist.txt (vasprintf.c): sync broken, sigh.
38346
38347 2003-10-31  Paul Eggert  <eggert@twinsun.com>
38348
38349         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
38350         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
38351         (read_filesystem_list): Set and use me_type_malloced.
38352         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
38353         whatever the type happens to be), for brevity and consistency.
38354         Check for size calculation overflow on Alphas running OSF/1.
38355
38356 2003-10-31  Jim Meyering  <jim@meyering.net>
38357
38358         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
38359
38360         * lib/linebuffer.c: Include <string.h> for declaration of memset.
38361
38362 2003-10-30  Paul Eggert  <eggert@twinsun.com>
38363             Bruno Haible  <bruno@clisp.org>
38364
38365         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
38366         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
38367
38368 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
38369
38370         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
38371         netbsd*-gnu*.  Suggested by Robert Millan.
38372
38373 2003-10-29  Paul Eggert  <eggert@twinsun.com>
38374
38375         * modules/group-member: Depend on stdbool.
38376
38377 2003-10-29  Paul Eggert  <eggert@twinsun.com>
38378
38379         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
38380
38381 2003-10-29  Paul Eggert  <eggert@twinsun.com>
38382
38383         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
38384         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
38385         after the 'gnu' in these cases.  This fixes some bugs in the
38386         previous change, and is based on suggestions by Robert Millan.
38387
38388 2003-10-29  Paul Eggert  <eggert@twinsun.com>
38389
38390         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
38391         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
38392         no longer needed.
38393         * lib/quotearg.c (quotearg_n_options): Use it.
38394         * lib/group-member.c: Include <stdbool.h>.
38395         (free_group_info): Arg is now const *; don't free arg.
38396         (get_group_info): Now returns bool and accepts struct group_info *,
38397         rather than returning a malloc'ed struct group_info *.
38398         All uses changed.  Check for overflow in internal size calculation.
38399
38400         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
38401         rather than xmalloc/xrealloc.
38402         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
38403         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
38404         conformance bug: the old code used a pointer after freeing the
38405         storage that it addressed.
38406         * lib/hash.c (hash_initialize): Simplify the code by using
38407         xalloc_oversized rather than doing it by hand.
38408         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
38409         the buffer preserved.  Use free and xmalloc instead.
38410         * lib/quotearg.c (quotearg_n_options): Likewise.
38411         Use a simpler test for size overflow.  Don't use xalloc_oversized
38412         because unsigned int might be wider than size_t (!); this suggests
38413         that we should switch from unsigned int to size_t for slot numbers.
38414
38415 2003-10-28  Paul Eggert  <eggert@twinsun.com>
38416
38417         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
38418         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
38419         NetBSD kernels.  Requested by Richard Stallman.
38420
38421 2003-10-27  Paul Eggert  <eggert@twinsun.com>
38422
38423         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
38424         to allocate the returned structure.  Do not allocate a subarray,
38425         as x2nrealloc will do that.
38426         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
38427         instead of xnrealloc.
38428         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
38429
38430 2003-10-27  Bruno Haible  <bruno@clisp.org>
38431
38432         * lib/stdbool_.h: Better support for BeOS.
38433
38434 2003-10-26  Paul Eggert  <eggert@twinsun.com>
38435
38436         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
38437         now uses inline.
38438
38439 2003-10-26  Paul Eggert  <eggert@twinsun.com>
38440
38441         * lib/xalloc.h (xalloc_oversized): New static inline function, for
38442         callers that want to do their own size-overflow checking.  Include
38443         <stdbool.h>, since xalloc_oversized returns bool.
38444         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
38445         to use xalloc_oversized.
38446
38447         Add two functions x2realloc, x2nrealloc, for programs that grow
38448         arrays dynamically by doubling their sizes.
38449         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
38450         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
38451         New functions.
38452
38453         Port to C99 semantics for 'inline' of external functions.
38454         Bug reported by Bruno Haible.
38455         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
38456         with the old contents of xnmalloc.
38457         (xnmalloc, xmalloc): Use it.
38458         (xnrealloc_inline): New static inline function,
38459         with the old contents of xnrealloc.
38460         (xnrealloc, xrealloc): Use it.
38461
38462         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
38463         that.
38464
38465 2003-10-26  Karl Berry  <karl@gnu.org>
38466
38467         * config/srclist.txt (COPYING.DOC): no longer available from
38468         /gd/gnuorg; don't know where the ultimate source is.
38469
38470 2003-10-25  Paul Eggert  <eggert@twinsun.com>
38471
38472         Fix several address-calculation bugs in the hash modules,
38473         plus some minor code cleanup.
38474
38475         * lib/hash.h: Include <stdbool.h>, for bool.
38476         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
38477         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
38478         hash_get_n_entries, hash_get_max_bucket_length,
38479         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
38480         hash_rehash): Use size_t rather than unsigned.
38481         * lib/hash.c (struct hash_table, hash_get_n_buckets,
38482         hash_get_n_buckets_used, hash_get_n_entries,
38483         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
38484         hash_get_entries, hash_do_for_each, hash_string, is_prime,
38485         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
38486         Likewise.
38487         (SIZE_MAX): Define if not defined.
38488         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
38489         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
38490         hash_print):
38491         Use const * when possible.
38492         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
38493         (check_tuning): Fix bug: if tuning parameters were very close to
38494         0 or 1, rounding errors could have caused subscript violations.
38495         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
38496         (hash_initialize): Add 'fail:' label
38497         to free table and return NULL, and use it to simplify code.
38498         Use calloc rather than clearing the storage ourself.
38499         (hash_initialize, hash_rehash): Check for arithmetic overflow in
38500         buffer size calculations.
38501         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
38502         Include <stddef.h>, for size_t.
38503         * lib/hash-pjw.c (hash_pjw): Likewise.
38504         Switch to method described by Bruno Haible.
38505         Include <limits.h>, for CHAR_BIT.
38506         (SIZE_BITS): New macro.
38507
38508 2003-10-23  Paul Eggert  <eggert@twinsun.com>
38509
38510         * m4/getline.m4 (AM_FUNC_GETLINE):
38511         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
38512         hosts.  Problem reported by Derek Robert Price in
38513         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
38514         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
38515         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
38516
38517 2003-10-21  Paul Eggert  <eggert@twinsun.com>
38518
38519         * lib/getndelim2.c (getndelim2): When size calculation overflows,
38520         ceiling the allocation at NMAX bytes rather than silently
38521         discarding input bytes before NMAX is reached.  This makes
38522         a difference only if NMAX exceeds SIZE_MAX / 2.
38523
38524         * lib/obstack.c: Merge from glibc.
38525         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
38526         Add libc_hidden_def (_obstack_newchunk).
38527         (_obstack_free) [! defined _LIBC]: Remove.
38528         [defined _LIBC]: Make a strong alias from obstack_free, rather than
38529         a clone of the function body.
38530         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
38531         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
38532
38533         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
38534         glibc.
38535         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
38536         arg to memcpy.
38537
38538         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
38539         (obstack_ptr_grow_fast, obstack_int_grow_fast):
38540         Don't use lvalue casts, as GCC plans to remove support for them
38541         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
38542         was also present in the non-GCC version, indicating that this
38543         code had always been buggy and had never been widely used.
38544         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
38545         Use the fast variant of each macro, rather than copying the
38546         definiens of the fast variant; that way, we'll be more likely to
38547         catch future bugs in the fast variants.
38548
38549 2003-10-20  Bruno Haible  <bruno@clisp.org>
38550
38551         * modules/wait-process: New file.
38552         * MODULES.html.sh (func_all_modules): Add wait-process.
38553
38554 2003-10-20  Bruno Haible  <bruno@clisp.org>
38555
38556         * m4/wait-process.m4: New file.
38557
38558 2003-10-20  Bruno Haible  <bruno@clisp.org>
38559
38560         * lib/wait-process.h: New file, from GNU gettext.
38561         * lib/wait-process.c: New file, from GNU gettext.
38562
38563 2003-10-19  Jim Meyering  <jim@meyering.net>
38564
38565         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
38566         HPUX 10.20.
38567
38568 2003-10-18  Karl Berry  <karl@gnu.org>
38569
38570         * config/config.guess: update from config.
38571
38572 2003-10-16  Paul Eggert  <eggert@twinsun.com>
38573
38574         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
38575         (getgroups): First arg is int, not size_t.
38576         Don't let 'free' mangle errno.
38577
38578 2003-10-16  Paul Eggert  <eggert@twinsun.com>
38579
38580         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
38581
38582 2003-10-16  Karl Berry  <karl@gnu.org>
38583
38584         * config/config.{guess,sub}: update from config.
38585
38586 2003-10-16  Jim Meyering  <jim@meyering.net>
38587
38588         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
38589         memcpy.
38590
38591 2003-10-15  Paul Eggert  <eggert@twinsun.com>
38592
38593         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
38594         (SIZE_MAX): Remove.
38595         (new_exclude, add_exclude_file): Initial size no longer needs to
38596         be a power of 2.
38597         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
38598         our own address arithmetic overflow checking.
38599
38600         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
38601         (fnmatch): Do not alloca more than 2000 wide characters;
38602         instead, use malloc for large buffers.
38603         Check for address arithmetic overflow, and return -1
38604         with errno set to ENOMEM in that case.
38605         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
38606         (NEW_PATTERN): Do not alloca more than 8000 bytes;
38607         instead, return -1.  Check for address arithmetic overflow.
38608
38609 2003-10-14  Paul Eggert  <eggert@twinsun.com>
38610
38611         Handle invalid suffixes and overflow independently, so that
38612         callers can treat them independently as needed.  Fix some bugs in
38613         suffix handling, e.g., "100k@" was not diagnosed as an invalid
38614         suffix for a human-readable blocksize.  The major caller-visible
38615         change is the addition of a new
38616         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
38617         that both overflow and suffix chars were found.
38618
38619         * lib/human.c (humblock): Don't check separately for invalid suffix
38620         char; that is xstrtoumax's job (now that its bug is fixed).
38621         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
38622         INTMAX_MAX]: New macros.
38623         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
38624         TYPE_MAXIMUM): New macros.
38625         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
38626         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
38627         if overflow occurs, as it's what __strtol does and it's more useful
38628         in practice.
38629         (__xstrtol): If __strtol reports some error other than ERANGE,
38630         reflect it to the caller as LONGINT_INVALID.  If it reports
38631         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
38632         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
38633         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
38634         value.
38635         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
38636         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
38637         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
38638         [defined UINTMAX_MAX]: New macros.
38639
38640 2003-10-14  Bruno Haible  <bruno@clisp.org>
38641
38642         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
38643
38644 2003-10-14  Bruno Haible  <bruno@clisp.org>
38645
38646         * m4/sig_atomic_t: New file, from GNU gettext.
38647         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
38648
38649 2003-10-14  Bruno Haible  <bruno@clisp.org>
38650
38651         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
38652         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
38653         Also use volatile where needed.
38654
38655 2003-10-12  Paul Eggert  <eggert@twinsun.com>
38656
38657         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
38658         Change maintainer from Bruno Haible to 'all'.
38659
38660 2003-10-12  Paul Eggert  <eggert@twinsun.com>
38661
38662         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
38663
38664 2003-10-12  Paul Eggert  <eggert@twinsun.com>
38665
38666         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
38667         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
38668         and define in terms of the other primitives.
38669         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
38670         (SIZE_MAX): Define if not already defined.
38671         (array_size_overflow): New function.
38672         (xalloc_die): Abort instead of exiting if 'error' returns.
38673         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
38674         (xmalloc, xrealloc): Use them.
38675         (xcalloc): Check for address arithmetic overflow.
38676         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
38677         a bit faster than strcpy.
38678
38679 2003-10-10  Simon Josefsson  <jas@extundo.com>
38680
38681         * modules/argp (Depends-on): Add restrict and strcase.
38682
38683 2003-10-10  Simon Josefsson  <jas@extundo.com>
38684
38685         * m4/argp.m4: Add AC_C_INLINE.
38686
38687 2003-10-08  Paul Eggert  <eggert@twinsun.com>
38688
38689         Merge getpass from libc, plus a few fixes.
38690
38691         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
38692         Include <stdbool.h>.
38693         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
38694         __fsetlocking to empty.
38695         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
38696         do include <bits/libc-lock.h>.
38697         Do not include <fcntl.h>; not needed.
38698         [_LIBC]: Include <wchar.h>.
38699         (NOTCANCEL_MODE): New macro.
38700         (flockfile, funlockfile) [_LIBC]: New macros.
38701         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
38702         [!_LIBC]: New macros.
38703         (call_fclose): New function.
38704         (getpass): Use it.  Save tty stream separately; this simplifies the
38705         code and makes it more reliable if stdin happens to equal stdout.
38706         Invoke __fsetlocking on tty.
38707         Handle thread cancellation if needed.
38708         Namespace cleanup (use __tcgetattr, __getline).
38709         Use bool for Booleans.
38710         [USE_IN_LIBIO]: Handle wide streams.
38711         [!_LIBC]: Unconditionally do the fseek, since we don't know what
38712         stream might go where.
38713
38714         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
38715         doesn't have to include <stdio.h> before us.
38716         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
38717         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
38718         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
38719         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
38720         if not declared, so that we can use getpass.c code from libc without
38721         rewriting it.
38722         (flockfile, ftrylockfile, funlockfile): New macros.
38723
38724 2003-10-08  Paul Eggert  <eggert@twinsun.com>
38725
38726         * modules/getpass: Depend on stdbool.
38727
38728 2003-10-08  Paul Eggert  <eggert@twinsun.com>
38729
38730         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
38731
38732 2003-10-07  Karl Berry  <karl@gnu.org>
38733
38734         * config/config.{guess,sub}: update from config.
38735
38736 2003-10-06  Jim Meyering  <jim@meyering.net>
38737             Bruno Haible  <bruno@clisp.org>
38738
38739         This lets translators provide better translations for the
38740         "Written by ..." part of --version output.
38741         * lib/version-etc.h: Include stdarg.h.
38742         (version_etc_copyright): Declare as readonly.
38743         (version_etc): Make this function variadic with a NULL-terminated list
38744         of author name strings.
38745         (version_etc_va): New declaration.
38746         * lib/version-etc.c: Include stdarg.h, stdlib.h.
38747         (version_etc_copyright): Declare as readonly.
38748         (version_etc_va): New function. Provide a different translatable string
38749         for each possible number of authors < 10. Abbreviate when there are 10
38750         authors or more.
38751         (version_etc): Make this function variadic. Call version_etc_va.
38752         Suggestion from Gary V. Vaughan.
38753
38754         * lib/long-options.h (parse_long_options): Change prototype: the
38755         authors string is moved to the end and becomes variadic.
38756         * lib/long-options.c: Include stdarg.h.
38757         (parse_long_options): Make this function variadic, too.
38758         Call version_etc_va, not version_etc.
38759
38760 2003-10-06  Bruno Haible  <bruno@clisp.org>
38761
38762         * modules/version-etc-2: Remove file.
38763         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
38764
38765 2003-10-06  Bruno Haible  <bruno@clisp.org>
38766
38767         * modules/fatal-signal: New file.
38768         * MODULES.html.sh (func_all_modules): Add fatal-signal.
38769
38770 2003-10-06  Bruno Haible  <bruno@clisp.org>
38771
38772         * m4/fatal-signal.m4: New file.
38773         * m4/signalblocking.m4: New file, from GNU gettext.
38774
38775 2003-10-06  Bruno Haible  <bruno@clisp.org>
38776
38777         * lib/version-etc-2.h: Remove file.
38778         * lib/version-etc-2.c: Remove file.
38779
38780 2003-10-06  Bruno Haible  <bruno@clisp.org>
38781
38782         * lib/fatal-signal.h: New file, from GNU gettext.
38783         * lib/fatal-signal.c: New file, from GNU gettext.
38784
38785 2003-10-05  Paul Eggert  <eggert@twinsun.com>
38786
38787         * README: Rework advice for preventing empty .o files.
38788         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
38789         not <sys/types.h>.
38790
38791 2003-10-04  Karl Berry  <karl@gnu.org>
38792
38793         * lib/argp*: update from libc.
38794
38795 2003-10-04  Karl Berry  <karl@gnu.org>
38796
38797         * config/config.{guess,sub}: update from config.
38798
38799 2003-10-02  Bruno Haible  <bruno@clisp.org>
38800
38801         * modules/lchown (Include): Add lchown.h.
38802         * modules/time_r (Include): Use "..." syntax.
38803         * modules/xgetdomainname (Include): Add xgetdomainname.h.
38804
38805 2003-10-01  Simon Josefsson  <jas@extundo.com>
38806
38807         * MODULES.html.sh (func_all_modules): Move gethostname from section
38808         'based on' to section 'lacking' POSIX:2001.
38809
38810 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
38811
38812         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
38813         to output mode on the same stream.
38814
38815 2003-09-29  Paul Eggert  <eggert@twinsun.com>
38816
38817         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
38818         Fix arg typo in previous patch.
38819
38820 2003-09-28  Jim Meyering  <jim@meyering.net>
38821
38822         * lib/error.c: Correct cpp indentation.
38823
38824 2003-09-27  Paul Eggert  <eggert@twinsun.com>
38825
38826         * modules/free: New file.
38827
38828 2003-09-27  Paul Eggert  <eggert@twinsun.com>
38829
38830         * m4/free.m4: New file.
38831
38832 2003-09-27  Paul Eggert  <eggert@twinsun.com>
38833
38834         * lib/minmax.h (MIN, MAX)
38835         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
38836         Omit the special code that used __typeof__, since we worry that
38837         it could be more trouble than it's worth.  See:
38838         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
38839         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
38840
38841         * lib/free.c: New file.
38842
38843 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
38844
38845         Trivial fixes to Makefile.am parts of module listings.
38846         * modules/strstr: Append strstr.h to lib_SOURCES.
38847         * modules/strcase: Likewise, for strcase.h.
38848
38849 2003-09-27  Karl Berry  <karl@gnu.org>
38850
38851         * config/mkinstalldirs: update from automake.
38852
38853 2003-09-26  Paul Eggert  <eggert@twinsun.com>
38854
38855         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
38856         (error_tail): Do not loop, reallocating temporary buffer, since
38857         the output cannot contain more wide characters than the input
38858         contains bytes, the size must be big enough already.  This avoids
38859         one potential size overflow calculation.  Check for size overflow
38860         when calculating temporary buffer size.  Free temporary buffer
38861         when done, if it was allocated with malloc; this plugs a memory
38862         leak.  Remove casts from void * to pointers, that are no longer
38863         needed now that we're assuming C89 or better.
38864
38865         Merge error changes from glibc.
38866
38867         * lib/error.c, error.h: Update copyright notice header to match glibc.
38868         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
38869         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
38870         Disable cancellation while printing error.
38871         * lib/error.h: Prepend __ to parameter names.
38872
38873 2003-09-26  Jim Meyering  <jim@meyering.net>
38874
38875         * lib/error.c (error_tail): Move some declarations
38876         into inner scope where the local variables are used.
38877
38878 2003-09-26  Bruno Haible  <bruno@clisp.org>
38879
38880         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
38881         stpncpy().
38882         Don't define stpncpy through config.h; it's now done through stpncpy.h.
38883
38884 2003-09-26  Bruno Haible  <bruno@clisp.org>
38885
38886         * lib/stpncpy.h (gnu_stpncpy): New declaration.
38887         (stpncpy): Define as alias for gnu_stpncpy.
38888         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
38889
38890 2003-09-25  Simon Josefsson  <jas@extundo.com>
38891
38892         * lib/xgetdomainname.h: New file.
38893         * lib/xgetdomainname.c: New file.
38894
38895 2003-09-25  Simon Josefsson  <jas@extundo.com>
38896             Bruno Haible  <bruno@clisp.org>
38897
38898         * modules/getdomainname: New file.
38899         * modules/xgetdomainname: New file.
38900         * MODULES.html.sh (func_all_modules): Add getdomainname,
38901         xgetdomainname.
38902
38903 2003-09-25  Simon Josefsson  <jas@extundo.com>
38904             Bruno Haible  <bruno@clisp.org>
38905
38906         * m4/getdomainname.m4: New file.
38907
38908 2003-09-25  Simon Josefsson  <jas@extundo.com>
38909             Bruno Haible  <bruno@clisp.org>
38910
38911         * lib/getdomainname.h: New file.
38912         * lib/getdomainname.c: New file.
38913
38914 2003-09-25  Karl Berry  <karl@gnu.org>
38915
38916         * lib/argp-fmtstream.c, argp-help.c: update from libc.
38917
38918 2003-09-25  Karl Berry  <karl@gnu.org>
38919
38920         * config/install-sh: update from automake.
38921
38922 2003-09-25  Bruno Haible  <bruno@clisp.org>
38923
38924         * modules/version-etc-2: New file, from modules/version-etc with
38925         modifications.
38926         * MODULES.html.sh (func_all_modules): Add version-etc-2.
38927
38928 2003-09-25  Bruno Haible  <bruno@clisp.org>
38929
38930         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
38931         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
38932
38933 2003-09-24  Simon Josefsson  <jas@extundo.com>
38934
38935         * modules/xgethostname: Add xgethostname.h.
38936
38937 2003-09-24  Paul Eggert  <eggert@twinsun.com>
38938
38939         * lib/linebuffer.c (freebuffer): Don't free the argument, just
38940         the buffer associated with the argument.  Bug reported by
38941         Simon Josefsson.
38942
38943 2003-09-24  Paul Eggert  <eggert@twinsun.com>
38944
38945         * README: Document assumptions that 'int' is at least 32 bits
38946         wide, that integer arithmetic is 2's complement without overflow,
38947         that there are no holes in integer values, that adding sizes of
38948         two nonoverlapping objects can't overflow, and that all-bits-zero
38949         yields scalar zero.  Fix spelling and capitalization typos.
38950
38951 2003-09-19  Karl Berry  <karl@gnu.org>
38952
38953         * lib/argp.h: update from libc.
38954
38955 2003-09-17  Paul Eggert  <eggert@twinsun.com>
38956
38957         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
38958         to avoid spurious warnings like "AC_RUN_IFELSE was called before
38959         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
38960
38961 2003-09-17  Paul Eggert  <eggert@twinsun.com>
38962
38963         * gnulib-tool: Use "test -h", not "test -L", for portability
38964         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
38965         (tags_regexp): Remove, since \| doesn't conform to POSIX.
38966         (sed_extract_prog): Issue s commands one-by-one, rather than
38967         using \| in one s command.
38968
38969 2003-09-16  Paul Eggert  <eggert@twinsun.com>
38970
38971         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
38972         input error, instead of returning NULL the next time we are called
38973         (and therefore losing track of errno).
38974
38975 2003-09-16  Bruno Haible  <bruno@clisp.org>
38976
38977         * gnulib-tool (func_create_testdir): Warn about duplicated
38978         dependencies.
38979
38980 2003-09-15  Paul Eggert  <eggert@twinsun.com>
38981
38982         * modules/argmatch, modules/fatal, modules/obstack,
38983         modules/xalloc, modules/xgethostname: Sort dependencies by
38984         importance, not alphabetically.
38985
38986 2003-09-15  Paul Eggert  <eggert@twinsun.com>
38987
38988         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
38989         fails, so that the caller gets the proper errno.
38990
38991         * lib/readutmp.c (read_utmp): Likewise.
38992         Check for fstat error.  Close stream and free storage
38993         when failing.
38994
38995 2003-09-14  Karl Berry  <karl@gnu.org>
38996
38997         * config/srclist.txt (strdup.c): disable for c89 changes.
38998
38999 2003-09-14  Jim Meyering  <jim@meyering.net>
39000
39001         * lib/getloadavg.c: Correct cpp indentation.
39002         * lib/strdup.c: Likewise.
39003         * lib/vasnprintf.c: Likewise.
39004
39005 2003-09-14  Bruno Haible  <bruno@clisp.org>
39006
39007         * modules/fwriteerror: New file.
39008         * MODULES.html.sh (func_all_modules): Add fwriteerror.
39009
39010 2003-09-14  Bruno Haible  <bruno@clisp.org>
39011
39012         * lib/fwriteerror.h: New file.
39013         * lib/fwriteerror.c: New file.
39014
39015 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39016
39017         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
39018         modules/xgethostname, modules/xalloc: Depend on exit.
39019
39020 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39021
39022         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
39023
39024         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
39025         and AC_MINIX, too, so that their extensions are available.
39026
39027         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
39028         This macro has been superseded by gl_BACKUPFILE.
39029
39030         More patches to assume C89 or better.
39031
39032         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
39033
39034         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
39035         unconditionally.
39036         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
39037         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
39038         Include <string.h>, <stdlib.h> unconditionally.
39039         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
39040         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
39041         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
39042         headers or for string.h.
39043         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
39044         or strtoul.
39045
39046         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
39047         headers.
39048         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
39049         * m4/userspec.m4 (gl_USERSPEC): Likewise.
39050         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
39051         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
39052         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
39053         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
39054         memcpy, memset.
39055         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
39056         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
39057         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
39058         strtol.
39059         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
39060         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
39061         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
39062         strtoul.
39063
39064 2003-09-12  Paul Eggert  <eggert@twinsun.com>
39065
39066         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
39067         * lib/obstack.c [!defined _LIBC]: Likewise.
39068         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
39069         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
39070         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
39071
39072         More changes to assume C89 or better.
39073
39074         * lib/error.c (error_tail): Assume vprintf.
39075
39076         * lib/argmatch.c (getenv): Remove decl.
39077         * lib/progreloc.c (get_full_program_name): Define via prototype.
39078         * lib/setenv.c (clearenv): Likewise.
39079         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
39080         needed.
39081         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
39082         (malloc, memcpy): Remove decls.
39083         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
39084         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
39085         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
39086         (memcpy): Remove macro.
39087         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
39088         (__P): Remove.  All uses removed.
39089         (PTR): Remove.  All uses changed to void *.
39090         (CHAR_BIT, NULL): Remove.
39091         (spaces, zeros, memset_space, memset_zero)
39092         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
39093         Remove.
39094         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
39095         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
39096         Define with prototype.
39097         Remove now-unnecessary prototype decl.
39098         (extra_args_spec): Assume ANSI C.  All uses changed.
39099         (extra_args_spec_iso): Remove.
39100         (my_strftime, emacs_strftimeu): Define via prototype.
39101         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
39102         unconditionally.
39103         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
39104         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
39105         (strtoul, strtol): Remove decls.
39106         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
39107         LONG_MAX): Remove.
39108         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
39109         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
39110         (LOCALE_PARAM_PROTO): New macro.
39111         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
39112         (INTERNAL (strtol), strtol): Define with a prototype.
39113         (PARAMS): Remove.  All uses removed.
39114         * lib/tempname.c: Include <string.h> unconditionally.
39115         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
39116         * lib/xgethostname.c (main): Define with a prototype.
39117         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
39118         Include <stdlib.h> unconditionally.
39119         (calloc, malloc, realloc, free): Remove decls.
39120         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
39121         Include <stdlib.h> unconditionally.  Sort include file names.
39122         (strtod): Remove.
39123         (xstrtod): Define with a prototype.
39124         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
39125         (strtol, strtoul): Remove decls.
39126
39127 2003-09-11  Paul Eggert  <eggert@twinsun.com>
39128
39129         More patches to assume C89 or better.
39130         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
39131         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
39132         string.h, memchr, STDC_HEADERS.
39133
39134 2003-09-11  Paul Eggert  <eggert@twinsun.com>
39135
39136         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
39137         Include <stdlib.h>, <string.h> unconditionally.
39138         Remove now-unnecessary cast to char *.
39139         * lib/strnlen.c: Include <string.h> unconditionally.
39140         * lib/yesno.c (yesno): Define with a prototype.
39141
39142 2003-09-11  Bruno Haible  <bruno@clisp.org>
39143
39144         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
39145
39146 2003-09-10  Jim Meyering  <jim@meyering.net>
39147
39148         * lib/error.c: Correct indentation of cpp directives.
39149
39150 2003-09-10  Bruno Haible  <bruno@clisp.org>
39151
39152         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
39153         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
39154         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
39155         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
39156         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
39157         <stdlib.h> and <string.h> checks.
39158         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
39159         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
39160
39161 2003-09-10  Bruno Haible  <bruno@clisp.org>
39162
39163         * lib/strcspn.c: Include <string.h> unconditionally.
39164         * lib/strpbrk.c: Include <string.h> unconditionally.
39165         * lib/strstr.c: Include <string.h> unconditionally.
39166         * lib/unicodeio.c: Include <string.h> unconditionally.
39167         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
39168         * lib/unsetenv.c: Likewise.
39169         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
39170         * lib/yesno.c: Include <stdlib.h> unconditionally.
39171         (rpmatch): Add prototype.
39172
39173 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39174
39175         More patches to assume C89 or better.
39176         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
39177         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
39178         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
39179         or for string.h.
39180         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
39181         stdlib.h.
39182         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
39183         C headers.
39184         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
39185         string.h.
39186         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
39187         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
39188         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
39189         or for string.h.
39190         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
39191         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
39192         C headers.
39193         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
39194         memcpy.
39195         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
39196         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
39197         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
39198         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
39199         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
39200         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
39201         string.h, free.
39202         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
39203         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
39204         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
39205         C headers, or for string.h.
39206         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
39207         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
39208         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
39209         headers, memory.h, stdlib.h, string.h, strings.h.
39210         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
39211         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
39212         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
39213         strchr.
39214         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
39215         headers, memory.h, string.h.
39216         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
39217         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
39218         free.
39219         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
39220         headers.
39221         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
39222         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
39223         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
39224         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
39225         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
39226
39227 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39228
39229         More K&R removal.
39230
39231         * lib/acosl.c (main): Use a prototype.
39232         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
39233         tanl.c: Likewise.
39234
39235         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
39236
39237         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
39238         (getopt, etopt_long, getopt_long_only, _getopt_internal)
39239         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
39240         with a prototype.
39241         * lib/getopt.c (const): Remove macro.
39242         Include <string.h> unconditionally.
39243         (my_index): Remove; all uses changed to strchr.
39244         (strlen): Remove decl.
39245         (exchange): Remove forward decl; no longer needed.
39246         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
39247         Define with prototype.
39248         * lib/getopt1.c (const): Remove macro.
39249         (getopt_long, getopt_long_only, main): Define with prototype.
39250
39251         * lib/getugroups.c: Include <string.h> unconditionally.
39252
39253         * lib/getusershell.c: Include <stdlib.h> unconditionally.
39254         (getusershell, setusershell, endusershell, readname, main):
39255         Define with prototypes.
39256
39257         * lib/group-member.c: Include group-member.h first.
39258         Include <stdlib.h> unconditionally.
39259
39260         * lib/hard-locale.c: Include hard-locale.h first.
39261         Include <stdlib.h>, <string.h> unconditionally.
39262
39263         * lib/hash.c (free, malloc): Remove decls.
39264         Include <stdlib.h> unconditionally.
39265
39266         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
39267         (getenv): Do not declare.
39268
39269         * lib/idcache.c: Include <string.h> unconditionally.
39270
39271         * lib/long-options.c: Include long-options.h first, to test interface.
39272         Include <stdlib.h> unconditionally.
39273
39274         * lib/makepath.c: Include makepath.h first, to test interface.
39275         Include <stdlib.h> and <string.h> unconditionally.
39276
39277         * lib/linebuffer.c: Include <stdlib.h>.
39278         (free): Remove decl.
39279
39280         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
39281         stddef.h. rpl_malloc returns void *, not char *.
39282         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
39283         prototype.
39284
39285         * lib/md5.h: Include <limits.h> unconditionally.
39286         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
39287         (__P): Remove; all uses removed.
39288         * lib/md5.c: Include "md5.h" first.
39289         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
39290         md5_buffer, md5_process_bytes, md5_process_block):
39291         Define with prototypes.
39292         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
39293         * lib/sha.c: Include "sha.h" first.
39294         Include <stdlib.h>, <string.h> unconditionally.
39295
39296         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
39297         * lib/memcmp.c (__ptr_t): Likewise.
39298         * lib/memrchr.c (__ptr_t): Likewise.
39299         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
39300         Include <string.h> unconditionally.
39301         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
39302         * lib/memchr.c: Include <stdlib.h> unconditionally.
39303         * lib/memchr.c (LONG_MAX): Remove.
39304         * lib/memrchr.c (LONG_MAX): Likewise.
39305         * lib/memchr.c (__memchr): Define via a prototype.
39306         * lib/memrchr.c (__memrchr): Likewise.
39307         * lib/memcmp.c (__P): Remove, and remove all uses.
39308         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
39309         Remove forward decls; no longer needed.
39310         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
39311         Use types required by C89 in prototype.
39312
39313         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
39314         * lib/savedir.c: Likewise.
39315         * lib/mkdir.c (free): Remove decl.
39316         * lib/rmdir.c (rmdir): Define with a prototype.
39317         * lib/savedir.c: Include savedir.h first, to test interface.
39318
39319         * lib/mktime.c (STDC_HEADERS): Remove.
39320         Include <stdlib.h>, <string.h> unconditionally.
39321
39322         * lib/modechange.c: Include <stdlib.h> unconditionally.
39323         (malloc): Remove decl.
39324
39325         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
39326         (free): Remove decl.
39327
39328         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
39329         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
39330         (This type really should be intptr_t, but that's a C99ism.)
39331         (_obstack_memcpy): Remove: all uses changed to memcpy.
39332         Include <string.h> unconditionally.
39333         (struct obstack): Assume __STDC__ for types of members
39334         chunkfun, freefun, extra_arg.
39335         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
39336         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
39337         obstack_begin, obstack_specify_allocation,
39338         obstack_specify_allocation_with_arg, obstack_chunkfun,
39339         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
39340         Remove unprototyped decls and the macros that use them.
39341         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
39342         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
39343         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
39344         (defined __STDC__ && __STDC__)]:
39345         Remove nonprototyped code.
39346         Include <stdlib.h> unconditionally.
39347         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
39348         _obstack_allocated_p, _obstack_free, obstack_free,
39349         _obstack_memory_used, print_and_abort):
39350         Define using prototypes.
39351         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
39352         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
39353         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
39354         obstack_next_free, obstack_object_size, obstack_room) [0]:
39355         Remove unused, unprototyped code.
39356
39357         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
39358
39359         * lib/physmem.c (physmem_total, physmem_available, main): Define
39360         with prototypes.
39361
39362         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
39363         (main): Define with a prototype.
39364
39365         * lib/posixver.c (getenv): Remove decl.
39366
39367         * lib/putenv.c (malloc): Returns void *, not char *.
39368         Include <string.h> unconditionally.
39369         (strchr, memcpy, NULL): Do not define.
39370
39371         * lib/readtokens.c: Include readtokens.h first, to test interface.
39372         Include <stdlib.h>, <string.h> unconditionally.
39373         (init_tokenbuffer): Define with a prototype.
39374
39375         * lib/regex.c (PARAMS): Remove.  All uses removed.
39376         All uses of _RE_ARGS removed, too.
39377         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
39378         unconditionally.
39379         (bzero): Assume memset exists.
39380         (memcmp, memcpy, NULL): Remove.
39381         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
39382         char, or assignments to local vars of type signed char.
39383         (init_syntax_once, PREFIX(extract_number_and_incr),
39384         PREFIX(print_partial_compiled_pattern),
39385         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
39386         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
39387         PREFIX(regex_grow_registers), PREFIX(regex_compile),
39388         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
39389         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
39390         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
39391         wcs_compile_range, byte_compile_range, truncate_wchar,
39392         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
39393         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
39394         count_mbs_length, wcs_re_match_2_internal,
39395         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
39396         PREFIX(alt_match_null_string_p),
39397         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
39398         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
39399         regfree, PREFIX(extract_number)): Define with prototype.  Remove
39400         now-unnecessary declaration, if any.
39401         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
39402         regcomp, regexec):
39403         Remove now-unnecessary casts among pointer types.
39404         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
39405
39406         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
39407         (free): Remove decl.
39408
39409         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
39410
39411         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
39412         (free): Remove decl.
39413
39414         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
39415         * lib/xgetcwd.c: Likewise.
39416
39417         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
39418         (free): Remove decl.
39419
39420         * lib/strchrnul.c (strchrnul): Define with a prototype.
39421         Fix bug: c_in was not converted to char before searching.
39422
39423         The following changes are not K&R related:
39424
39425         * lib/group-member.h: Include <sys/types.h>, so that this file is
39426         self-contained.
39427         * lib/makepath.h: Likewise.
39428
39429         * lib/getusershell.c (readname, default_index, line_size, readname):
39430         Use size_t, not int, for sizes.
39431         (readname): If the size overflows, report an error instead of
39432         looping forever.
39433
39434 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39435
39436         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
39437         libc.
39438
39439 2003-09-09  Paul Eggert  <eggert@twinsun.com>
39440
39441         * README: New section: portability guidelines.
39442
39443 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
39444
39445         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
39446         C89 spec.
39447
39448 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
39449
39450         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
39451
39452 2003-09-08  Paul Eggert  <eggert@twinsun.com>
39453
39454         Assume C89 or better; remove K&R cruft.
39455         A few of these changes were first proposed by Derek Robert Price
39456         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
39457
39458         * lib/addext.c: Include <string.h> unconditionally.
39459         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
39460         Don't declare getenv or malloc.
39461
39462         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
39463         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
39464         (NULL): Remove.
39465         (find_stack_direction, alloca): Use prototypes.
39466
39467         * lib/atexit.c (atexit): Define using a prototype.
39468
39469         * lib/basename.c, dirname.c, stripslash.c:
39470         Include <string.h> unconditionally.
39471
39472         * lib/bcopy.c: Include <stddef.h>.
39473         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
39474
39475         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
39476
39477         * lib/error.h (error, error_at_line, error_print_progname)
39478         [! (defined (__STDC__) && __STDC__)]: Remove decls.
39479         * lib/error.c: Include error.h first, to check interface.
39480         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
39481         (VA_START): Remove; all uses changeed to va_start.
39482         (exit, strerror): Remove decls.
39483         (error_print_progname): Prototype uncondionally.
39484         Don't include <errno.h>; no longer needed.
39485         (private_strerror): Remove.
39486         (error_tail): Always define.
39487         (error, error_at_line): Assume C89 or better; always use prototypes.
39488         * lib/fatal.c: Include "fatal.h" first, to test interface.
39489         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
39490         (VA_START): Remove; all uses changed to va_start.
39491         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
39492         this case.
39493         (exit): Remove decl.
39494         (fatal): Prototype unconditionally.  Assume va_start works.
39495         Abort at end, to pacify gcc.
39496
39497         * lib/euidaccess.c (main): Define with a prototype.
39498
39499         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
39500
39501         * lib/exitfail.c: Include <stdlib.h> unconditionally.
39502
39503         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
39504         prototypes.
39505         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
39506         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
39507         (getenv): Remove decl.
39508         (fnmatch): Define using a prototype.
39509         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
39510         (FCT): Define using a prototype.
39511
39512         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
39513
39514         * lib/gethostname.c: Include <stddef.h>.
39515         (gethostname): Define with prototype.  Length is size_t, not int.
39516
39517 2003-09-08  Paul Eggert  <eggert@twinsun.com>
39518
39519         Assume C89 or better; remove K&R cruft.
39520         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
39521         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
39522         string.h, getenv, malloc.
39523         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
39524         headers.
39525         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
39526         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
39527         do not check for strerror.
39528         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
39529         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
39530         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
39531         do not check for doprnt or vprintf.
39532         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
39533         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
39534
39535 2003-09-08  Paul Eggert  <eggert@twinsun.com>
39536
39537         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
39538         getversion.c should have been removed then, but was accidentally
39539         preserved.
39540
39541         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
39542         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
39543
39544 2003-09-08  Karl Berry  <karl@gnu.org>
39545
39546         * config/config.sub, config.guess, srclistvars.sh: update from savannah
39547                 config, forget about prep.
39548
39549         * config/depcomp, missing: update from automake.
39550
39551 2003-09-07  Paul Eggert  <eggert@twinsun.com>
39552
39553         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
39554         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
39555
39556 2003-09-07  Paul Eggert  <eggert@twinsun.com>
39557
39558         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
39559         copy_tm_result.  Bug reported by Simon Josefsson in
39560         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
39561
39562 2003-09-06  Paul Eggert  <eggert@twinsun.com>
39563
39564         * m4/time_r.m4: New file.
39565         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
39566         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
39567         is. Check for timegm declaration.
39568         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
39569         Do not check for gmtime_r.
39570         Replace mktime if __mktime_internal does not exist and if mktime
39571         hasn't been replaced already.
39572
39573 2003-09-06  Paul Eggert  <eggert@twinsun.com>
39574
39575         * lib/time_r.c, lib/time_r.h: New files.
39576
39577         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
39578         __localtime_r.
39579         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
39580         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
39581
39582         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
39583         __gmtime_r.
39584         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
39585         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
39586         Include <time_r.h>.
39587
39588         * lib/timegm.c: Switch to glibc implementation, with the following
39589         changes:
39590         [defined HAVE_CONFIG_H]: Include <config.h>.
39591         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
39592         (__mktime_internal) [!defined _LIBC]: New decl.
39593         (__gmtime_r) [!defined _LIBC]: New macro and function.
39594         (timegm): Use a prototype, since gnulib assumes C89.
39595         Do not bother declaring tmp to be const, as it's not really usefu.
39596         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
39597         (timegm): Declare only if HAVE_DECL_TIMEGM.
39598
39599 2003-09-06  Paul Eggert  <eggert@twinsun.com>
39600
39601         * MODULES.html.sh (func_all_modules): Add time_r.
39602         * modules/time_r: New file.
39603         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
39604         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
39605
39606 2003-09-03  Paul Eggert  <eggert@twinsun.com>
39607
39608         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
39609         Bug reported by Lute Kamstra in
39610         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
39611
39612         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
39613         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
39614         course with correspondingly smaller numbers for tomorrow and
39615         yesterday.  From Tadayoshi Funaba.  Originally installed into
39616         sh-utils on 1999-08-07, but the patch got lost (I guess during the
39617         coreutils merge?).
39618
39619 2003-08-31  Simon Josefsson  <jas@extundo.com>
39620
39621         * modules/timegm: New file.
39622         * MODULES.html.sh (func_all_modules): Add timegm.
39623
39624 2003-08-31  Simon Josefsson  <jas@extundo.com>
39625
39626         * m4/timegm.m4: New file.
39627
39628 2003-08-31  Simon Josefsson  <jas@extundo.com>
39629
39630         * lib/timegm.h: New file.
39631         * lib/timegm.c: New file.  Based on
39632         wget-1.8.2/src/http.c:mktime_from_utc.
39633
39634 2003-08-31  Karl Berry  <karl@gnu.org>
39635
39636         * lib/argp.h: update from libc.
39637
39638 2003-08-28  Bruno Haible  <bruno@clisp.org>
39639
39640         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
39641         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
39642         followed by '#define fnmatch fnmatch_posix' gives an error.
39643
39644 2003-08-28  Bruno Haible  <bruno@clisp.org>
39645
39646         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
39647         warning on QNX, which defines O_BINARY to 000000.
39648
39649 2003-08-27  Jim Meyering  <jim@meyering.net>
39650
39651         * m4/mkstemp.m4: Require that the system mkstemp be able to create
39652         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
39653         would fail after 32.  Reported by Danny Levinson.  Details here:
39654         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
39655
39656 2003-08-24  Bruno Haible  <bruno@clisp.org>
39657
39658         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
39659         MSVC7 <stdio.h> is included later.
39660
39661 2003-08-22  Simon Josefsson  <jas@extundo.com>
39662
39663         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
39664
39665 2003-08-20  Karl Berry  <karl@gnu.org>
39666
39667         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
39668
39669 2003-08-20  Bruno Haible  <bruno@clisp.org>
39670
39671         * modules/progname: New file.
39672         * MODULES.html.sh (func_all_modules): Add progname.
39673
39674 2003-08-20  Bruno Haible  <bruno@clisp.org>
39675
39676         * lib/progname.h: New file, from GNU gettext.
39677         * lib/progname.c: New file, from GNU gettext.
39678         * lib/progreloc.c: New file, from GNU gettext.
39679
39680 2003-08-19  Jim Meyering  <jim@meyering.net>
39681
39682         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
39683         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
39684
39685 2003-08-19  Bruno Haible  <bruno@clisp.org>
39686
39687         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
39688         more.
39689
39690 2003-08-19  Bruno Haible  <bruno@clisp.org>
39691
39692         * lib/xstrdup.c: Assume <string.h> exists.
39693
39694 2003-08-18  Paul Eggert  <eggert@twinsun.com>
39695
39696         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
39697         in makefile rules.
39698
39699 2003-08-18  Jim Meyering  <jim@meyering.net>
39700
39701         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
39702         * m4/lib-ld.m4: Likewise.
39703
39704 2003-08-18  Jim Meyering  <jim@meyering.net>
39705
39706         * lib/setenv.h: Indent nested cpp directive.
39707         * lib/vasnprintf.c: Remove trailing blanks.
39708
39709 2003-08-17  Simon Josefsson  <jas@extundo.com>
39710
39711         * modules/xstrndup: New file.
39712         * MODULES.html.sh (func_all_modules): Add xstrndup.
39713
39714 2003-08-17  Simon Josefsson  <jas@extundo.com>
39715
39716         * modules/argp: Fix autoconf macro name. Add more dependencies.
39717
39718 2003-08-17  Simon Josefsson  <jas@extundo.com>
39719
39720         * m4/xstrndup.m4: New file.
39721
39722 2003-08-17  Simon Josefsson  <jas@extundo.com>
39723
39724         * m4/argp.m4: New file.
39725
39726 2003-08-17  Simon Josefsson  <jas@extundo.com>
39727             Bruno Haible  <bruno@clisp.org>
39728
39729         * lib/xstrndup.h: New file.
39730         * lib/xstrndup.c: New file.
39731
39732 2003-08-17  Bruno Haible  <bruno@clisp.org>
39733
39734         * modules/strndup (Files, Include): Add lib/strndup.h.
39735
39736 2003-08-17  Bruno Haible  <bruno@clisp.org>
39737
39738         * modules/euidaccess (Files): Add lib/euidaccess.h.
39739
39740 2003-08-17  Bruno Haible  <bruno@clisp.org>
39741
39742         * lib/strndup.h: New file.
39743
39744 2003-08-17  Bruno Haible  <bruno@clisp.org>
39745
39746         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
39747         like AC_GNU_SOURCE.
39748         * modules/extensions (configure.ac): Comment out the invocation of
39749         gl_USE_SYSTEM_EXTENSIONS.
39750
39751 2003-08-16  Paul Eggert  <eggert@twinsun.com>
39752
39753         Merges from coreutils, etc.
39754         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
39755         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
39756         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
39757         fixing a typo.
39758         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
39759         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
39760
39761 2003-08-16  Paul Eggert  <eggert@twinsun.com>
39762
39763         Document merge from coreutils.
39764         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
39765         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
39766         * modules/utime: Add m4/utimes-null.m4.
39767
39768 2003-08-16  Paul Eggert  <eggert@twinsun.com>
39769
39770         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
39771         space, undoing this 2003-08-12 change:
39772         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
39773
39774 2003-08-16  Paul Eggert  <eggert@twinsun.com>
39775
39776         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
39777         strtoul.c from libc, undoing this 2003-08-12 change:
39778         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
39779
39780 2003-08-16  Jim Meyering  <jim@meyering.net>
39781
39782         Merges from coreutils.
39783         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
39784         prefix.  Adjust cache variables similarly.  Create 500 rather than
39785         just 300 files, to exercise bug on Darwin6.5, too.
39786         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
39787         $missing_dir.
39788         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
39789         AM_SYS_POSIX_TERMIOS.
39790         Reported by mkc@mathdogs.com.
39791         Also change use of $am_cv_sys_posix_termios
39792         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
39793         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
39794         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
39795         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
39796         in /proc/mounts until it finds one with matching device number.  This
39797         is unnecessary when the FILE argument *is* a mount point.  No stat call
39798         is necessary in that case.  So, disable the statvfs-testing code on
39799         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
39800         as RedHat bug# 84846.
39801         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
39802         to 1MB, so as not to render systems with no stack size limit (e.g.,
39803         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
39804         Include <unistd.h>.  On some systems,
39805         it is required for the definition of _SC_PAGESIZE.
39806
39807 2003-08-16  Jim Meyering  <jim@meyering.net>
39808
39809         Merge from coreutils.
39810         * lib/xstrtoimax.c: #else #if -> #elif.
39811         * lib/xstrtoumax.c: Likewise.
39812
39813 2003-08-16  Jim Meyering  <jim@meyering.net>
39814
39815         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
39816         * m4/utimes.m4: Removed.
39817         * m4/utimes-null.m4: Renamed from utimes.m4.
39818
39819         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
39820         to 1MB, so as not to render systems with no stack size limit (e.g.,
39821         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
39822         Include <unistd.h>.  On some systems,
39823         it is required for the definition of _SC_PAGESIZE.
39824
39825 2003-08-16  Jim Meyering  <jim@meyering.net>
39826         and Paul Eggert  <eggert@cs.ucla.edu>
39827
39828         Merges from coreutils, etc.
39829
39830         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
39831         using the latest version from cvs.  This avoids problems with #line
39832         directives using a vendor (Sun) compiler.
39833         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
39834         Don't set GETGROUPS_LIB here; now it's
39835         done via getgroups.m4's wrapper function.
39836         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
39837         rather than just in sh-util/configure.in, so that the
39838         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
39839         same.
39840         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
39841         AC_FUNC_GETLOADAVG where to find getloadavg.c.
39842         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
39843         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
39844         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
39845         Remove code that is now done by the newly-required macros.
39846         Append $(EXEEXT) to DF_PROG.
39847         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
39848         Do not invoke or require the following here,
39849         since prereq.m4 or some gnulib .m4 now does this for us:
39850         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
39851         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
39852         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
39853         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
39854         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
39855         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
39856         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
39857         AC_FUNC_OBSTACK.
39858         Do not replace the following functions, as this is now the job
39859         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
39860         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
39861         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
39862         atexit getpass, strdup, getpagesize.
39863         Replace 'raise'.
39864         Do not check for the following functions, as this is now the job
39865         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
39866         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
39867         setregid.
39868         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
39869         Check for sys/sysctl.h.
39870         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
39871         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
39872         of checking for ssize_t ourselves.
39873
39874         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
39875         Require every macro that gnulib/modules/* suggests for us.
39876         (jm_PREREQ_ADDEXT): New macro.
39877         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
39878         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
39879
39880         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
39881         (gl_PHYSMEM): Use it.
39882         Also check for `table' function.
39883         Check for new headers and functions.
39884         Add check for sys/sysmp.h.
39885         With suggestions from Kaveh Ghazi.
39886         Ignore headers that are present but cannot be compiled.  This
39887         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
39888         C 5.4.
39889
39890 2003-08-15  Paul Eggert  <eggert@twinsun.com>
39891
39892         Document merge from coreutils.
39893         * modules/userspec: Depend on posixver.
39894         * modules/strftime: Depend on tzset.
39895
39896 2003-08-15  Paul Eggert  <eggert@twinsun.com>
39897
39898         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
39899         rather than tab, after '#' in shell-script copyright notices.
39900         Suggested by Bruno Haible.
39901
39902 2003-08-15  Paul Eggert  <eggert@twinsun.com>
39903
39904         * config/srclist-update: Use three spaces, rather than tab, after '#'
39905         in shell-script copyright notices.  Suggested by Bruno Haible.
39906         Remove unnecessary parenthesization in regular expression.
39907
39908 2003-08-15  Jim Meyering  <jim@meyering.net>
39909
39910         Merge from coreutils.
39911         * lib/xgethostname.c: Include <stdlib.h>.
39912         (xghostname): Don't exit for anything other than memory-related
39913         failure; just return NULL.
39914         * lib/userspec.c: Include "posixver.h".
39915         (parse_user_spec): Accept `.' as a separator only
39916         in pre-POSIX-200112 mode.
39917         * lib/strtoimax.c: Use #elif rather than #else #if.
39918         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
39919         Remove function, now that we can rely on a working tzset function.
39920         [!_LIBC]: Ensure that the required autoconf test has been run.
39921         [!defined _NL_CURRENT && HAVE_STRFTIME]:
39922         Use underlying_strftime for %r.
39923         * lib/sha.c: Merge in some clean-up and optimization changes from
39924         glibc.
39925         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
39926         Ensure that it is a multiple of 64.
39927         Rearrange loop exit tests so as to avoid performing an
39928         additional fread after encountering an error or EOF.
39929         * lib/realloc.c: Update copyright date.
39930
39931 2003-08-15  Jim Meyering  <jim@meyering.net>
39932         and Paul Eggert  <eggert@twinsun.com>
39933
39934         Merge from coreutils.
39935         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
39936         member but strut utmpx does not.  Needed for AIX 4.3.3.
39937         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
39938
39939 2003-08-15  Jim Meyering  <jim@meyering.net>
39940         and Paul Eggert  <eggert@cs.ucla.edu>
39941
39942         Merges from coreutils, etc.
39943         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
39944         Require gl_FUNC_TZSET_CLOBBER.
39945         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
39946         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
39947         members.
39948
39949 2003-08-14  Paul Eggert  <eggert@twinsun.com>
39950
39951         Help the merge from coreutils.
39952         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
39953         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
39954         * m4/tzset.m4: Use it too.
39955
39956 2003-08-14  Paul Eggert  <eggert@twinsun.com>
39957
39958         * modules/tzset: New file.
39959
39960 2003-08-14  Jim Meyering  <jim@meyering.net>
39961
39962         Merges from coreutils.
39963         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
39964         variable names, rather than @FNMATCH_H@.
39965         * modules/alloca: Likewise for $(ALLOCA_H).
39966
39967         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
39968         the three copies of the literal target, `fnmatch.h'.
39969         * modules/alloca (alloca.h): Likewise.
39970
39971 2003-08-14  Jim Meyering  <jim@meyering.net>
39972
39973         Merge from coreutils.
39974         * m4/tzset.m4: New file.
39975         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
39976         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
39977         otherwise, AIX 5.1 systems would end up using the latter.
39978         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
39979         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
39980         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
39981         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
39982
39983 2003-08-14  Jim Meyering  <jim@meyering.net>
39984
39985         Merge from coreutils.
39986         * lib/obstack.h: Whitespace changes.
39987         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
39988         and xcalloc return values.
39989         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
39990         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
39991         hang on OSF/1 5.1 for DIR on both local and remote file systems.
39992         Reported by (and fix confirmed by) Nelson H. F. Beebe.
39993         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
39994         error from mntctl.
39995         Use mntctl's return value to drive the entry-processing loop, since
39996         we can't rely on the value of the vmt_length member in the last
39997         entry.  On some systems doing so could result in exhausting
39998         virtual memory.  Based in part on a patch from Mike Jetzer.
39999
40000 2003-08-14  Jim Meyering  <jim@meyering.net>
40001         and Paul Eggert  <eggert@twinsun.com>
40002
40003         Merges from coreutils, plus other fixes.
40004         * lib/physmem.c: Merge in portability changes from gcc/libiberty
40005         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
40006         for credits and details.  Thanks to Kaveh Ghazi for helping
40007         to keep these files in sync.
40008         (ARRAY_SIZE): Define it.
40009         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
40010         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
40011         (memcasecmp): Don't assume size_t fits in unsigned int.
40012         Remove casts and duplicate code.
40013         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
40014         (memcpy): Remove definition.
40015         Merge in some clean-up and optimization changes from glibc.
40016         [BLOCKSIZE]: Move definition to top of file.
40017         Ensure that it is a multiple of 64.
40018         Rearrange loop exit tests so as to avoid performing an
40019         additional fread after encountering an error or EOF.
40020         * lib/md5.h (md5_uintptr): Define.
40021         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
40022         return to the initial working directory.  Preserve errno
40023         for caller.
40024         * lib/idcache.c: Include "xalloc.h".
40025         (xmalloc, xrealloc): Remove decls.
40026         (getuser): Remove casts no longer required in C89.
40027         * lib/human.c: Include stdio.h, for sprintf.
40028         * lib/group-member.c: Include "xalloc.h".
40029         (xmalloc, xrealloc): Remove decls.
40030         (get_group_info): Remove casts no longer required in C89.
40031         * lib/getusershell.c (readname): Remove casts no longer required in
40032         C89.
40033         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
40034         * lib/getline.c: Whitespace fix, from coreutils.
40035
40036 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40037
40038         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
40039         Check for isascii.
40040
40041         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
40042         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
40043         Undo previous (whitespace-only) change.
40044
40045 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40046
40047         * lib/exclude.c: Include <ctype.h>
40048         (IN_CTYPE_DOMAIN): New macro.
40049         (is_space): New fn.
40050         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
40051         and empty lines.
40052
40053         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
40054         Undo previous (whitespace-only) change.
40055
40056 2003-08-13  Paul Eggert  <eggert@twinsun.com>
40057
40058         * config/srclist-update: Change update back to the old behavior,
40059         leaving whitespace alone.  Use one 'sed' command rather than a
40060         pipeline.
40061         (fixlicense): Now a variable, not a function.
40062         (remove_trailing_blanks): Remove.
40063         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
40064         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
40065         Undo previous (whitespace-only) change.
40066
40067 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40068
40069         Merge from coreutils.
40070         * modules/euidaccess: Add lib_SOURCES, include for new
40071         file euidaccess.h
40072
40073 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40074
40075         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
40076         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
40077         Normalize leading white space and remove trailing white space.
40078
40079         Merge from coreutils
40080         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
40081
40082         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
40083         0.12.1.  These files are now being upgraded automatically by
40084         ../config/srclist-update.
40085
40086 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40087
40088         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
40089         Normalize leading white space and remove trailing white space.
40090         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
40091         notice, as per ../config/srclist-update.
40092
40093         Merge from coreutils.
40094         * lib/euidaccess.h: New file.
40095         * lib/euidaccess.c: Include it.
40096         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
40097         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
40098         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
40099
40100 2003-08-12  Paul Eggert  <eggert@twinsun.com>
40101
40102         * config/srclist-update: Add copyright notice.
40103         (remove_id_lines, remove_trailing_blanks): New constants.
40104         (fixfile): Use them to normalize spacing a bit in copied files.
40105         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
40106         Normalize leading white space and remove trailing white space.
40107
40108         * config/texinfo.tex: Sync with texinfo.
40109
40110         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
40111         strtoul.c from libc, to merge coreutils whitespace changes.
40112
40113         * config/srclist.txt: Get the following m4 files from gettext:
40114         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
40115         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
40116         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
40117         wint_t.m4.
40118
40119 2003-08-12  Karl Berry  <karl@gnu.org>
40120
40121         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
40122         been made.
40123
40124 2003-08-11  Paul Eggert  <eggert@twinsun.com>
40125
40126         * modules/gnu-source, m4/gnu-source.m4:
40127         Remove; we're assuming Autoconf 2.54 or later now.
40128         Suggested by Bruno Haible.
40129         * MODULES.html.sh (func_all_modules): Remove gnu-source.
40130
40131 2003-08-11  Bruno Haible  <bruno@clisp.org>
40132
40133         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
40134
40135 2003-08-11  Bruno Haible  <bruno@clisp.org>
40136
40137         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
40138         (vasnprintf): Use it instead of wcslen.
40139
40140 2003-08-11  Bruno Haible  <bruno@clisp.org>
40141
40142         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
40143         value to ensure that _Bool promotes to int. Use #define for _Bool when
40144         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
40145
40146 2003-08-10  Karl Berry  <karl@gnu.org>
40147
40148         * lib/regex.h: update from libc (whitespace fix).
40149
40150 2003-08-09  Paul Eggert  <eggert@twinsun.com>
40151
40152         Merge some files from coreutils.  These changes were
40153         originally made by Jim Meyering.
40154         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
40155         many older Unixes require this.
40156         * lib/alloca.c (alloca): Remove cast to argument of free;
40157         no longer needed in C89.
40158         * lib/alloca_.h, regex.h: Fix white space to match
40159         what GNU indent does.
40160
40161 2003-08-09  Paul Eggert  <eggert@twinsun.com>
40162
40163         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
40164         apparently Emacs's Unicode mode got confused before my 2003-08-05
40165         checkin.
40166
40167 2003-08-08  Paul Eggert  <eggert@twinsun.com>
40168
40169         * m4/extensions.m4: New file.
40170         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
40171         Require gl_USE_SYSTEM_EXTENSIONS.
40172         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
40173         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
40174
40175 2003-08-08  Paul Eggert  <eggert@twinsun.com>
40176
40177         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
40178         * modules/extensions, modules/gnu-source: New files.
40179         * modules/timespec, modules/unlocked-io: Depend on extensions.
40180
40181 2003-08-07  Paul Eggert  <eggert@twinsun.com>
40182
40183         * modules/restrict: New file.
40184         * MODULES.html.sh (func_all_modules): Add restrict.
40185         * modules/regex: Depend on restrict.
40186
40187 2003-08-07  Paul Eggert  <eggert@twinsun.com>
40188
40189         * m4/restrict.m4: New file.
40190         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
40191
40192 2003-08-07  Bruno Haible  <bruno@clisp.org>
40193
40194         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
40195         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
40196
40197 2003-08-07  Bruno Haible  <bruno@clisp.org>
40198
40199         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
40200         makes the module 'getndelim2' compatible with the module 'getline'.
40201
40202 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40203
40204         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
40205         byte with "\201" to avoid glitches when editing that source file
40206         with multi-gnome-terminal.
40207
40208 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40209
40210         * lib/bumpalloc.h: Remove.
40211
40212 2003-08-05  Paul Eggert  <eggert@twinsun.com>
40213
40214         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
40215         * modules/bumpalloc: Remove.
40216
40217 2003-08-04  Paul Eggert  <eggert@twinsun.com>
40218
40219         * lib/getloadavg.c: Change copyright notice and spacing to conform to
40220         GNU coding style.
40221
40222         Merge from coreutils.
40223         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
40224         1. From glibc.
40225         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
40226         from Karl Berry, implemented by Jim Meyering.
40227         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
40228         from Dmitry V. Levin.
40229         Remove anachronistic cast of xrealloc.
40230         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
40231         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
40232         type. Otherwise, it wouldn't compile with at least /bin/cc on
40233         ymp-cray-unicos9.0.2.X.
40234         Combine two mostly-identical uses of alloca into one.
40235         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
40236
40237 2003-08-04  Dave Love  <d.love@dl.ac.uk>
40238
40239         [From Emacs.]
40240
40241         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
40242         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
40243         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
40244         obsolete NLIST_NAME_UNION.
40245         [__GNU__]: Undef BSD and FSCALE.
40246         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
40247
40248 2003-08-03  Paul Eggert  <eggert@twinsun.com>
40249
40250         * lib/stdbool_.h (_Bool): Make it signed char, instead of
40251         an enum type, so that it's guaranteed to promote to int.  See:
40252         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
40253
40254 2003-08-03  Karl Berry  <karl@gnu.org>
40255
40256         * config/depcomp: update from automake.
40257
40258 2003-07-31  Paul Eggert  <eggert@twinsun.com>
40259
40260         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
40261         (strerror): Don't assume that a printable int fits in 14 bytes.
40262
40263 2003-07-31  Bruno Haible  <bruno@clisp.org>
40264
40265         * modules/getpass-gnu: New file.
40266         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
40267
40268 2003-07-31  Bruno Haible  <bruno@clisp.org>
40269
40270         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
40271
40272 2003-07-24  Karl Berry  <karl@gnu.org>
40273
40274         * config/missing: update from automake.
40275
40276 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
40277             Bruno Haible  <bruno@clisp.org>
40278
40279         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
40280         * lib/getline.c (getline, getdelim): Likewise.
40281         Remove _GNU_SOURCE define; now it's defined in config.h through
40282         m4/getline.m4.
40283
40284 2003-07-23  Karl Berry  <karl@gnu.org>
40285
40286         * config/config.sub: update from prep.
40287
40288 2003-07-22  Paul Eggert  <eggert@twinsun.com>
40289
40290         * modules/xalloc (Depends-on): Add exitfail.
40291         * modules/xmemcoll: Likewise.
40292
40293 2003-07-22  Paul Eggert  <eggert@twinsun.com>
40294
40295         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
40296         over-parenthesization in macros.
40297
40298         Sync with coreutils.
40299
40300         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
40301         required by C99.
40302
40303         Use `exit_failure' for xalloc and xmemcoll instead of their own
40304         private exit-failure variables.
40305         * lib/xalloc.h (xalloc_exit_failure): Remove.
40306         * lib/xmalloc.c: Likewise.  Include exitfail.h.
40307         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
40308         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
40309         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
40310         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
40311
40312 2003-07-20  Jim Meyering  <jim@meyering.net>
40313
40314         * modules/closeout (Depends-on): Add exitfail.
40315         Suggestion from Bruno Haible.
40316
40317 2003-07-19  Karl Berry  <karl@gnu.org>
40318
40319         * config/config.sub: update from prep.
40320
40321 2003-07-18  Paul Eggert  <eggert@twinsun.com>
40322
40323         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
40324         Remove.
40325         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
40326         to test that it can stand by itself.  Include "exitfail.h".
40327         Clients should set exit_failure instead.
40328         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
40329
40330 2003-07-18  Bruno Haible  <bruno@clisp.org>
40331
40332         * modules/getndelim2: New file.
40333         * modules/getline: Share files with module getndelim2.
40334         * modules/getnline: Depend on getndelim2 instead of sharing files with
40335         it. Add getnline.c to lib_SOURCES.
40336         * MODULES.html.sh (func_all_modules): Add getndelim2.
40337
40338 2003-07-18  Bruno Haible  <bruno@clisp.org>
40339
40340         * m4/getndelim2.m4: New file.
40341         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
40342         invoke gl_PREREQ_GETNDELIM2.
40343         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
40344         gl_PREREQ_GETNDELIM2.
40345         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
40346         gl_GETNDELIM2.
40347
40348 2003-07-18  Bruno Haible  <bruno@clisp.org>
40349
40350         * lib/getndelim2.h: New file.
40351         * lib/getndelim2.c: Make into a module of its own. Include config.h,
40352         getndelim2.h.
40353         (getndelim2): Make non-static. Change return type to ssize_t.
40354         * lib/getline.h: Change argument names.
40355         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
40356         * lib/getnline.c: Include getndelim2.h.
40357
40358 2003-07-18  Andreas Schwab  <schwab@suse.de>
40359
40360         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
40361
40362 2003-07-17  Karl Berry  <karl@gnu.org>
40363
40364         * config/config.sub: update from prep.
40365
40366 2003-07-17  Bruno Haible  <bruno@clisp.org>
40367
40368         * modules/getnline: New file.
40369         * modules/getline: Add lib/getndelim2.c to source file list.
40370         * MODULES.html.sh (func_all_modules): Add getnline.
40371
40372 2003-07-17  Bruno Haible  <bruno@clisp.org>
40373
40374         * m4/getnline.m4: New file.
40375
40376 2003-07-17  Bruno Haible  <bruno@clisp.org>
40377
40378         * m4/Makefile.am.in: Remove file.
40379         * m4/Makefile.am: Remove file.
40380         * m4/Makefile.in: Remove file.
40381
40382 2003-07-17  Bruno Haible  <bruno@clisp.org>
40383
40384         * lib/getnline.h: New file.
40385         * lib/getnline.c: New file.
40386         * lib/getndelim2.c: New file, extracted from getline.c.
40387         (getndelim2): Renamed from getdelim2, with added nmax argument.
40388         * lib/getline.c: Include getndelim2.c.
40389         (getdelim2): Moved out to getndelim2.c.
40390         (getline, getdelim): Update.
40391
40392 2003-07-17  Bruno Haible  <bruno@clisp.org>
40393
40394         * lib/Makefile.am: Remove file.
40395         * lib/Makefile.in: Remove file.
40396
40397 2003-07-17  Bruno Haible  <bruno@clisp.org>
40398
40399         * configure.in: Remove file.
40400         * Makefile.in: Remove file.
40401
40402 2003-07-17  Bruno Haible  <bruno@clisp.org>
40403
40404         * MODULES.html.sh: Put the </BODY> right before </HTML>.
40405
40406 2003-07-16  Karl Berry  <karl@gnu.org>
40407
40408         * config/srclist-update: was running fixlicense twice, which caused
40409                 texinfo.tex to be nullified for some reason.  Simplify,
40410                 $gplsrc is no longer needed as far as I can see?
40411
40412 2003-07-16  Jim Meyering  <jim@meyering.net>
40413
40414         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
40415
40416 2003-07-15  Paul Eggert  <eggert@twinsun.com>
40417
40418         * config/srclist.txt: Get the following files from gettext-runtime/intl
40419         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
40420         ref-del.sin.  From Bruno Haible.
40421         * config/srclist-update (fixfile): Change grep pattern again, since the
40422         previous fix didn't work (there was another trailing $).  Use
40423         '[$]' to escape the $s.
40424
40425 2003-07-15  Karl Berry  <karl@gnu.org>
40426
40427         * lib/vasnprintf.c: update from gettext.
40428
40429 2003-07-15  Karl Berry  <karl@gnu.org>
40430
40431         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
40432         gets expanded when surrounded by '$'.
40433
40434 2003-07-15  Jim Meyering  <jim@meyering.net>
40435
40436         * modules/save-cwd: Don't depend on error.  From Derek Price.
40437
40438 2003-07-15  Jim Meyering  <jim@meyering.net>
40439
40440         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
40441
40442 2003-07-14  Simon Josefsson  <jas@extundo.com>
40443
40444         * modules/mempcpy: New file.
40445         * MODULES.html.sh (func_all_modules): Add mempcpy.
40446
40447 2003-07-14  Simon Josefsson  <jas@extundo.com>
40448
40449         * m4/mempcpy.m4: New file.
40450
40451 2003-07-14  Simon Josefsson  <jas@extundo.com>
40452
40453         * lib/mempcpy.h: New file.
40454         * lib/mempcpy.c: New file.
40455
40456 2003-07-14  Paul Eggert  <eggert@twinsun.com>
40457
40458         * modules/getdate, modules/posixtm: Depend on mktime.
40459
40460 2003-07-14  Paul Eggert  <eggert@twinsun.com>
40461
40462         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
40463         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
40464         unicodeio.c, unicodeio.h, unlocked-io.h:
40465         Switch from LGPL to GPL.
40466
40467 2003-07-14  Paul Eggert  <eggert@twinsun.com>
40468
40469         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
40470         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
40471         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
40472         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
40473         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
40474         updated automatically by ../config/srclist-update.  This changes
40475         their license from LPGL to GPL.
40476
40477 2003-07-14  Paul Eggert  <eggert@twinsun.com>
40478
40479         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
40480         assumed to refer to the root of the most recent stable gettext version.
40481         * config/srclistvars.sh: Add defaults for eggert.
40482         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
40483         Match "This program" as well as "The program".  This is needed
40484         for gettext.
40485
40486 2003-07-14  Jim Meyering  <jim@meyering.net>
40487
40488         Don't emit diagnostics.  Let callers do that.
40489         * lib/save-cwd.c: Don't include "error.h".
40490         (save_cwd): Don't call error.  Ensure that errno is valid
40491         when returning nonzero.
40492
40493         * lib/save-cwd.h (restore_cwd): Update prototype.
40494         * lib/save-cwd.c (restore_cwd): Remove two parameters.
40495         Simplify.  Don't call error upon failure.  Let callers do that.
40496         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
40497         when auditing is enabled.  But don't bother updating the #if.
40498
40499 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
40500
40501         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
40502         it breaks C++ compilation.
40503         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
40504
40505 2003-07-10  Simon Josefsson  <jas@extundo.com>
40506
40507         * modules/strchrnul (Makefile.am): Add strchrnul.h.
40508
40509 2003-07-10  Jim Meyering  <jim@meyering.net>
40510
40511         * m4/clock_time.m4: Remove trailing blank.
40512         * m4/intmax_t.m4: Likewise.
40513
40514 2003-07-10  Jim Meyering  <jim@meyering.net>
40515
40516         * lib/vasnprintf.c: Remove trailing blanks.
40517         Make cpp indentation consistent.
40518
40519 2003-07-09  Paul Eggert  <eggert@twinsun.com>
40520
40521         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
40522         posixver.c, strftime.c, strnlen.c, strverscmp.c:
40523         Switch from LGPL to GPL.
40524
40525 2003-07-09  Paul Eggert  <eggert@twinsun.com>
40526
40527         * config/srclist.txt: Sort sublists.  Add
40528         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
40529         that differ from gnulib for one reason or another; we'd like this list
40530         to be smaller but for now let's document what we have.
40531
40532 2003-07-08  Paul Eggert  <eggert@twinsun.com>
40533
40534         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
40535         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
40536         and sweeter "eval x=$x".
40537         * config/srclist.txt: Get lib/argp* from glibc.
40538
40539 2003-07-07  Paul Eggert  <eggert@twinsun.com>
40540
40541         * lib/mktime.c: Fix some boundary cases and remove need for floating
40542         point.
40543
40544         Issue a compile-time diagnostic if time_t is floating point, or if
40545         two's complement arithmetic is not in effect, or if arithmetic
40546         right shift does not propagate the sign.  These assumptions were
40547         all in the original code but they weren't checked.
40548
40549         (TIME_T_MIDPOINT, verify): New macros.
40550         (__isleap): Remove; it has integer overflow problems.
40551         (leapyear): New function, without those problems.
40552         (ydhms_tm_diff): Remove; splitting into two parts.
40553         (ydhms_diff): New function, containing the arithmetic part of
40554         the old ydhms_tm_diff function.  Issue a compile-time
40555         diagnostic if we are not using C99 integer division.
40556         Avoid casts when possible.
40557         (guess_time_tm): New function, containing the checking part of
40558         the old ydhms_tm_diff function.  Return the new value, rather than
40559         the difference between it and the old.  Accept a new argument T
40560         so that *T specifies the old value.  Check for overflow in the result.
40561
40562         (__mktime_internal): Use a time_t offset, not a long int offset.
40563         This undoes the 2003-06-04 change, which is no longer needed now
40564         that we have better overflow checking.
40565         (localtime_offset): Likewise.
40566
40567         (__mktime_internal): Avoid harmful overflow on hosts where time_t
40568         and long are 64-bit but int is only 32-bit.
40569         (ydhms_diff): Use long int to store year1 and yday1.
40570         Issue a compile-time diagnostic if long int is not wide enough.
40571
40572         (__mktime_internal): Use long int to store adjusted year and yday.
40573         Use plain C rather than preprocessor commands, if that doesn't
40574         affect efficiency.
40575         Check for overflow (and try to repair) after each probe
40576         rather than checking only at the very end.  This avoids some bugs
40577         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
40578         does not equal GMT offset at maximum time).
40579         Use integer to check for overflow rather than floating point; this
40580         is more portable to non-IEEE hosts, and is a tad faster.
40581         When we detect that we are oscillating between two values,
40582         don't check whether tm_isdst has the requested value, since
40583         we already know the answer.  When tm_isdst has the wrong value,
40584         use a different heuristic to find the right one, based on the
40585         extreme values actually observed in practice in tz2003a,
40586         rather than the (overly optimistic) "previous 3 calendar quarters".
40587
40588         (not_equal_tm, print_tm, check_result): Use "const T" rather than
40589         "T const" to accommodate glibc style.
40590         (check_result): Use less-confusing report format.  "long" -> "long int.
40591         (main): Likewise.
40592         Don't loop if the iteration overflows time_t.
40593         Allow a negative step in the iteration.
40594
40595 2003-07-06  Karl Berry  <karl@gnu.org>
40596
40597         * config/depcomp: update from automake.
40598         * config/config.sub: update from prep.
40599
40600 2003-07-03  Karl Berry  <karl@gnu.org>
40601
40602         * config/config.guess: update from prep.
40603
40604 2003-07-01  Paul Eggert  <eggert@twinsun.com>
40605
40606         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
40607         xreadlink.c now includes it unconditionally.
40608
40609 2003-07-01  Paul Eggert  <eggert@twinsun.com>
40610
40611         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
40612         having it depend on HAVE_SYS_TYPES_H.
40613
40614 2003-07-01  Bruno Haible  <bruno@clisp.org>
40615
40616         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
40617         <sys/types.h> should be sufficient.
40618         Reported by Paul Eggert.
40619
40620 2003-06-26  Karl Berry  <karl@gnu.org>
40621
40622         * config/depcomp: update from automake.
40623
40624 2003-06-26  Bruno Haible  <bruno@clisp.org>
40625
40626         * modules/human: Depend on module stdbool.
40627
40628 2003-06-25  Bruno Haible  <bruno@clisp.org>
40629
40630         * modules/readlink: New file.
40631         * modules/xreadlink: Depend on it.
40632         * MODULES.html.sh (func_all_modules): Add readlink.
40633
40634 2003-06-25  Bruno Haible  <bruno@clisp.org>
40635
40636         * m4/readlink.m4: New file.
40637
40638 2003-06-25  Bruno Haible  <bruno@clisp.org>
40639
40640         * lib/readlink.c: New file.
40641
40642 2003-06-22  Karl Berry  <karl@gnu.org>
40643
40644         * config/srclist.txt: update mkinstalldirs from automake.
40645         * config/mkinstalldirs: update.
40646
40647 2003-06-22  Bruno Haible  <bruno@clisp.org>
40648
40649         Portability to mingw32.
40650         * m4/ssize_t.m4: New file, from GNU gettext.
40651         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
40652         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
40653
40654 2003-06-22  Bruno Haible  <bruno@clisp.org>
40655
40656         * modules/safe-read: Add m4/ssize_t.m4.
40657         * modules/xreadlink: Add m4/ssize_t.m4.
40658
40659 2003-06-20  Bruno Haible  <bruno@clisp.org>
40660
40661         Assume C89, so PARAMS isn't needed.
40662         * lib/unicodeio.h (PARAMS): Remove.
40663         * lib/unicodeio.c: Don't use PARAMS.
40664
40665 2003-06-18  Karl Berry  <karl@gnu.org>
40666
40667         * config/config.{guess,sub}: update from prep.
40668
40669 2003-06-18  Jim Meyering  <jim@meyering.net>
40670
40671         Merge changes from coreutils.
40672         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
40673         Remove explicit declarations of xmalloc and realloc.
40674         Include xalloc.h.
40675         (read_utmp): Remove anachronistic cast of xmalloc.
40676
40677 2003-06-17  Paul Eggert  <eggert@twinsun.com>
40678
40679         Assume C89, so PARAMS isn't needed.
40680         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
40681         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
40682         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
40683         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
40684         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
40685         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
40686         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
40687         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
40688         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
40689         lib/xstrtod.h, lib/xstrtol.h: Likewise.
40690         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
40691         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
40692         no longer needed. Anyway, config.h should always be included before any
40693         other file.
40694
40695 2003-06-11  Simon Josefsson  <jas@extundo.com>
40696
40697         * modules/sysexits: New file.
40698         * MODULES.html.sh (func_all_modules): Add sysexits.
40699
40700 2003-06-11  Simon Josefsson  <jas@extundo.com>
40701
40702         * lib/sysexit_.h: New file.
40703
40704 2003-06-11  Derek Price  <derek@ximbiot.com>
40705
40706         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
40707         necessary.
40708
40709 2003-06-11  Bruno Haible  <bruno@clisp.org>
40710
40711         * m4/sysexits.m4: New file.
40712
40713 2003-06-10  Simon Josefsson  <jas@extundo.com>
40714
40715         * lib/argp.h: New file, from glibc.
40716         * lib/argp-ba.c: New file, from glibc.
40717         * lib/argp-eexst.c: New file, from glibc.
40718         * lib/argp-fmtstream.c: New file, from glibc.
40719         * lib/argp-fmtstream.h: New file, from glibc.
40720         * lib/argp-fs-xinl.c: New file, from glibc.
40721         * lib/argp-help.c: New file, from glibc.
40722         * lib/argp-namefrob.h: New file, from glibc.
40723         * lib/argp-parse.c: New file, from glibc.
40724         * lib/argp-pv.c: New file, from glibc.
40725         * lib/argp-pvh.c: New file, from glibc.
40726         * lib/argp-xinl.c: New file, from glibc.
40727
40728 2003-06-10  Simon Josefsson  <jas@extundo.com>
40729
40730         * modules/strchrnul: New file.
40731
40732 2003-06-10  Simon Josefsson  <jas@extundo.com>
40733
40734         * modules/argp: New file.
40735
40736 2003-06-10  Simon Josefsson  <jas@extundo.com>
40737
40738         * m4/strchrnul.m4: New file.
40739
40740 2003-06-10  Simon Josefsson  <jas@extundo.com>
40741
40742         * lib/strchrnul.h: New file.
40743         * lib/strchrnul.c: New file.
40744
40745 2003-06-10  Bruno Haible  <bruno@clisp.org>
40746
40747         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
40748
40749 2003-06-07  Karl Berry  <karl@gnu.org>
40750
40751         * config/config.{guess,sub}: update from prep.
40752
40753 2003-06-07  Jim Meyering  <jim@meyering.net>
40754
40755         * modules/strtod: Use $(...) notation, not @...@ for
40756         AC_REPLACE'd variables.
40757         * modules/localcharset: Likewise.
40758
40759 2003-06-07  Jim Meyering  <jim@meyering.net>
40760
40761         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
40762         in place of my name in the copyright comment.
40763         Remove definition and uses of __P.
40764
40765         From coreutils.
40766         * lib/stat.c: Don't declare xmalloc explicitly.
40767         Instead, include "xalloc.h".
40768         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
40769         xrealloc, and xcalloc return values.
40770         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
40771         Improve comment.
40772         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
40773
40774 2003-06-07  Bruno Haible  <bruno@clisp.org>
40775
40776         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
40777         avoid AC_CONFIG_LINKS.
40778         * modules/fnmatch (Makefile.am): Use explicit creation rule for
40779         fnmatch.h, to avoid AC_CONFIG_LINKS.
40780         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
40781
40782 2003-06-07  Bruno Haible  <bruno@clisp.org>
40783
40784         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
40785         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
40786         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
40787         directory.
40788         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
40789         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
40790         directory.
40791
40792 2003-06-06  Jim Meyering  <jim@meyering.net>
40793
40794         Merge from coreutils.
40795         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
40796         Consolidate declarations and initializations of *_base* locals.
40797
40798         Merge from coreutils.
40799         This avoids a core dump on systems without GNU putenv,
40800         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
40801         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
40802         (unsetenv): New static function, from GNU libc.
40803         (rpl_putenv): Use it.
40804
40805         * lib/modechange.c: Remove trailing blanks.
40806
40807         Merge from coreutils.
40808         * lib/fsusage.c: Remove declaration of statfs.
40809         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
40810
40811         * lib/posixtm.c: Include <stdbool.h> unconditionally.
40812
40813 2003-06-06  Jim Meyering  <jim@meyering.net>
40814
40815         * lib/stdbool_.h: Renamed from stdbool.h.in.
40816
40817 2003-06-06  Jim Meyering  <jim@meyering.net>
40818             Bruno Haible  <bruno@clisp.org>
40819
40820         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
40821         Adjust Makefile.am snippet not to redirect directly to target.
40822         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
40823
40824 2003-06-05  Paul Eggert  <eggert@twinsun.com>
40825
40826         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
40827         mismatch, look in future quarters as well as past.  This fixes a
40828         bug when processing fall-backwards gaps immediately after a long
40829         period of daylight-saving time.
40830
40831         * lib/mktime.c: Assume freestanding C89 or better.
40832         (HAVE_LIMITS_H): Remove.  Assume it's 1.
40833         (__P): Remove; not used.
40834         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
40835         (mktime, not_equal_tm, print_tm, check_result,
40836         main): Use prototypes.  Use const * where appropriate.
40837         (main): Fix typo in testing code that uncovered by above changes.
40838         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
40839
40840 2003-06-04  Paul Eggert  <eggert@twinsun.com>
40841
40842         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
40843         locale.h, localeconv.  This merges changes from coreutils.
40844
40845         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
40846         It can be removed after the next Autoconf is released.
40847         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
40848         needed.
40849
40850 2003-06-04  Paul Eggert  <eggert@twinsun.com>
40851
40852         * lib/mktime.c: Fix Debian bug 177940
40853         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
40854         (localtime_offset): Now long int, not time_t, because we want it
40855         to be guaranteed to be signed.  All uses changed.
40856         (__mktime_internal): If overflow would occur when adding offset,
40857         don't add it.
40858
40859         Merge 'human' changes from coreutils.  Rewrite to support
40860         locale-specific notations like thousands separators.
40861         * lib/human.c: Simplify authorship notice.
40862         Include human.h immediately after config.h.
40863         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
40864         <limits.h>: Do not include, since human.h does.
40865         (SIZE_MAX, UINTMAX_MAX): New macros.
40866         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
40867         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
40868         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
40869         (power_letter): Renamed from suffixes.
40870         (generate_suffix_backwards): Remove.
40871         (adjust_value): Now takes int style (because of human.h changes)
40872         and long double value (for greater precision on some platforms).
40873         (group_number): New function.
40874         (human_readable): Use it.  Use integer options, not enum.
40875         Put the options before the sizes in the arg list.
40876         Support all the new options.
40877         The old human_readable function has been removed;
40878         use inttostr.h instead.
40879         (human_readable, default_block_size, humblock):
40880         Use uintmax_t, not int, for block sizes.
40881         (human_readable_inexact, block_size_types): Remove.
40882         (block_size_opts): New constant.
40883         (human_options): Renamed from human_block_size, with new signature
40884         that allows block sizes up to UINTMAX_MAX.  All callers changed.
40885         * lib/human.h: Add copyright and authorship notice.
40886         Include <limits.h> and <stdbool.h> unconditionally.
40887         (PARAMS): Remove.  All uses removed.
40888         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
40889         (enum human_inexact_style): Remove tag; now a nameless enum.
40890         (human_floor, human_ceiling, human_round_to_even): Now have
40891         values 2, 0, 1 rather than -1, 1, 0.
40892         (human_group_digits, human_suppress_point_zero, human_autoscale,
40893         human_base_1024, human_SI, human_B): New constants.
40894         (human_readable_inexact, human_block_size): Remove.
40895         (human_readable): Size args are now uintmax_t, not int.
40896         (human_options): New decl.
40897
40898         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
40899         unnecessary now that we assume C89 or better.  This change
40900         imported from coreutils.
40901
40902         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
40903         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
40904         in the 2003-05-30 sync from glibc.
40905
40906         .h files should stand alone, but we shouldn't include <sys/types.h>
40907         if we can get away with just <stddef.h>.
40908
40909         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
40910         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
40911         rather than <sys/types.h>, as we merely need size_t.
40912         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
40913         to get size_t.
40914         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
40915         Include <stdio.h>, to get FILE.
40916         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
40917         memcasecmp.h has included <stddef.h> and all we need is size_t.
40918         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
40919         our interface, instead of including <sys/types.h>
40920
40921 2003-06-04  Paul Eggert  <eggert@twinsun.com>
40922
40923         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
40924         now, as glibc mktime is buggy on non-glibc systems.
40925
40926 2003-06-03  Karl Berry  <karl@gnu.org>
40927
40928         * config/config.sub: update from prep.
40929
40930 2003-06-02  Paul Eggert  <eggert@twinsun.com>
40931
40932         [from coreutils]
40933         Fix some minor time-related bugs with POSIX time arguments.
40934         Some valid time stamps were being rejected (notably -1, and
40935         time stamps before 1900 on 64-bit hosts).  And some invalid
40936         time stamps were being accepted, e.g. September 31.
40937
40938         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
40939         that we can return (time_t) -1 successfully.
40940         * lib/posixtm.c: Likewise.
40941         [HAVE_STDBOOL_H]: Include <stdbool.h>.
40942         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
40943         (t): Remove static var.
40944         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
40945         of static var.  All uses changed.
40946         (year): Do not reject years before 1900; they can occur with
40947         64-bit time_t.
40948         (posix_time_parse): Do not check for out-of-range components;
40949         that is now the caller's responsibility, since our checks were
40950         only approximations.
40951         (posixtime): Use mktime to check for out-of-range components,
40952         since it knows them exactly.
40953         If mktime returns (time_t) -1, check whether an error actually occurred
40954         by invoking localtime on -1.
40955         (main) [TEST_POSIXTIME]: Check for input data errors, and report
40956         posixtime failures better.
40957         Improve the test data (in comments only).
40958
40959 2003-06-02  Karl Berry  <karl@gnu.org>
40960
40961         * config/mkinstalldirs (version): new variable.
40962         (--version): new option.
40963         (usage): improve message.
40964
40965 2003-05-30  Karl Berry  <karl@gnu.org>
40966
40967         * lib/mktime.c: update from libc.
40968
40969 2003-05-30  Bruno Haible  <bruno@clisp.org>
40970
40971         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
40972         * config/config.rpath: Upgrade to gettext-0.12.1.
40973
40974 2003-05-30  Bruno Haible  <bruno@clisp.org>
40975
40976         * m4/gettext.m4: Upgrade to gettext-0.12.1.
40977         * m4/nls.m4: New file, from gettext-0.12.1.
40978         * m4/po.m4: New file, from gettext-0.12.1.
40979         * m4/progtest.m4: Upgrade to gettext-0.12.1.
40980
40981 2003-05-30  Bruno Haible  <bruno@clisp.org>
40982
40983         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
40984         * lib/localcharset.h: Likewise.
40985         * lib/localcharset.c: Likewise.
40986
40987 2003-05-29  Karl Berry  <karl@gnu.org>
40988
40989         * config/config.rpath: update from gettext.
40990
40991 2003-05-28  Paul Eggert  <eggert@twinsun.com>
40992
40993         Assume the headers required for C89 freestanding compilers.
40994         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
40995         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
40996         * m4/human.m4 (gl_HUMAN): Likewise.
40997         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
40998         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
40999         * m4/userspec.m4 (gl_USERSPEC): Likewise.
41000         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
41001         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
41002         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
41003
41004 2003-05-28  Paul Eggert  <eggert@twinsun.com>
41005
41006         Assume the headers required for C89 freestanding compilers.
41007         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
41008         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
41009         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
41010         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
41011         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
41012         define, since <limits.h> is guaranteed to do that.
41013         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
41014         * lib/exclude.c: Include <stdbool.h> unconditionally.
41015         * lib/tempname.c: Include <stddef.h> unconditionally.
41016         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
41017         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
41018         <stddef.h> does that.
41019         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
41020         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
41021         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
41022         needed.
41023         * lib/xstrtol.c: Likewise.
41024         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
41025         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
41026
41027         * lib/addext.c (addext): Use assignment rather than cast, to avoid
41028         warnings on some platforms.
41029
41030         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
41031         arbitrarily.
41032
41033 2003-05-26  Jim Meyering  <jim@meyering.net>
41034
41035         Merge in a change from coreutils:
41036         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
41037         that is guaranteed to be `no'.  Use `no_such_member' to indicate
41038         that condition, rather than `-1' which is slightly misleading.
41039         Change the name of the cache variable to have the gl_ prefix.
41040         Prompted by a patch from Richard Dawe for DJGPP.
41041
41042 2003-05-24  Karl Berry  <karl@gnu.org>
41043
41044         * config/config.guess: update from prep.
41045
41046 2003-05-22  Karl Berry  <karl@gnu.org>
41047
41048         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
41049
41050 2003-05-20  Karl Berry  <karl@gnu.org>
41051
41052         * config/config.guess: update from prep.
41053
41054 2003-05-18  Karl Berry  <karl@gnu.org>
41055
41056         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
41057         might actually be set by the user.
41058
41059         * config/depcomp, install-sh, mdate-sh: update from automake.
41060
41061 2003-05-17  Bruno Haible  <bruno@clisp.org>
41062
41063         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
41064         invalid expansion for AC_EGREP_CPP.
41065         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
41066         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
41067         Suggested by Akim Demaille <akim@epita.fr> in
41068         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
41069
41070 2003-05-12  Jim Meyering  <jim@meyering.net>
41071
41072         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
41073         the space-padded-by-default conversion specifiers, %e, %k, %l.
41074
41075 2003-05-12  Bruno Haible  <bruno@clisp.org>
41076
41077         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
41078         the string is longer than 4 KB.
41079
41080 2003-05-11  Karl Berry  <karl@gnu.org>
41081
41082         * config/config.{guess,sub}: update from prep.
41083
41084 2003-05-09  Bruno Haible  <bruno@clisp.org>
41085
41086         * modules/error: Add m4/strerror_r.m4 to file list.
41087
41088 2003-05-03  Bruno Haible  <bruno@clisp.org>
41089
41090         Upgrade to Unicode-4.0.
41091         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
41092         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
41093         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
41094         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
41095         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
41096         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
41097         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
41098         Change width of U+E0100..U+E01EF from 1 to 0.
41099
41100 2003-04-25  Jim Meyering  <jim@meyering.net>
41101
41102         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
41103         of type size_t, not int.
41104
41105 2003-04-25  Bruno Haible  <bruno@clisp.org>
41106
41107         * lib/copy-file.c: Include <stddef.h>, for size_t.
41108
41109 2003-04-21  Paul Eggert  <eggert@twinsun.com>
41110
41111         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
41112         code which expansion is under static control.  Patch imported from
41113         Akim Demaille's patch to Bison; see
41114         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
41115
41116 2003-04-14  Bruno Haible  <bruno@clisp.org>
41117
41118         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
41119
41120 2003-04-11  Jim Meyering  <jim@meyering.net>
41121
41122         Merge changes from Coreutils.
41123
41124         2003-03-22  Jim Meyering  <jim@meyering.net>
41125
41126         * lib/strftime.c (widen): Cast alloca return value to proper type.
41127
41128         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
41129
41130         From GNU libc.
41131         * lib/strftime.c (my_strftime): Handle very large width
41132         specifications for numeric values correctly.  Improve checks for
41133         overflow.
41134
41135         2003-01-19  Jim Meyering  <jim@meyering.net>
41136
41137         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
41138         definitions.
41139         (nl_get_alt_digit) [! defined my_strftime]: Define.
41140         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
41141         _nl_get_alt_digit and _nl_get_walt_digit.
41142
41143         * lib/strftime.c (my_strftime): Merge in locale-related changes from
41144         libc. These changes have no effect outside of _LIBC.
41145
41146 2003-04-10  Bruno Haible  <bruno@clisp.org>
41147
41148         * modules/findprog: New file.
41149         * MODULES.html.sh (func_all_modules): Add it.
41150
41151 2003-04-10  Bruno Haible  <bruno@clisp.org>
41152
41153         * m4/findprog.m4: New file.
41154         * m4/eaccess.m4: New file.
41155
41156 2003-04-10  Bruno Haible  <bruno@clisp.org>
41157
41158         * lib/findprog.h: New file, from GNU gettext.
41159         * lib/findprog.c: New file, from GNU gettext.
41160
41161 2003-04-05  Jim Meyering  <jim@meyering.net>
41162
41163         Merge changes from Coreutils.
41164
41165         * lib/exclude.h (PARAMS): Remove definition and uses.
41166         * lib/exclude.c: Remove uses of `PARAMS'.
41167
41168         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
41169         Add test-cases for DOS filenames. Declare program_name.
41170         (main): Set up program_name.  Patch by Rich Dawe.
41171
41172         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
41173         error from mntctl.
41174         Use mntctl's return value to drive the entry-processing loop, since
41175         we can't rely on the value of the vmt_length member in the last
41176         entry.  On some systems doing so could result in exhausting
41177         virtual memory.  Based in part on a patch from Mike Jetzer.
41178
41179 2003-04-04  Bruno Haible  <bruno@clisp.org>
41180
41181         * modules/linebreak: New file.
41182         * MODULES.html.sh (func_all_modules): Add it.
41183
41184 2003-04-04  Bruno Haible  <bruno@clisp.org>
41185
41186         * m4/linebreak.m4: New file.
41187
41188 2003-04-04  Bruno Haible  <bruno@clisp.org>
41189
41190         * lib/linebreak.h: New file, from GNU gettext.
41191         * lib/linebreak.c: New file, from GNU gettext with slight
41192         modifications.
41193         * lib/lbrkprop.h: New file, from GNU gettext.
41194
41195 2003-04-03  Bruno Haible  <bruno@clisp.org>
41196
41197         * modules/utf8-ucs4: New file.
41198         * modules/utf16-ucs4: New file.
41199         * modules/ucs4-utf8: New file.
41200         * modules/ucs4-utf16: New file.
41201         * MODULES.html.sh (func_all_modules): Add them.
41202
41203 2003-04-03  Bruno Haible  <bruno@clisp.org>
41204
41205         * m4/utf-ucs4.m4: New file.
41206         * m4/ucs4-utf.m4: New file.
41207
41208 2003-04-03  Bruno Haible  <bruno@clisp.org>
41209
41210         * lib/utf8-ucs4.h: New file, from GNU gettext.
41211         * lib/utf16-ucs4.h: New file, from GNU gettext.
41212         * lib/ucs4-utf8.h: New file, from GNU gettext.
41213         * lib/ucs4-utf16.h: New file, from GNU gettext.
41214
41215 2003-04-02  Bruno Haible  <bruno@clisp.org>
41216
41217         * modules/binary-io: New file.
41218         * MODULES.html.sh (func_all_modules): Add it.
41219
41220 2003-04-02  Bruno Haible  <bruno@clisp.org>
41221
41222         * lib/binary-io.h: New file, from GNU gettext.
41223
41224 2003-04-01  Bruno Haible  <bruno@clisp.org>
41225
41226         * modules/pathname: New file.
41227         * MODULES.html.sh (func_all_modules): Add it.
41228
41229 2003-04-01  Bruno Haible  <bruno@clisp.org>
41230
41231         * lib/pathname.h: New file, from GNU gettext.
41232         * lib/concatpath.c: New file, from GNU gettext.
41233
41234 2003-03-30  Bruno Haible  <bruno@clisp.org>
41235
41236         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
41237
41238 2003-03-30  Bruno Haible  <bruno@clisp.org>
41239
41240         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
41241         function chown() doesn't exist.
41242
41243 2003-03-28  Bruno Haible  <bruno@clisp.org>
41244
41245         * modules/copy-file: New file.
41246         * MODULES.html.sh (func_all_modules): Add it.
41247
41248 2003-03-28  Bruno Haible  <bruno@clisp.org>
41249
41250         * m4/copy-file.m4: New file.
41251
41252 2003-03-28  Bruno Haible  <bruno@clisp.org>
41253
41254         * lib/copy-file.h: New file, from GNU gettext.
41255         * lib/copy-file.c: New file, from GNU gettext.
41256
41257 2003-03-18  Jim Meyering  <jim@meyering.net>
41258
41259         * lib/quote.c (quote_n): Fix typo in comment.
41260
41261 2003-03-18  Bruno Haible  <bruno@clisp.org>
41262
41263         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
41264         checking.
41265         * m4/onceonly_2_57.m4: Likewise.
41266
41267 2003-03-17  Bruno Haible  <bruno@clisp.org>
41268
41269         * m4/onceonly.m4: Require autoconf 2.54 or newer.
41270         (m4_quote): Remove macro.
41271         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
41272
41273 2003-03-14  Jim Meyering  <jim@meyering.net>
41274
41275         Merge changes from Coreutils.
41276         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
41277         to be const, in order to avoid warnings.
41278         (obstack_room): Likewise.
41279         (obstack_empty_p): Likewise.
41280
41281 2003-03-14  Bruno Haible  <bruno@clisp.org>
41282
41283         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
41284         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
41285
41286 2003-03-13  Paul Eggert  <eggert@twinsun.com>
41287
41288         Merge changes from Bison.
41289         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
41290         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
41291         when compiling Bison 1.875's `bitset bset = obstack_alloc
41292         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
41293         * lib/hash.c: Include <stdbool.h> unconditionally.
41294
41295 2003-03-13  Paul Eggert  <eggert@twinsun.com>
41296
41297         * m4/onceonly.m4 (m4_quote): New macro.
41298         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
41299         Quote AC_FOREACH variable-expansions properly.
41300
41301 2003-03-13  Paul Eggert  <eggert@twinsun.com>
41302
41303         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
41304
41305 2003-03-09  Paul Eggert  <eggert@twinsun.com>
41306
41307         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
41308         Reported by Bruce Becker; see:
41309         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
41310
41311 2003-03-03  Paul Eggert  <eggert@twinsun.com>
41312             Bruno Haible  <bruno@clisp.org>
41313
41314         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
41315         Reported by John Hughes, see
41316         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
41317
41318 2003-02-20  Bruno Haible  <bruno@clisp.org>
41319
41320         * MODULES.html.sh (func_all_modules): Add poll.
41321
41322 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
41323
41324         * modules/poll: New file.
41325
41326 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
41327
41328         * lib/poll_.h: New file.
41329         * lib/poll.c: New file.
41330
41331 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
41332
41333         * m4/poll.m4: New file.
41334
41335 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
41336
41337         * modules/mathl: New file.
41338
41339 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
41340
41341         * lib/mathl.h: New file.
41342         * lib/acosl.c: New file.
41343         * lib/asinl.c: New file.
41344         * lib/atanl.c: New file.
41345         * lib/ceill.c: New file.
41346         * lib/cosl.c: New file.
41347         * lib/expl.c: New file.
41348         * lib/floorl.c: New file.
41349         * lib/frexpl.c: New file.
41350         * lib/ldexpl.c: New file.
41351         * lib/logl.c: New file.
41352         * lib/sincosl.c: New file.
41353         * lib/sinl.c: New file.
41354         * lib/sqrtl.c: New file.
41355         * lib/tanl.c: New file.
41356         * lib/trigl.c: New file.
41357         * lib/trigl.h: New file.
41358
41359 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
41360
41361         * m4/mathl.m4: New file.
41362
41363 2003-02-18  Bruno Haible  <bruno@clisp.org>
41364
41365         * MODULES.html.sh (func_all_modules): Add mathl.
41366
41367 2003-02-17  Bruno Haible  <bruno@clisp.org>
41368
41369         * modules/mkdtemp: New module.
41370         * MODULES.html.sh (func_all_modules): Add it.
41371
41372 2003-02-17  Bruno Haible  <bruno@clisp.org>
41373
41374         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
41375
41376 2003-02-17  Bruno Haible  <bruno@clisp.org>
41377
41378         * lib/mkdtemp.h: New file, from GNU gettext.
41379         * lib/mkdtemp.c: New file, from GNU gettext.
41380
41381 2003-02-02  Jim Meyering  <jim@meyering.net>
41382
41383         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
41384         e.g. glibc-2.2.93.
41385
41386 2003-01-31  Bruno Haible  <bruno@clisp.org>
41387
41388         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
41389         'rpl_rename'.
41390         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
41391         'rpl_strnlen'.
41392         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
41393         'rpl_strtod'.
41394         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
41395         'rpl_utime'.
41396
41397 2003-01-31  Bruno Haible  <bruno@clisp.org>
41398
41399         * lib/rename.c: #undef rename before defining rpl_rename.
41400         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
41401
41402 2003-01-30  Bruno Haible  <bruno@clisp.org>
41403
41404         * modules/vasnprintf, modules/vasprintf: New modules.
41405         * MODULES.html.sh (func_all_modules): Add them.
41406
41407 2003-01-30  Bruno Haible  <bruno@clisp.org>
41408
41409         * m4/signed.m4: New file, from GNU gettext.
41410         * m4/longdouble.m4: New file, from GNU gettext.
41411         * m4/wchar_t.m4: New file, from GNU gettext.
41412         * m4/wint_t.m4: New file, from GNU gettext.
41413         * m4/vasnprintf.m4: New file.
41414         * m4/vasprintf.m4: New file.
41415
41416 2003-01-30  Bruno Haible  <bruno@clisp.org>
41417
41418         * lib/printf-args.h: New file, from GNU gettext.
41419         * lib/printf-args.c: New file, from GNU gettext.
41420         * lib/printf-parse.h: New file, from GNU gettext.
41421         * lib/printf-parse.c: New file, from GNU gettext.
41422         * lib/vasnprintf.h: New file, from GNU gettext.
41423         * lib/vasnprintf.c: New file, from GNU gettext.
41424         * lib/asnprintf.c: New file, from GNU gettext.
41425         * lib/vasprintf.h: New file, from GNU gettext with modifications.
41426         * lib/vasprintf.c: New file, from GNU gettext.
41427         * lib/asprintf.c: New file, from GNU gettext.
41428
41429 2003-01-29  Bruno Haible  <bruno@clisp.org>
41430
41431         * modules/stpncpy: New module.
41432         * MODULES.html.sh (func_all_modules): Add it.
41433
41434 2003-01-29  Bruno Haible  <bruno@clisp.org>
41435
41436         * m4/stpncpy.m4: New file.
41437
41438 2003-01-29  Bruno Haible  <bruno@clisp.org>
41439
41440         * lib/stpncpy.h: New file, from GNU gettext with modifications.
41441         * lib/stpncpy.c: New file, from GNU gettext with modifications.
41442
41443 2003-01-28  Bruno Haible  <bruno@clisp.org>
41444
41445         * modules/c-ctype: New module.
41446         * MODULES.html.sh (func_all_modules): Add it.
41447
41448 2003-01-28  Bruno Haible  <bruno@clisp.org>
41449
41450         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
41451         Paul Eggert.
41452         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
41453         Paul Eggert.
41454
41455 2003-01-27  Bruno Haible  <bruno@clisp.org>
41456
41457         * modules/xsetenv: New module.
41458         * MODULES.html.sh (func_all_modules): Add it.
41459
41460 2003-01-27  Bruno Haible  <bruno@clisp.org>
41461
41462         * lib/xsetenv.h: New file, from GNU gettext.
41463         * lib/xsetenv.c: New file, from GNU gettext.
41464
41465 2003-01-23  Jim Meyering  <jim@meyering.net>
41466
41467         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
41468         from working on systems without dirfd (at least Irix and OSF1/Tru64).
41469
41470 2003-01-23  Bruno Haible  <bruno@clisp.org>
41471
41472         * modules/minmax: New module.
41473         * MODULES.html.sh (func_all_modules): Add it.
41474
41475 2003-01-23  Bruno Haible  <bruno@clisp.org>
41476
41477         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
41478         Eggert.
41479
41480 2003-01-22  Bruno Haible  <bruno@clisp.org>
41481
41482         * modules/exit: New module.
41483         * MODULES.html.sh (func_all_modules): Add it.
41484
41485 2003-01-22  Bruno Haible  <bruno@clisp.org>
41486
41487         * lib/exit.h: New file, from GNU gettext.
41488
41489 2003-01-19  Bruno Haible  <bruno@clisp.org>
41490
41491         * gnulib-tool: Recognize option --extract-maintainer.
41492         (func_get_maintainer): New function.
41493         * modules/*: Add Maintainer entry.
41494
41495 2003-01-16  Jim Meyering  <jim@meyering.net>
41496
41497         * m4/regex.m4: The `regex' struct is both input and output.
41498         Initialize it before each use.  Patch by Tim Waugh.
41499
41500 2003-01-16  Bruno Haible  <bruno@clisp.org>
41501
41502         * MODULES.html.sh: Add a table of contents. Add the module name as
41503         leftmost column. Add hyperlinks.
41504
41505 2003-01-15  Bruno Haible  <bruno@clisp.org>
41506
41507         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
41508
41509 2003-01-15  Bruno Haible  <bruno@clisp.org>
41510
41511         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
41512         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
41513         suffix.
41514
41515 2003-01-15  Bruno Haible  <bruno@clisp.org>
41516
41517         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
41518
41519 2003-01-15  Bruno Haible  <bruno@clisp.org>
41520
41521         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
41522         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
41523
41524 2003-01-14  Jim Meyering  <jim@meyering.net>
41525
41526         * lib/same.c (same_name): Tweak a comment.
41527
41528 2003-01-14  Bruno Haible  <bruno@clisp.org>
41529
41530         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
41531         when a string comparison is sufficient.
41532
41533 2003-01-14  Bruno Haible  <bruno@clisp.org>
41534
41535         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
41536         'unsigned int'.
41537
41538 2003-01-14  Bruno Haible  <bruno@clisp.org>
41539
41540         * lib/hash-pjw.c: Add comment about low quality of this function.
41541
41542 2003-01-13  Bruno Haible  <bruno@clisp.org>
41543
41544         * modules/stpcpy: Distribute lib/stpcpy.h.
41545         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
41546
41547 2003-01-13  Bruno Haible  <bruno@clisp.org>
41548
41549         * modules/*: Add a description.
41550         * modules/strpbrk: Fix Makefile.am snippet.
41551         * modules/strtoimax: Fix dependencies.
41552         * modules/strtoumax: Likewise.
41553
41554 2003-01-13  Bruno Haible  <bruno@clisp.org>
41555
41556         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
41557         * modules/alloca (Makefile.am): All object files depend on alloca.h.
41558         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
41559
41560 2003-01-13  Bruno Haible  <bruno@clisp.org>
41561
41562         * gnulib-tool (func_create_testdir): Store config/* files in the main
41563         directory.
41564         * config.rpath: Move to ...
41565         * config/config.rpath: ... here.
41566         * modules/gettext: Contains config/config.rpath, not config.rpath.
41567         * modules/iconv: Likewise.
41568
41569 2003-01-12  Paul Eggert  <eggert@twinsun.com>
41570
41571         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
41572         to avoid collisions with libcurses and libreadline.
41573
41574         * m4/getstr.m4: Remove.
41575         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
41576
41577 2003-01-12  Paul Eggert  <eggert@twinsun.com>
41578
41579         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
41580         to avoid collisions with libcurses and libreadline.
41581
41582         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
41583         * lib/getstr.h, getstr.c: Remove.
41584         * lib/getline.c: Include "getline.h", to check interface.
41585         Move body of old getstr.c here: this defines MIN_CHUNK and
41586         declares getdelim2, which is renamed from getstr.
41587         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
41588
41589         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
41590         All uses changed.
41591         * lib/linebuffer.h: Likewise.
41592         (readline): Remove backward-compatibility macro.
41593
41594 2003-01-12  Paul Eggert  <eggert@twinsun.com>
41595
41596         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
41597         to avoid collisions with libcurses and libreadline.
41598         * getstr: Remove.
41599         * MODULES.html.sh: Remove getstr.
41600         * modules/getline: Depend on unlocked-io, not getstr.
41601
41602 2003-01-12  Jim Meyering  <jim@meyering.net>
41603
41604         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
41605
41606 2003-01-10  Bruno Haible  <bruno@clisp.org>
41607
41608         * modules/alloca: Change Makefile.am requirements. Simplify Include
41609         requirements. Add lib/alloca_.h to file list.
41610
41611 2003-01-10  Bruno Haible  <bruno@clisp.org>
41612
41613         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
41614
41615 2003-01-10  Bruno Haible  <bruno@clisp.org>
41616
41617         * lib/alloca_.h: New file.
41618         * lib/getdate.y: Unconditionally include alloca.h.
41619         * lib/makepath.c: Likewise.
41620         * lib/setenv.c: Likewise.
41621         * lib/userspec.c: Likewise.
41622
41623 2003-01-09  Karl Berry  <karl@gnu.org>
41624
41625         * MODULES.html.sh: include `dirname $0` in PATH, to find
41626         gnulib-tool.
41627
41628 2003-01-09  Bruno Haible  <bruno@clisp.org>
41629
41630         * modules/stdbool: Change configure.ac, Makefile.am requirements.
41631         Simplify Include requirements. Add lib/stdbool.h.in to file list.
41632
41633 2003-01-09  Bruno Haible  <bruno@clisp.org>
41634
41635         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
41636
41637 2003-01-09  Bruno Haible  <bruno@clisp.org>
41638
41639         * lib/stdbool.h.in: New file.
41640
41641 2003-01-09  Bruno Haible  <bruno@clisp.org>
41642
41643         * gnulib-tool (func_all_modules): Ignore files ending in ~.
41644         * MODULES.html.sh: Likewise.
41645
41646 2003-01-08  Jim Meyering  <jim@meyering.net>
41647
41648         * lib/full-write.c: Undefine and define-away `const' after inclusion
41649         of errno.h, not before.  Suggestion from Bruno Haible.
41650
41651 2003-01-08  Bruno Haible  <bruno@clisp.org>
41652
41653         * modules/full-read: Depend on full-write.
41654
41655 2003-01-08  Bruno Haible  <bruno@clisp.org>
41656
41657         * lib/safe-read.c: Include specification header first, to ensure its
41658         selfcontainedness.
41659         * lib/full-write.c: Likewise.
41660
41661 2003-01-07  Jim Meyering  <jim@meyering.net>
41662
41663         * lib/full-write.c: Rework so that it may serve to define full_read,
41664         too.
41665         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
41666
41667 2003-01-07  Bruno Haible  <bruno@clisp.org>
41668
41669         * lib/strtoimax.c: Include <stdint.h> as an alternative to
41670         <inttypes.h>.
41671         * lib/xstrtol.h: Likewise.
41672         * lib/xstrtoimax.c: Likewise.
41673         * lib/xstrtoumax.c: Likewise.
41674         * lib/human.h: Likewise.
41675
41676         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
41677         on systems that have <inttypes.h> but not <stdint.h>.
41678
41679 2003-01-07  Bruno Haible  <bruno@clisp.org>
41680
41681         * MODULES.html.sh: Add copyright notice.
41682         (missed_files): Omit CVS directory entries.
41683         (func_module): Make it work with sed-3.02.
41684         * MODULES.txt: Remove file.
41685
41686 2003-01-06  Jim Meyering  <jim@meyering.net>
41687
41688         * lib/version-etc.c: Update year in translatable copyright string.
41689
41690 2003-01-03  Karl Berry  <karl@gnu.org>
41691
41692         * config/config.{guess,sub}: update from prep.
41693
41694 2003-01-02  Karl Berry  <karl@gnu.org>
41695
41696         * doc/COPYING.DOC: belatedly updated to 1.2.
41697
41698 2003-01-01  Karl Berry  <karl@gnu.org>
41699
41700         * gnulib-tool (func_verify_module): report module name $module in
41701         error message, not $1.
41702         * gnulib-tool (create-testdir): don't complain if destdir couldn't
41703         be created, only if it doesn't exist.
41704         * gnulib-tool (last_checkin_date): don't expand the $Date here.
41705
41706 2002-12-31  Paul Eggert  <eggert@twinsun.com>
41707
41708         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
41709
41710 2002-12-31  Paul Eggert  <eggert@twinsun.com>
41711
41712         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
41713         memcmp if strcoll doesn't work.
41714
41715 2002-12-31  Bruno Haible  <bruno@clisp.org>
41716
41717         * lib/utime.c (utime_null): No need to call ftruncate if the file was
41718         nonempty.
41719
41720 2002-12-31  Bruno Haible  <bruno@clisp.org>
41721
41722         * lib/memcoll.c (STRCOLL): New macro.
41723         (memcoll): Use it.
41724
41725 2002-12-31  Bruno Haible  <bruno@clisp.org>
41726
41727         * lib/localcharset.h: New file.
41728         * lib/localcharset.c: Include it.
41729         * lib/unicodeio.c: Likewise.
41730
41731 2002-12-31  Bruno Haible  <bruno@clisp.org>
41732
41733         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
41734         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
41735
41736 2002-12-31  Bruno Haible  <bruno@clisp.org>
41737
41738         * lib/getline.h: Include <stddef.h>, for size_t.
41739
41740         * lib/unicodeio.h: Include <stddef.h>, for size_t.
41741         * lib/unicodeio.c: Don't include <stddef.h>.
41742
41743 2002-12-31  Bruno Haible  <bruno@clisp.org>
41744
41745         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
41746         HAVE_TM_ZONE.
41747
41748 2002-12-24  Karl Berry  <karl@gnu.org>
41749
41750         * config/config.guess: update from prep.
41751
41752 2002-12-24  Bruno Haible  <bruno@clisp.org>
41753
41754         General infrasructure.
41755         * m4/README: Rewritten.
41756         * m4/onceonly.m4: New file.
41757         * m4/onceonly_2_57.m4: New file.
41758
41759         Module atexit.
41760         * m4/atexit.m4: New file.
41761
41762         Module strtod.
41763         * m4/strtod.m4: New file.
41764
41765         Module strtol.
41766         * m4/strtol.m4: New file.
41767
41768         Module strtoul.
41769         * m4/strtoul.m4: New file.
41770
41771         Module memchr.
41772         * m4/memchr.m4: New file.
41773
41774         Module memcmp.
41775         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
41776         (jm_FUNC_MEMCMP): Invoke it.
41777
41778         Module memcpy.
41779         * m4/memcpy.m4: New file.
41780
41781         Module memmove.
41782         * m4/memmove.m4: New file.
41783
41784         Module memset.
41785         * m4/memset.m4: New file.
41786
41787         Module strcspn.
41788         * m4/strcspn.m4: New file.
41789
41790         Module strpbrk.
41791         * m4/strpbrk.m4: New file.
41792
41793         Module strstr.
41794         * m4/strstr.m4: New file.
41795
41796         Module strerror.
41797         * m4/strerror.m4: New file.
41798
41799         Module mktime.
41800         * m4/mktime.m4: Renamed from jm-mktime.m4.
41801         (gl_PREREQ_MKTIME): New macro.
41802         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
41803
41804         Module malloc.
41805         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
41806         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
41807         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
41808
41809         Module realloc.
41810         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
41811         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
41812         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
41813
41814         Module strftime.
41815         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
41816         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
41817         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
41818         gl_TM_GMTOFF.
41819         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
41820
41821         Module xalloc.
41822         * m4/xalloc.m4: New file.
41823
41824         Module alloca.
41825         * m4/alloca.m4: New file.
41826
41827         Module putenv.
41828         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
41829         (jm_FUNC_PUTENV): Invoke it.
41830
41831         Module setenv.
41832         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
41833         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
41834         when invoked twice.
41835         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
41836         gt_FUNC_SETENV.
41837
41838         Module memrchr.
41839         * m4/memrchr.m4: New file.
41840
41841         Module stpcpy.
41842         * m4/stpcpy.m4: New file.
41843
41844         Module strcase.
41845         * m4/strcase.m4: New file.
41846
41847         Module strdup.
41848         * m4/strdup.m4: New file.
41849
41850         Module strnlen.
41851         * m4/strnlen.m4: New file.
41852
41853         Module strndup.
41854         * m4/strndup.m4: New file.
41855
41856         Module xstrtod.
41857         * m4/xstrtod.m4: New file.
41858
41859         Module xstrtol.
41860         * m4/xstrtol.m4: New file.
41861
41862         Module getdate.
41863         * m4/getdate.m4: New file.
41864
41865         Module unlocked-io.
41866         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
41867         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
41868         * m4/jm-glibc-io.m4n: Remove file.
41869
41870         Module long-options.
41871         * m4/long-options.m4: New file.
41872
41873         Module md5.
41874         * m4/md5.m4: New file.
41875
41876         Module sha.
41877         * m4/sha.m4: New file.
41878
41879         Module getstr.
41880         * m4/getstr.m4: New file.
41881
41882         Module getline.
41883         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
41884         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
41885         <sys/types.h>, for size_t. Use the function name gnu_getline, not
41886         simply getline. Infoke gl_PREREQ_GETLINE.
41887
41888         Module obstack.
41889         * m4/obstack.m4: New file.
41890
41891         Module hash.
41892         * m4/hash.m4: New file.
41893
41894         Module readtokens.
41895         * m4/readtokens.m4: New file.
41896
41897         Module strverscmp.
41898         * m4/strverscmp.m4: New file.
41899
41900         Module stdbool.
41901         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
41902         OSF/1.
41903
41904         Module strtoll.
41905         * m4/strtoll.m4: New file.
41906
41907         Module strtoull.
41908         * m4/strtoull.m4: New file.
41909
41910         Module strtoimax.
41911         * m4/strtoimax.m4: New file.
41912
41913         Module strtoumax.
41914         * m4/strtoumax.m4: New file.
41915
41916         Module xstrtoimax.
41917         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
41918         jm_AC_PREREQ_XSTRTOIMAX.
41919         Moved the strtol prerequisites to strtol.m4.
41920         Moved the strtoll prerequisites to strtoll.m4.
41921         Moved the strtoimax prerequisites to strtoimax.m4.
41922
41923         Module xstrtoumax.
41924         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
41925         jm_AC_PREREQ_XSTRTOUMAX.
41926         Moved the strtoul prerequisites to strtoul.m4.
41927         Moved the strtoull prerequisites to strtoull.m4.
41928         Moved the strtoumax prerequisites to strtoumax.m4.
41929
41930         Module chown.
41931         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
41932         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
41933
41934         Module dup2.
41935         * m4/dup2.m4: New file.
41936
41937         Module ftruncate.
41938         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
41939         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
41940
41941         Module getgroups.
41942         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
41943         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
41944
41945         Module gettimeofday.
41946         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
41947         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
41948         gl_PREREQ_GETTIMEOFDAY.
41949
41950         Module mkdir.
41951         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
41952         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
41953
41954         Module mkstemp.
41955         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
41956         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
41957         jm_AC_TYPE_UINTMAX_T.
41958         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
41959
41960         Module stat.
41961         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
41962         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
41963
41964         Module lstat.
41965         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
41966         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
41967
41968         Module timespec.
41969         * m4/timespec.m4 (gl_TIMESPEC): New macro.
41970         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
41971         * m4/st_mtim.m4: Indentation.
41972
41973         Module nanosleep.
41974         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
41975         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
41976         gl_PREREQ_NANOSLEEP.
41977
41978         Module regex.
41979         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
41980         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
41981         (gl_REGEX): New macro.
41982
41983         Module rename.
41984         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
41985         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
41986
41987         Module rmdir.
41988         * m4/rmdir.m4: New file.
41989
41990         Module utime.
41991         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
41992         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
41993         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
41994
41995         Module dirname.
41996         * m4/dirname.m4: New file.
41997
41998         Module getopt.
41999         * m4/getopt.m4: New file.
42000
42001         Module unistd-safer.
42002         * m4/unistd-safer.m4: New file.
42003
42004         Module fnmatch.
42005         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
42006         declaration.
42007         (gl_PREREQ_FNMATCH_EXTRA): New macro.
42008         (gl_FUNC_FNMATCH_POSIX): New macro.
42009         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
42010         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
42011         simply fnmatch.
42012
42013         Module exclude.
42014         * m4/exclude.m4: New file.
42015
42016         Module human.
42017         * m4/human.m4: New file.
42018
42019         Module acl.
42020         * m4/acl.m4: Nop.
42021
42022         Module backupfile.
42023         * m4/backupfile.m4: New file.
42024         * m4/d-ino.m4: Indentation.
42025
42026         Module fsusage.
42027         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
42028         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
42029         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
42030
42031         Module dirfd.
42032         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
42033         requirements.
42034
42035         Module euidaccess.
42036         * m4/euidaccess.m4: New file.
42037
42038         Module file-type.
42039         * m4/file-type.m4: New file.
42040
42041         Module fileblocks.
42042         * m4/fileblocks.m4: New file.
42043
42044         Module filemode.
42045         * m4/filemode.m4: New file.
42046
42047         Module isdir.
42048         * m4/isdir.m4: New file.
42049
42050         Module lchown.
42051         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
42052         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
42053
42054         Module makepath.
42055         * m4/makepath.m4: New file.
42056
42057         Module modechange.
42058         * m4/modechange.m4: New file.
42059
42060         Module mountlist.
42061         * m4/mountlist.m4: New file.
42062         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
42063         Indentation.
42064
42065         Module path-concat.
42066         * m4/path-concat.m4: New file.
42067
42068         Module pathmax.
42069         * m4/pathmax.m4: New file.
42070
42071         Module same.
42072         * m4/same.m4: New file.
42073
42074         Module save-cwd.
42075         * m4/save-cwd.m4: New file.
42076
42077         Module savedir.
42078         * m4/savedir.m4: New file.
42079
42080         Module xgetcwd.
42081         * m4/xgetcwd.m4: New file.
42082         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
42083
42084         Module xreadlink.
42085         * m4/xreadlink.m4: New file.
42086
42087         Module safe-read.
42088         * m4/safe-read.m4: New file.
42089
42090         Module safe-write.
42091         * m4/safe-write.m4: New file.
42092
42093         Module closeout.
42094         * m4/closeout.m4: New file.
42095
42096         Module stdio-safer.
42097         * m4/stdio-safer.m4: New file.
42098
42099         Module getpass.
42100         * m4/getpass.m4: New file.
42101
42102         Module getugroups.
42103         * m4/getugroups.m4: New file.
42104
42105         Module group-member.
42106         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
42107         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
42108
42109         Module idcache.
42110         * m4/idcache.m4: New file.
42111
42112         Module userspec.
42113         * m4/userspec.m4: New file.
42114
42115         Module gettime.
42116         * m4/clock_time.m4: New file.
42117         * m4/gettime.m4: New file.
42118
42119         Module settime.
42120         * m4/settime.m4: New file.
42121
42122         Module posixtm.
42123         * m4/posixtm.m4: New file.
42124
42125         Module gethostname.
42126         * m4/gethostname.m4: New file.
42127
42128         Module canon-host.
42129         * m4/canon-host.m4: New file.
42130
42131         Module gettext.
42132         * m4/codeset.m4: New file, from gettext-0.11.5.
42133         * m4/gettext.m4: New file, from gettext-0.11.5.
42134         * m4/glibc21.m4: New file, from gettext-0.11.5.
42135         * m4/iconv.m4: New file, from gettext-0.11.5.
42136         * m4/intdiv0.m4: New file, from gettext-0.11.5.
42137         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
42138         * m4/inttypes.m4: New file, from gettext-0.11.5.
42139         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
42140         * m4/isc-posix.m4: New file, from gettext-0.11.5.
42141         * m4/lcmessage.m4: New file, from gettext-0.11.5.
42142         * m4/lib-ld.m4: New file, from gettext-0.11.5.
42143         * m4/lib-link.m4: New file, from gettext-0.11.5.
42144         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
42145         * m4/progtest.m4: New file, from gettext-0.11.5.
42146         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
42147         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
42148         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
42149
42150         Module localcharset.
42151         * m4/localcharset.m4: New file.
42152
42153         Module hard-locale.
42154         * m4/hard-locale.m4: New file.
42155
42156         Module mbswidth.
42157         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
42158         onceonly macros.
42159         * m4/mbrtowc.m4: Add comment.
42160
42161         Module memcasecmp.
42162         * m4/memcasecmp.m4: New file.
42163
42164         Module memcoll.
42165         * m4/memcoll.m4: New file.
42166
42167         Module unicodeio.
42168         * m4/unicodeio.m4: New file.
42169
42170         Module rpmatch.
42171         * m4/rpmatch.m4: New file.
42172
42173         Module yesno.
42174         * m4/yesno.m4: New file.
42175
42176         Module exitfail.
42177         * m4/exitfail.m4: New file.
42178
42179         Module c-stack.
42180         * m4/c-stack.m4 (gl_C_STACK): New macro.
42181         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
42182
42183         Module error.
42184         * m4/error.m4 (gl_ERROR): New macro.
42185         (jm_PREREQ_ERROR): Use onceonly macros.
42186
42187         Module fatal.
42188         * m4/fatal.m4: New file.
42189
42190         Module getloadavg.
42191         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
42192         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
42193
42194         Module getpagesize.
42195         * m4/getpagesize.m4: New file.
42196
42197         Module getusershell.
42198         * m4/getusershell.m4: New file.
42199
42200         Module physmem.
42201         * m4/physmem.m4: New file.
42202
42203         Module posixver.
42204         * m4/posixver.m4: New file.
42205
42206         Module quotearg.
42207         * m4/quotearg.m4: New file.
42208
42209         Module quote.
42210         * m4/quote.m4: New file.
42211
42212         Module readutmp.
42213         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
42214
42215         Module sig2str.
42216         * m4/sig2str.m4: New file.
42217
42218         Other.
42219         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
42220         ulonglong.m4.
42221         * m4/intmax_t.m4: New file.
42222         * m4/d-type.m4: Indentation.
42223         * m4/jm-macros.m4: Update.
42224         * m4/prereq.m4 (jm_PREREQ): Update.
42225         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
42226         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
42227         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
42228         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
42229         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
42230         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
42231         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
42232         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
42233         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
42234         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
42235         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
42236         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
42237         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
42238         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
42239         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
42240         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
42241         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
42242         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
42243         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
42244
42245 2002-12-24  Bruno Haible  <bruno@clisp.org>
42246
42247         * MODULES.txt: Update according to m4/ changes.
42248
42249         Module gettext.
42250         * config.rpath: New file, from gettext-0.11.5.
42251
42252         * modules/*: New module descriptions.
42253         * gnulib-tool: New file.
42254         * MODULES.html.sh: New file.
42255
42256 2002-12-21  Karl Berry  <karl@gnu.org>
42257
42258         * doc/fdl.texi: update to version 1.2.
42259
42260 2002-12-19  Karl Berry  <karl@gnu.org>
42261
42262         * config/config.guess: update from prep.
42263
42264 2002-12-18  Bruno Haible  <bruno@clisp.org>
42265
42266         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
42267         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
42268
42269 2002-12-17  Bruno Haible  <bruno@clisp.org>
42270
42271         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
42272         stdlib.h, string.h.
42273
42274 2002-12-17  Bruno Haible  <bruno@clisp.org>
42275
42276         * lib/canon-host.c (strdup): Remove unused declaration.
42277
42278         * lib/fsusage.c: Include full_read.h.
42279         (get_fs_usage): Use full_read instead of safe_read.
42280
42281         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
42282
42283 2002-12-12  Karl Berry  <karl@gnu.org>
42284
42285         * config/config.guess: update from prep.
42286
42287 2002-12-11  Bruno Haible  <bruno@clisp.org>
42288
42289         * m4/setenv.m4: New file, from gettext-0.11.5.
42290
42291 2002-12-11  Bruno Haible  <bruno@clisp.org>
42292
42293         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
42294         not unsetenv().
42295         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
42296         modifications:
42297
42298         2002-12-11  Bruno Haible  <bruno@clisp.org>
42299
42300                 * setenv.c (alloca): Fall back to malloc.
42301                 (freea): New macro.
42302                 (setenv): Use freea() to free memory allocated with alloca().
42303
42304         2002-11-13  Bruno Haible  <bruno@clisp.org>
42305
42306                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
42307                 function declarations.
42308                 * unsetenv.c (unsetenv): Likewise.
42309
42310         2002-03-04  Bruno Haible  <bruno@clisp.org>
42311
42312                 Portability to AIX 4.3.3.
42313                 * unsetenv.c: New file, extracted from setenv.c.
42314                 * setenv.c: Move the unsetenv() function to unsetenv.c.
42315
42316         2001-12-20  Bruno Haible  <bruno@clisp.org>
42317
42318                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
42319                 use malloc instead. For SunOS 4.
42320
42321         2001-12-11  Bruno Haible  <bruno@clisp.org>
42322
42323                 * setenv.c: Declare alloca.
42324                 (compar_fn_t): New typedef.
42325                 (KNOWN_VALUE, STORE_VALUE): Use it.
42326
42327         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
42328         setenv.h.
42329
42330 2002-12-10  Paul Eggert  <eggert@twinsun.com>
42331
42332         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
42333         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
42334         Choose values that are less likely to collide with system fnmatch
42335         options.
42336         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
42337         defined (e.g., a pure POSIX system).
42338         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
42339         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
42340
42341 2002-12-06  Paul Eggert  <eggert@twinsun.com>
42342
42343         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
42344         a pain in practice to deal with generated m4 files.  This change
42345         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
42346
42347         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
42348         and jm-glibc-io.m4, as they are no longer a special case.
42349         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
42350         kludge and the auto-generation stuff.  Check only whether the
42351         functions are declared, not whether they exist, since older hosts
42352         that don't declare the functions can't use the optimization anyway.
42353
42354 2002-12-06  Jim Meyering  <jim@meyering.net>
42355
42356         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
42357
42358         Merge in changes from libc's misc/error.c, in preparation
42359         for the merge of gnulib's changes back into libc.
42360
42361         * lib/error.c (_): Define only if not already defined.
42362         Move definition to follow all #include directives.
42363         Include unlocked-io.h only if !_LIBC.
42364         [_LIBC]: Include <libio/libioP.h>.
42365         [USE_IN_LIBIO]: Include <libio/iolibio.h>
42366         (fflush): Tweak definition to use INTUSE.
42367         (putc): Define.
42368
42369 2002-12-05  Paul Eggert  <eggert@twinsun.com>
42370
42371         * lib/alloca.c [defined emacs]: Include "lisp.h".
42372         (xalloc_die) [defined emacs]: New macro.
42373         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
42374         [! defined emacs]: Include <xalloc.h>.
42375         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
42376         (pointer): Typedef to POINTER_TYPE *.
42377         (malloc): Remove decl; we now always use xmalloc.
42378         (alloca): Use old-style definition, since Emacs needs this.
42379         Check for arithmetic overflow when computing combined size.
42380
42381 2002-12-04  Paul Eggert  <eggert@twinsun.com>
42382
42383         Do not generate unlocked-io.h automatically, since it's easier to
42384         maintain it by hand.
42385
42386         * lib/unlocked-io.h: New file, from GNU diffutils,
42387         but with proper copyright notice and attribution.
42388         * lib/gen-uio: Remove.
42389         * lib/Makefile.am: Add copyright notice.
42390         (libfetish_a_SOURCES): Add unlocked-io.h.
42391         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
42392         (DISTCLEANFILES, io_functions): Remove macros.
42393         (EXTRA_DIST): Remove gen_uio.
42394         (unlocked-io.h): Remove rule.
42395
42396 2002-12-04  Jim Meyering  <jim@meyering.net>
42397
42398         Reflect the fact that stat.c and lstat.c are no longer generated.
42399         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
42400         (DISTCLEANFILES): Likewise.
42401         (EXTRA_DIST): Likewise.
42402         (all_local): Don't depend on stat.c or lstat.c.
42403         (stat.c, lstat.c): Remove rules.
42404         (EXTRA_DIST): Remove xstat.in.
42405
42406         * lib/xstat.in: Remove file.  Contents moved into stat.c.
42407         * lib/stat.c: New file.  Contents mostly from xstat.in.
42408         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
42409         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
42410
42411         * lib/safe-read.c: Rework so that it may serve to define safe_write,
42412         too.
42413         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
42414
42415 2002-12-03  Jim Meyering  <jim@meyering.net>
42416
42417         * lib/safe-read.c, safe-write.c: Change variable names and comments,
42418         but not semantics, to minimize the differences between these two files.
42419         (safe_read): Change comment to mention SAFE_READ_ERROR.
42420
42421         * lib/safe-read.c (IS_EINTR): Define.
42422         (safe_read): Use IS_EINTR in place of in-function cpp directives.
42423
42424 2002-12-02  Jim Meyering  <jim@meyering.net>
42425
42426         * lib/safe-read.c (EINTR): Define.
42427         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
42428         (INT_MAX): Provide fallback.
42429         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
42430
42431         * lib/safe-read.h (SAFE_READ_ERROR): Define.
42432
42433 2002-12-02  Bruno Haible  <bruno@clisp.org>
42434
42435         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
42436         Define, taken from safe-read.c.
42437         (INT_MAX): Provide fallback.
42438         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
42439         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
42440
42441         * lib/safe-read.c (EINTR): Remove definition.
42442         (safe_read): Don't use EINTR if it is absent.
42443
42444 2002-12-01  Jim Meyering  <jim@meyering.net>
42445
42446         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
42447         zero.
42448         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
42449
42450 2002-11-27  Paul Eggert  <eggert@twinsun.com>
42451
42452         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
42453         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
42454         with `if (! (value < limit)) abort ();', for readability.
42455
42456 2002-11-26  Karl Berry  <karl@gnu.org>
42457
42458         * lib/strdup.c: copy from libc again, with jim's ok.
42459         * lib/.cppi-disable: re-add strdup.c
42460
42461 2002-11-25  Karl Berry  <karl@gnu.org>
42462
42463         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
42464         instead of "strtol.c".
42465
42466 2002-11-25  Karl Berry  <karl@gnu.org>
42467
42468         * config/install-sh: update from automake for variable quoting, $0 in
42469         error msgs, etc.
42470
42471         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
42472         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
42473         entry.
42474
42475 2002-11-25  Jim Meyering  <jim@meyering.net>
42476
42477         * lib/mktime.c: Sync from libc, now that it has the latest fix.
42478
42479 2002-11-24  Karl Berry  <karl@gnu.org>
42480
42481         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
42482         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
42483
42484 2002-11-24  Jim Meyering  <jim@meyering.net>
42485
42486         Update from coreutils:
42487
42488         * lib/mktime.c: Merge in changes from libc.
42489
42490         Avoid a link-time failure on some Linux systems.
42491         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
42492         (otherwise).
42493         (__mon_yday): Declare with the STATIC attribute.
42494         (__mktime_internal): Likewise.
42495         Based on a report from Greg Schafer.
42496
42497 2002-11-23  Jim Meyering  <jim@meyering.net>
42498
42499         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
42500         Use `unsigned', not `int', as type of index.
42501
42502         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
42503
42504         * lib/fsusage.c: Remove unneeded parentheses around operands of
42505         `defined'.
42506
42507 2002-11-22  Paul Eggert  <eggert@twinsun.com>
42508
42509         * lib/quotearg.h: Allow multiple inclusion by surrounding with
42510         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
42511         so that we can be included first.
42512         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
42513         * lib/quotearg.c: Include quotearg.h immediately after config.h.
42514         No need to include stddef.h or sys/types.h any more.
42515         Surround local include files with "", not "<>".
42516         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
42517         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
42518         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
42519         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
42520         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
42521         (ISPRINT): Remove; no longer needed now that we assume C89.
42522
42523         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
42524         Preserve errno.
42525
42526         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
42527         quotearg_char): Use SIZE_MAX rather than
42528         (size_t) -1 when we are talking about "infinity".
42529
42530         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
42531
42532 2002-11-22  Paul Eggert  <eggert@twinsun.com>
42533
42534         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
42535         hint that one should use `if (! x) abort ();' rather than `assert
42536         (x);', and anyway it's one less thing to worry about configuring.
42537         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
42538         hash_rehash, hash_insert): Use abort rather than assert.
42539
42540 2002-11-22  Bruno Haible  <bruno@clisp.org>
42541
42542         * lib/safe-read.h: Assume C89. Add comments.
42543         (safe_read): Change return type to size_t.
42544         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
42545         byte counts > SSIZE_MAX correctly.
42546         * lib/safe-write.h: New file.
42547         * lib/safe-write.c: New file.
42548         * lib/full-read.h: New file.
42549         * lib/full-read.c: New file.
42550         * lib/full-write.h: Assume C89. Add comments.
42551         * lib/full-write.c: Include safe-write.h.
42552         (full_write): Rewritten to use safe_write.
42553         Suggested by Jim Meyering and Paul Eggert.
42554
42555 2002-11-21  Jim Meyering  <jim@meyering.net>
42556
42557         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
42558
42559         Merge in changes from the coreutils.
42560
42561         2002-09-25  Paul Eggert  <eggert@twinsun.com>
42562         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
42563         <stdint.h>.
42564         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
42565         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
42566         int.  Work more efficiently if X is the same width as uintmax_t.
42567         Do not compare X to -1, to avoid bogus compiler warning.
42568         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
42569         Don't assume that f_frsize and f_bsize are the same type.
42570
42571         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
42572         warning on FreeBSD.
42573
42574         * lib/makepath.c (make_path): Restore umask *before* creating the final
42575         component.
42576         (make_path): Minor reformatting.
42577
42578         * lib/xmalloc.c: Adjust to work with new autoconf macros,
42579         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
42580         HAVE_MALLOC/HAVE_REALLOC.
42581
42582         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
42583         dummy ones.  At least on GNU/Linux systems, `auto' means something
42584         else.
42585         From Michael Stone.
42586
42587 2002-11-21  Bruno Haible  <bruno@clisp.org>
42588
42589         Remove case insensitive option matching.
42590         * lib/argmatch.h (argcasematch): Remove declaration.
42591         (ARGCASEMATCH): Remove macro.
42592         (__xargmatch_internal): Remove case_sensitive argument.
42593         (XARGMATCH): Update.
42594         (XARGCASEMATCH): Remove macro.
42595         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
42596         case_sensitive argument.
42597         (argcasematch): Remove function.
42598         (__xargmatch_internal): Remove case_sensitive argument.
42599         (main): Use XARGMATCH instead of XARGCASEMATCH.
42600
42601         * lib/xmalloc.c: Change compile-time error message. Add comment about
42602         required autoconf version.
42603
42604 2002-11-20  Paul Eggert  <eggert@twinsun.com>
42605
42606         Merge argmatch cleanups from Bison.  Assume C89.
42607
42608         * lib/argmatch.c: Include config.h here, not in argmatch.h.
42609         Include stdlib.h, for EXIT_FAILURE.
42610         Always include <string.h>, since we assume C89.
42611         (EXIT_FAILURE): Remove pre-C89 bug workaround.
42612         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
42613         Include <stddef.h> instead, since it's all we need for size_t.
42614         (PARAMS): Remove.  All uses removed.
42615         (ARRAY_CARDINALITY): Do not bother to #undef.
42616         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
42617         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
42618         Remove unnecessary parentheses.
42619         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
42620         Insert necessary parentheses.
42621         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
42622         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
42623
42624 2002-11-19  Bruno Haible  <bruno@clisp.org>
42625
42626         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
42627         * lib/mbswidth.h: Include <stddef.h>, for size_t.
42628
42629         * lib/mbswidth.h (PARAMS): Remove macro.
42630         (mbswidth, mbsnwidth): Use ANSI C function declarations.
42631         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
42632
42633         * lib/gcd.h (PARAMS): Remove macro.
42634         (gcd): Use ANSI C function declarations.
42635         * lib/gcd.c (gcd): Likewise.
42636
42637 2002-11-15  Bruno Haible  <bruno@clisp.org>
42638
42639         * lib/strcspn.c: Include <stddef.h>.
42640         (strcspn): Use ANSI C function declaration. Change return type to
42641         size_t. Use NULL.
42642         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
42643         (strpbrk): Use NULL.
42644         * lib/strpbrk.h (PARAMS): Remove macro.
42645         (strpbrk): Use ANSI C function declaration.
42646         * lib/strstr.c: Don't include <sys/types.h>.
42647         * lib/strstr.h (PARAMS): Remove macro.
42648         (strstr): Use ANSI C function declarations.
42649
42650 2002-11-14  Karl Berry  <karl@gnu.org>
42651
42652         * config/mkinstalldirs: `do' on separate line, instead of
42653         `for var; do'.
42654
42655 2002-11-06  Bruno Haible  <bruno@clisp.org>
42656
42657         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
42658         * lib/gcd.c (gcd): Likewise.
42659
42660 2002-11-05  Bruno Haible  <bruno@clisp.org>
42661
42662         * lib/gcd.h: New file, from gettext-0.11.5.
42663         * lib/gcd.c: New file, from gettext-0.11.5.
42664
42665 2002-11-05  Bruno Haible  <bruno@clisp.org>
42666
42667         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
42668         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
42669         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
42670         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
42671
42672         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
42673         <libintl.h>.
42674         * lib/makepath.c: Include gettext.h instead of <locale.h> and
42675         <libintl.h>.
42676
42677         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
42678         * lib/human.c: Include gettext.h instead of <libintl.h>.
42679         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
42680         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
42681         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
42682         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
42683         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
42684         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
42685         (textdomain): Remove definition.
42686         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
42687
42688         * lib/long-options.c: Remove include of <libintl.h> and definition of
42689         _.
42690         * lib/same.c: Remove include of <libintl.h> and definition of _.
42691
42692 2002-11-04  Owen Taylor  <otaylor@redhat.com>
42693
42694         * lib/config.charset: A few additions for Solaris.
42695
42696 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
42697
42698         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
42699         * lib/localcharset.c (locale_charset): Declare as extern "C".
42700
42701 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
42702
42703         * lib/config.charset: msdos in uk_UA uses CP1125.
42704
42705 2002-11-04  Bruno Haible  <bruno@clisp.org>
42706
42707         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
42708         * lib/strcase.h: New file, from GNU gettext-0.11.5.
42709         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
42710         * lib/strstr.h: New file, from GNU gettext-0.11.5.
42711         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
42712
42713 2002-11-04  Bruno Haible  <bruno@clisp.org>
42714
42715         * lib/localcharset.c (locale_charset): Don't return an empty string.
42716
42717 2002-11-04  Bruno Haible  <bruno@clisp.org>
42718
42719         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
42720         aliases.
42721
42722 2002-11-04  Bruno Haible  <bruno@clisp.org>
42723
42724         * lib/config.charset: Update for newest glibc. Add canonical names
42725         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
42726
42727 2002-11-04  Bruno Haible  <bruno@clisp.org>
42728
42729         * lib/config.charset: Add support for NetBSD.
42730
42731 2002-11-04  Bruno Haible  <bruno@clisp.org>
42732
42733         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
42734
42735 2002-11-01  Bruno Haible  <bruno@clisp.org>
42736
42737         * configure.in: Add AC_CONFIG_AUX_DIR call.
42738         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
42739         test/Makefile.
42740         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
42741
42742 2002-09-28  Karl Berry  <karl@gnu.org>
42743
42744         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
42745         installed automake until the next release, since changes have been
42746         made.
42747
42748 2002-09-25  Karl Berry  <karl@gnu.org>
42749
42750         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
42751         * lib/getopt*: copy from libc/posix.
42752         * lib/gettext.h: copy from gettext.
42753         * lib/.cppi-disable: add strdup.c, gettext.h.
42754
42755 2002-09-25  Karl Berry  <karl@gnu.org>
42756
42757         * config/srclist.txt: enable gettext.h check.
42758         * config/config.{guess,sub}: update from prep.
42759         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
42760                 from automake 1.6.3.
42761         See srclist*.
42762
42763 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
42764
42765         * regex.c (PATFETCH): Remove the translating fetch.
42766         (PATFETCH_RAW): Rename to PATFETCH.
42767         (set_image_of_range): New fun.
42768         (SET_RANGE_TABLE_WORK_AREA): Use it.
42769         (regex_compile): Don't translate the pattern chars so eagerly.
42770         Only do it when inserting an `exactn' bytecode or when handling
42771         a char-range.
42772         (mutually_exclusive_p): Avoid empty statement.
42773
42774 2002-07-06  Jim Meyering  <meyering@lucent.com>
42775
42776         * m4/README: Don't mention Makefile.am.in.
42777         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
42778
42779 2002-07-01  Jim Meyering  <meyering@lucent.com>
42780
42781         * lib/c-stack.c: Include sys/time.h.
42782         From Volker Borchert.
42783
42784 2002-06-26  Paul Eggert  <eggert@twinsun.com>
42785
42786         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
42787
42788 2002-06-26  Paul Eggert  <eggert@twinsun.com>
42789
42790         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
42791         New macro.  Use it uniformly instead of
42792         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
42793         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
42794         reported by Vin Shelton.
42795
42796 2002-06-22  Paul Eggert  <eggert@twinsun.com>
42797
42798         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
42799         Do not assume SA_SIGINFO behavior.
42800         Bug reported by Jim Meyering on NetBSD 1.5.2.
42801
42802 2002-06-22  Jim Meyering  <meyering@lucent.com>
42803
42804         * m4/c-stack.m4: New file, from diffutils-2.8.2.
42805         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
42806
42807         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
42808         now that configure.ac uses AC_GNU_SOURCE.
42809         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
42810         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
42811
42812         Update to latest tools.  Suggestions from Paul Eggert.
42813         * m4/stdbool.m4: New file, from diffutils-2.8.2.
42814         * m4/gnu-source.m4: Update from diffutils-2.8.2.
42815         * m4/fnmatch.m4: Likewise.
42816         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
42817         to AC_HEADER_STDBOOL
42818
42819 2002-06-22  Jim Meyering  <meyering@lucent.com>
42820
42821         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
42822         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
42823
42824 2002-06-22  Jim Meyering  <meyering@lucent.com>
42825
42826         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
42827
42828         * lib/exitfail.c, exitfail.h: Likewise.
42829         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
42830
42831         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
42832         of fnmatch.h.
42833         (EXTRA_DIST): Add fnmatch_loop.c.
42834         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
42835
42836         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
42837         * lib/fnmatch.c: Update from diffutils-2.8.2.
42838         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
42839         * lib/fnmatch.h: Remove file.
42840
42841 2002-06-21  Jim Meyering  <meyering@lucent.com>
42842
42843         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
42844         * m4/mbrtowc.m4: Likewise.
42845
42846         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
42847         * m4/mbswidth.m4: Reflect name change:
42848         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
42849         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
42850
42851         * m4/lib-link.m4: Update from gettext-0.11.2.
42852         * m4/gettext.m4: Likewise.
42853
42854         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
42855         From Alfred M. Szmidt.
42856
42857 2002-06-18  Paul Eggert  <eggert@twinsun.com>
42858
42859         * lib/file-type.h: Report an error if neither S_ISREG nor
42860         S_IFREG is defined, instead of using a test specific to glibc
42861         2.2.  This should be safe, since POSIX requires S_ISREG and
42862         Unix Version 7 had S_IFREG.  We don't need to check for
42863         <sys/types.h> since we don't use any symbols that it defines.
42864
42865 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
42866
42867         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
42868         $@-t, so that each temporary file name is unique and valid in the first
42869         8 characters, for operation under DOS.
42870
42871 2002-06-15  Paul Eggert  <eggert@twinsun.com>
42872
42873         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
42874
42875 2002-06-15  Jim Meyering  <meyering@lucent.com>
42876
42877         Work even with DJGPP 2.03, which lacks support for symlinks.
42878         From Richard Dawe.
42879         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
42880         is defined.
42881         * lib/lchown.c (S_ISLNK): Likewise.
42882
42883 2002-06-15  Jim Meyering  <meyering@lucent.com>
42884
42885         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
42886         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
42887         have been included before this file.
42888
42889 2002-06-14  Jim Meyering  <meyering@lucent.com>
42890
42891         * lib/file-type.h: Use the version from diffutils-2.8.2.
42892         * lib/file-type.c: Likewise.
42893
42894 2002-06-07  Jim Meyering  <meyering@lucent.com>
42895
42896         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
42897         They're needed at least for NetBSD 1.5.2.
42898         ($statxfs_includes): Include those same headers.
42899         ($statxfs_includes): Include sys/vfs.h if available.
42900         ($statxfs_includes): Likewise for sys/statvfs.h.
42901         Check for the following members in both structs statfs and statvfs:
42902         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
42903
42904 2002-06-01  Jim Meyering  <meyering@lucent.com>
42905
42906         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
42907         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
42908
42909 2002-05-28  Jim Meyering  <meyering@lucent.com>
42910
42911         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
42912         Reported by Volker Borchert.
42913
42914 2002-05-27  Jim Meyering  <meyering@lucent.com>
42915
42916         Fix a problem seen only on nonconforming systems whereby ls.c's
42917         use of localtime, and then of gettimeofday would cause trouble:
42918         the localtime call used to initialize rpl_gettimeofday's save
42919         mechanism would clobber ls's current local time information so
42920         that in any long listing the first file would always be listed
42921         with date 1970-01-01.  Analysis by Volker Borchert.
42922
42923         * lib/gettimeofday.c (localtime): Undefine.
42924         (rpl_localtime): New function.
42925
42926 2002-05-27  Jim Meyering  <meyering@lucent.com>
42927
42928         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
42929         localtime.
42930
42931         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
42932         use the replacement function; it wouldn't resolve at link time.
42933         Reported by Volker Borchert.
42934
42935 2002-05-22  Jim Meyering  <meyering@lucent.com>
42936
42937         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
42938         file-type.h.
42939         * lib/file-type.h: New file.
42940         * lib/file-type.c (file_type): New file/function.  Extracted from
42941         diffutils.
42942
42943 2002-04-30  Jim Meyering  <meyering@lucent.com>
42944
42945         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
42946
42947 2002-04-29  Paul Eggert  <eggert@twinsun.com>
42948
42949         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
42950
42951 2002-04-29  Paul Eggert  <eggert@twinsun.com>
42952
42953         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
42954         Do not check for alloca.h (no longer used) or stdbool.h (was never
42955         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
42956
42957 2002-04-29  Paul Eggert  <eggert@twinsun.com>
42958
42959         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
42960
42961 2002-04-29  Jim Meyering  <meyering@lucent.com>
42962
42963         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
42964         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
42965         Use AC_FUNC_STRNLEN here instead.
42966
42967         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
42968         With autoconf-2.53a, it's part of AC_PROG_CC.
42969
42970 2002-04-28  Paul Eggert  <eggert@twinsun.com>
42971
42972         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
42973         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
42974
42975 2002-04-28  Paul Eggert  <eggert@twinsun.com>
42976
42977         * lib/sig2str.h, lib/sig2str.c: New files.
42978         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
42979
42980 2002-04-28  Paul Eggert  <eggert@twinsun.com>
42981
42982         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
42983         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
42984         of 127, since 64 is the largest conceivable number for ancient
42985         nonstandard hosts.
42986         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
42987
42988 2002-04-28  Jim Meyering  <meyering@lucent.com>
42989
42990         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
42991
42992 2002-04-24  Jim Meyering  <meyering@lucent.com>
42993
42994         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
42995         (jm_PREREQ): Use it.
42996
42997         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
42998         mach/mach.h fcntl.h.
42999         Check for this function: setlocale.
43000
43001 2002-04-24  Jim Meyering  <meyering@lucent.com>
43002
43003         * lib/gettext.h: New file, from Gettext.
43004         * lib/Makefile.am (INCLUDES): Remove -I../intl.
43005         (libfetish_a_SOURCES): Add gettext.h.
43006
43007 2002-04-16  Jim Meyering  <meyering@lucent.com>
43008
43009         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
43010         ut_pid, ut_id, ut_exit.
43011
43012 2002-04-16  Jim Meyering  <meyering@lucent.com>
43013
43014         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
43015         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
43016         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
43017
43018 2002-04-12  Jim Meyering  <meyering@lucent.com>
43019
43020         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
43021         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
43022         existence of the getmntinfo function.  Needed for Darwin 5.3.
43023
43024         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
43025         This is necessary at least on Darwin 5.3.
43026
43027         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
43028         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
43029         strnlen.o in the library, and that makes some versions of ranlib
43030         object.
43031
43032 2002-04-12  Jim Meyering  <meyering@lucent.com>
43033
43034         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
43035
43036 2002-04-09  Jim Meyering  <meyering@lucent.com>
43037
43038         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
43039         to be more precise.  Rather than saying we're checking whether the
43040         function `works', say what we're testing.
43041         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
43042         Reported by Bruno Haible.
43043
43044 2002-03-10  Jim Meyering  <meyering@lucent.com>
43045
43046         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
43047         Suggestion from Santiago Vila.
43048
43049 2002-03-08  Jim Meyering  <meyering@lucent.com>
43050
43051         * lib/rename.c: Mention that this wrapper is needed also on
43052         mips-dec-ultrix4.4 systems.
43053
43054 2002-03-02  Jim Meyering  <meyering@lucent.com>
43055
43056         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
43057         not HAVE_CLOCK_SETTIME.
43058
43059 2002-02-27  Paul Eggert  <eggert@twinsun.com>
43060
43061         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
43062         Check for clock_settime.
43063
43064 2002-02-27  Paul Eggert  <eggert@twinsun.com>
43065
43066         * lib/nanosleep.h: Rename to....
43067         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
43068
43069         * lib/gettime.c: New file.
43070         * lib/settime.c: New file.
43071         * lib/stime.c: Remove.
43072
43073         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
43074         timespec.h.  Remove nanosleep.h.
43075
43076 2002-02-25  Paul Eggert  <eggert@twinsun.com>
43077
43078         * m4/acl.m4: New file.
43079         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
43080         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
43081
43082 2002-02-25  Paul Eggert  <eggert@twinsun.com>
43083
43084         * lib/acl.c, lib/acl.h: New files.
43085         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
43086
43087 2002-02-24  Jim Meyering  <meyering@lucent.com>
43088
43089         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
43090         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
43091         cause trouble.  Reported by Nelson Beebe.
43092
43093 2002-02-23  Paul Eggert  <eggert@twinsun.com>
43094
43095         * lib/path-concat.c (xpath_concat): Reorder code to pacify
43096         compilers that don't know that xalloc_die never returns.
43097
43098 2002-02-20  Jim Meyering  <meyering@lucent.com>
43099
43100         * lib/getdate.c: Regenerate using bison-1.33.
43101
43102 2002-02-17  Jim Meyering  <meyering@lucent.com>
43103
43104         * config/config.guess (main): Don't use `head -1'; it's no longer
43105         portable. Use `sed 1q' instead.
43106
43107 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
43108
43109         * m4/codeset.m4: Upgrade to gettext-0.11.
43110         * m4/gettext.m4: Upgrade to gettext-0.11.
43111         * m4/glibc21.m4: Upgrade to gettext-0.11.
43112         * m4/iconv.m4: Upgrade to gettext-0.11.
43113         * m4/isc-posix.m4: Upgrade to gettext-0.11.
43114         * m4/lcmessage.m4: Upgrade to gettext-0.11.
43115         * m4/lib-ld.m4: New file, from gettext-0.11.
43116         * m4/lib-link.m4: New file, from gettext-0.11.
43117         * m4/lib-prefix.m4: New file, from gettext-0.11.
43118         * m4/progtest.m4: Upgrade to gettext-0.11.
43119
43120 2002-02-15  Paul Eggert  <eggert@twinsun.com>
43121
43122         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
43123         (jm_PREREQ): Use it.
43124
43125 2002-02-15  Paul Eggert  <eggert@twinsun.com>
43126
43127         * lib/posixver.c, lib/posixver.h: New files.
43128         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
43129
43130 2002-02-02  Paul Eggert  <eggert@twinsun.com>
43131             Bruno Haible  <bruno@clisp.org>
43132
43133         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
43134         (fwrite_success_callback): New declaration.
43135         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
43136         print_unicode_char. Call failure callback instead of error.
43137         (fwrite_success_callback): New function.
43138         (exit_failure_callback): New function.
43139         (fallback_failure_callback): New function.
43140         (print_unicode_char): Call unicode_to_mb.
43141
43142 2002-01-26  Jim Meyering  <meyering@lucent.com>
43143
43144         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
43145         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
43146
43147 2002-01-26  Jim Meyering  <meyering@lucent.com>
43148
43149         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
43150
43151 2002-01-22  Paul Eggert  <eggert@twinsun.com>
43152
43153         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
43154
43155 2002-01-22  Jim Meyering  <meyering@lucent.com>
43156
43157         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
43158         Otherwise, some versions of automake would omit the rule that makes
43159         Makefile from Makefile.in.
43160
43161 2002-01-21  Paul Eggert  <eggert@twinsun.com>
43162
43163         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
43164         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
43165         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
43166         (memcoll): Set errno to zero if there is no error.
43167
43168         * lib/quotearg.c (quotearg_buffer_restyled):
43169         Fix bug with quoting buffers containing NUL when backslashing escapes.
43170         This bug was exposed by the other changes in this patch.
43171         (quotearg_n_options): New arg ARGSIZE.
43172         All callers changed.
43173         (quoting_options_from_style): New function.
43174         (quotearg_n_style): Use it.
43175         (quotearg_n_style_mem): New function.
43176
43177         * lib/quotearg.h (quotearg_n_style_mem): New function.
43178
43179 2002-01-19  Jim Meyering  <meyering@lucent.com>
43180
43181         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
43182         Remove useless quotes: DF_PROG="df".
43183         * m4/strnlen.m4: New file.
43184
43185 2002-01-16  Paul Eggert  <eggert@twinsun.com>
43186
43187         * lib/backupfile.c (ISDIGIT): Comment fix.
43188         * lib/getdate.y (ISDIGIT): Likewise.
43189         * lib/posixtm.c (ISDIGIT, year): Likewise.
43190         * lib/strverscmp.c (ISDIGIT): Likewise.
43191         * lib/userspec.c (ISDIGIT): Likewise.
43192
43193 2002-01-16  Jim Meyering  <meyering@lucent.com>
43194
43195         * lib/getdate.y: Add three semicolons, each just before a closing
43196         brace. Bison (as of version 1.31) no longer papers over that mistake.
43197
43198 2002-01-05  Jim Meyering  <meyering@lucent.com>
43199
43200         * lib/version-etc.c (version_etc_copyright): Update copyright year.
43201
43202 2001-12-19  Paul Eggert  <eggert@twinsun.com>
43203
43204         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
43205         not silently exit merely because the output buffer happens to
43206         have nothing pending.
43207
43208 2001-12-18  Paul Eggert  <eggert@twinsun.com>
43209
43210         See the big note in ../ChangeLog.
43211         * lib/human.c (suffixes): Prefer K to k for 1024.
43212         (generate_suffix_backwards): New function.
43213         (human_readable_inexact): Use it.
43214         * lib/xstrtol.c (__xstrtol): If there is no number but there
43215         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
43216         Accept 'K' as well as 'k'.
43217
43218 2001-12-15  Jim Meyering  <meyering@lucent.com>
43219
43220         * lib/regex.h (__restrict_arr): Update from libc.
43221
43222         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
43223         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
43224         (STREQ): Define.
43225
43226 2001-12-14  Jim Meyering  <meyering@lucent.com>
43227
43228         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
43229         Suggestion from Bruno Haible.
43230
43231 2001-12-10  Jim Meyering  <meyering@lucent.com>
43232
43233         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
43234         xrealloc, Instead, include "xalloc.h".
43235         (initbuffer): Don't cast xmalloc return value to char*.
43236         (readline): Reword comment.
43237         Don't cast xrealloc return value to char*
43238         Return NULL, not 0.
43239
43240 2001-12-09  Jim Meyering  <meyering@lucent.com>
43241
43242         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
43243         about `signed and unsigned type in conditional expression'.
43244         * lib/posixtm.c (posix_time_parse): Likewise.
43245
43246         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
43247
43248         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
43249         to avoid a pedantic warning.
43250
43251         * lib/getstr.c: Don't include assert.h.
43252         (getstr): Remove warning-evoking assertions.
43253         Return -1 if offset parameter is out of bounds.
43254         Change the type of a local from int to size_t.
43255
43256         * lib/strftime.c (my_strftime_localtime_r): Include this function
43257         definition in the `#if ! HAVE_TM_GMTOFF' block.
43258
43259         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
43260         Include xalloc.h instead.
43261
43262 2001-12-02  Jim Meyering  <meyering@lucent.com>
43263
43264         * lib/tempname.c: Don't declare getenv, thus reverting the change of
43265         2001-11-18.  It's no longer necessary, now that stdlib.h is always
43266         included.
43267
43268         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
43269         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
43270
43271 2001-11-30  Akim Demaille  <akim@epita.fr>
43272
43273         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
43274         before being defined.
43275
43276 2001-11-27  Paul Eggert  <eggert@twinsun.com>
43277
43278         * lib/quotearg.h (quotearg_n, quotearg_n_style):
43279         First arg is int, not unsigned.
43280         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
43281         (SIZE_MAX, UINT_MAX): New macros.
43282         (quotearg_n_options): Abort if N is negative.
43283         Avoid overflow check on hosts where size_t is 64 bits and int
43284         is 32 bits, as overflow is impossible there.
43285         Fix off-by-one typo that caused unnecessary reallocation.
43286
43287 2001-11-27  Jim Meyering  <meyering@lucent.com>
43288
43289         * lib/tempname.c: Merge with version from libc.
43290         * lib/regex.c: Likewise.
43291
43292         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
43293         systems for which STDC_HEADERS is 0, it was not included, resulting in
43294         a warning about an integer-to-pointer conversion problem with getenv.
43295         Reported by Volker Borchert.
43296
43297 2001-11-26  Jim Meyering  <meyering@lucent.com>
43298
43299         * lib/gtod.h: Remove file.
43300         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
43301         * lib/gettimeofday.c: Don't include gtod.h.
43302         (GTOD_init): Remove function.
43303         (rpl_gettimeofday): Do its job here instead, rather than aborting.
43304         Suggestion from Volker Borchert.
43305
43306 2001-11-23  Jim Meyering  <meyering@lucent.com>
43307
43308         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
43309         it.
43310         * lib/hash.c (struct hash_table): Define it here instead.
43311
43312 2001-11-22  Jim Meyering  <meyering@lucent.com>
43313
43314         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
43315
43316 2001-11-20  Jim Meyering  <meyering@lucent.com>
43317
43318         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
43319         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
43320
43321 2001-11-19  Jim Meyering  <meyering@lucent.com>
43322
43323         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
43324         directory.  Use "conftestXXXXXX" as the template.
43325         Suggestion from Paul Eggert.
43326
43327         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
43328         immediately, so the test doesn't mistakenly hit the max-open-files
43329         limit.
43330
43331 2001-11-18  Paul Eggert  <eggert@twinsun.com>
43332
43333         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
43334         (TEMPORARIES): New macro.
43335         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
43336         removes an artificial limitation (e.g. HP-UX 10.20, where
43337         TMP_MAX is 17576).
43338
43339 2001-11-18  Jim Meyering  <meyering@lucent.com>
43340
43341         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
43342
43343 2001-11-18  Jim Meyering  <meyering@lucent.com>
43344
43345         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
43346         on SunOS 4.
43347
43348         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
43349         files will be created before anything else.
43350
43351 2001-11-17  Paul Eggert  <eggert@twinsun.com>
43352
43353         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
43354         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
43355
43356 2001-11-17  Jim Meyering  <meyering@lucent.com>
43357
43358         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
43359         Prompted by a report from Bob Proulx.
43360
43361         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
43362         Instead, require UTILS_FUNC_MKSTEMP.
43363
43364 2001-11-17  Jim Meyering  <meyering@lucent.com>
43365
43366         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
43367         Now, that's done as part of AC_FUNC_STRTOD.
43368
43369 2001-11-17  Jim Meyering  <meyering@lucent.com>
43370
43371         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
43372         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
43373         rather than group writable.  Patch by Juan F. Codagnone.
43374
43375         * lib/readtokens.c: Remove explicit declarations of xmalloc and
43376         xrealloc, Instead, include "xalloc.h".
43377
43378         * lib/mountlist.c: Include unlocked-io.h after all system headers.
43379         Remove explicit declarations of xmalloc, xrealloc,
43380         and xstrdup.  Instead, include "xalloc.h".
43381
43382         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
43383         unlocked-io.h.
43384         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
43385         Likewise.
43386         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
43387
43388         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
43389         Reported by Padraig Brady.
43390
43391         * lib/mkstemp.c: #undef mkstemp.
43392         Include config.h.
43393         (rpl_mkstemp): Rename from mkstemp.
43394         Protoize.
43395
43396 2001-11-16  Jim Meyering  <meyering@lucent.com>
43397
43398         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
43399         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
43400         determine the amount of total physical memory, use pstat_getstatic.
43401         HPUX-11 doesn't define _SC_PHYS_PAGES.
43402         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
43403         If sysconf couldn't be used to determine the amount of available
43404         physical memory, use both pstat_getstatic and pstat_getdynamic.
43405         Based on a patch from Bob Proulx.
43406
43407 2001-11-10  Jim Meyering  <meyering@lucent.com>
43408
43409         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
43410         (jm_PREREQ): Use it.
43411
43412 2001-11-09  Jim Meyering  <meyering@lucent.com>
43413
43414         * m4/jm-macros.m4: Require autoconf-2.52f.
43415         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
43416         Use these AC_-prefixed names, not the AM_-prefixed ones.
43417
43418         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
43419
43420 2001-11-05  Jim Meyering  <meyering@lucent.com>
43421
43422         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
43423
43424 2001-11-04  Jim Meyering  <meyering@lucent.com>
43425
43426         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
43427         $DEFS.
43428
43429 2001-11-03  Jim Meyering  <meyering@lucent.com>
43430
43431         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
43432         of AC_DEFUN.
43433
43434         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
43435         know the name of the variable in the macro definition.
43436
43437 2001-11-03  Jim Meyering  <meyering@lucent.com>
43438
43439         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
43440         in argmatch_to_argument call.
43441
43442         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
43443         argument.
43444
43445         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
43446         e.g., a fault due to an attempt to free a NULL pointer.
43447
43448 2001-11-01  Jim Meyering  <meyering@lucent.com>
43449
43450         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
43451         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
43452
43453 2001-11-01  Jim Meyering  <meyering@lucent.com>
43454
43455         * lib/dirfd.c, lib/dirfd.h: New files.
43456         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
43457
43458         * lib/hash.c (hash_print) [TESTING]: Clean up.
43459
43460 2001-10-22  Paul Eggert  <eggert@twinsun.com>
43461
43462         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
43463         to avoid a warning if -Wall.
43464
43465 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
43466
43467         * README: New file
43468         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
43469         (per RMS's instructions, this is now the canonical source)
43470         * lgpl/, gpl/: New directories.
43471
43472 2001-10-21  Paul Eggert  <eggert@twinsun.com>
43473
43474         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
43475
43476 2001-10-21  Jim Meyering  <meyering@lucent.com>
43477
43478         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
43479         this code would end up calling gettext even in packages built
43480         with --disable-nls.
43481         * lib/getopt.c (_): Likewise.
43482         * lib/regex.c (_): Likewise.
43483
43484 2001-10-20  Paul Eggert  <eggert@twinsun.com>
43485
43486         * m4/error.m4 (jm_PREREQ_ERROR):
43487         Do not invoke AC_CHECK_FUNCS with strerror_r, as
43488         AC_FUNC_STRERROR_R does that.
43489         Check for strerror declaration.
43490
43491         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
43492         are supposed to have them these days.
43493         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
43494         Merge changes from latest Autoconf CVS.
43495         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
43496         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
43497         POSIX decided to standardize on the int flavor of strerror_r.
43498
43499 2001-10-20  Paul Eggert  <eggert@twinsun.com>
43500
43501         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
43502         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
43503         Use strerror_r that is only a macro, even if it is not a function.
43504         (strerror): Check for HAVE_DECL_STRERROR before declaring.
43505         (private_strerror): Use prototypes, not old-style function definition.
43506         (print_errno_message): New function.
43507         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
43508         char*-flavored one.
43509         (error_tail, error, error_at_line): Use it.
43510
43511 2001-10-11  Jim Meyering  <meyering@lucent.com>
43512
43513         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
43514         and quote_n (1, ... to avoid clobbering a buffer.
43515
43516 2001-10-05  Jim Meyering  <meyering@lucent.com>
43517
43518         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
43519         hash-pjw.h.
43520         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
43521         * lib/hash-pjw.h: New file.
43522
43523 2001-09-30  Jim Meyering  <meyering@lucent.com>
43524
43525         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
43526         `struct fsstat' has the `f_fstypename' member.
43527         Use that to define FS_TYPE, which is now used to make
43528         the getfsstat link test tighter.
43529
43530 2001-09-30  Jim Meyering  <meyering@lucent.com>
43531
43532         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
43533         Include <sys/ucred.h>, for Apple Darwin.
43534         Include sys/mount.h and sys/fs_types.h only if available.
43535         (FS_TYPE): Define.
43536         (read_filesystem_list): Use FS_TYPE.
43537
43538 2001-09-29  Paul Eggert  <eggert@twinsun.com>
43539
43540         * lib/exclude.c (excluded_filename): 0 -> false, since it's
43541         a boolean context.
43542
43543 2001-09-29  Jim Meyering  <meyering@lucent.com>
43544
43545         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
43546         [one-argument getmntent function]): Include stdio.h before mntent.h.
43547         SunOS 4.1.x needs it for the declaration of `FILE'.
43548         Patch by Volker Borchert.
43549
43550         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
43551         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
43552         sys/fs_types.h, and make the link-test for getfsstat guard #include
43553         directives with appropriate #if HAVE_*_H tests so that we can
43554         detect getfsstat on Apple Darwin1.3.7 systems.
43555         Reported by Nelson Beebe.
43556         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
43557
43558 2001-09-28  Paul Eggert  <eggert@twinsun.com>
43559
43560         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
43561         #defines strtoimax.  Also treat the other strto* functions
43562         like strtoimax.
43563
43564         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
43565         Check for strtoul and strtoumax,
43566         as those declarations are made even in the signed case.
43567         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
43568         Likewise, for strtol and strtoimax.
43569
43570 2001-09-28  Paul Eggert  <eggert@twinsun.com>
43571
43572         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
43573         #defines strtoimax.  Also treat the other strto* functions
43574         like strtoimax.
43575
43576         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
43577         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
43578         (strtoimax, strtoumax): Do not declare if already defined as a macro.
43579
43580 2001-09-26  Jim Meyering  <meyering@lucent.com>
43581
43582         Most macros in unlocked-io.h had the wrong number of arguments.
43583         * lib/gen-uio: New script.
43584         (USE_UNLOCKED_IO): Define to 1 if not already defined.
43585         * lib/unlocked-io.hin: Remove file.
43586         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
43587         rather than trying to embed it here.
43588         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
43589         Reported by Padraig Brady.
43590
43591 2001-09-25  Volker Borchert  <bt@teknon.de>
43592
43593         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
43594         `result'.
43595
43596 2001-09-24  Jim Meyering  <meyering@lucent.com>
43597
43598         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
43599
43600 2001-09-23  Jim Meyering  <meyering@lucent.com>
43601
43602         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
43603         instead of the mere test for existence of mntent.h.  The latter
43604         would get a false-positive on AIX 3.4 systems.
43605         In the outer getmntent if-block, don't die if neither of the getmntent
43606         tests succeeds.  Instead, just fall through and continue with the
43607         remaining tests.
43608
43609 2001-09-23  Jim Meyering  <meyering@lucent.com>
43610
43611         * lib/mountlist.c: Remove useless parentheses in #if directives.
43612         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
43613         the deprecated MOUNTED symbol is no longer defined in mntent.h.
43614
43615 2001-09-22  Jim Meyering  <meyering@lucent.com>
43616
43617         * m4/gettext.m4: New file.  From gettext.
43618         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
43619         * m4/progtest.m4: Likewise
43620         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
43621         * m4/glibc21.m4: Likewise.
43622
43623         * m4/libintl.m4: Remove.  No longer used.
43624
43625 2001-09-22  Jim Meyering  <meyering@lucent.com>
43626
43627         * lib/localcharset.c: Update from latest gettext.
43628         * lib/config.charset: Likewise.
43629
43630 2001-09-20  Jim Meyering  <meyering@lucent.com>
43631
43632         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
43633         strtoimax.
43634         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
43635         strtoumax.
43636
43637 2001-09-20  Jim Meyering  <meyering@lucent.com>
43638
43639         * lib/xstrtol.c (strtoimax): Guard declaration with
43640         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
43641         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
43642         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
43643         (strtoumax): Likewise, for completeness (it wasn't necessary).
43644
43645 2001-09-17  Paul Eggert  <eggert@twinsun.com>
43646
43647         * lib/strtoimax.c (HAVE_LONG_LONG):
43648         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
43649         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
43650         to work around bug in IBM C compiler.
43651
43652 2001-09-17  Jim Meyering  <meyering@lucent.com>
43653
43654         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
43655         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
43656         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
43657         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
43658         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
43659         whenever the right hand side need not be expanded by the shell.
43660
43661 2001-09-16  Paul Eggert  <eggert@twinsun.com>
43662
43663         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
43664         library.  It's not correct, as some older glibcs are buggy.
43665         fnmatch wasn't fixed until glibc 2.2.
43666
43667         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
43668         special shell magic here.
43669
43670 2001-09-16  Jim Meyering  <meyering@lucent.com>
43671
43672         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
43673         * m4/jm-macros.m4: Require it.
43674
43675 2001-09-16  Jim Meyering  <meyering@lucent.com>
43676
43677         * lib/mkdir.c: New file.
43678
43679 2001-09-15  Jim Meyering  <meyering@lucent.com>
43680
43681         * m4/jm-macros.m4: Check for help2man.
43682
43683 2001-09-11  Jim Meyering  <meyering@lucent.com>
43684
43685         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
43686         The body, by Paul Eggert, was moved here from configure.in.
43687         * m4/jm-macros.m4: Require UTILS_HOST_OS.
43688
43689 2001-09-04  Paul Eggert  <eggert@twinsun.com>
43690
43691         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
43692         (jm_PREREQ): Use it.
43693
43694 2001-09-04  Paul Eggert  <eggert@twinsun.com>
43695
43696         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
43697         Use ssize_t, not int, to store result of readlink.
43698         Check for ssize_t overflow as well as size_t overflow,
43699         as POSIX says the result of readlink is implementation-defined
43700         when ssize_t overflows.
43701         Remove unnecessary cast to char*.
43702         Use free+malloc instead of realloc, as the storage doesn't need
43703         to be preserved and it's clearer and can be more efficient that way.
43704         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
43705         * lib/xreadlink.h (xreadlink): Update prototype.
43706
43707 2001-09-04  Paul Eggert  <eggert@twinsun.com>
43708
43709         * lib/xgetcwd.c: Revert some of the previous change; intead,
43710         fix the HAVE_GETCWD_NULL code to behave more like the
43711         !HAVE_GETCWD_NULL code used to.
43712
43713         Include "xalloc.h".
43714         (xgetcwd): Do not return NULL when memory is exhausted; instead,
43715         invoke xalloc_die.
43716
43717 2001-09-03  Paul Eggert  <eggert@twinsun.com>
43718
43719         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
43720         sys/param.h, as pathmax.h includes them.
43721
43722 2001-09-03  Paul Eggert  <eggert@twinsun.com>
43723
43724         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
43725         (jm_PREREQ_XGETCWD): New macro.
43726
43727         * m4/getcwd.m4: New file.
43728
43729 2001-09-03  Paul Eggert  <eggert@twinsun.com>
43730
43731         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
43732         like the HAVE_GETCWD_NULL code.
43733         Include pathmax.h if not HAVE_GETCWD.
43734         Do not include xalloc.h.
43735         (INITIAL_BUFFER_SIZE): New symbol.
43736         Do not use xmalloc / xrealloc, since the caller is responsible for
43737         handling errors.  Preserve errno around `free' during failure.
43738         Do not overrun buffer when using getwd.
43739
43740 2001-09-03  Paul Eggert  <eggert@twinsun.com>
43741
43742         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
43743         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
43744         getcwd (NULL, 0).
43745
43746 2001-09-03  Paul Eggert  <eggert@twinsun.com>
43747
43748         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
43749         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
43750         spotted by Jim Meyering.
43751
43752 2001-09-03  Jim Meyering  <meyering@lucent.com>
43753
43754         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
43755         failure.
43756
43757 2001-09-02  Jim Meyering  <meyering@lucent.com>
43758
43759         * lib/error.c: Update from GNU libc.
43760
43761 2001-09-01  Jim Meyering  <meyering@lucent.com>
43762
43763         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
43764         Used by df.
43765
43766 2001-09-01  Jim Meyering  <meyering@lucent.com>
43767
43768         * lib/xreadlink.c: New file.
43769         * lib/xreadlink.h: New file.
43770         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
43771         xreadlink.h.
43772
43773         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
43774         doesn't conflict with sparc Solaris 7's definition in
43775         /usr/include/sys/int_types.h.
43776
43777         * lib/exclude.c: Use `""', not `<>' to #include non-system header
43778         files.
43779         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
43780         and strncasecmp as r-values.  Unixware didn't have declarations.
43781
43782 2001-08-31  Paul Eggert  <eggert@twinsun.com>
43783
43784         * lib/xstrtol.h: Add copyright notice.
43785         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
43786         LONGINT_INVALID_SUFFIX_CHAR.
43787
43788 2001-08-31  Paul Eggert  <eggert@twinsun.com>
43789
43790         * lib/xstrtol.c (strtoimax): New decl.
43791
43792 2001-08-31  Paul Eggert  <eggert@twinsun.com>
43793
43794         * lib/xgetcwd.c: Don't include pathmax.h.
43795         Include stdlib.h and unistd.h if available.
43796         Include xalloc.h.
43797         (xmalloc, xstrdup, free): Remove decls.
43798         (xgetcwd): Don't assume sizes fit in unsigned.
43799         Check for overflow when computing sizes.
43800         Simplify reallocation code.
43801
43802 2001-08-31  Paul Eggert  <eggert@twinsun.com>
43803
43804         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
43805         a directory's st_size can have an arbitrary value, so the old
43806         usage could waste an arbitrary amount of memory.  All uses
43807         changed.
43808         * lib/savedir.h: Update prototype.
43809
43810 2001-08-31  Paul Eggert  <eggert@twinsun.com>
43811
43812         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
43813
43814         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
43815         old strtoimax.c.
43816
43817         Also, make the following further changes to make this file's
43818         configuration more similar to that of strtol.c:
43819         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
43820         (strtoumax, uintmax_t, strtoull, strtol): Remove.
43821         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
43822         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
43823         changed to signed values.
43824
43825         And make the following changes as well:
43826         Fix copyright notice, as 1999 was missing.
43827         (verify): New macro.
43828         (strtoimax): Check sizes at compile-time, not run-time.
43829         Prefer strtol to strtoll if both work.
43830         (main): Remove; it was not that useful and was a pain to maintain.
43831
43832         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
43833
43834 2001-08-31  Jim Meyering  <meyering@lucent.com>
43835
43836         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
43837         Use an initial, malloc'd, buffer of length 128 rather than
43838         a statically allocated one of length 1024.
43839
43840 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43841
43842         Simplify code, partly by assuming autoconf 2.52 semantics.
43843
43844         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
43845
43846         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
43847         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
43848         All uses removed.
43849         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
43850         Move AC_REQUIRE to next-to-top level, to avoid confusion.
43851         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
43852         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
43853         jm_AC_HEADER_INTTYPES_H.
43854         * m4/jm-macros.m4 (jm_MACROS): Likewise.
43855
43856         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
43857
43858         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
43859         Quote first arg of AC_DEFUN.
43860         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
43861         since they are needed to parse the include file even if we need
43862         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
43863         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
43864         but with opposite signedness.
43865
43866 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43867
43868         Merge 'exclude' changes from tar 1.13.22.
43869         This fixes one or two unlikely storage allocation overflow bugs,
43870         but doesn't change user-visible behavior otherwise.
43871
43872 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43873
43874         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
43875         (jm_PREREQ_EXCLUDE): New macro.
43876
43877 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43878
43879         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
43880         tm to be declared.
43881
43882 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43883
43884         * lib/hash.c: Remove '2001' from copyright notice.
43885
43886 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43887
43888         * lib/full-write.h: New file.
43889         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
43890         * lib/full-write.c: Correct credits, as cccp.c no longer
43891         exists and anyway it was so heavily changed from the old cccp
43892         code as to be unrecognizable.  Include full-write.h.
43893         (full_write) Return size_t, with short writes meaning failure.
43894         All callers changed.  This fixes a bug with large buffers
43895         on 64-bit hosts.
43896         * lib/utime.c: Include full-write.h.
43897
43898 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43899
43900         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
43901         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
43902         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
43903         Include if available.
43904         (<xalloc.h>): Include
43905         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
43906         (verify): New macro.  Use it to verify that EXCLUDE macros do not
43907         collide with FNM macros.
43908         (struct patopts): New struct.
43909         (struct exclude): Use it, as exclude patterns now come with options.
43910         (new_exclude): Support above changes.
43911         (new_exclude, add_exclude_file):
43912         Initial size must now be a power of two to simplify overflow checking.
43913         (free_exclude, fnmatch_no_wildcards): New function.
43914         (excluded_filename): No longer requires options arg, as the options
43915         are determined by add_exclude.  Now returns bool, not int.
43916         (excluded_filename, add_exclude):
43917         Add support for the fancy new exclusion options.
43918         (add_exclude, add_exclude_file): Now takes int options arg.
43919         Check for arithmetic overflow when computing sizes.
43920         (add_exclude_file): xrealloc might modify errno, so don't
43921         realloc until after errno might be used.
43922
43923         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
43924         New macros.
43925         (free_exclude): New decl.
43926         (add_exclude, add_exclude_file): Now takes int options arg.
43927         (excluded_filename): No longer requires options arg, as the options
43928         are determined by add_exclude.  Now returns bool, not int.
43929
43930 2001-08-30  Paul Eggert  <eggert@twinsun.com>
43931
43932         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
43933
43934 2001-08-27  Jim Meyering  <meyering@lucent.com>
43935
43936         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
43937
43938         * lib/version-etc.c (N_): Remove definition.
43939         Revert most of last change.
43940         Instead, simply don't mark the `Copyright...' string for translation.
43941         Based on advice from Paul Eggert.
43942
43943         * lib/strtoxmax.c: Tweak comment.
43944
43945 2001-08-26  Jim Meyering  <meyering@lucent.com>
43946
43947         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
43948
43949         * m4/xstrtoimax.m4: New file.
43950         * m4/xstrtoumax.m4: Add comments explaining why we
43951         AC_REPLACE_FUNCS(strtol).
43952
43953 2001-08-26  Jim Meyering  <meyering@lucent.com>
43954
43955         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
43956         of copyright with `%s' so translators don't get an untranslated
43957         message in 2002.
43958         (COPYRIGHT_YEAR): Define.
43959         (version_etc): Use fprintf rather than fputs.
43960         Suggestion from Ulrich Drepper.
43961
43962         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
43963
43964         * lib/strtoll.c: New file, from GNU libc.
43965         * lib/xstrtoimax.c: New file.
43966
43967         * lib/xstrtol.h: Add xstrtoimax.
43968         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
43969         * lib/strtoimax.c: New file.  Likewise, but first define
43970         STRTOUXMAX_SIGNED.
43971
43972         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
43973         ...
43974         * lib/strtoxmax.c: ... then renamed to this.
43975
43976 2001-08-18  Paul Eggert  <eggert@twinsun.com>
43977
43978         * m4/inttypes.m4: Add AC_PREREQ(2.13).
43979         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
43980         (jm_AC_TYPE_INTMAX_T): New macro.
43981         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
43982
43983         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
43984
43985         * m4/longlong.m4: Renamed from ulonglong.m4.
43986         * m4/inttypes.m4: Renamed from inttypes_h.m4.
43987         * m4/uintmax_t.m4: Removed.
43988
43989 2001-08-13  Paul Eggert  <eggert@twinsun.com>
43990
43991         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
43992         Port to Solaris 8, where 'sed' requires a space after the 'r'
43993         command, and where sh dislikes "$/".  Clean up the spacing a bit.
43994         Redirect output to $tmp just once.
43995
43996 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
43997
43998         * lib/addext.c (<errno.h>): Include.
43999         (errno): Declare if not defined.
44000         (addext): Work correctly when pathconf returns -1 and leaves
44001         errno alone because there is no limit.  Also, work even if
44002         pathconf returns a value greater than SIZE_MAX.
44003
44004 2001-08-12  Jim Meyering  <meyering@lucent.com>
44005
44006         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
44007         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
44008         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
44009         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
44010         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
44011         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
44012         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
44013         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
44014         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
44015         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
44016         utime.m4, utimes.m4, xstrtoumax.m4:
44017         Quote the first argument in each use of AC_DEFUN.
44018
44019 2001-08-12  Jim Meyering  <meyering@lucent.com>
44020
44021         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
44022         Simply `return getcwd (NULL, 0);'.
44023         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
44024         Use 1300 as initial value for length, not PATH_MAX.
44025
44026         * lib/pathmax.h: Clean up cpp syntax.
44027
44028 2001-08-12  Jim Meyering  <meyering@lucent.com>
44029
44030         * lib/gettimeofday.c: New file.
44031         * lib/gtod.h: New file.
44032         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
44033
44034 2001-08-05  Jim Meyering  <meyering@lucent.com>
44035
44036         * m4/jm-macros.m4: Require autoconf-2.52.
44037
44038 2001-08-04  Jim Meyering  <meyering@lucent.com>
44039
44040         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
44041         stmt, to get in sync with glibc.
44042
44043 2001-08-03  Paul Eggert  <eggert@twinsun.com>
44044
44045         The following changes are from gettext 0.10.39 as maintained by
44046         Bruno Haible.
44047
44048         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
44049         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
44050         with inverted sense.  All uses changed.
44051
44052         * lib/mbswidth.c: Don't include <limits.h>.
44053         Include <stdlib.h> and <string.h> unconditionally.
44054         (iswcntrl, mbsinit, ISCNTRL): New macros.
44055         (mbsnwidth): Use K&R style function declarations.
44056         Don't bother checking for MB_LEN_MAX == 1, since the compiler
44057         can optimize it when MB_CUR_MAX == 1.
44058         The width of control characters is zero, not 1.
44059
44060 2001-08-03  Paul Eggert  <eggert@twinsun.com>
44061
44062         The following changes are from gettext 0.10.39 as maintained by
44063         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
44064
44065         * m4/codeset.m4: Upgrade to serial AM1.
44066         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
44067         all uses changed.  Quote first arg of AC_DEFUN.
44068         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
44069
44070         * m4/iconv.m4: Upgrade to serial AM2.
44071         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
44072         Add --with-libconv-prefix.
44073         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
44074         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
44075         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
44076         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
44077         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
44078
44079         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
44080         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
44081         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
44082         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
44083         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
44084         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
44085         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
44086         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
44087         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
44088
44089         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
44090         string.h any more.
44091
44092         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
44093         not the default value.
44094
44095         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
44096         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
44097         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
44098         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
44099         Also check for iswcntrl, used for wcwidth fallback.
44100         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
44101         to Autoconf 2.13.
44102
44103 2001-08-03  Jim Meyering  <meyering@lucent.com>
44104
44105         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
44106         as it was in the original.  Reported by Paul Eggert.
44107
44108 2001-07-16  Jim Meyering  <meyering@lucent.com>
44109
44110         * m4/gettimeofday.m4: New file.
44111         Prompted by a report from Bernhard Baehr.
44112
44113 2001-07-15  Jim Meyering  <meyering@lucent.com>
44114
44115         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
44116         stuff. Now it's in ../Makefile.cfg.
44117
44118 2001-07-15  Jim Meyering  <meyering@lucent.com>
44119
44120         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
44121         (BUILT_SOURCES): Add unlocked-io.h.
44122         (io_functions): Define.
44123         (unlocked-io.h): New rule.
44124         (DISTCLEANFILES): Add unlocked-io.h.
44125         (all-local): Depend on unlocked-io.h, to ensure it is created.
44126
44127         * lib/unlocked-io.hin: New file
44128
44129         * lib/regex.c: Update from glibc.
44130
44131 2001-07-05  Jim Meyering  <meyering@lucent.com>
44132
44133         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
44134         recommendation.
44135         (libfetish_a_SOURCES): Put all .h files here instead.
44136         Remove a thus-exposed (better checks in automake) duplicate and
44137         two unnecessary .h files.
44138
44139 2001-07-04  Jim Meyering  <meyering@lucent.com>
44140
44141         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
44142         that generates jm-glibc-io.m4 so that it doesn't trigger any make
44143         distcheck failure.
44144
44145 2001-07-02  Jim Meyering  <meyering@lucent.com>
44146
44147         The following changes were prompted by suggestions from Bruno Haible.
44148
44149         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
44150         is now generated.
44151         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
44152         definition of EXTRA_DIST.
44153         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
44154         ensure that the generated file is created/updated whenever the list
44155         of $(unlocked_functions) is changed.
44156         (jm-glibc-io.m4): New rule.
44157         (unlocked-io.h): New rule -- currently unused.
44158
44159 2001-06-24  Jim Meyering  <meyering@lucent.com>
44160
44161         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
44162         unmatched right bracket, rather than kludging it with an extra,
44163         falsely-matching quote in a comment.  Patch by Akim Demaille.
44164
44165 2001-06-11  Jim Meyering  <meyering@lucent.com>
44166
44167         * lib/regex.c: Update from GNU libc.
44168
44169 2001-05-27  Jim Meyering  <meyering@lucent.com>
44170
44171         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
44172         Check for ut_type in struct utmp.
44173
44174 2001-05-27  Jim Meyering  <meyering@lucent.com>
44175
44176         * lib/readutmp.h (UT_TYPE): Define.
44177
44178 2001-05-24  Jim Meyering  <meyering@lucent.com>
44179
44180         * lib/argmatch.c: Include "quote.h".
44181         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
44182         quote function.  Reported by Göran Uddeborg.
44183
44184 2001-05-22  Jim Meyering  <meyering@lucent.com>
44185
44186         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
44187         now that we use the package-supplied version unconditionally.
44188         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
44189
44190 2001-05-21  Jim Meyering  <meyering@lucent.com>
44191
44192         * m4/regex.m4: Change a couple backticks to single quotes to avoid
44193         shell syntax errors.
44194
44195 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
44196
44197         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
44198
44199 2001-05-20  Paul Eggert  <eggert@twinsun.com>
44200
44201         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
44202         Don't bother to check library strftime, since
44203         we'll be using our own my_strftime function anyway.
44204         Define my_strftime instead of strftime.
44205
44206 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
44207
44208         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
44209         which is not yet declared.
44210
44211 2001-05-15  Jim Meyering  <meyering@lucent.com>
44212
44213         * m4/regex.m4: Use proper quoting so brackets appear in the test
44214         program.
44215         Reported by, and with help from, Bruno Haible.
44216
44217 2001-05-13  Jim Meyering  <meyering@lucent.com>
44218
44219         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
44220         undefined.
44221
44222 2001-05-11  Paul Eggert  <eggert@twinsun.com>
44223
44224         dirname code cleanup.  base_name now behaves more compatibly
44225         with POSIX basename when given file names that have trailing
44226         slashes, and similarly for dir_name.  Add new primitives
44227         base_len and dir_len.  Put the directory-name-related decls
44228         into dirname.h.
44229
44230         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
44231         * lib/backupfile.c (base_name): Likewise.
44232         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
44233         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
44234         * lib/makepath.c (strip_trailing_slashes): Likewise.
44235         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
44236         ISSLASH): Likewise.
44237         * lib/rename.c (strip_trailing_slashes): Likewise.
44238         * lib/same.c (base_name): Likewise.
44239         * lib/stripslash.c (ISSLASH): Likewise.
44240
44241         * lib/addext.c: Include <dirname.h> after size_t is defined.
44242         * lib/backupfile.c: Likewise.
44243
44244         * lib/addext.c (addext): Use base_len to trim redundant
44245         trailing slashes instead of doing it ourselves.
44246         But do not trim the last slash if it is not redundant.
44247
44248         * lib/backupfile.c (find_backup_file_name,
44249         max_backup_version): Use base_len instead of rolling it ourselves.
44250         Handle the case of "" and (on DOS) "C:" correctly.
44251
44252         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
44253         needed. Include <string.h>, <dirname.h>.
44254         (base_name): Allow file names ending in slashes, other than names
44255         that are all slashes.  In this case, return the basename followed
44256         by the slashes.  This is more general, and can be used in places
44257         where the original base_name purposely had an assertion failure.
44258         (base_len): New function.
44259
44260         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
44261         Do not include <assert.h>; no longer needed.
44262         Include xalloc.h.
44263         (memrchr): Remove decl.
44264         (dir_name_r): Remove.
44265         (dir_len): Renamed from dirlen.  All callers changed.
44266         Rewrite in terms of base_name, for simplicity and consistency.
44267         (dir_name): Never return NULL.  All callers changed.
44268         Do not include <stdlib.h> in test program; no longer needed.
44269         return 0; is fine for test program.
44270
44271         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
44272         New macros.
44273         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
44274
44275         * lib/path-concat.c (path_concat): Use base_len to compute
44276         base length, not strlen; this means we cannot rely on memcpy
44277         to null-terminate.
44278
44279         * lib/same.c (STREQ): Remove.
44280         (same_name): Handle the case where the basename ends in trailing '/'.
44281
44282         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
44283         a slash was stripped.  Do not strip the last slash after a
44284         file system prefix.
44285
44286 2001-05-11  Paul Eggert  <eggert@twinsun.com>
44287
44288         * lib/Makefile.am (libfetish_a_SOURCES):
44289         Add strftime.c, since we now compile it on all hosts.
44290
44291         * lib/strftime.c (my_strftime):
44292         Define to nstrftime if emacs, but only if my_strftime is not defined.
44293         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
44294         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
44295         Add one more extra argument: a nanoseconds value.
44296         All uses changed.
44297         (ns): New macro.
44298         (my_strftime function): Add %N format.
44299         (emacs_strftimeu): Renamed from emacs_strftime,
44300         with extra ut argument.
44301
44302 2001-05-09  Paul Eggert  <eggert@twinsun.com>
44303
44304         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
44305
44306 2001-04-21  Jim Meyering  <meyering@lucent.com>
44307
44308         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
44309         doesn't interfere.
44310
44311 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
44312
44313         * m4/ftruncate.m4: Check for chsize.
44314         Link with ftruncate.o unconditionally if ftruncate is missing.
44315         This was required when cross-compiling to i586-mingw32msvc.
44316
44317 2001-04-08  Jim Meyering  <meyering@lucent.com>
44318
44319         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
44320         recomputed; that's necessary when the offset spans a DST transition.
44321         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
44322
44323 2001-04-02  Jim Meyering  <meyering@lucent.com>
44324
44325         * lib/regex.h, regex.c: Update from GNU libc.
44326
44327 2001-03-24  Jim Meyering  <meyering@lucent.com>
44328
44329         * m4/jm-macros.m4: Require autoconf-2.49d.
44330
44331 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
44332
44333         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
44334
44335 2001-03-19  Paul Eggert  <eggert@twinsun.com>
44336
44337         * lib/version-etc.c (version_etc_copyright): Update to 2001.
44338
44339 2001-03-17  Jim Meyering  <meyering@lucent.com>
44340
44341         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
44342         now that the version in autoconf is equivalent.
44343         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
44344
44345         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
44346         Suggestion from Akim Demaille.
44347
44348         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
44349         (jm_PREREQ_TEMPNAME): New function.
44350
44351 2001-03-16  Paul Eggert  <eggert@twinsun.com>
44352
44353         * lib/tempname.c (uint64_t): Define to uintmax_t if
44354         not defined, and if UINT64_MAX is not defined.
44355         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
44356         Reported by John David Anglin.
44357
44358 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
44359
44360         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
44361         resolve alias if codeset is empty.
44362         * lib/config.charset (BeOS): Use wildcard syntax.
44363
44364 2001-03-13  Jim Meyering  <meyering@lucent.com>
44365
44366         * lib/path-concat.c (path_concat)
44367         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
44368         concatenating e.g., `C:' and `foo'.
44369         From Bruno Haible.
44370
44371 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
44372
44373         * lib/localcharset.c (locale_charset): Don't use
44374         setlocale(LC_CTYPE,NULL). Don't return NULL.
44375         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
44376
44377 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
44378
44379         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
44380         support for DOS/DJGPP.
44381
44382 2001-03-01  Paul Eggert  <eggert@twinsun.com>
44383
44384         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
44385         lacks mkstemp.  Compile our own tempname.c if we compile our own
44386         mkstemp.c, as mkstemp relies on tempname.
44387
44388 2001-03-01  Jim Meyering  <meyering@lucent.com>
44389
44390         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
44391         AH_VERBATIM really does output its argument verbatim.
44392
44393 2001-02-28  Paul Eggert  <eggert@twinsun.com>
44394
44395         * lib/Makefile.am (libfetish_a_SOURCES):
44396         Add dup-safer.c, fopen-safer.c.
44397         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
44398
44399         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
44400         * lib/unistd-safer.h: New files.
44401
44402 2001-02-25  Paul Eggert  <eggert@twinsun.com>
44403
44404         The mkstemp replacement is taken from glibc 2.2.2, with some
44405         portability fixes for use outside glibc, as follows:
44406
44407         * lib/tempname.c (struct_stat64): New macro.
44408         (direxists, __gen_tempname): Use it.
44409         This avoids a portability problem with Solaris 8.
44410
44411         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
44412         (<stddef.h>, <stdint.h>, <string.h>):
44413         Include only if STDC_HEADERS || _LIBC.
44414         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
44415         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
44416         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
44417         (__set_errno): Define this macro if <errno.h> doesn't.
44418         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
44419         Define these macros if <stdio.h> doesn't.
44420         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
44421         Define these macros if <sys/stat.h>
44422         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
44423         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
44424         __xstat64): Define if not _LIBC.
44425         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
44426         (__gen_tempname): Invoke gettimeofday only if
44427         HAVE_GETTIMEOFDAY || _LIBC;
44428         otherwise, fall back on plain "time".
44429         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
44430
44431         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
44432
44433         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
44434
44435 2001-02-18  Paul Eggert  <eggert@twinsun.com>
44436
44437         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
44438
44439 2001-02-17  Paul Eggert  <eggert@twinsun.com>
44440
44441         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
44442         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
44443         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
44444         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
44445
44446 2001-02-17  Paul Eggert  <eggert@twinsun.com>
44447
44448         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
44449         Remove workaround macros for hosts that have mbrtowc but not
44450         mbstate_t, as we now insist on proper declarations for both
44451         before using mbrtowc.
44452
44453 2001-02-17  Jim Meyering  <meyering@lucent.com>
44454
44455         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
44456         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
44457         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
44458         UnixWare 7.1.1.
44459
44460         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
44461         rather than AC_CACHE_VAL.
44462
44463 2001-02-17  Jim Meyering  <meyering@lucent.com>
44464
44465         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
44466         around included file name.
44467
44468         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
44469
44470         * lib/strftime.c: Update from GNU libc (the only changes were to
44471         comments).
44472
44473 2001-02-17  Jim Meyering  <meyering@lucent.com>
44474
44475         * lib/regex.c: Update from libc.
44476
44477 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
44478
44479         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
44480         clash.
44481
44482 2001-02-16  Paul Eggert  <eggert@twinsun.com>
44483
44484         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
44485         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
44486         Reported by Mark Hounschell via Paul Eggert.
44487
44488 2001-02-07  Jim Meyering  <meyering@lucent.com>
44489
44490         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
44491
44492 2001-02-05  Jim Meyering  <meyering@lucent.com>
44493
44494         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
44495         it includes the patch required for `large file' support with at least
44496         HP-UX's 10.20 /bin/cc.
44497
44498 2001-02-03  Jim Meyering  <meyering@lucent.com>
44499
44500         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
44501         AS_IF, now that it works once again (mysteriously).
44502         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
44503
44504 2001-01-30  Jim Meyering  <meyering@lucent.com>
44505
44506         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
44507         * m4/chown.m4: Rename conftestchown to conftest.chown.
44508         * m4/rename.m4: s/conftestdir/conftest.d1/ and
44509         s/conftestdir2/conftest.d2/.
44510         * m4/utimes.m4: s/conftestdata/conftest.data/
44511         Inspired by Pavel Roskin's change in autoconf.
44512
44513 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
44514
44515         * lib/config.charset: Update for FreeBSD 4.2.
44516
44517 2001-01-27  Jim Meyering  <meyering@lucent.com>
44518
44519         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
44520         a use of AS_IF.
44521         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
44522
44523 2001-01-26  Jim Meyering  <meyering@lucent.com>
44524
44525         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
44526         quotearg.c includes it.
44527
44528 2001-01-26  Jim Meyering  <meyering@lucent.com>
44529
44530         * lib/quotearg.c: Include stddef.h.
44531         * lib/quote.c: Include stddef.h.
44532         Reported by Axel Kittenberger.
44533
44534         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
44535         line in double quotes so that it evokes a better diagnostic.
44536         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
44537         Reported by Axel Kittenberger.
44538
44539 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
44540
44541         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
44542         as if it was a `charset'.
44543
44544 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
44545
44546         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
44547         has const.
44548
44549 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
44550
44551         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
44552         to avoid a warning.  Add back 'const' to inptr.
44553
44554 2001-01-20  Jim Meyering  <meyering@lucent.com>
44555
44556         Be sure that headers are checked before used in code compiled
44557         for the type checks.
44558         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
44559         In place of that, invoke jm_CHECK_ALL_TYPES.
44560         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
44561         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
44562         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
44563         The check for ssize_t was mistakenly run before the test for unistd.h.
44564
44565         The configure-time check for stdbool.h was missing.
44566         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
44567         (jm_PREREQ_HASH): New function.
44568
44569 2001-01-17  Jim Meyering  <meyering@lucent.com>
44570
44571         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
44572         for autoconf-2.49c.
44573         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
44574
44575 2001-01-16  Jim Meyering  <meyering@lucent.com>
44576
44577         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
44578         From Bruno Haible.
44579
44580 2001-01-14  Jim Meyering  <meyering@lucent.com>
44581
44582         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
44583         foo and bar.  Create conftestdir/ in the script, not in the C code.
44584         Remove directories in the script, not in the C code.
44585         Remove conftestdir{,2} before trying to create the directory.
44586         Make the entire configure script fail if the mkdir fails.
44587
44588 2001-01-14  Jim Meyering  <meyering@lucent.com>
44589
44590         * lib/rename.c: New file.  From Volker Borchert.
44591         Include stdlib.h, string.h or strings.h, and xalloc.h.
44592         Use strip_trailing_slashes rather than open-coding it.
44593
44594 2001-01-03  Paul Eggert  <eggert@twinsun.com>
44595
44596         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
44597
44598 2001-01-03  Jim Meyering  <meyering@lucent.com>
44599
44600         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
44601         of local `inptr' to avoid warning with some system declarations of
44602         iconv.
44603
44604 2001-01-02  Volker Borchert  <bt@teknon.de>
44605
44606         * m4/rename.m4: New file.
44607         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
44608
44609 2001-01-01  Jim Meyering  <meyering@lucent.com>
44610
44611         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
44612         even on systems with utmpx.h.  It's necessary for the declaration of
44613         utmp's ut_user member.  Reported by Andreas Jaeger.
44614
44615         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
44616         available. They are required for the declarations of getgrgid and
44617         getpwuid resp.
44618         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
44619         Reported by Andreas Jaeger.
44620
44621 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
44622
44623         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
44624         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
44625         so `make install' also works in VPATH builds.
44626
44627 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
44628
44629         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
44630         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
44631         can be used in subdirectories.
44632
44633 2000-12-29  Paul Eggert  <eggert@twinsun.com>
44634
44635         * lib/modechange.c: Do not assume that mode_t uses the
44636         traditional octal encoding.  E.g. "chmod 1 FOO" should set
44637         the other-execute bit of FOO even if S_IXOTH != 1.
44638
44639         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
44640         WOTH, XOTH, ALLM): New macros.
44641         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
44642          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
44643         Use them.
44644         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
44645         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
44646         (mode_compile):
44647         No need to use uintmax_t; unsigned long is long enough.
44648         Don't bother to get suffix since we don't use it.
44649
44650 2000-12-26  Jim Meyering  <meyering@lucent.com>
44651
44652         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
44653         better with autoheader.
44654
44655 2000-12-24  Jim Meyering  <meyering@lucent.com>
44656
44657         * lib/hash.c (is_prime): Return explicit boolean values.
44658         (hash_get_first): Return NULL to appease Irix5.6's 89.
44659         Reported by Nelson Beebe.
44660
44661 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
44662
44663         * lib/localcharset.c (locale_charset): Add support for Win32.
44664
44665 2000-12-18  Paul Eggert  <eggert@twinsun.com>
44666
44667         * lib/physmem.h, lib/physmem.c: New files.
44668
44669         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
44670         (noinst_HEADERS): Add physmem.h.
44671
44672         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
44673         't' for compatibility with Solaris 8 sort.
44674
44675 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
44676
44677         * lib/config.charset: Add support for BeOS.
44678
44679 2000-12-17  Jim Meyering  <meyering@lucent.com>
44680
44681         * m4/dos.m4 (jm_AC_DOS): New file and macro.
44682         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
44683
44684 2000-12-16  Jim Meyering  <meyering@lucent.com>
44685
44686         This bug had a serious impact on chown: `chown N:M FILE' (for integer
44687         N and M) would have treated it like `chown N:N FILE'.
44688
44689         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
44690
44691 2000-12-16  Jim Meyering  <meyering@lucent.com>
44692
44693         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
44694         SHELLS_FILE to a file name that's useful on djgpp systems.
44695         Include stdlib.h.
44696         (ADDITIONAL_DEFAULT_SHELLS): Define.
44697         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
44698         Based mostly on a patch from Prashant TR.
44699
44700 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
44701
44702         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
44703         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
44704         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
44705
44706 2000-12-08  Andreas Schwab  <schwab@suse.de>
44707
44708         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
44709         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
44710
44711 2000-12-07  Jim Meyering  <meyering@lucent.com>
44712
44713         * lib/stripslash.c (ISSLASH): Define.
44714         (strip_trailing_slashes): Use ISSLASH rather than comparing against
44715         `/'.
44716         From Prashant TR.
44717
44718         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
44719         (dir_name_r): Declare this function as static.
44720         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
44721         manifest itself on a name containing a mix of slashes and
44722         backslashes.
44723         Make this function work with names starting with a DOS-style
44724         drive letter and colon prefix.
44725         (dir_name): Append `.' if necessary.
44726         Based mostly on patches from Prashant TR and Eli Zaretskii.
44727
44728         * lib/dirname.h (dir_name_r): Remove prototype.
44729
44730 2000-12-06  Paul Eggert  <eggert@twinsun.com>
44731
44732         * m4/off_t-format.m4: Remove this file.
44733         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
44734
44735 2000-12-06  Jim Meyering  <meyering@lucent.com>
44736
44737         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
44738         replacement strtoull, we may well need the replacement strtoul, too.
44739         Check for declarations of strtoul and strtoull.
44740         Check for strtol.  Mainly as a cue to cause automake to include
44741         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
44742         Check for limits.h -- strtol.c needs it.
44743
44744 2000-12-05  Jim Meyering  <meyering@lucent.com>
44745
44746         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
44747
44748 2000-12-04  Jim Meyering  <meyering@lucent.com>
44749
44750         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
44751         Also include memory.h, stdlib.h, unistd.h if appropriate.
44752         Reported by Andreas Jaeger (conflicting declaration of malloc).
44753
44754 2000-12-02  Jim Meyering  <meyering@lucent.com>
44755
44756         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
44757         * m4/jm-macros.m4 (jm_MACROS): require it.
44758
44759 2000-12-02  Jim Meyering  <meyering@lucent.com>
44760
44761         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
44762
44763 2000-12-01  Paul Eggert  <eggert@twinsun.com>
44764
44765         * lib/memrchr.c: Include <config.h> before any system include file.
44766
44767 2000-11-30  Jim Meyering  <meyering@lucent.com>
44768
44769         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
44770
44771 2000-11-30  Jim Meyering  <meyering@lucent.com>
44772
44773         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
44774
44775 2000-11-29  Paul Eggert  <eggert@twinsun.com>
44776
44777         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
44778
44779 2000-11-26  Jim Meyering  <meyering@lucent.com>
44780
44781         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
44782
44783 2000-11-22  Paul Eggert  <eggert@twinsun.com>
44784
44785         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
44786         size of (size_t) -1; it's not portable.
44787
44788 2000-11-17  Jim Meyering  <meyering@lucent.com>
44789
44790         * lib/strstr.c: Update from GNU libc.
44791
44792 2000-11-17  Akim Demaille  <akim@epita.fr>
44793
44794         * lib/obstack.h: Formatting changes.
44795         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
44796         prevent type checking.
44797         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
44798         cast the value to (void *): assigning a `foo *' to a `void *'
44799         variable is valid.
44800         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
44801
44802 2000-11-16  Jim Meyering  <meyering@lucent.com>
44803
44804         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
44805
44806 2000-11-11  Jim Meyering  <meyering@lucent.com>
44807
44808         * lib/error.c: Add a couple #includes, merging from GNU libc version.
44809
44810 2000-11-10  Jim Meyering  <meyering@lucent.com>
44811
44812         * lib/obstack.h: Update from GNU libc.
44813         * lib/obstack.c: Likewise.
44814
44815 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
44816
44817         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
44818
44819 2000-11-06  Paul Eggert  <eggert@twinsun.com>
44820
44821         * lib/getusershell.c (setusershell): Use rewind rather than
44822         fseek/fseeko, to avoid configuration hassles with fseeko.
44823         Don't bother opening SHELLS_FILE if shellstream is NULL;
44824         it's not necessary.
44825
44826 2000-11-05  Jim Meyering  <meyering@lucent.com>
44827
44828         * lib/makepath.h (make_dir): Declare.
44829         * lib/makepath.c (make_dir): Remove `static' attribute.
44830         Tweak a comment.
44831
44832 2000-11-04  Jim Meyering  <meyering@lucent.com>
44833
44834         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
44835
44836 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
44837
44838         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
44839         last one in a bucket, advance to the next bucket.
44840
44841 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
44842
44843         * lib/fnmatch.c: Do not comment out all the code if we are using
44844         the GNU C library, because in some cases we are replacing buggy
44845         code in the GNU C library itself.
44846
44847 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
44848
44849         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
44850         (regex_compile): Catch bogus \(\1\).
44851
44852 2000-10-30  Paul Eggert  <eggert@twinsun.com>
44853
44854         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
44855         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
44856         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
44857
44858 2000-10-30  Paul Eggert  <eggert@twinsun.com>
44859
44860         * lib/error.h, getline.h, modechange.h:
44861         Remove "2000" from Copyright line, as the file hasn't been
44862         changed this year other than in the copyright notice.
44863
44864         * lib/xalloc.h: Add "2000" to Copyright line, as this file
44865         was changed this year.
44866
44867 2000-10-29  Jim Meyering  <meyering@lucent.com>
44868
44869         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
44870         renaming.
44871         * m4/ls-mntd-fs.m4: Likewise
44872
44873 2000-10-29  Jim Meyering  <meyering@lucent.com>
44874
44875         * lib/xstat.in: Fix grammar in comment.
44876
44877 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
44878
44879         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
44880         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
44881         doesn't define __restrict_arr.
44882
44883 2000-10-28  Jim Meyering  <meyering@lucent.com>
44884
44885         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
44886         (jm_PREREQ_MEMCHR): New function.
44887
44888 2000-10-28  Jim Meyering  <meyering@lucent.com>
44889
44890         * lib/memchr.c: Update from libc.
44891         Adjust for portability:
44892         [HAVE_STDLIB_H]: Include stdlib.h.
44893         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
44894         Undef __memchr, too.
44895         [!weak_alias]: Define __memchr to memchr.
44896
44897         * lib/regex.c: Update from libc.
44898         * lib/regex.h: Likewise.
44899         * lib/getopt1.c: Likewise.
44900         * lib/memcmp.c: Likewise.
44901
44902         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
44903         Avoid using fseek, when possible -- it's broken by design.
44904         Patch by Ulrich Drepper.
44905
44906 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
44907
44908         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
44909         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
44910         Giving in to popular pressure to shut up the compiler with casts.
44911
44912 2000-10-26  Jim Meyering  <meyering@lucent.com>
44913
44914         * lib/strftime.c: Update from libc.
44915
44916 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
44917
44918         * regex.c: More `unsigned char' -> `re_char' changes.
44919         Also change several `int' into `re_wchar_t'.
44920         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
44921         (PUSH_FAILURE_POINTER): Don't cast any more.
44922         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
44923         We want GCC to complain, since this piece of code makes
44924         re_match non-reentrant, which *should* be fixed.
44925         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
44926         (EXTEND_BUFFER): Use RETALLOC.
44927         (SET_LIST_BIT): Don't cast.
44928         (re_wchar_t): New type.
44929         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
44930         that those two functions will always properly return.
44931         (IMMEDIATE_QUIT_CHECK): Cast to void.
44932         (analyse_first): Use recursion rather than an explicit stack.
44933         (re_compile_fastmap): Can't fail anymore.
44934         (re_search_2): Don't check re_compile_fastmap for failure.
44935         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
44936         Now also sets the new value (passed in a new argument).
44937         (re_match_2_internal): Use it.
44938         Also, use a new var `reg' of type size_t when looping through regs
44939         rather than reuse the inappropriate `mcnt'.
44940
44941 2000-10-25  Jim Meyering  <meyering@lucent.com>
44942
44943         * lib/obstack.c: Update from libc.
44944
44945 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
44946
44947         * regex.c (regex_compile): Change the way of handling a range from
44948         a char less than 256 to a char not less than 256.
44949
44950 2000-10-24  Andrew Innes  <andrewi@gnu.org>
44951
44952         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
44953         NT-Emacs only.
44954         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
44955         so that re_search functions only quit when callers expect them to.
44956
44957 2000-10-23  Jim Meyering  <meyering@lucent.com>
44958
44959         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
44960         wrong.  That set_locale call must not have any side effects.
44961         From Paul Eggert.
44962
44963 2000-10-22  Jim Meyering  <meyering@lucent.com>
44964
44965         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
44966         [CYCLIC]: Remove now-unused definition.
44967
44968         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
44969         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
44970         Suggestion from Ulrich Drepper.
44971
44972 2000-10-21  Jim Meyering  <meyering@lucent.com>
44973
44974         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
44975         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
44976         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
44977
44978 2000-10-21  Jim Meyering  <meyering@lucent.com>
44979
44980         * lib/dirname.c (memrchr): Declare if necessary.
44981         (dir_name): Remove the restriction that there be no
44982         trailing slashes.  Now, this code skips past them, effectively
44983         ignoring them.
44984         [TEST_DIRNAME] (main): New unit tests.
44985
44986         * lib/memrchr.c: New file from GNU libc.
44987         Undef __memrchr, too.
44988         [!weak_alias]: Define __memrchr to memrchr.
44989         Guard weak_alias use with `#ifdef weak_alias'.
44990
44991 2000-10-21  Jim Meyering  <meyering@lucent.com>
44992
44993         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
44994         (dir_name): Use dir_name_r.
44995         * lib/dirname.h (dir_name_r): Declare it.
44996
44997 2000-10-17  Jim Meyering  <meyering@lucent.com>
44998
44999         * lib/quote.h (PARAMS): Define and use.
45000         Reported by Akim Demaille.
45001
45002         * lib/getopt.c: Update from libc.
45003
45004 2000-10-16  Jim Meyering  <meyering@lucent.com>
45005
45006         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
45007         setlocale.
45008         From Jan Fedak.
45009
45010 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
45011
45012         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
45013
45014 2000-09-25  Jim Meyering  <meyering@lucent.com>
45015
45016         * lib/md5.h (rol): Define (from GnuPG).
45017
45018         * lib/sha.c: Give credit (GnuPG) where due.
45019         (M): Use rol rather than open-coding it.
45020         Add a FIXME comment.
45021
45022 2000-09-21  Jim Meyering  <meyering@lucent.com>
45023
45024         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
45025         Reported by Michael Stone.
45026
45027 2000-09-20  Jim Meyering  <meyering@lucent.com>
45028
45029         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
45030         (noinst_HEADERS): Add sha.h.
45031         Based on code from Scott G. Miller and from GnuPG.
45032
45033 2000-09-18  Jim Meyering  <meyering@lucent.com>
45034
45035         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
45036         LIBS. Otherwise, everyone ends up linking with -lelf for some
45037         configurations.
45038         Reported by Mike Stone.
45039
45040 2000-09-15  Jim Meyering  <meyering@lucent.com>
45041
45042         * lib/regex.c: Update from libc.
45043
45044 2000-09-10  Jim Meyering  <meyering@lucent.com>
45045
45046         * lib/getopt.c (_getopt_internal): Update from glibc.
45047
45048 2000-09-09  Jim Meyering  <meyering@lucent.com>
45049
45050         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
45051         think it should be used as a general replacement for isascii.
45052         * lib/fnmatch.c: Likewise.
45053         * lib/mbswidth.c: Likewise
45054         * lib/regex.c: Likewise.
45055
45056         Don't use atoi.
45057         * lib/userspec.c: Include sys/param.h and limits.h.
45058         Include xstrtol.h.
45059         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
45060         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
45061         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
45062         UID, GID.  Check range.
45063
45064 2000-09-06  Jim Meyering  <meyering@lucent.com>
45065
45066         * lib/getopt.c (_getopt_internal): Update from glibc.
45067
45068 2000-08-30  Jim Meyering  <meyering@lucent.com>
45069
45070         * lib/strftime.c: Merge in changes from GNU libc.
45071
45072 2000-08-26  Jim Meyering  <meyering@lucent.com>
45073
45074         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
45075         * m4/fpending.m4: New file.
45076
45077 2000-08-26  Jim Meyering  <meyering@lucent.com>
45078
45079         * lib/closeout.c: Include "__fpending.h".
45080         (close_stdout_status): Return right away if there's nothing to flush.
45081
45082         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
45083         * lib/__fpending.c: New file.
45084         * lib/__fpending.h: New file.
45085
45086 2000-08-20  Jim Meyering  <meyering@lucent.com>
45087
45088         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
45089         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
45090         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
45091
45092 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
45093
45094         Improve fileutils installation on systems where running
45095         programs (like install) can't be unlinked.
45096         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
45097         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
45098
45099 2000-08-07  Paul Eggert  <eggert@twinsun.com>
45100
45101         Standardize on "memory exhausted" instead of "Memory exhausted"
45102         or "virtual memory exhausted".
45103         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
45104         "virtual memory exhausted".
45105         * lib/same.c (same_name): Invoke xalloc_die instead of printing
45106         our own message.
45107         * lib/userspec.c (parse_user_spec): Likewise.
45108         * lib/bumpalloc.h: comment fix
45109         * lib/same.c, userspec.c: Include xalloc.h.
45110
45111         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
45112         not char *const and pointing to a constant array.
45113         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
45114         (xrealloc): Comment fix.
45115
45116         * lib/userspec.c (parse_user_spec):
45117         Don't translate a message until just before returning,
45118         to avoid unnecessary translation.
45119
45120 2000-08-07  Jim Meyering  <meyering@lucent.com>
45121
45122         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
45123         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
45124         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
45125         getgroups.c, gethostname.c, getopt.h, group-member.c,
45126         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
45127         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
45128         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
45129         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
45130         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
45131         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
45132         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
45133         yesno.c: Back out Copyright date changes for each file with no change
45134         this year.  This eases coordination with other programs using the same
45135         source code modules.  From Paul Eggert.
45136
45137 2000-08-06  Paul Eggert  <eggert@twinsun.com>
45138
45139         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
45140         not char, for compatibility with glibc 2.1.3 strftime.c.
45141
45142 2000-08-03  Greg McGary  <greg@mcgary.org>
45143
45144         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
45145         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
45146         (EXTEND_BUFFER): Use them.
45147
45148 2000-08-01  Jim Meyering  <meyering@lucent.com>
45149
45150         * lib/dirname.c (ISSLASH): Define.
45151         (BACKSLASH_IS_PATH_SEPARATOR): Define.
45152         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
45153         both `\' and `/' may be use as path separators.
45154         Based on a patch from Prashant TR.
45155
45156 2000-07-31  Paul Eggert  <eggert@twinsun.com>
45157
45158         * lib/quotearg.c (quotearg_n_options): Don't make the initial
45159         slot vector a constant, since it might get modified.
45160
45161 2000-07-31  Jim Meyering  <meyering@lucent.com>
45162
45163         * lib/xmalloc.c: Use `virtual memory exhausted', not
45164         `Memory exhausted'.
45165         * lib/obstack.c (print_and_abort): Likewise.
45166
45167 2000-07-30  Paul Eggert  <eggert@twinsun.com>
45168
45169         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
45170         buffer, so that the caller can always quote one small
45171         component of a "memory exhausted" message in slot 0.
45172         From a suggestion by Jim Meyering.
45173
45174 2000-07-30  Jim Meyering  <meyering@lucent.com>
45175
45176         * lib/makepath.c (make_path): Quote the other instance, too.
45177
45178         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
45179         (STATIC_BUF_SIZE): Define.
45180         (quotearg_n_options): Use only statically allocated storage when
45181         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
45182         than STATIC_BUF_SIZE.
45183
45184 2000-07-29  Jim Meyering  <meyering@lucent.com>
45185
45186         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
45187         * lib/dirname.c (dir_name): Likewise.
45188
45189         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
45190         `/'.
45191
45192         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
45193         (dir_name): Assert that there are no trailing slashes.
45194
45195 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
45196
45197         * lib/mbswidth.h (mbswidth): Add a flags argument.
45198         (mbswidth): New declaration.
45199         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
45200         * lib/mbswidth.c (mbswidth): Add a flags argument.
45201         (mbsnwidth): New function.
45202
45203 2000-07-24  Jim Meyering  <meyering@lucent.com>
45204
45205         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
45206
45207 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45208
45209         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
45210
45211 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45212
45213         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
45214         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
45215         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
45216         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
45217         invoke multibyte primitives.
45218
45219 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45220
45221         * lib/quotearg.c:
45222         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
45223         so that mbstate_t is always defined.
45224
45225         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
45226         be 1 in at least one GCC installation, and this configuration
45227         error is likely to be common.  Ignoring MB_LEN_MAX hurts
45228         performance on hosts that have mbrtowc but have only unibyte
45229         locales, but I assume these hosts are rare.
45230
45231 2000-07-23  Paul Eggert  <eggert@twinsun.com>
45232
45233         * lib/mbswidth.c (_XOPEN_SOURCE):
45234         Don't define; this causes problems on Solaris 7.
45235         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
45236
45237 2000-07-23  Jim Meyering  <meyering@lucent.com>
45238
45239         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
45240         too: getgrgid, getpwuid, getuid.
45241
45242 2000-07-23  Jim Meyering  <meyering@lucent.com>
45243
45244         * lib/basename.c (base_name): Add an assertion.
45245
45246 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
45247
45248         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
45249         shadow its mbsinit function.
45250
45251 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
45252
45253         * lib/mbswidth.h: New file.
45254         * lib/mbswidth.c: New file.
45255         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
45256         (noinst_HEADERS): Add mbswidth.h.
45257
45258 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
45259
45260         * lib/config.charset: Add support for FreeBSD. Improve support for
45261         HP-UX and IRIX 6.
45262
45263 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
45264
45265         * m4/mbswidth.m4: New file.
45266         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
45267
45268 2000-07-15  Jim Meyering  <meyering@lucent.com>
45269
45270         * lib/makepath.c: Include quote.h.
45271         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
45272         corresponding argument in a `quote (...)' call.
45273         Give better diagnostics.
45274
45275         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
45276         (noinst_HEADERS): Add quote.h.
45277
45278         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
45279         from tar's src/misc.c.
45280         * lib/quote.h: New file.  Prototypes for same.
45281
45282 2000-07-14  Paul Eggert  <eggert@twinsun.com>
45283
45284         From a suggestion by Bruno Haible.
45285         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
45286         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
45287         to decide whether to define the BeOS workaround macro;
45288         this adjusts to the change to AC_MBSTATE_T.
45289
45290 2000-07-14  Jim Meyering  <meyering@lucent.com>
45291
45292         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
45293         jm_AC_TYPE_UINTMAX_T.
45294
45295 2000-07-13  Paul Eggert  <eggert@twinsun.com>
45296
45297         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
45298
45299         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
45300         quotearg_buffer_restyled): Add support for
45301         clocale_quoting_style.  Undo previous change to
45302         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
45303         and "{RIGHT QUOTATION MARK}" msgids.
45304
45305 2000-07-10  Paul Eggert  <eggert@twinsun.com>
45306
45307         From a suggestion by Bruno Haible.
45308         * m4/mbstate_t.m4 (AC_MBSTATE_T):
45309         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
45310         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
45311         and mbstate_t, to a single-part test that simply defines mbstate_t.
45312         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
45313         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
45314
45315 2000-07-10  Jim Meyering  <meyering@lucent.com>
45316
45317         * m4/strerror_r.m4: Mirror the correction made in autoconf.
45318
45319         * m4/gnu-source.m4: Output to confdefs.h directly.
45320         Suggestion from Akim Demaille.
45321
45322 2000-07-09  Paul Eggert  <eggert@twinsun.com>
45323
45324         The old behavior of quoting `like this' doesn't look good with
45325         newer, ISO-style fonts.  See:
45326         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
45327
45328         Instead, quote "like this" by default.  Let the translator
45329         tailor the locale-specific quoting behavior by providing
45330         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
45331
45332         * lib/quotearg.c (N_): New macro.
45333         (gettext_default): New function.
45334         (quotearg_buffer_restyled): Use
45335         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
45336         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
45337
45338 2000-07-09  Jim Meyering  <meyering@lucent.com>
45339
45340         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
45341         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
45342
45343         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
45344         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
45345
45346 2000-07-09  Jim Meyering  <meyering@lucent.com>
45347
45348         * lib/Most files: Update copyright dates to include 2000.
45349
45350 2000-07-08  Jim Meyering  <meyering@lucent.com>
45351
45352         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
45353         if not defined.
45354         (xgethostname): Remove now-unnecessary #ifdef.
45355         Move declaration of `err' into loop where it's used.
45356
45357 2000-07-05  Paul Eggert  <eggert@twinsun.com>
45358         and Bruno Haible  <haible@clisp.cons.org>
45359
45360         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
45361         only if the test for an object-type mbstate_t fails.  This
45362         prevents us from mistakenly reporting that mbstate_t is a
45363         system object type after we "#define mbstate_t int" to work
45364         around its lack.
45365
45366 2000-07-05  Paul Eggert  <eggert@twinsun.com>
45367         and Bruno Haible  <haible@clisp.cons.org>
45368
45369         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
45370
45371 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
45372
45373         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
45374         to strerror_r.
45375         Include <ctype.h> for use of isalpha.
45376
45377 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
45378
45379         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
45380         by allocating a larger buffer. Test the gethostname return value for
45381         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
45382         returns an error and ENAMETOOLONG isn't defined.
45383
45384 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
45385
45386         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
45387         dimension.
45388
45389 2000-07-04  Jim Meyering  <meyering@lucent.com>
45390
45391         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
45392         of the deprecated AC_CHECKING.
45393
45394 2000-07-04  Jim Meyering  <meyering@lucent.com>
45395
45396         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
45397         Reported by Bruno Haible.
45398
45399 2000-07-04  Jim Meyering  <meyering@lucent.com>
45400
45401         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
45402         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
45403         lacks mbrtowc.
45404
45405 2000-07-03  Paul Eggert  <eggert@twinsun.com>
45406
45407         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
45408         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
45409
45410 2000-07-03  Paul Eggert  <eggert@twinsun.com>
45411         and Bruno Haible  <haible@clisp.cons.org>
45412
45413         * lib/quotearg.c (mbrtowc):
45414         Assign to *pwc, and return 1 only if result is nonzero.
45415         (iswprint): Use ISPRINT when substituting our own mbrtowc.
45416
45417 2000-07-03  Jim Meyering  <meyering@lucent.com>
45418
45419         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
45420
45421 2000-07-03  Jim Meyering  <meyering@lucent.com>
45422
45423         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
45424         This is necessary to get a definition of e.g., UTMP_FILE on
45425         HP-UX 10.20.
45426         From Bob Proulx.
45427
45428 2000-07-02  Jim Meyering  <meyering@lucent.com>
45429
45430         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
45431
45432         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
45433         AC_LIBOBJ(function_name).
45434         * m4/chown.m4: Likewise.
45435         * m4/fnmatch.m4: Likewise.
45436         * m4/ftruncate.m4: Likewise.
45437         * m4/getgroups.m4: Likewise.
45438         * m4/getline.m4: Likewise.
45439         * m4/group-member.m4: Likewise.
45440         * m4/jm-macros.m4: Likewise.
45441         * m4/lstat.m4: Likewise.
45442         * m4/malloc.m4: Likewise.
45443         * m4/memcmp.m4: Likewise.
45444         * m4/nanosleep.m4: Likewise.
45445         * m4/putenv.m4: Likewise.
45446         * m4/realloc.m4: Likewise.
45447         * m4/regex.m4: Likewise.
45448         * m4/stat.m4: Likewise.
45449         * m4/strftime.m4: Likewise.
45450
45451 2000-07-02  Jim Meyering  <meyering@lucent.com>
45452
45453         * lib/quotearg.c (mbstate_t): Don't define here.
45454
45455 2000-07-02  Jim Meyering  <meyering@lucent.com>
45456
45457         * lib/nanosleep.c (SIGCONT): Define if not already defined.
45458
45459 2000-07-01  Jim Meyering  <meyering@lucent.com>
45460
45461         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
45462
45463 2000-07-01  Jim Meyering  <meyering@lucent.com>
45464
45465         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
45466         problem.
45467
45468 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
45469
45470         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
45471         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
45472
45473 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
45474
45475         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
45476         per change in ../m4/ls-mntd-fs.m4.
45477         (read_filesystem_list): Ignore symbolic links.
45478
45479 2000-06-29  Jim Meyering  <meyering@lucent.com>
45480
45481         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
45482         for declaration of strcmp.
45483
45484         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
45485
45486         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
45487         Avoid warning by casting result to `char *' to remove `const'.
45488
45489 2000-06-28  Jim Meyering  <meyering@lucent.com>
45490
45491         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
45492         included by quotearg.c, for which we perform this test.  From
45493         Bruno Haible.
45494
45495 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
45496
45497         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
45498         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
45499         <utmpx.h> exists, put readutmp.o into LIBOBJS.
45500
45501 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
45502
45503         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
45504
45505 2000-06-26  Paul Eggert  <eggert@twinsun.com>
45506
45507         savedir now sets errno on failure and invokes xmalloc to get memory.
45508         Fix a couple of other minor bugs while we're at it.
45509
45510         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
45511         (NAMLEN): Remove macro.
45512         (malloc, realloc): Remove decls.
45513         (stpcpy): Likewise.
45514         ("xalloc.h"): Include.
45515         (NAME_SIZE_DEFAULT): New macro.
45516         (savedir): Use xmalloc / xrealloc to allocate memory.
45517         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
45518         Skip "" directory entries.
45519         Use strlen to calculate directory entry length, since the old method
45520         is rarely used these days and isn't worth supporting.
45521         Don't use a pointer after freeing it.
45522         Check for integer overflow when calculating allocation size.
45523         Use memcpy to copy entries, instead of stpcpy.
45524         Set errno properly when returning NULL.
45525         Check for readdir error.
45526
45527 2000-06-26  Jim Meyering  <meyering@lucent.com>
45528
45529         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
45530
45531 2000-06-25  Jim Meyering  <meyering@lucent.com>
45532
45533         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
45534         Linux header bug when _XOPEN_SOURCE is defined to 500.
45535
45536 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
45537
45538         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
45539         deficiency.
45540
45541 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
45542
45543         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
45544         Include xalloc.h.
45545         Don't include <stdlib.h>.  Don't declare malloc, realloc.
45546
45547 2000-06-24  Jim Meyering  <meyering@lucent.com>
45548
45549         * m4/strerror_r.m4: Revive this file -- to try out an experimental
45550         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
45551         for which strerror does return char*, but which lacks a conveniently
45552         accessible declaration of the function.  If the compile-test says
45553         strerror_r doesn't work, then resort to a `run'-test that works on
45554         BeOS and segfaults on DEC Unix.
45555
45556 2000-06-24  Jim Meyering  <meyering@lucent.com>
45557
45558         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
45559
45560 2000-06-23  Paul Eggert  <eggert@twinsun.com>
45561
45562         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
45563         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
45564
45565 2000-06-23  Paul Eggert  <eggert@twinsun.com>
45566
45567         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
45568         (mbrtowc, mbstate_t): Define substitutes if
45569         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
45570         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
45571         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
45572
45573 2000-06-23  Jim Meyering  <meyering@lucent.com>
45574
45575         * m4/afs.m4: Add missing AC_MSG_RESULT.
45576         Reported by Bruno Haible.
45577
45578         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
45579         Suggestion from Bruno Haible.
45580
45581 2000-06-23  Jim Meyering  <meyering@lucent.com>
45582
45583         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
45584
45585 2000-06-21  Jim Meyering  <meyering@lucent.com>
45586
45587         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
45588
45589 2000-06-21  Jim Meyering  <meyering@lucent.com>
45590
45591         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
45592         (noinst_HEADERS): Add getstr.h.
45593
45594         * lib/getline.c (getstr): Move into a separate file.
45595         * lib/getstr.c (getstr): New file, extracted from getline.c, with
45596         the following changes: new parameter, delim2; both delim[12]
45597         parameters have type `int', not `char'.  The latter would lose
45598         with 8-bit delimiters.
45599         * lib/getstr.h: New file.
45600
45601 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
45602
45603         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
45604         than 1024, return a memory chunk of least possible size, instead
45605         of size PATH_MAX + 2. In the loop, increment the size proportionally.
45606         Use free/xmalloc instead of xrealloc to avoid copying for very long
45607         paths.
45608
45609 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
45610
45611         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
45612         the empty string.
45613
45614 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
45615
45616         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
45617         address, not strdup.  Include <stdlib.h> and don't declare free().
45618
45619 2000-06-19  Jim Meyering  <meyering@lucent.com>
45620
45621         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
45622
45623 2000-06-18  Jim Meyering  <meyering@lucent.com>
45624
45625         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
45626
45627         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
45628         `checking whether...' message to be consistent with that of the
45629         lstat test.
45630
45631 2000-06-18  Jim Meyering  <meyering@lucent.com>
45632
45633         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
45634         Besides, these days every porting target provides a mkdir function.
45635
45636         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
45637         needed. (this snippet comes from src/system.h).
45638
45639 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
45640
45641         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
45642
45643 2000-06-15  Paul Eggert  <eggert@twinsun.com>
45644
45645         * lib/human.c (adjust_value): New function.
45646         (human_readable_inexact): Apply rounding style even when
45647         printing approximate values.
45648
45649 2000-06-14  Paul Eggert  <eggert@twinsun.com>
45650
45651         * lib/human.c (human_readable_inexact): Allow an input block
45652         size that is not a multiple of the output block size, and vice versa.
45653         Reported by Piergiorgio Sartor.
45654
45655 2000-06-14  Paul Eggert  <eggert@twinsun.com>
45656
45657         * lib/getdate.y (get_date): Apply relative times after time
45658         zone indicator, not before.  Reported by Todd A. Jacobs.
45659
45660 2000-06-13  Jim Meyering  <meyering@lucent.com>
45661
45662         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
45663
45664         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
45665
45666 2000-06-12  Paul Eggert  <eggert@twinsun.com>
45667
45668         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
45669
45670 2000-06-12  Jim Meyering  <meyering@lucent.com>
45671
45672         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
45673         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
45674         optional argument.
45675         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
45676         the optional argument, `lib'.
45677
45678 2000-06-08  Jim Meyering  <meyering@lucent.com>
45679
45680         * m4/largefile.m4: Remove file (now that it's part of autoconf).
45681
45682 2000-06-04  Paul Eggert  <eggert@twinsun.com>
45683
45684         Rewrite largefile configuration so that we don't need to run
45685         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
45686         AC_CANONICAL_HOST in configure.in -- jmm]
45687
45688         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
45689         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
45690         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
45691         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
45692         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
45693         All uses changed.
45694         Instead of inspecting the output of getconf, try to compile the
45695         test program without and with the macro definition.
45696         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
45697         for getconf.  Instead, check for the needed flags by compiling
45698         test programs.
45699
45700 2000-06-04  Paul Eggert  <eggert@twinsun.com>
45701
45702         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
45703
45704 2000-06-04  Jim Meyering  <meyering@lucent.com>
45705
45706         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
45707         SunOS 4.1.4 for which gid_t is an unsigned type.
45708
45709 2000-06-03  Jim Meyering  <meyering@lucent.com>
45710
45711         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
45712         now that autoconf requires that.
45713
45714         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
45715         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
45716         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
45717
45718 2000-06-03  Jim Meyering  <meyering@lucent.com>
45719
45720         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
45721
45722 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
45723
45724         * m4/glibc21.m4: New file.
45725         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
45726
45727 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
45728
45729         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
45730         newer, don't install charset.alias.
45731         * lib/config.charset: Change the Linux/glibc rules so they become empty
45732         on glibc-2.1 or newer.
45733
45734 2000-06-02  Jim Meyering  <meyering@lucent.com>
45735
45736         * lib/mountlist.c: Back out last change.  Instead, do this...
45737         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
45738         me_dummy member using the same `ignore'-testing code.
45739         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
45740         fs_type strings.
45741         From Mark D. Roth.
45742
45743 2000-05-29  Jim Meyering  <meyering@lucent.com>
45744
45745         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
45746         mounts with the `ignore' attribute.  Based on a patch from
45747         Mark D. Roth.
45748
45749 2000-05-28  Jim Meyering  <meyering@lucent.com>
45750
45751         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
45752         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
45753         * m4/stat.m4: Likewise.
45754         * m4/lstat.m4: Likewise.
45755         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
45756
45757         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
45758         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
45759
45760 2000-05-26  Jim Meyering  <meyering@lucent.com>
45761
45762         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
45763
45764 2000-05-24  Jim Meyering  <meyering@lucent.com>
45765
45766         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
45767         autoconf requires that.
45768         * m4/lib-check.m4: Likewise.
45769         * m4/jm-macros.m4: Likewise.
45770         * m4/strftime.m4: Likewise.
45771
45772         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
45773         AC_CHECK_DECLS, now that autoconf requires that.
45774
45775 2000-05-22  Jim Meyering  <meyering@lucent.com>
45776
45777         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
45778         * m4/lstat.m4: Likewise.
45779
45780 2000-05-22  Jim Meyering  <meyering@lucent.com>
45781
45782         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
45783
45784 2000-05-20  Jim Meyering  <meyering@lucent.com>
45785
45786         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
45787         (jm_PREREQ): Use it.
45788
45789 2000-05-18  Jim Meyering  <meyering@lucent.com>
45790
45791         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
45792         back, too, since it may have been modified by allocate_entry.
45793         (hash_delete): Rewrite to use neither the assignment operator
45794         nor the comma operator in an if-expression.
45795
45796 2000-05-15  Paul Eggert  <eggert@twinsun.com>
45797
45798         * lib/closeout.c:
45799         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
45800         Remove; no longer needed.
45801         "quotearg.h": Add include.
45802         (file_name): Do not bother to explicitly initialize to NULL; it's less
45803         efficient on some hosts.
45804         (close_stdout_status): Remove test as to whether stdout was already
45805         closed; it breaks for the case "echo x | sort >&-".
45806         Quote file name colons.
45807         Do not assume that _("write error") lacks format strings.
45808
45809 2000-05-15  Jim Meyering  <meyering@lucent.com>
45810
45811         * lib/version-etc.c (version_etc_copyright): Update the copyright
45812         string used in all --version output.
45813
45814 2000-05-14  Jim Meyering  <meyering@lucent.com>
45815
45816         * lib/closeout.c (close_stdout_set_file_name): New function.
45817         (close_stdout_status): Use new file-scoped global.
45818         Return right away if fstat says the stdout file descriptor is invalid.
45819         * lib/closeout.h (close_stdout_set_file_name): Declare.
45820
45821 2000-05-10  Jim Meyering  <meyering@lucent.com>
45822
45823         * lib/closeout.c [default_exit_status]: New file-scoped variable.
45824         (close_stdout_set_status): New function.
45825         * lib/closeout.h (close_stdout_set_status): Declare.
45826
45827 2000-05-09  Jim Meyering  <meyering@lucent.com>
45828
45829         * m4/gettext.m4: Rename this...
45830         * m4/libintl.m4: ...to this.
45831
45832 2000-05-08  Jim Meyering  <meyering@lucent.com>
45833
45834         * lib/long-options.c: Don't include closeout.h.
45835         (parse_long_options): Don't call close_stdout for --version.
45836
45837 2000-05-06  Paul Eggert  <eggert@twinsun.com>
45838
45839         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
45840         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
45841         2.1.3 bug.  This avoids a clash when files like regex.c define
45842         _GNU_SOURCE.
45843
45844 2000-05-06  Jim Meyering  <meyering@lucent.com>
45845
45846         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
45847         (AC_REPLACE_FUNCS): Add strnlen.
45848
45849         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
45850         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
45851
45852         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
45853         AC_SEARCH_LIBS call for nanosleep.
45854         (LIB_NANOSLEEP): Set and AC_SUBST.
45855
45856 2000-05-06  Jim Meyering  <meyering@lucent.com>
45857
45858         * lib/strnlen.c: Undefine __strnlen and strnlen.
45859         [!weak_alias]: Define __strnlen to strnlen.
45860
45861         * lib/atexit.c: New file, from libiberty.
45862
45863 2000-05-06  Jim Meyering  <meyering@lucent.com>
45864
45865         * lib/closeout.c (close_stdout_status): Also check for errors on the
45866         stderr stream.
45867
45868 2000-05-05  Jim Meyering  <meyering@lucent.com>
45869
45870         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
45871         AC_SEARCH_LIBS call for clock_gettime.
45872         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
45873
45874         * m4/search-libs.m4: Update from autoconf.
45875
45876         su doesn't work on Solaris 2.6.
45877         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
45878         <shadow.h>.  Reported by Dragos Harabor.
45879
45880 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
45881
45882         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
45883         memcpy instead of xmalloc, xrealloc, path_concat.
45884         (locale_charset): Treat empty environment variables as absent.
45885         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
45886
45887 2000-05-04  Jim Meyering  <meyering@lucent.com>
45888
45889         * lib/getopt.c: Update from glibc.
45890         * lib/obstack.c: Likewise.
45891         * lib/obstack.h: Likewise.
45892         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
45893         file
45894
45895         * lib/regex.h: Likewise.
45896         * lib/strndup.c: Likewise.
45897         * lib/strnlen.c: New file, from glibc.
45898
45899 2000-05-03  Jim Meyering  <meyering@lucent.com>
45900
45901         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
45902
45903 2000-05-02  Paul Eggert  <eggert@twinsun.com>
45904
45905         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
45906         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
45907         compile-time test, rather than inspecting host and OS, to
45908         decide whether to define _LARGEFILE_SOURCE.
45909
45910 2000-05-01  Jim Meyering  <meyering@lucent.com>
45911
45912         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
45913
45914         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
45915         Based on a patch from Bruno Haible.
45916
45917 2000-05-01  Jim Meyering  <meyering@lucent.com>
45918
45919         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
45920
45921 2000-04-29  Jim Meyering  <meyering@lucent.com>
45922
45923         * lib/path-concat.c: Declare strdup only if it's not defined.
45924         * lib/canon-host.c: Likewise.
45925
45926 2000-04-28  Jim Meyering  <meyering@lucent.com>
45927
45928         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
45929         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
45930         is included first, then limits.h is included by locale.h by libintl.h.
45931         From John David Anglin.
45932
45933 2000-04-25  Jim Meyering  <meyering@lucent.com>
45934
45935         * lib/makepath.c (S_IRWXUGO): Define.
45936         (make_path): Always perform explicit chmod if MODE specifies any
45937         of the `special' permission bits.  Prompted by a bug report against
45938         install from Mate Wierdl and Joost van Baal.
45939
45940 2000-04-18  Jim Meyering  <meyering@lucent.com>
45941
45942         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
45943         (jm_PREREQ): Use it.
45944
45945 2000-04-18  Jim Meyering  <meyering@lucent.com>
45946
45947         * lib/README: New file.
45948
45949         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
45950         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
45951
45952 2000-04-17  Jim Meyering  <meyering@lucent.com>
45953
45954         Get it right :-)
45955         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
45956         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
45957         Suggestion from Akim Demaille.
45958
45959 2000-04-17  Jim Meyering  <meyering@lucent.com>
45960
45961         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
45962         the definition of it to rpl_strftime also defined-away the system's
45963         declaration.
45964
45965 2000-04-15  Jim Meyering  <meyering@lucent.com>
45966
45967         Use `C' to denote so-called `contiguous' files, the same way
45968         that tar does.
45969         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
45970         (ftypelet): Use S_ISCTG.
45971         From Michael Deutschmann.
45972
45973 2000-04-14  Jim Meyering  <meyering@lucent.com>
45974
45975         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
45976         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
45977         clobbered.
45978
45979 2000-04-14  Jim Meyering  <meyering@lucent.com>
45980
45981         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
45982
45983 2000-04-13  Jim Meyering  <meyering@lucent.com>
45984
45985         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
45986         AH_VERBATIM to insert required #ifndef into config.h.in.
45987         Suggestion from Akim Demaille.
45988
45989 2000-04-12  Jim Meyering  <meyering@lucent.com>
45990
45991         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
45992         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
45993         Christian Krackowizer.
45994
45995         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
45996         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
45997         (AC_SYS_LARGEFILE): Require.
45998         (AM_C_PROTOTYPES): Require.
45999
46000 2000-04-08  Jim Meyering  <meyering@lucent.com>
46001
46002         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
46003         names don't conflict.  Reported by Eli Zaretskii.
46004
46005 2000-04-07  Jim Meyering  <meyering@lucent.com>
46006
46007         * lib/putenv.c: Move inclusion of errno.h so it follows that of
46008         sys/types.h, to work around system header problems on AIX 3.2.5.
46009         From Bruno Haible.
46010
46011 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
46012
46013         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
46014         bug.  Deal with the different error behavior of Irix iconv.
46015
46016 2000-04-05  Paul Eggert  <eggert@twinsun.com>
46017
46018         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
46019         IRIX if the installer said otherwise.
46020
46021 2000-04-05  Jim Meyering  <meyering@lucent.com>
46022
46023         Portability tweaks required for ultrix4.3.
46024         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
46025         (jm_CHECK_DECLS): Add getutent to the list of functions.
46026         (_jm_DECL_HEADERS): Add utmpx.h.
46027         From John David Anglin.
46028
46029         * m4/strftime.m4: Back out the 2000-04-02 change.
46030         Instead of that change, simply undefine putenv in the test program.
46031
46032 2000-04-05  Jim Meyering  <meyering@lucent.com>
46033
46034         Portability tweaks required for ultrix4.3.
46035         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
46036         getutent.
46037         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
46038         * lib/canon-host.c: Declare strdup.
46039         * lib/path-concat.c: Likewise.
46040         From John David Anglin.
46041
46042 2000-04-04  Jim Meyering  <meyering@lucent.com>
46043
46044         Be more DOS 8.3-friendly.
46045         * lib/ref-add.sin: Renamed from ref-add.sed.in.
46046         * lib/ref-del.sin: Renamed from ref-del.sed.in.
46047         * lib/Makefile.am: Reflect renaming.
46048         Reported by Eli Zaretskii.
46049
46050         Use a temporary file name that won't clash with `charset.alias'
46051         in the DOS 8.3 name space.
46052         * lib/Makefile.am (charset_tmp): Define.
46053         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
46054         (uninstall-local): Likewise.
46055         Reported by Eli Zaretskii.
46056
46057 2000-04-03  Jim Meyering  <meyering@lucent.com>
46058
46059         * m4/gettext.m4: Fix typo in comment.
46060
46061         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
46062         textutils/configure.in).  Suggestion from Paul Eggert.
46063         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
46064
46065 2000-04-02  Paul Eggert  <eggert@twinsun.com>
46066
46067         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
46068         variable in the shell rather than using putenv, which isn't
46069         portable.  This avoids the configure-time inter-test dependency
46070         on the potentially-renamed putenv function.
46071
46072 2000-03-30  Paul Eggert  <eggert@twinsun.com>
46073
46074         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
46075         before checking struct stat.st_blksize, so that
46076         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
46077
46078 2000-03-29  Paul Eggert  <eggert@twinsun.com>
46079
46080         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
46081         since strftime.c uses HAVE_STRFTIME to decide whether to use
46082         the underlying strftime.
46083
46084 2000-03-29  Paul Eggert  <eggert@twinsun.com>
46085
46086         * lib/time/strftime.c (my_strftime): Make sure we call the system
46087         strftime, not ourselves, when invoking the underlying strftime.
46088
46089 2000-03-24  Jim Meyering  <meyering@lucent.com>
46090
46091         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
46092         (charset_alias): Define.
46093         (install-exec-local): Factor out common code.
46094         (uninstall-local): Split lines longer than 80.
46095         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
46096         (SUFFIXES): Define.
46097         (.sed.in.sed): New rule.  Don't redirect directly to $@.
46098         (CLEANFILES): Add ref-add.sed and ref-del.sed.
46099
46100 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
46101
46102         * lib/config.charset: Output a line containing "Packages using this
46103         file".
46104         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
46105         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
46106         ref-del.sed): New rules.
46107
46108 2000-03-17  Jim Meyering  <meyering@lucent.com>
46109
46110         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
46111         Otherwise, include <strings.h>
46112
46113 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
46114
46115         * lib/unicodeio.c (utf8_wctomb): New function.
46116         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
46117         format instead of in UCS-4 with platform dependent endianness.
46118
46119 2000-03-10  Jim Meyering  <meyering@lucent.com>
46120
46121         * m4/lib-check.m4: Look for getspnam in -lgen, too.
46122         From Marco Franzen.
46123
46124 2000-03-07  Paul Eggert  <eggert@twinsun.com>
46125
46126         * lib/savedir.c (savedir): Work even if directory size is
46127         negative; this can happen with some screwy NFS configurations.
46128
46129 2000-03-06  Jim Meyering  <meyering@lucent.com>
46130
46131         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
46132         if it's NULL (because we ran out of memory).  From Bruno Haible.
46133
46134 2000-03-05  Jim Meyering  <meyering@lucent.com>
46135
46136         * lib/localcharset.c ("path-concat.h"): Include.
46137         (get_charset_aliases): Use path_concat instead of ANSI string
46138         concatenation.
46139
46140         * lib/unicodeio.h (PARAMS): Define.
46141         Use it to guard prototype.
46142
46143 2000-03-04  Jim Meyering  <meyering@lucent.com>
46144
46145         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
46146         for lib/localcharset.c.
46147
46148 2000-03-04  Jim Meyering  <meyering@lucent.com>
46149
46150         * lib/Makefile.am (install-exec-local): Create $(libdir) before
46151         installing into it.
46152         (uninstall-local): Uncomment this rule so `make distcheck' works
46153         once again.
46154
46155         * lib/unicodeio.c (<errno.h>): Include it.
46156         (errno): Declare if not defined.
46157
46158         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
46159
46160         * lib/config.charset: New version, incorporating remarks from a linux
46161         i18n mailing list.  From Bruno Haible.
46162
46163 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
46164
46165         * m4/codeset.m4: New file.
46166         * m4/iconv.m4: New file.
46167         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
46168
46169 2000-03-03  Jim Meyering  <meyering@lucent.com>
46170
46171         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
46172
46173 2000-03-02  Jim Meyering  <meyering@lucent.com>
46174
46175         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
46176         the messages come out on separate lines.
46177
46178         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
46179         rather than jm_CHECK_DECLARATIONS.
46180         * m4/decl.m4: Remove now-unused file.
46181
46182         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
46183         geteuid.
46184
46185 2000-03-02  Jim Meyering  <meyering@lucent.com>
46186
46187         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
46188
46189 2000-03-01  Jim Meyering  <meyering@lucent.com>
46190
46191         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
46192         * lib/unicodeio.c: Likewise.
46193
46194 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
46195
46196         * lib/config.charset: New file.
46197         * lib/localcharset.c: New file.
46198         * lib/unicodeio.h, lib/unicodeio.c: New files.
46199         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
46200         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
46201         (noinst_HEADERS): Add unicodeio.h.
46202         (all-local, install-exec-local, charset.alias): New targets.
46203
46204 2000-02-28  Paul Eggert  <eggert@twinsun.com>
46205
46206         * lib/quotearg.c (ALERT_CHAR): New macro.
46207         (quotearg_buffer_restyled): Use it.
46208
46209 2000-02-27  Jim Meyering  <meyering@lucent.com>
46210
46211         * m4/check-decl.m4: Add getenv to the list.
46212
46213 2000-02-27  Jim Meyering  <meyering@lucent.com>
46214
46215         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
46216         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
46217
46218         * lib/backupfile.c: Guard inclusion of stdlib.h with
46219         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
46220         Declare malloc if needed.
46221
46222         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
46223         `#ifndef HAVE_DECL..'
46224         now that autoconf always defines the HAVE_DECL_ symbols.
46225         * lib/human.c: Likewise.
46226         * lib/same.c: Likewise.
46227         * lib/strtoumax.c: Likewise.
46228
46229         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
46230         declaration check was not run.
46231         * lib/hash.c: Likewise.
46232         * lib/human.c: Likewise.
46233         * lib/same.c: Likewise.
46234         * lib/strtoumax.c: Likewise.
46235
46236         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
46237         `.', then first look up the entire `.'-containing string as a login
46238         name.
46239
46240 2000-02-23  Jim Meyering  <meyering@lucent.com>
46241
46242         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
46243         in place of my hack.
46244
46245 2000-02-18  Paul Eggert  <eggert@twinsun.com>
46246
46247         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
46248         (textint): New typedef.
46249         (parser_control): Member year changed from int to textint.
46250         All uses changed.
46251         (YYSTYPE): Removed; replaced by %union with int and textint members.
46252         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
46253         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
46254         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
46255         (tSNUMBER, tUNUMBER): Now of type <textintval>.
46256         (date, number, to_year): Use width of number in digits, not its value,
46257         to determine whether it's a 2-digit year, or a 2-digit time.
46258         (yylex): Store number of digits of numeric tokens.
46259         Reported by John Kendall.
46260
46261         (parser_control): Changed from struct parser_control to typedef (for
46262         consistency).  All uses changed.
46263
46264         (tID): Removed; not used.
46265         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
46266
46267 2000-02-14  Paul Eggert  <eggert@twinsun.com>
46268
46269         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
46270         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
46271
46272 2000-02-12  Jim Meyering  <meyering@lucent.com>
46273
46274         * lib/userspec.c (ISDIGIT): Define it.
46275         (isdigit): Remove definition.
46276         (is_number): Use ISDIGIT, not isdigit.
46277         <libintl.h>: Include.
46278         (_ and N_): Define.
46279         (parse_user_spec): Mark translatable strings.
46280
46281 2000-02-10  Jim Meyering  <meyering@lucent.com>
46282
46283         With these changes, nanosleep.[ch] are finally enough like the other
46284         lib/* replacement files to compile on a few more losing systems.
46285
46286         * lib/nanosleep.h: Don't include config.h.
46287         Remove prototype from declaration of nanosleep.
46288         (PARAMS): Remove now-unneeded definition.
46289         * lib/nanosleep.c: #undef nanosleep.
46290         (rpl_nanosleep): Rename from nanosleep.
46291
46292 2000-02-10  Jim Meyering  <meyering@lucent.com>
46293
46294         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
46295         gnu_nanosleep to rpl_nanosleep.
46296
46297 2000-02-09  Jim Meyering  <meyering@lucent.com>
46298
46299         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
46300         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
46301
46302 2000-02-08  Akim Demaille  <akim@epita.fr>
46303
46304         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
46305         `[' and `]' and remove uses of `changequote'.
46306         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
46307         (AC_SYS_LARGEFILE): Likewise.
46308         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
46309         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
46310         of changequote.
46311         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
46312         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
46313         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
46314         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
46315
46316 2000-02-05  Jim Meyering  <meyering@lucent.com>
46317
46318         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
46319         Remove explicit use of AC_HEADER_TIME.  It is required by
46320         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
46321         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
46322         in autoconf whereby the expansion of the latter ended up preceding
46323         the expansion of its prerequisite, AC_HEADER_TIME.
46324         Reported by Volker Borchert.
46325
46326 2000-02-03  Jim Meyering  <meyering@lucent.com>
46327
46328         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
46329
46330 2000-02-03  Jim Meyering  <meyering@lucent.com>
46331
46332         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
46333         rather than with `#if HAVE_UTMPNAME'.
46334
46335 2000-02-02  Jim Meyering  <meyering@lucent.com>
46336
46337         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
46338         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
46339         Reported by Eli Zaretskii.
46340
46341 2000-02-01  Jim Meyering  <meyering@lucent.com>
46342
46343         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
46344
46345 2000-01-31  Jim Meyering  <meyering@lucent.com>
46346
46347         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
46348         functions.  Add the time.h and sys/time.h headers along with the
46349         AC_REQUIRE'ment of AC_HEADER_TIME.
46350
46351 2000-01-31  Jim Meyering  <meyering@lucent.com>
46352
46353         * lib/nanosleep.h (nanosleep): Guard declaration with
46354         `#if ! HAVE_DECL_NANOSLEEP'.
46355         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
46356         the declaration in that vendor's sys/timers.h.
46357         Reported by Christian Krackowizer.
46358
46359         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
46360         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
46361         (ISPRINT): Likewise.
46362         Reported by Tom Tromey.
46363
46364 2000-01-30  Jim Meyering  <meyering@lucent.com>
46365
46366         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
46367
46368         * m4/prereq.m4 (utmp_includes): Define.
46369         Check for ut_user and ut_name members in both struct utmpx
46370         and struct utmp.
46371
46372 2000-01-30  Jim Meyering  <meyering@lucent.com>
46373
46374         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
46375         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
46376         header files where only utmpx.ut_user is declared.
46377
46378         * lib/readutmp.h (UT_USER): Define.
46379
46380 2000-01-29  Jim Meyering  <meyering@lucent.com>
46381
46382         * m4/lib-check.m4: New file containing library-related checks from
46383         fileutils and sh-utils (textutils had none).
46384
46385 2000-01-28  Jim Meyering  <meyering@lucent.com>
46386
46387         * m4/perl.m4: Change format of warning message to look more like that
46388         from the missing script.  Suggestion from François Pinard.
46389
46390 2000-01-25  Jim Meyering  <meyering@lucent.com>
46391
46392         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
46393         well as time.h in the compile check.
46394         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
46395         Fix typo in cross-compiling case: s/yes/no/.
46396
46397 2000-01-23  Jim Meyering  <meyering@lucent.com>
46398
46399         * m4/jm-macros.m4: Move df-related tests here from
46400         fileutils/configure.in
46401
46402         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
46403         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
46404
46405         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
46406         s/space/ac_fsusage_space/.
46407         (jm_FILE_SYSTEM_USAGE): Take two parameters.
46408
46409         * m4/ftruncate.m4: New file (derived from part of
46410         fileutils/configure.in).
46411         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
46412         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
46413
46414         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
46415         AC_SUBST these here, rather than just in sh-util/configure.in, so
46416         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
46417         all the same.
46418         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
46419         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
46420         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
46421         (AC_SUBST(POW_LIBM)): Likewise.
46422         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
46423
46424 2000-01-23  Jim Meyering  <meyering@lucent.com>
46425
46426         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
46427         obstack.c.
46428
46429 2000-01-22  Jim Meyering  <meyering@lucent.com>
46430
46431         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
46432
46433         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
46434
46435         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
46436         configure.in
46437         (AC_CHECK_HEADERS): Likewise for sh-utils.
46438         (AC_CHECK_HEADERS): Likewise for textutils.
46439         Merge the three lists of headers.
46440
46441         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
46442         from fileutils' configure.in.
46443
46444         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
46445         code. Moved tests into their own function (_jm_DECL_HEADERS) in
46446         check-decl.m4.
46447
46448         * m4/check-decl.m4: Use #if rather than #ifdef.
46449         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
46450         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
46451         (_jm_DECL_HEADERS): Define new function.
46452         (jm_CHECK_DECLARATIONS): Require it.
46453
46454 2000-01-22  Jim Meyering  <meyering@lucent.com>
46455
46456         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
46457         [! HAVE_DECL_STRTOULL]: Declare strtoull.
46458         Required for some AIX systems.  Reported by Christian Krackowizer.
46459         [TESTING] (main): New function.
46460
46461         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
46462         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
46463         letters.
46464
46465         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
46466         iswprint.
46467
46468         * lib/strverscmp.c (ISDIGIT): Define.
46469         (strverscmp): Use ISDIGIT, not isdigit.
46470
46471 2000-01-19  Jim Meyering  <meyering@lucent.com>
46472
46473         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
46474         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
46475         defines `struct timespec' in <sys/time.h>
46476
46477         * m4/c-bs-a.m4: Remove uses of changequote altogether.
46478         Thanks to Akim for explaining.
46479
46480 2000-01-17  Paul Eggert  <eggert@twinsun.com>
46481
46482         * lib/nanosleep.c (nanosleep):
46483         Don't use SA_INTERRUPT to decide whether to call sigaction, as
46484         POSIX.1 doesn't require SA_INTERRUPT and some systems
46485         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
46486         it's been part of POSIX.1 since day 1 (in 1988).
46487
46488 2000-01-17  Jim Meyering  <meyering@lucent.com>
46489
46490         * lib/interlock: Remove unused file.  Reported by François Pinard.
46491
46492 2000-01-16  Paul Eggert  <eggert@twinsun.com>
46493
46494         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
46495         alert, backslash, formfeed, and vertical tab unnecessarily in
46496         shell quoting style.
46497
46498 2000-01-16  Jim Meyering  <meyering@lucent.com>
46499
46500         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
46501         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
46502         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
46503         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
46504
46505 2000-01-16  Jim Meyering  <meyering@lucent.com>
46506
46507         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
46508         because the latter didn't work.
46509
46510 2000-01-15  Jim Meyering  <meyering@lucent.com>
46511
46512         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
46513         (AC_REPLACE_FUNCS): Add memcpy and memset.
46514         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
46515         Add strpbrk.
46516         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
46517
46518 2000-01-12  Jim Meyering  <meyering@lucent.com>
46519
46520         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
46521         (jm_PREREQ): Use it.
46522         (jm_PREREQ_READUTMP): New macro.
46523         (jm_PREREQ): Use it.
46524
46525 2000-01-11  Paul Eggert  <eggert@twinsun.com>
46526
46527         Quote multibyte characters correctly.
46528         * m4/c-bs-a.m4: New file.
46529         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
46530         (jm_PREREQ): Use it.
46531
46532 2000-01-11  Paul Eggert  <eggert@twinsun.com>
46533
46534         * m4/uintmax_t.m4: Port to autoconf 2.13.
46535
46536 2000-01-08  Jim Meyering  <meyering@ascend.com>
46537
46538         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
46539         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
46540
46541 2000-01-04  Jim Meyering  <meyering@ascend.com>
46542
46543         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
46544         jm_STRUCT_DIRENT_D_TYPE.
46545         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
46546         jm_STRUCT_DIRENT_D_INO.
46547         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
46548         jm_STRUCT_UTIMBUF.
46549         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
46550         renamings.
46551         * m4/utime.m4: Likewise.
46552
46553         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
46554         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
46555
46556 2000-01-03  Paul Eggert  <eggert@twinsun.com>
46557
46558         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
46559         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
46560
46561 2000-01-02  Jim Meyering  <meyering@ascend.com>
46562
46563         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
46564         remember if this is necessary.
46565
46566 1999-12-26  Jim Meyering  <meyering@ascend.com>
46567
46568         * m4/jm-macros.m4: Use it here.
46569         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
46570
46571 1999-12-23  Jim Meyering  <meyering@ascend.com>
46572
46573         * m4/jm-macros.m4: Check for clock_gettime (moved from
46574         fileutils/configure.in)
46575         Check for gettimeofday.
46576
46577 1999-12-20  Jim Meyering  <meyering@ascend.com>
46578
46579         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
46580         autoconf-2.14a-1999-12-20.
46581
46582 1999-12-19  Jim Meyering  <meyering@ascend.com>
46583
46584         * m4/lstat-slash.m4: New file.
46585         * m4/jm-macros.m4: Use the new macro:
46586         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
46587
46588 1999-12-07  Jim Meyering  <meyering@ascend.com>
46589
46590         * m4/perl.m4: Require that File::Compare be available, too.
46591         Too many systems seem to lack it.
46592
46593         * m4/strftime.m4: Add checks for most of the cpp macros tested in
46594         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
46595
46596 1999-11-18  Paul Eggert  <eggert@twinsun.com>
46597
46598         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
46599         problem with the QNX 4.25 shell, which doesn't propagate exit
46600         status of failed commands inside shell assignments.
46601
46602 1999-11-17  Jim Meyering  <meyering@ascend.com>
46603
46604         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
46605
46606 1999-11-07  Jim Meyering  <meyering@ascend.com>
46607
46608         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
46609
46610 1999-11-06  Jim Meyering  <meyering@ascend.com>
46611
46612         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
46613         * m4/jm-macros.m4 (jm_MACROS): Use it here.
46614
46615 1999-11-05  Jim Meyering  <meyering@ascend.com>
46616
46617         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
46618         configure.in of textutils, fileutils, and sh-utils into this one
46619         (shared between those packages) file.
46620         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
46621         AC_STRUCT_ST_BLKSIZE.
46622
46623 1999-11-03  Jim Meyering  <meyering@ascend.com>
46624
46625         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
46626         of AC_CHECK_TYPE checks includes unistd.h.
46627         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
46628         Suggestion from Akim Demaille.
46629
46630 1999-10-30  Jim Meyering  <meyering@ascend.com>
46631
46632         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
46633         m4-quoted string.
46634         * m4/ls-mntd-fs.m4: Likewise.
46635         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
46636         * m4/jm-winsz1.m4: Likewise.
46637
46638         * m4/const.m4: Remove file, since the fix made it into the experimental
46639         version of autoconf.
46640         * m4/mktime.m4: Likewise.
46641
46642         * m4/check-type.m4: Remove file, now that the latest version of
46643         AC_CHECK_TYPE takes a third arg to specify additional #includes.
46644
46645         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
46646         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
46647         AC_CHECK_TYPE.
46648
46649 1999-10-04  Jim Meyering  <meyering@ascend.com>
46650
46651         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
46652
46653 1999-09-22  Paul Eggert  <eggert@twinsun.com>
46654
46655         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
46656         2.95.1 bug with HP-UX 10.20.
46657
46658 1999-09-17  Jim Meyering  <meyering@ascend.com>
46659
46660         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
46661         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
46662         due to missing strdup (against sh-utils-2.0).
46663
46664 1999-08-29  Jim Meyering  <meyering@ascend.com>
46665
46666         * m4/jm-macros.m4: Require jm_BISON.
46667         * m4/bison.m4: New file.
46668
46669 1999-08-17  Paul Eggert  <eggert@twinsun.com>
46670
46671         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
46672         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
46673
46674 1999-08-05  Jim Meyering  <meyering@ascend.com>
46675
46676         * m4/getline.m4: Rename test file from conftestdata to conftest.data
46677         to avoid conflicts with `conftest' on 8+3 filesystems.
46678         Suggestion from Eli Zaretskii.
46679
46680 1999-08-04  Jim Meyering  <meyering@ascend.com>
46681
46682         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
46683         fileutils and sh-utils (textutils's getline test was inadequate).
46684         (AM_FUNC_GETLINE): Run this test.
46685         (AC_CHECK_FUNCS): Check for getdelim.
46686         Reported by Bob Proulx.
46687
46688 1999-08-02  Jim Meyering  <meyering@ascend.com>
46689
46690         * m4/jm-macros.m4: Add a comment.
46691
46692 1999-08-01  Paul Eggert  <eggert@twinsun.com>
46693
46694         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
46695         <inttypes.h> defines strtoumax as a macro (and not as a
46696         function).
46697
46698 1999-08-01  Paul Eggert  <eggert@twinsun.com>
46699
46700         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
46701         that we can shift, multiply and divide unsigned long long
46702         values; Ultrix cc can't do it.
46703
46704 1999-08-01  Paul Eggert  <eggert@twinsun.com>
46705
46706         * m4/mktime.m4: New file, which is a preview of what should appear
46707         in the next public autoconf release.
46708
46709 1999-08-01  Paul Eggert  <eggert@twinsun.com>
46710
46711         * m4/lfs.m4: Remove this file.
46712         * m4/largefile.m4: New file.  It contains the old contents of
46713         lfs.m4, except that all names with prefix AC_LFS have been
46714         changed to use the prefix AC_SYS_LARGEFILE instead, to be
46715         compatible with future autoconf versions.  Also, some minor m4
46716         quoting problems have been fixed.
46717
46718 1999-08-01  Paul Eggert  <eggert@twinsun.com>
46719
46720         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
46721         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
46722         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
46723         and simplify the shell code.
46724
46725 1999-08-01  Jim Meyering  <meyering@ascend.com>
46726
46727         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
46728         m4.
46729
46730 1999-07-20  Jim Meyering  <meyering@ascend.com>
46731
46732         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
46733
46734 1999-07-15  Jim Meyering  <meyering@ascend.com>
46735
46736         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
46737
46738 1999-05-22  Jim Meyering  <meyering@ascend.com>
46739
46740         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
46741
46742 1999-05-20  Jim Meyering  <meyering@ascend.com>
46743
46744         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
46745         Add a colon after each `then' in case $4 is empty.
46746
46747 1999-05-16  Jim Meyering  <meyering@ascend.com>
46748
46749         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
46750
46751 1999-05-10  Jim Meyering  <meyering@ascend.com>
46752
46753         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
46754
46755         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
46756         AC_FUNC_MKTIME.
46757
46758 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
46759
46760         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
46761
46762 1999-05-04  Paul Eggert  <eggert@twinsun.com>
46763
46764         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
46765         not CPPFLAGS, so that linking works correctly in IRIX.
46766
46767 1999-04-30  Paul Eggert  <eggert@twinsun.com>
46768
46769         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
46770
46771 1999-04-20  Paul Eggert  <eggert@twinsun.com>
46772
46773         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
46774         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
46775         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
46776         jm_AC_TYPE_UNSIGNED_LONG_LONG.
46777         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
46778
46779         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
46780
46781 1999-04-20  Jim Meyering  <meyering@ascend.com>
46782
46783         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
46784         AC_REPLACE xstroull if necessary.  From Paul Eggert.
46785         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
46786
46787 1999-04-18  Jim Meyering  <meyering@ascend.com>
46788
46789         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
46790         * m4/jm-macros.m4: Use it.
46791
46792 1999-04-06  Jim Meyering  <meyering@ascend.com>
46793
46794         * m4/strftime.m4: Remove test for %f.
46795
46796 1999-03-29  Jim Meyering  <meyering@ascend.com>
46797
46798         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
46799         superset of the AC_TYPE_* checks in the textutils, fileutils,
46800         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
46801         AC_TYPE_PID_T.
46802
46803 1999-03-28  Jim Meyering  <meyering@ascend.com>
46804
46805         * m4/jm-macros.m4: Define GNU_PACKAGE here.
46806         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
46807         replaced e.g., in the *.sh files of the sh-utils.
46808
46809 1999-03-20  Jim Meyering  <meyering@ascend.com>
46810
46811         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
46812         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
46813         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
46814
46815 1999-03-19  Jim Meyering  <meyering@ascend.com>
46816
46817         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
46818
46819 1999-03-12  Jim Meyering  <meyering@ascend.com>
46820
46821         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
46822
46823 1999-03-07  Jim Meyering  <meyering@ascend.com>
46824
46825         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
46826         declared.
46827
46828 1999-02-17  Jim Meyering  <meyering@ascend.com>
46829
46830         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
46831         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
46832
46833 1999-02-07  Jim Meyering  <meyering@ascend.com>
46834
46835         * m4/group-member.m4: New file -- extracted from sh-utils'
46836         configure.in.
46837
46838         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
46839         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
46840
46841 1999-02-06  Jim Meyering  <meyering@ascend.com>
46842
46843         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
46844         * m4/fnmatch.m4: Likewise.
46845         * m4/getgroups.m4: Likewise.
46846         * m4/lstat.m4: Likewise.
46847         * m4/malloc.m4: Likewise.
46848         * m4/putenv.m4: Likewise.
46849         * m4/realloc.m4: Likewise.
46850         * m4/regex.m4: Likewise.
46851         * m4/stat.m4: Likewise.
46852         * m4/strftime.m4: Likewise.
46853         Suggestion from Alain Magloire.
46854
46855         * m4/chown.m4: Use `.$ac_objext', not `.o'.
46856         * m4/fnmatch.m4: Likewise.
46857         * m4/getgroups.m4: Likewise.
46858         * m4/getline.m4: Likewise.
46859         * m4/lstat.m4: Likewise.
46860         * m4/malloc.m4: Likewise.
46861         * m4/memcmp.m4: Likewise.
46862         * m4/putenv.m4: Likewise.
46863         * m4/realloc.m4: Likewise.
46864         * m4/regex.m4: Likewise.
46865         * m4/stat.m4: Likewise.
46866         * m4/strftime.m4: Likewise.
46867         Suggestion from Alain Magloire.
46868
46869         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
46870         an argument.
46871
46872         * m4/regex.m4: Add a run-time Test for proper operation of
46873         re_compile_pattern.
46874
46875 1999-01-31  Jim Meyering  <meyering@ascend.com>
46876
46877         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
46878
46879 1999-01-30  Jim Meyering  <meyering@ascend.com>
46880
46881         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
46882
46883         * m4/jm-mktime.m4: Make this a wrapper around the official
46884         AM_FUNC_MKTIME rather than my private copy, now that the official one
46885         is up to date.
46886         * m4/mktime.m4: Remove file.
46887
46888         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
46889         * m4/uptime.m4: Likewise.
46890         * m4/uintmax_t.m4: Likewise.
46891
46892 1999-01-28  Jim Meyering  <meyering@ascend.com>
46893
46894         * m4/jm-macros.m4: Use jm_AFS.
46895         * m4/afs.m4: New file (from fileutils' configure.in).
46896
46897         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
46898         * m4/chown.m4: Likewise.
46899         * m4/d-ino.m4: Likewise.
46900         * m4/d-type.m4: Likewise.
46901         * m4/fnmatch.m4: Likewise.
46902         * m4/getgroups.m4: Likewise.
46903         * m4/gettext.m4: Likewise.
46904         * m4/jm-mktime.m4: Likewise.
46905         * m4/jm-winsz2.m4: Likewise.
46906         * m4/lcmessage.m4: Likewise.
46907         * m4/ls-mntd-fs.m4: Likewise.
46908         * m4/malloc.m4: Likewise.
46909         * m4/memcmp.m4: Likewise.
46910         * m4/putenv.m4: Likewise.
46911         * m4/realloc.m4: Likewise.
46912         * m4/st_mtim.m4: Likewise.
46913         * m4/strftime.m4: Likewise.
46914
46915 1999-01-16  Jim Meyering  <meyering@ascend.com>
46916
46917         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
46918         (ARGMATCH_DIE_DECL): Define.
46919
46920 1999-01-12  Jim Meyering  <meyering@ascend.com>
46921
46922         * m4/Makefile.am.in: Rewrite to avoid using fmt.
46923         Reported by Lars Hecking.
46924
46925 1999-01-10  Jim Meyering  <meyering@ascend.com>
46926
46927         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
46928         gross kludge.
46929         * m4/inttypes_h.m4: Likewise.
46930         * m4/lstat.m4: Likewise.
46931         * m4/malloc.m4: Likewise.
46932         * m4/readdir.m4: Likewise.
46933         * m4/realloc.m4: Likewise.
46934         * m4/st_dm_mode.m4: Likewise.
46935         * m4/stat.m4: Likewise.
46936         * m4/utimbuf.m4: Likewise.
46937         * m4/utimes.m4: Likewise.
46938
46939         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
46940         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
46941         comments in config.h.in are meaningful.
46942
46943         * m4/jm-macros.m4: Require autoconf-2.13 here.
46944
46945         * m4/regex.m4: By default, don't use the included regex.c on systems
46946         with glibc 2.  Suggestion from Uli Drepper.
46947
46948 1999-01-02  Jim Meyering  <meyering@ascend.com>
46949
46950         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
46951
46952 1998-12-18  Jim Meyering  <meyering@ascend.com>
46953
46954         * m4/Makefile.am.in (Makefile.am): Simplify rule.
46955         Based on a suggestion from Lars Hecking.
46956
46957 1998-11-16  Paul Eggert  <eggert@twinsun.com>
46958
46959         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
46960
46961 1998-11-16  Jim Meyering  <meyering@ascend.com>
46962
46963         * m4/lfs.m4: Double-quote the `uname...` expression.
46964
46965 1998-11-14  Jim Meyering  <meyering@ascend.com>
46966
46967         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
46968         * m4/stat.m4: Likewise.
46969
46970 1998-11-03  Jim Meyering  <meyering@ascend.com>
46971
46972         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
46973         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
46974
46975 1998-10-18  Jim Meyering  <meyering@ascend.com>
46976
46977         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
46978
46979 1998-10-17  Jim Meyering  <meyering@ascend.com>
46980
46981         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
46982         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
46983         calls for those previously hard-coded headers.  Instead, take a new
46984         parameter.
46985         (jm_CHECK_DECLARATIONS): Reflect interface change.
46986         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
46987         (jm_CHECK_DECL_LOCALTIME_R): New macro.
46988
46989         * m4/mktime.m4: Test for spring-forward gap before long-running test.
46990
46991 1998-10-14  Jim Meyering  <meyering@ascend.com>
46992
46993         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
46994         instead of "TZ=America/Vancouver".  From Paul Eggert.
46995
46996 1998-10-11  Jim Meyering  <meyering@ascend.com>
46997
46998         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
46999         This adds a test for a recently added compatibility fix for mktime.c.
47000         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
47001
47002 1998-09-27  Jim Meyering  <meyering@ascend.com>
47003
47004         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
47005
47006         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
47007         ../configure.in, including a change from Gordon Matzigkeit to allow
47008         cross-compiling for the Hurd.
47009
47010         * m4/glibc.m4: New file/macro to test for the GNU C Library
47011         versions 1 and 2.  From Gordon Matzigkeit.
47012         Indent.
47013
47014 1998-09-21  Jim Meyering  <meyering@ascend.com>
47015
47016         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
47017
47018 1998-08-18  Paul Eggert  <eggert@twinsun.com>
47019
47020         Port nanosecond-resolution times to UnixWare 2.1.2 and
47021         pedantic Solaris 2.6.
47022
47023         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
47024         AC_STRUCT_ST_MTIM.
47025         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
47026         Generate name of ns member, instead of just 1 or undef.
47027         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
47028
47029 1998-08-15  Jim Meyering  <meyering@ascend.com>
47030
47031         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
47032         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
47033         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
47034         instead of jm_TYPE_SSIZE_T.
47035
47036 1998-08-12  Jim Meyering  <meyering@ascend.com>
47037
47038         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
47039
47040 1998-08-02  Jim Meyering  <meyering@ascend.com>
47041
47042         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
47043         in acconfig.h manually.
47044
47045 1998-07-31  Paul Eggert  <eggert@twinsun.com>
47046
47047         * m4/st_mtim.m4: New file.
47048
47049 1998-07-28  Jim Meyering  <meyering@ascend.com>
47050
47051         * m4/utimes.m4: Undef stat.
47052
47053 1998-07-25  Jim Meyering  <meyering@ascend.com>
47054
47055         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
47056         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
47057
47058 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
47059
47060         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
47061         uid and gid actually remain unchanged.
47062
47063 1998-07-07  Jim Meyering  <meyering@ascend.com>
47064
47065         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
47066
47067 1998-07-04  Jim Meyering  <meyering@ascend.com>
47068
47069         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
47070         to prove that this macro can be used in packages without regex.c.
47071
47072 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
47073
47074         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
47075         is to be used.
47076
47077 1998-07-03  Jim Meyering  <meyering@ascend.com>
47078
47079         * m4/gettext.m4: Add -lintl if it's found to be necessary.
47080
47081         * m4/gettext.m4: New file -- from gettext-0.10.35.
47082         * m4/lcmessage.m4: Likewise.
47083         * m4/progtest.m4: Likewise.
47084
47085         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
47086         * m4/jm-macros.m4: Require the new macro.
47087
47088 1998-06-29  Jim Meyering  <meyering@ascend.com>
47089
47090         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
47091         for the definition of NGROUPS (used in a system header included
47092         by sys/mount.h).
47093
47094 1998-06-28  Jim Meyering  <meyering@ascend.com>
47095
47096         * m4/ls-mntd-fs.m4: New file.
47097         * m4/fstypename.m4: New file.
47098
47099         * m4/jm-macros.m4: Require the new macro.
47100         * m4/jm-glibc-io.m4: New file.
47101
47102 1998-05-19  Jim Meyering  <meyering@ascend.com>
47103
47104         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
47105         * m4/lchown.m4: New file.
47106
47107         * m4/Makefile.am.in: New file.
47108         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
47109
47110 1998-05-14  Jim Meyering  <meyering@ascend.com>
47111
47112         * m4/Makefile.am (EXTRA_DIST): Add them.
47113         * m4/jm-macros.m4: New file.
47114         * m4/utimbuf.m4: New file.
47115
47116 1998-05-12  Jim Meyering  <meyering@ascend.com>
47117
47118         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
47119
47120 1998-05-11  Jim Meyering  <meyering@ascend.com>
47121
47122         * m4/isc-posix.m4: New file.
47123
47124 1998-05-10  Jim Meyering  <meyering@ascend.com>
47125
47126         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
47127
47128 1998-05-09  Jim Meyering  <meyering@ascend.com>
47129
47130         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
47131         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
47132         with automake.
47133
47134         * m4/ssize_t.m4: New file.
47135         * m4/mktime.m4: Remove file -- the new automake has this now.
47136
47137 1998-04-26  Jim Meyering  <meyering@ascend.com>
47138
47139         * m4/assert.m4: New file.
47140         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
47141
47142 1998-04-05  Jim Meyering  <meyering@ascend.com>
47143
47144         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
47145         (jm_PREREQ): Use it here.
47146
47147 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
47148
47149         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
47150         in acconfig.h.
47151
47152 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
47153
47154         * m4/prereq.m4: New file.
47155         * m4/error.m4: New file.
47156         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
47157
47158 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
47159
47160         * m4/getline.m4: Don't set am_cv_func_working_getline before the
47161         cache-check for the same variable -- that defeated the purpose of
47162         the test; the test program was never run.  This was a problem only
47163         on systems with losing getline functions -- HP-UX 10.20 is one.
47164         Reported by Bjorn Helgaas.
47165
47166 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
47167
47168         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
47169
47170 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
47171
47172         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
47173
47174         * m4/const.m4: New file.  Use an initializer in this declaration
47175         typedef int charset[2]; const charset x;
47176         Reported by Bob Glickstein.
47177
47178 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
47179
47180         * m4/chown.m4: Fix reversed types on -1 args to chown.
47181         From Kaveh Ghazi.
47182
47183 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
47184
47185         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
47186         Add lseek and memchr.
47187
47188         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
47189         T.E.Dickey <dickey@clark.net> said that some older preprocessors
47190         have a 20-character limit on names.
47191
47192 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
47193
47194         * m4/inttypes_h.m4: New file.
47195         * m4/uintmax_t.m4: New file.
47196         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
47197
47198
47199         -----
47200
47201         Local Variables:
47202         coding: utf-8
47203         End:
47204
47205         Copyright (C) 1997-2008 Free Software Foundation, Inc.
47206
47207         Copying and distribution of this file, with or without
47208         modification, are permitted provided the copyright notice
47209         and this notice are preserved.