stat-time: fix macOS bug with negative file times
[gnulib.git] / gnulib-tool.py.TODO
blobda6df2ab90ed5ce95e78dc383c18b35aa0d9398d
2 ================================================================================
4 Have gnulib-tool.py generate the same files and the same output as
5 gnulib-tool. Test cases:
7 1) In a checkout of https://gitlab.com/gnuwget/wget2.git :
8    $ git checkout e8ca510eda2cfc75f4c4a4e8e83e19b90af0309c
9    $ $GNULIB_SRCDIR/gnulib-tool.py --no-changelog --aux-dir=build-aux --doc-base=doc --lib=libgnu --m4-base=m4/ --source-base=lib/ --tests-base=lib/tests --local-dir=gl --makefile-name=gnulib.mk --libtool --import accept access arpa_inet atoll bind c-strcase c-strcasestr c-ctype calloc-posix canonicalize-lgpl clock-time close closedir cond connect crypto/md2 crypto/md5 crypto/sha1 crypto/sha256 crypto/sha512 dirname dup dup2 errno fclose fcntl fdopen fflush flock fnmatch-gnu fopen freopen fstat fsync ftruncate futimens getaddrinfo getpass getsockname gettext-h gettime gitlog-to-changelog glob iconv inet_pton inline inttypes ioctl isatty lib-symbol-visibility limits-h link listen lock maintainer-makefile malloc-posix memchr mkdir mkstemp msvc-nothrow nanosleep netdb netinet_in nl_langinfo open opendir pclose pipe-posix progname popen poll posix_spawn pwrite qsort_r random_r read readdir realloc-posix recv recvfrom regex rename safe-read safe-write select send sendto servent setlocale setsockopt socket sockets socklen spawn-pipe stdarg stdbool stddef stdint stat strcase strchrnul strdup-posix strerror strndup strpbrk strstr strtoll sys_file sys_socket sys_stat sys_time sys_types sys_uio thread time_r unistd unlink update-copyright warnings wcwidth write xgethostname
11 ================================================================================
13 The following commits to gnulib-tool have not yet been reflected in
14 {gnulib-tool.py,pygnulib/*.py}.
16 --------------------------------------------------------------------------------
18 Implement the options:
19   --extract-recursive-dependencies
20   --extract-recursive-link-directive
21   --gnu-make
22   --tests-makefile-name
23   --automake-subdir
24   -h | --hardlink
25   --local-hardlink
26   -S | --more-symlinks
27   -H | --more-hardlinks
28   --help (same output)
30 Remove exit() in GLImport.py.
32 Optimize:
33   - os.chdir around subprocess creation -> cwd=... argument instead.
34   - Inline all 'sed' invocations.
36 --------------------------------------------------------------------------------
38 commit 76c7703cb2e9e0e803d1296618d8ab9e86e13d6c
39 Author: Akim Demaille <akim.demaille@gmail.com>
40 Date:   Mon Jul 4 07:18:07 2022 +0200
42     gnulib-tool: add support for --automake-subdir-tests
44     <https://lists.gnu.org/r/bug-gnulib/2022-01/msg00111.html>
46     * gnulib-tool (main): Handle --automake-subdir-tests.
47     (func_emit_shellvars_init, func_emit_lib_Makefile_am): Use
48     $sourcebase when handling tests and --automake-subdir-tests is
49     given.
50     (func_append_actionarg): Support --automake-subdir-tests.
51     (func_create_testdir): Add missing argument for func_emit_initmacro_end.
53 --------------------------------------------------------------------------------
55 commit 762bd0aa660b0c1c02597e0d2e5c5fbf9bab1b91
56 Author: Paul Eggert <eggert@cs.ucla.edu>
57 Date:   Fri Jun 3 17:52:19 2022 -0700
59     regex-quote: \] -> ] in EREs and BREs
61     * build-aux/bootstrap:
62     * build-aux/bootstrap.conf (gettext_external):
63     * check-AC_LIBOBJ:
64     * lib/regex-quote.c (bre_special, ere_special):
65     * gnulib-tool (func_modules_transitive_closure)
66     (func_emit_autoconf_snippet, func_import, func_create_testdir):
67     * tests/test-regex-quote.c (test_bre, test_ere):
68     * top/maint.mk (longopt_re, gpg_key_ID):
69     Don’t use \] in BREs and EREs, as POSIX says the interpretation is
70     undefined.
72 --------------------------------------------------------------------------------
74 commit 8c4f4d7a3c28f88b64fce2fb1d0dc0e570d1a482
75 Author: Paul Eggert <eggert@cs.ucla.edu>
76 Date:   Tue Mar 1 10:01:22 2022 -0800
78     Create lib/Makefile.am after gnulib-comp.m4
80     * gnulib-tool (func_import): Create library makefile after
81     creating gnulib-comp.m4.  With --gnu-make, the latter depends on
82     the former.  See <https://bugs.gnu.org/32452#109>.
84 --------------------------------------------------------------------------------
86 commit 3a24ff8a1045d8d38824088c0984bb59d0192e65
87 Author: Simon Josefsson <simon@josefsson.org>
88 Date:   Tue Feb 22 12:47:14 2022 +0100
90     gnulib-tool: Bump automake dependency.
92     * gnulib-tool (func_emit_lib_Makefile_am)
93     (func_emit_tests_Makefile_am): Demand Automake ≥ 1.14, for
94     %reldir%.
96 --------------------------------------------------------------------------------
98 commit 4bf9c96497946ce6f7b84f6527ed0291657cf728
99 Author: Bruno Haible <bruno@clisp.org>
100 Date:   Sun Jan 9 15:38:51 2022 +0100
102     Remove influence of Automake conditionals on conditional dependencies.
104     * m4/gnulib-common.m4 (gl_CONDITIONAL): New macro.
105     (gl_CONDITIONAL_HEADER): Use it instead of AM_CONDITIONAL.
106     * m4/libgmp.m4 (gl_LIBGMP): Likewise.
107     * modules/posix_spawn_file_actions_addfchdir-tests (configure.ac):
108     Likewise.
109     * modules/uchar-c++-tests (configure.ac): Likewise.
110     * gnulib-tool (func_modules_transitive_closure): Don't inhibit
111     conditional dependencies processing on a module that uses an Automake
112     conditional.
114 --------------------------------------------------------------------------------
116 commit 9abc30c383303fab68aa5ed2841113876bfa90d1
117 Author: Bruno Haible <bruno@clisp.org>
118 Date:   Sat Jan 8 22:10:54 2022 +0100
120     gnulib-tool: Remove all *.Po files upon distclean (regr. 2022-01-05).
122     Reported by Mohammad Akhlaghi <mohammad@akhlaghi.org> in
123     <https://lists.gnu.org/archive/html/bug-gnulib/2022-01/msg00061.html>.
125     * gnulib-tool (func_emit_initmacro_end): Collect the *.Po or *.Plo files
126     to remove into an AC_SUBSTed variable gl_LIBOBJDEPS.
127     (func_emit_lib_Makefile_am): Extend the distclean and maintainer-clean
128     rules.
130 commit 0c8a563f65d44752b33aec42cceec25bd485f2d5
131 Author: Bruno Haible <bruno@clisp.org>
132 Date:   Wed Jan 5 18:21:55 2022 +0100
134     gnulib-tool: Avoid known warnings that reflect Gnulib's coding style.
136     * m4/gnulib-common.m4 (gl_CC_GNULIB_WARNINGS): New macro.
137     * gnulib-tool (func_emit_lib_Makefile_am): Add the
138     GL_CFLAG_GNULIB_WARNINGS to the CFLAGS of all the compilation units of
139     the library.
140     (func_emit_tests_Makefile_am): Add the GL_CFLAG_GNULIB_WARNINGS to the
141     CFLAGS.
142     (func_import): Emit an invocation of gl_CC_GNULIB_WARNINGS.
144 --------------------------------------------------------------------------------
146 commit 87e6634b28df65084321fed22f60d114a0931d21
147 Author: Bernhard Voelker <mail@bernhard-voelker.de>
148 Date:   Tue Jan 4 00:16:50 2022 +0100
150     license: fix GPLv3 texts to use a comma instead of semicolon.
152     See: https://www.gnu.org/licenses/gpl-3.0.html#howto
153     Run:
154       $ git grep -l 'Foundation; either version 3' \
155           | xargs sed -i '/Foundation; either version 3/ s/n; e/n, e/'
157     * All files using GPLv3: Adjust via the above command.
159 --------------------------------------------------------------------------------
161 commit 9af17c55629c4cbe2facdc9edb5242136567ebba
162 Author: Bruno Haible <bruno@clisp.org>
163 Date:   Sat Dec 25 14:30:57 2021 +0100
165     gnulib-tool: Fix handling of module libtextstyle-optional.
167     Reported by Paul Eggert in
168     <https://lists.gnu.org/archive/html/bug-gnulib/2021-12/msg00152.html>.
170     * gnulib-tool (func_repeat_module_in_tests): New function.
171     (func_emit_tests_Makefile_am, func_create_testdir): Use it for the file
172     list and when creating tests/Makefile.am.
174 --------------------------------------------------------------------------------
176 commit 83948c64d10c77fb964e6523a9524729d6a66f32
177 Author: Bruno Haible <bruno@clisp.org>
178 Date:   Sat Dec 25 12:19:13 2021 +0100
180     gnulib-tool: Respect applicability 'all' without --single-configure.
182     * gnulib-tool (func_verify_tests_module): Treat modules with
183     applicability 'all' like 'tests' modules, not like 'main' modules.
185 --------------------------------------------------------------------------------
187 commit b4c57b4240992832fa89a02dc620c4fa5ac36973
188 Author: Paul Eggert <eggert@cs.ucla.edu>
189 Date:   Fri Dec 24 17:22:00 2021 -0800
191     maint: avoid empty lines in recipes
193     AIX 7.2 ‘make’ complains about recipe lines that are empty after
194     macro expansion, and I suppose there’s a good chance some
195     non-POSIX ‘make’ would prohibit them.  Rework macros so
196     that we can avoid them.
197     * gnulib-tool (func_emit_lib_Makefile_am)
198     (func_emit_lib_Makefile_am): Support @!NMD@ too.
199     * modules/gen-header (@gl_V_at): New macro.
200     * modules/alloca-opt, modules/argz, modules/assert-h:
201     * modules/byteswap, modules/configmake, modules/ctype:
202     * modules/dirent, modules/errno, modules/execinfo, modules/fcntl-h:
203     * modules/float, modules/fnmatch-h, modules/getopt-posix:
204     * modules/glob-h, modules/iconv-h, modules/ieee754-h:
205     * modules/inttypes-incomplete, modules/langinfo:
206     * modules/libtextstyle-optional, modules/limits-h, modules/locale:
207     * modules/malloc-h, modules/math, modules/monetary, modules/netdb:
208     * modules/openmp-init, modules/poll-h, modules/posix-shell:
209     * modules/pthread-h, modules/pty, modules/sched, modules/search:
210     * modules/signal-h, modules/sigsegv, modules/snippet/link-warning:
211     * modules/spawn, modules/stdalign, modules/stdarg, modules/stdbool:
212     * modules/stddef, modules/stdint, modules/stdio, modules/stdlib:
213     * modules/stdnoreturn, modules/string, modules/strings:
214     * modules/sysexits, modules/termios, modules/threads-h:
215     * modules/time, modules/uchar, modules/unicase/base:
216     * modules/uniconv/base, modules/unictype/base, modules/unigbrk/base:
217     * modules/unilbrk/base, modules/uniname/base, modules/uninorm/base:
218     * modules/unistd, modules/unistdio/base, modules/unistr/base:
219     * modules/unitypes, modules/uniwbrk/base, modules/uniwidth/base:
220     * modules/utime-h, modules/wchar, modules/wctype-h:
221     Use it.
223 --------------------------------------------------------------------------------
225 commit 83a0d5891db50c00e283e70df694b6003b1f485d
226 Author: Bruno Haible <bruno@clisp.org>
227 Date:   Tue Dec 21 09:59:17 2021 +0100
229     Optimize redundant 'mkdir -p .' invocations.
231     Reported by Paul Eggert.
233     * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
234     Eliminate @NMD@ tokens.
235     * modules/alloca-opt (Makefile.am): Prefix the "$(MKDIR_P) '%reldir%'"
236     line with @NMD@.
237     * modules/argz (Makefile.am): Likewise.
238     * modules/assert-h (Makefile.am): Likewise.
239     * modules/byteswap (Makefile.am): Likewise.
240     * modules/configmake (Makefile.am): Likewise.
241     * modules/ctype (Makefile.am): Likewise.
242     * modules/dirent (Makefile.am): Likewise.
243     * modules/errno (Makefile.am): Likewise.
244     * modules/execinfo (Makefile.am): Likewise.
245     * modules/fcntl-h (Makefile.am): Likewise.
246     * modules/float (Makefile.am): Likewise.
247     * modules/fnmatch-h (Makefile.am): Likewise.
248     * modules/getopt-posix (Makefile.am): Likewise.
249     * modules/glob-h (Makefile.am): Likewise.
250     * modules/iconv-h (Makefile.am): Likewise.
251     * modules/ieee754-h (Makefile.am): Likewise.
252     * modules/inttypes-incomplete (Makefile.am): Likewise.
253     * modules/langinfo (Makefile.am): Likewise.
254     * modules/libtextstyle-optional (Makefile.am): Likewise.
255     * modules/limits-h (Makefile.am): Likewise.
256     * modules/locale (Makefile.am): Likewise.
257     * modules/malloc-h (Makefile.am): Likewise.
258     * modules/math (Makefile.am): Likewise.
259     * modules/monetary (Makefile.am): Likewise.
260     * modules/netdb (Makefile.am): Likewise.
261     * modules/openmp-init (Makefile.am): Likewise.
262     * modules/poll-h (Makefile.am): Likewise.
263     * modules/posix-shell (Makefile.am): Likewise.
264     * modules/pthread-h (Makefile.am): Likewise.
265     * modules/pty (Makefile.am): Likewise.
266     * modules/sched (Makefile.am): Likewise.
267     * modules/search (Makefile.am): Likewise.
268     * modules/signal-h (Makefile.am): Likewise.
269     * modules/sigsegv (Makefile.am): Likewise.
270     * modules/snippet/link-warning (Makefile.am): Likewise.
271     * modules/spawn (Makefile.am): Likewise.
272     * modules/stdalign (Makefile.am): Likewise.
273     * modules/stdarg (Makefile.am): Likewise.
274     * modules/stdbool (Makefile.am): Likewise.
275     * modules/stddef (Makefile.am): Likewise.
276     * modules/stdint (Makefile.am): Likewise.
277     * modules/stdio (Makefile.am): Likewise.
278     * modules/stdlib (Makefile.am): Likewise.
279     * modules/stdnoreturn (Makefile.am): Likewise.
280     * modules/string (Makefile.am): Likewise.
281     * modules/strings (Makefile.am): Likewise.
282     * modules/sysexits (Makefile.am): Likewise.
283     * modules/termios (Makefile.am): Likewise.
284     * modules/threads-h (Makefile.am): Likewise.
285     * modules/time (Makefile.am): Likewise.
286     * modules/uchar (Makefile.am): Likewise.
287     * modules/unicase/base (Makefile.am): Likewise.
288     * modules/uniconv/base (Makefile.am): Likewise.
289     * modules/unictype/base (Makefile.am): Likewise.
290     * modules/unigbrk/base (Makefile.am): Likewise.
291     * modules/unilbrk/base (Makefile.am): Likewise.
292     * modules/uniname/base (Makefile.am): Likewise.
293     * modules/uninorm/base (Makefile.am): Likewise.
294     * modules/unistd (Makefile.am): Likewise.
295     * modules/unistdio/base (Makefile.am): Likewise.
296     * modules/unistr/base (Makefile.am): Likewise.
297     * modules/unitypes (Makefile.am): Likewise.
298     * modules/uniwbrk/base (Makefile.am): Likewise.
299     * modules/uniwidth/base (Makefile.am): Likewise.
300     * modules/utime-h (Makefile.am): Likewise.
301     * modules/wchar (Makefile.am): Likewise.
302     * modules/wctype-h (Makefile.am): Likewise.
304 --------------------------------------------------------------------------------
306 commit 4bdc327dbda59dcdbfa0f983a4f35c4a4ec3578c
307 Author: Bruno Haible <bruno@clisp.org>
308 Date:   Sun Dec 19 12:49:16 2021 +0100
310     gnulib-tool: Don't insist on ACLOCAL_AMFLAGS.
312     Reported by Bjarni Ingi Gislason <bjarniig@rhi.hi.is> in
313     <https://lists.gnu.org/archive/html/bug-gnulib/2021-12/msg00112.html>.
315     * gnulib-tool (func_import): Mention an AC_CONFIG_MACRO_DIRS invocation
316     as an alternative to augmenting ACLOCAL_AMFLAGS.
317     (--import, --add-import, --remove-import, --update): To find the m4
318     directories, look also for AC_CONFIG_MACRO_DIR and AC_CONFIG_MACRO_DIRS
319     invocations in configure.ac.
321 --------------------------------------------------------------------------------
323 commit 415fae8ddcb39d33f364c81b0f199e28c65bb539
324 Author: Bruno Haible <bruno@clisp.org>
325 Date:   Sat Dec 18 11:43:20 2021 -0800
327     stdint: Fix handling of limits.h (regression 2021-12-16).
329     * modules/stdint (configure.ac): Revert last change.
330     * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
331     If --gnu-make is used, assume that AC_SUBSTed variables for conditionals
332     are constructed by appending the suffix '_CONDITION'.
334 --------------------------------------------------------------------------------
336 commit b8124d982f454b8526b5e11934a2f71faac2b600
337 Author: Bruno Haible <bruno@clisp.org>
338 Date:   Wed Dec 15 21:49:41 2021 +0100
340     automake-subdir support: Look for 'subdir-objects' also in configure.ac.
342     * gnulib-tool: Look for the automake options also in the first argument
343     of the AM_INIT_AUTOMAKE invocation in configure.ac.
345 --------------------------------------------------------------------------------
347 commit b2bd0a9041ed7401fb69f59f7450abb8b3249ecb
348 Author: Bruno Haible <bruno@clisp.org>
349 Date:   Wed Dec 15 19:18:31 2021 +0100
351     Accommodate non-recursive Automake in a less hacky way.
353     * gnulib-tool: New option --automake-subdir.
354     (automake_subdir): New variable.
355     (func_emit_initmacro_end): Add a second argument. Use it to prefix each
356     object file name in *_LIBOBJS and *_LTLIBOBJS.
357     (func_emit_shellvars_init): New function.
358     (func_import): Add support for --automake-subdir. Invoke
359     prefix-gnulib-mk. Update calls to func_emit_initmacro_end. Call
360     func_emit_shellvars_init.
361     (func_create_testdir): Update calls to func_emit_initmacro_end. Call
362     func_emit_shellvars_init.
363     * m4/gnulib-tool.m4 (gl_AUTOMAKE_SUBDIR): New macro.
364     * m4/gnulib-common.m4 (gl_CONDITIONAL_HEADER): Use the value of the
365     gl_source_base_prefix variable.
366     * build-aux/prefix-gnulib-mk: New options --from-gnulib-tool, --prefix.
367     (contents_of_file): Renamed from contents.
368     (contents_of_stdin): New function.
369     (process): Inline and remove function.
370     * doc/gnulib-tool.texi (Non-recursive make): New section.
372 --------------------------------------------------------------------------------
374 commit eafd9cd7bf13be7e99a30188b3675aa4047b9307
375 Author: Bruno Haible <bruno@clisp.org>
376 Date:   Sat Dec 18 14:10:19 2021 +0100
378     Fix support for --gnu-make in tests (regression 2021-12-15).
380     * gnulib-tool (func_emit_tests_Makefile_am): When producing output for
381     GNU make, eliminate %reldir% tokens.
383 commit 766ec17a90f67e8cda78394e58a7fffb00f5a4b7
384 Author: Bruno Haible <bruno@clisp.org>
385 Date:   Wed Dec 15 19:18:20 2021 +0100
387     Fix creation of build directories with non-recursive-gnulib-prefix-hack.
389     This is necessary for executing "make" in a VPATH build of a package
390     that uses prefix-gnulib-mk and a module such as alloca-opt.
392     * modules/alloca-opt (Makefile.am): Before generating the .h-t file,
393     ensure that the directory in which we want to create it exists.
394     (configure.ac): Invoke AC_PROG_MKDIR_P.
395     * modules/argz: Likewise.
396     * modules/arpa_inet: Likewise.
397     * modules/assert-h: Likewise.
398     * modules/byteswap: Likewise.
399     * modules/configmake: Likewise.
400     * modules/ctype: Likewise.
401     * modules/dirent: Likewise.
402     * modules/dynarray: Likewise.
403     * modules/errno: Likewise.
404     * modules/execinfo: Likewise.
405     * modules/fcntl-h: Likewise.
406     * modules/float: Likewise.
407     * modules/fnmatch-h: Likewise.
408     * modules/getopt-posix: Likewise.
409     * modules/glob-h: Likewise.
410     * modules/iconv-h: Likewise.
411     * modules/ieee754-h: Likewise.
412     * modules/inttypes-incomplete: Likewise.
413     * modules/langinfo: Likewise.
414     * modules/libgmp: Likewise.
415     * modules/libtextstyle-optional: Likewise.
416     * modules/limits-h: Likewise.
417     * modules/locale: Likewise.
418     * modules/malloc-h: Likewise.
419     * modules/math: Likewise.
420     * modules/monetary: Likewise.
421     * modules/net_if: Likewise.
422     * modules/netdb: Likewise.
423     * modules/netinet_in: Likewise.
424     * modules/openmp-init: Likewise.
425     * modules/poll-h: Likewise.
426     * modules/posix-shell: Likewise.
427     * modules/pthread-h: Likewise.
428     * modules/pty: Likewise.
429     * modules/sched: Likewise.
430     * modules/scratch_buffer: Likewise.
431     * modules/search: Likewise.
432     * modules/selinux-h: Likewise.
433     * modules/signal-h: Likewise.
434     * modules/sigsegv: Likewise.
435     * modules/snippet/link-warning: Likewise.
436     * modules/spawn: Likewise.
437     * modules/stdalign: Likewise.
438     * modules/stdarg: Likewise.
439     * modules/stdbool: Likewise.
440     * modules/stddef: Likewise.
441     * modules/stdint: Likewise.
442     * modules/stdio: Likewise.
443     * modules/stdlib: Likewise.
444     * modules/stdnoreturn: Likewise.
445     * modules/string: Likewise.
446     * modules/strings: Likewise.
447     * modules/sys_file: Likewise.
448     * modules/sys_ioctl: Likewise.
449     * modules/sys_random: Likewise.
450     * modules/sys_resource: Likewise.
451     * modules/sys_select: Likewise.
452     * modules/sys_socket: Likewise.
453     * modules/sys_stat: Likewise.
454     * modules/sys_time: Likewise.
455     * modules/sys_times: Likewise.
456     * modules/sys_types: Likewise.
457     * modules/sys_uio: Likewise.
458     * modules/sys_utsname: Likewise.
459     * modules/sys_wait: Likewise.
460     * modules/sysexits: Likewise.
461     * modules/termios: Likewise.
462     * modules/threads-h: Likewise.
463     * modules/time: Likewise.
464     * modules/uchar: Likewise.
465     * modules/unicase/base: Likewise.
466     * modules/unicase/special-casing: Likewise.
467     * modules/uniconv/base: Likewise.
468     * modules/unictype/base: Likewise.
469     * modules/unigbrk/base: Likewise.
470     * modules/unilbrk/base: Likewise.
471     * modules/uniname/base: Likewise.
472     * modules/uninorm/base: Likewise.
473     * modules/unistd: Likewise.
474     * modules/unistdio/base: Likewise.
475     * modules/unistr/base: Likewise.
476     * modules/unitypes: Likewise.
477     * modules/uniwbrk/base: Likewise.
478     * modules/uniwidth/base: Likewise.
479     * modules/utime-h: Likewise.
480     * modules/wchar: Likewise.
481     * modules/wctype-h: Likewise.
482     * gnulib-tool (func_emit_lib_Makefile_am): When producing output for
483     GNU make, eliminate %reldir% tokens.
485 --------------------------------------------------------------------------------
487 commit dc08febea1fc0a8c902dfa89d0abc2952873529b
488 Author: Bruno Haible <bruno@clisp.org>
489 Date:   Mon Dec 13 03:03:13 2021 +0100
491     gnulib-tool: Fix mistake in last commit.
493 commit 4e7b4cc6fb3e3b659c98baf6db26d8a06099fbee
494 Author: Bruno Haible <bruno@clisp.org>
495 Date:   Mon Dec 13 02:43:21 2021 +0100
497     gnulib-tool: Support non-recursive-gnulib-prefix-hack with tests.
499     * gnulib-tool (func_import): Synthesize an AC_CONFIG_LIBOBJ_DIR
500     invocation.
501     * m4/non-recursive-gnulib-prefix-hack.m4
502     (gl_NON_RECURSIVE_GNULIB_PREFIX_HACK): Don't invoke
503     AC_CONFIG_LIBOBJ_DIR.
505 --------------------------------------------------------------------------------
507 commit 1cc82c4280bb76f677f3604bdef7116922d77511
508 Author: Bruno Haible <bruno@clisp.org>
509 Date:   Sat Jan 8 23:28:29 2022 +0100
511     gnulib-tool: Fix "Don't forget" messages (regression 2021-12-12).
513     * gnulib-tool (func_import): Fix variable references in "Don't forget"
514     messages.
516 commit 9e8aac033ffe63761ca6ddc8a3f672d1b7104cb5
517 Author: Bruno Haible <bruno@clisp.org>
518 Date:   Sun Dec 12 21:13:54 2021 +0100
520     gnulib-tool: Support different basenames for the lib/,tests/ Makefiles.
522     * gnulib-tool: New option --tests-makefile-name.
523     (tests_makefile_name): New variable.
524     (func_import): Add support for --tests-makefile-name. Replace local
525     variable makefile_am with two local variables source_makefile_am,
526     tests_makefile_am.
528 --------------------------------------------------------------------------------
530 commit 6ccfbd6495f2849b1aeea84f73327f6ced0080a7
531 Author: Bruno Haible <bruno@clisp.org>
532 Date:   Sun Aug 8 03:52:01 2021 +0200
534     gnulib-tool: Add support for Automake 1.16.4.
536     Reported by <shoober420@gmail.com> in
537     <https://lists.gnu.org/archive/html/bug-libunistring/2021-08/msg00000.html>.
539     * build-aux/test-driver-1.16.3.diff: Renamed from build-aux/test-driver.diff.
540     * build-aux/test-driver.diff: Update to match Automake 1.16.4.
541     * gnulib-tool (func_create_testdir, func_create_megatestdir): Try both
542     .diff files.
544 --------------------------------------------------------------------------------
546 commit 39d08c09b444db57f45804bfe86ee17203c45a8a
547 Author: Bruno Haible <bruno@clisp.org>
548 Date:   Fri Jun 11 15:55:33 2021 +0200
550     Make message in last commit more precise.
552     Suggested by Eric Blake.
554     * gnulib-tool (func_emit_tests_Makefile_am): Add more precision to
555     'check-notice' message.
557 commit d465dd70e1ec5fe332160780eb66511028f5897b
558 Author: Bruno Haible <bruno@clisp.org>
559 Date:   Thu Jun 10 21:43:59 2021 +0200
561     Clarify where to report test failures from Gnulib tests.
563     * gnulib-tool (func_emit_tests_Makefile_am): Emit a dependency of
564     'check-am' on 'check-notice' that prints a notice.
566 --------------------------------------------------------------------------------
568 commit 16c3e1868a15a5946c0f0f7df6e107e9b3c6389d
569 Author: Bruno Haible <bruno@clisp.org>
570 Date:   Thu Jun 10 21:26:53 2021 +0200
572     Clarify that compiler warnings in the Gnulib tests can be ignored.
574     * gnulib-tool (func_emit_tests_Makefile_am): Emit overrides for CFLAGS
575     and CXXFLAGS. Emit a dependency of 'all' on 'all-notice' that prints a
576     notice.
577     (func_emit_initmacro_start): Add a second argument. If it is true, emit
578     code to require gl_CC_ALLOW_WARNINGS and gl_CXX_ALLOW_WARNINGS.
579     (func_import, func_create_testdir): All callers updated.
580     * m4/gnulib-common.m4 (gl_CC_ALLOW_WARNINGS, gl_CXX_ALLOW_WARNINGS): New
581     macros.
583 --------------------------------------------------------------------------------
585 commit 6d1cba373a8387aa2131e9dc3e94954c5669ca52
586 Author: Bruno Haible <bruno@clisp.org>
587 Date:   Sun May 30 14:37:06 2021 +0200
589     Write 'LGPLv3+ or GPLv2+' instead of 'LGPLv3+ or GPLv2'.
591     * modules/* (License): Change.
592     * gnulib-tool (func_import, func_create_testdir): Likewise.
594 --------------------------------------------------------------------------------
596 commit 4b071c115309079528db7b60e8d2ffb22b129088
597 Author: Paul Eggert <eggert@cs.ucla.edu>
598 Date:   Mon Apr 26 23:31:29 2021 -0700
600     gnulib-tool: port better to current Autoconf
602     * doc/gnulib-tool.texi (Initial import): Don’t mention
603     AC_PROG_CC_STDC as it’s deprecated in current Autoconf.
604     * gnulib-tool (func_done_dir): Suggest replacing
605     AC_PROG_CC_STDC and AC_PROG_CC_C99, as per current Autoconf.
607 --------------------------------------------------------------------------------
609 commit 487b9551b63ef936a6be6df38d1c9484cd97810c
610 Author: Paul Eggert <eggert@cs.ucla.edu>
611 Date:   Sat Mar 6 08:23:48 2021 -0800
613     parse-datetime2: fix licensing
615     Problem reported by Bruno Haible in:
616     https://lists.gnu.org/r/bug-gnulib/2021-03/msg00017.html
617     * gnulib-tool (func_get_license): Treat parse-datetime2
618     (actually, anything starting with "parse-datetime")
619     like parse-datetime, as far as licenses go.
621 --------------------------------------------------------------------------------
623 commit 0be855ee827bf7e9043eeb626c4fd847704be2e6
624 Author: Bruno Haible <bruno@clisp.org>
625 Date:   Tue Dec 29 02:48:31 2020 +0100
627     gnulib-tool: Fix logic whether to add a dummy.c.
629     * gnulib-tool (func_remove_if_blocks): New function.
630     (func_modules_add_dummy): Use it to eliminate all conditional statements
631     from the automake snippet.
633 --------------------------------------------------------------------------------
635 commit 9f0ade083bf3250281cbf454da656a28270a0be5
636 Author: Bruno Haible <bruno@clisp.org>
637 Date:   Sun Dec 27 01:21:22 2020 +0100
639     gnulib-tool: Make --conditional-dependencies work with --with-tests.
641     Reported by Paul Eggert in
642     <https://lists.gnu.org/archive/html/bug-gnulib/2020-12/msg00236.html>.
644     * gnulib-tool (func_emit_tests_Makefile_am): Handle conditional
645     dependencies like func_emit_lib_Makefile_am.
647 --------------------------------------------------------------------------------
649 commit 15ce5a630b02af7c7104650dfb18e443b4111564
650 Author: Bruno Haible <bruno@clisp.org>
651 Date:   Sun Aug 16 12:12:32 2020 +0200
653     Assume autoconf >= 2.64.
655     * gnulib-tool (DEFAULT_AUTOCONF_MINVERSION): Set to 2.64.
656     * DEPENDENCIES: Require Autoconf 2.64 or newer.
657     * NEWS: Mention the changed requirement.
658     * m4/00gnulib.m4 (_m4_divert_diversion, AC_DEFUN_ONCE): Remove macros.
659     * m4/gnulib-common.m4 (AS_VAR_IF, AS_VAR_COPY): Remove macros.
660     * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Quote pushdef'ed
661     variables.
662     * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Likewise.
663     * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Likewise.
664     * m4/warnings.m4 (gl_COMPILER_OPTION_IF): Likewise.
665     (gl_UNKNOWN_WARNINGS_ARE_ERRORS(C), gl_UNKNOWN_WARNINGS_ARE_ERRORS(C++),
666     gl_UNKNOWN_WARNINGS_ARE_ERRORS(Objective C)): Define through AC_DEFUN.
667     * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC(C), gl_MANYWARN_ALL_GCC(C++)):
668     Likewise.
669     * m4/iconv.m4 (AM_ICONV): Define through AC_DEFUN_ONCE directly.
670     * m4/libunistring.m4 (gl_LIBUNISTRING): Likewise.
671     * m4/configmake.m4: Update comment.
673 --------------------------------------------------------------------------------
675 commit baec1bac1602ba8534320c295e120f7b658400f4
676 Author: Bruno Haible <bruno@clisp.org>
677 Date:   Sat Feb 22 15:15:01 2020 +0100
679     gnulib-tool: Ensure copied files are writable.
681     Reported by Benno Fünfstück <benno.fuenfstueck@gmail.com> in
682     <https://lists.gnu.org/archive/html/bug-gnulib/2020-02/msg00101.html>.
684     * gnulib-tool (func_ensure_writable): New function.
685     (func_ln_s, func_hardlink, func_lookup_file, func_import,
686     func_create_testdir, copy-file): Invoke it after copying a file.
688 --------------------------------------------------------------------------------
690 commit 0d41dbc7c88b10d16751466ec91efa75951426bb
691 Author: Bruno Haible <bruno@clisp.org>
692 Date:   Mon Nov 18 13:32:46 2019 +0100
694     gnulib-tool: Fix build error on macOS with --conditional-dependencies.
696     * gnulib-tool (func_modules_add_dummy): Ignore modules that are
697     conditionally enabled.
699 --------------------------------------------------------------------------------
701 commit dc135c4fd14cdc219d316c61f344e64090cb33fd
702 Author: Bruno Haible <bruno@clisp.org>
703 Date:   Fri Feb 15 21:27:44 2019 +0100
705     gnulib-tool: Support --import with just a few tests, not --with-tests.
707     * gnulib-tool (func_import): New variable 'gentests'. Use it instead of
708     'inctests' when generating files; use 'inctests' only for computing the
709     transitive closure.
711 --------------------------------------------------------------------------------
713 commit 425ee42259b04956aae20afc5204775ae6e79744
714 Author: Bruno Haible <bruno@clisp.org>
715 Date:   Wed Jan 23 05:11:54 2019 +0100
717     gnulib-tool: Support running testdirs on Android.
719     * build-aux/test-driver.diff: New file.
720     * gnulib-tool (func_create_testdir, func_create_megatestdir): Patch
721     build-aux/test-driver after running automake.
723 --------------------------------------------------------------------------------
725 commit ce8a5edbc49dea0cb859207c2d063dbd3be0f96c
726 Author: Bruno Haible <bruno@clisp.org>
727 Date:   Fri Jan 4 19:34:19 2019 +0100
729     gnulib-tool: New option --extract-recursive-link-directive.
731     * gnulib-tool (func_usage): Document the new options
732     --extract-recursive-dependencies, --extract-recursive-link-directive.
733     (func_verify_module): Document output variables.
734     (func_get_dependencies_recursively): New function.
735     (func_get_link_directive_recursively): New function.
736     Use them to implement the new options
737     --extract-recursive-dependencies, --extract-recursive-link-directive.
738     * doc/gnulib-tool.texi (Link-time requirements): New section.
740 --------------------------------------------------------------------------------
742 commit 97eae14a5b2506457a72f89d5897a20730ab6eee
743 Author: Bruno Haible <bruno@clisp.org>
744 Date:   Tue Oct 23 00:06:46 2018 +0200
746     Assume Automake >= 1.11.
748     * m4/configmake.m4: Update comments.
749     * m4/lib-link.m4 (AC_LIB_RPATH): Assume AC_REQUIRE_AUX_FILE exists.
750     * m4/po.m4 (AM_PO_SUBDIRS, AM_POSTPROCESS_PO_MAKEFILE): Eliminate uses
751     of 'eval'.
752     * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am,
753     func_create_testdir, func_create_megatestdir): Emit a Makefile.am that
754     requires Automake >= 1.11.
756 --------------------------------------------------------------------------------
758 commit 98993f9d1b2ed03007be9dbcdc6bd9fe2d49777b
759 Author: Bruno Haible <bruno@clisp.org>
760 Date:   Mon Oct 22 20:32:41 2018 +0200
762     Fix failure of 'gnulib-tool --create-testdir' with all modules.
764     * gnulib-tool (func_create_testdir): Exclude 'timevar' module.
766 --------------------------------------------------------------------------------
768 commit 8b1d4a63e34f3893036d82f39c5680e845de5ddf
769 Author: Bruno Haible <bruno@clisp.org>
770 Date:   Mon Sep 3 21:19:16 2018 +0200
772     gnulib-tool: Fix build order when $testsbase is a subdir of $sourcebase.
774     Reported by Antoine Luong <antoine.luong@c-s.fr> in
775     <https://lists.gnu.org/archive/html/bug-gnulib/2018-09/msg00008.html>.
777     * gnulib-tool (func_import): For the tests, set a dotfirst flag.
778     (func_emit_lib_Makefile_am): Consider the dotfirst flag.
779     (func_emit_tests_Makefile_am): Don't consider the dotfirst flag.
781 --------------------------------------------------------------------------------
783 commit a1276e5bf2286afec7b0445040be05cad858cdd1
784 Author: Paul Eggert <eggert@cs.ucla.edu>
785 Date:   Tue Jul 17 15:20:39 2018 -0700
787     gnulib-tool: limit line length for git send-email
789     * gnulib-tool (func_import): Break actioncmd log line
790     into multiple lines.
792 --------------------------------------------------------------------------------
794 commit 589e96475f8f2d21a83405ab0672ce95091b80e5
795 Author: Bruno Haible <bruno@clisp.org>
796 Date:   Fri Dec 29 00:29:23 2017 +0100
798     gnulib-tool: Make --conditional-dependencies work better.
800     Reported by Dmitry Selyutin <ghostman.sd@gmail.com>.
802     * gnulib-tool (Options): Don't reject the combination of
803     --conditional-dependencies with --with-tests.
804     (func_emit_autoconf_snippets): Add argument referenceable_modules.
805     Don't reference $modules.
806     (func_import, func_create_testdir): Pass it.
808 --------------------------------------------------------------------------------
810 commit cd58dba367a3b8ffbebb23f2099a820106197fae
811 Author: Bruno Haible <bruno@clisp.org>
812 Date:   Sun Oct 29 16:57:32 2017 +0100
814     gnulib-tool: Avoid unnecessary config.h.in remaking in testdirs.
816     * gnulib-tool (func_create_testdir): Use workaround against 'autoheader'
817     bug reported at <https://savannah.gnu.org/support/index.php?109406>.
819 --------------------------------------------------------------------------------
821 commit 87d14d357f694338acdb8745cea7304ff623ce47
822 Author: Bruno Haible <bruno@clisp.org>
823 Date:   Mon Jun 12 01:38:57 2017 +0200
825     gnulib-tool: Clean up after autotools.
827     * gnulib-tool (func_create_testdir, func_create_megatestdir): Remove
828     useless directory left over by the Autotools.
830 --------------------------------------------------------------------------------
832 commit 30459fe101541698ec704acb224946d73676750e
833 Author: Bruno Haible <bruno@clisp.org>
834 Date:   Thu Jun 8 15:09:31 2017 +0200
836     gnulib-tool: Fix bug in func_symlink_if_changed, from 2006-11-13.
838     * gnulib-tool (func_symlink_target): New function, extracted from
839     func_symlink.
840     (func_symlink, func_symlink_if_changed): Use it.
842 --------------------------------------------------------------------------------
844 commit 306be564ba47ec412ca158f66ffa90a058f5253b
845 Author: Bruno Haible <bruno@clisp.org>
846 Date:   Mon May 22 01:39:59 2017 +0200
848     gnulib-tool: Add options to create hard links.
850     * gnulib-tool (func_usage): Document options --hardlink,
851     --local-hardlink, --more-hardlinks.
852     (func_symlink): Renamed from func_ln.
853     (func_symlink_if_changed): Renamed from func_ln_if_changed.
854     (func_hardlink): New function.
855     (copymode, lcopymode): New variables.
856     (symbolic, lsymbolic): Remove variables.
857     (Options): Implement options --hardlink, --local-hardlink,
858     --more-hardlinks.
859     (func_should_link): Renamed from func_should_symlink. Set copyaction.
860     (func_add_file, func_update_file): Update invocation of
861     func_should_link. Invoke func_hardlink when appropriate.
862     (func_import): Update comments.
863     (func_create_testdir): Update invocation of func_should_link. Invoke
864     func_hardlink when appropriate.
865     Finally, invoke 'git update-index --refresh' to mitigate the effects of
866     the hard links on git.
868 --------------------------------------------------------------------------------
870 commit f5142421c62024efa22cd4429100c4d9c1cc2ac4
871 Author: Bruno Haible <bruno@clisp.org>
872 Date:   Sat May 20 13:24:37 2017 +0200
874     gnulib-tool: Don't create hard links between gnulib and its testdirs.
876     * gnulib-tool (func_create_testdir): Don't invoke 'ln'.
878 --------------------------------------------------------------------------------
880 commit 0414a24cf57f1569b0b4f2a0f22898a0943dfc14
881 Author: Bruno Haible <bruno@clisp.org>
882 Date:   Mon May 15 23:13:57 2017 +0200
884     gnulib-tool: Fix generated code when libtests contains module 'alloca'.
886     * gnulib-tool (func_emit_tests_Makefile_am): For libtests.a, use
887     @ALLOCA@, not @LTALLOCA@.
889 --------------------------------------------------------------------------------
891 commit a7bd2403d2d3e49a8698495e74cdbe6a5261128a
892 Author: Bruno Haible <bruno@clisp.org>
893 Date:   Thu Apr 20 21:27:40 2017 +0200
895     verify tests: Fix spurious failure with parallel make.
897     * gnulib-tool (func_emit_tests_Makefile_am): Emit initialization of
898     EXTRA_PROGRAMS.
899     * tests/test-verify.sh: Build test-verify-try.o, not test-verify.o.
900     * tests/test-verify-try.c: New file.
901     * modules/verify-tests (Files): Add it.
902     (EXTRA_PROGRAMS): Add test-verify-try.
903     (MOSTLYCLEANFILES): Update accordingly.
904     Reported by Adam James Stewart <ajstewart@anl.gov>.
906 --------------------------------------------------------------------------------
908 commit 363135016c25696d7a173094715e7f3f2dda3596
909 Author: Bruno Haible <bruno@clisp.org>
910 Date:   Wed Mar 15 23:24:03 2017 +0100
912     gnulib-tool: Don't produce a tests directory with only snippet .h files.
914     * gnulib-tool (func_modules_transitive_closure_separately): If
915     testsrelated_modules ends up with no "real" modules, aside from
916     modules with applicability 'all', set it to empty.
918 --------------------------------------------------------------------------------
920 commit f30205c5d59bab2c035165158e7d5d65b07b8363
921 Author: Mathieu Lirzin <mthl@gnu.org>
922 Date:   Tue Mar 14 12:19:40 2017 +0100
924     gnulib-tool: don't automatically distribute files from top/
926     * gnulib-tool (func_get_automake_snippet_unconditional): To be able to
927     not distribute top/README-release by default, don't distribute files
928     from top/ unconditionally.
929     * modules/gnumakefile (Makefile.am): Distribute top/GNUmakefile.
930     * modules/maintainer-makefile (Makefile.am): Distribute top/maint.mk.
932 --------------------------------------------------------------------------------
934 commit 60e8b9303d8ce312bb2322d4801ed08678f93d1e
935 Author: Paul Eggert <eggert@cs.ucla.edu>
936 Date:   Wed Jul 4 20:42:07 2018 -0700
938     gnulib-tool: minor tweaks for --gnu-make
940     * gnulib-tool: Do not allow --gnu-make in test modes,
941     since they all require automake.
942     (func_emit_lib_Makefile_am): Don’t emit automake comment
943     if --gnu-make.
945 commit 8224d65142d7b8cea2b8721a7d09c2cd60d2d312
946 Author: Paul Eggert <eggert@cs.ucla.edu>
947 Date:   Mon May 15 07:41:10 2017 -0700
949     gnulib-tool: improve GNU Make debugging
951     * gnulib-tool (func_emit_lib_Makefile_am): Omit unnecessary echo.
952     Report autoconf diagnostics when it fails, in the output makefile.
954 commit fb8289f44a58c9462434eba8eaffd58c3f417c42
955 Author: Paul Eggert <eggert@cs.ucla.edu>
956 Date:   Tue Mar 14 08:39:27 2017 -0700
958     gnulib-tool: fix typo in comment output
960     * gnulib-tool (func_import): Fix typo with previous change.
962 commit d6088547633af472625ab815452004c22fda6d58
963 Author: Paul Eggert <eggert@cs.ucla.edu>
964 Date:   Mon Mar 13 15:50:44 2017 -0700
966     gnulib-tool: minor --gnu-make fixups
968     * gnulib-tool (func_emit_lib_Makefile_am):
969     Remove useless code that was a blind alley during implementation.
970     Problem reported by Thien-Thi Nguyen in:
971     http://lists.gnu.org/archive/html/bug-gnulib/2017-03/msg00029.html
972     (func_import): Note the "--gnu-make" option in the output comment.
974 commit dfbe4c0276701e42ffaed13a1c7a79003dc8fb30
975 Author: Paul Eggert <eggert@cs.ucla.edu>
976 Date:   Sun Mar 12 19:18:53 2017 -0700
978     gnulib-tool: new option --gnu-make
980     This is for applications like GNU Emacs that use GNU Make
981     features instead of Automake.
982     * doc/gnulib-tool.texi (Initial import): Mention --gnu-make.
983     * doc/gnulib.texi (Unit test modules, Build robot for gnulib):
984     Do not assume Automake.
985     * gnulib-tool (func_determine_path_separator)
986     (func_modules_transitive_closure, func_update_file)
987     (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
988     (func_import): Add support for --gnu-make.
990 --------------------------------------------------------------------------------
992 commit 9bdf6c8a0cdeb13c12e4b65dee9538c5468dbe1d
993 Author: Bruno Haible <bruno@clisp.org>
994 Date:   Sun Aug 19 14:06:50 2012 +0200
996     gnulib-tool: Remove old file names from .cvsignore, .gitignore.
998     * gnulib-tool (func_update_ignorelist): Don't use 'join -v 1' command
999     on the list of removed files.
1001 --------------------------------------------------------------------------------
1003 ================================================================================