]> Savannah Git Hosting - gnulib.git/log
gnulib.git
2 years agognulib-tool: Fix option --find in combination with option --local-dir.
Bruno Haible [Sun, 7 Aug 2022 12:09:03 +0000 (14:09 +0200)]
gnulib-tool: Fix option --find in combination with option --local-dir.

* gnulib-tool (func_prefixed_modules_in_dir): New function.
(find): Use it, and filter the directory names away after the 'grep'
pass.

2 years agognulib-tool.py: Fix some regexes.
Bruno Haible [Sun, 7 Aug 2022 11:49:49 +0000 (13:49 +0200)]
gnulib-tool.py: Fix some regexes.

* pygnulib/GLEmiter.py (GLEmiter.lib_Makefile_am): Use an equivalent
regex as gnulib-tool.
* pygnulib/GLTestDir.py (GLTestDir.execute): Likewise.

2 years agognulib-tool.py: Fix some regex uses.
Bruno Haible [Sun, 7 Aug 2022 11:46:15 +0000 (13:46 +0200)]
gnulib-tool.py: Fix some regex uses.

* pygnulib/GLModuleSystem.py (GLModuleTable.transitive_closure): Match
the regex against all lines of the snippet, not only the first line.
* pygnulib/GLEmiter.py (GLEmiter.autoconfSnippet): Likewise.

2 years agognulib-tool.py: Make regex uses more straightforward.
Bruno Haible [Sun, 7 Aug 2022 11:40:07 +0000 (13:40 +0200)]
gnulib-tool.py: Make regex uses more straightforward.

* pygnulib/constants.py: Don't use the "minimal matching" *? construct
when it makes no difference (because we're matching a single line only
and flag re.M is not specified).
* pygnulib/GLModuleSystem.py: Likewise.

2 years agognulib-tool.py: Make regex uses more straightforward.
Bruno Haible [Sun, 7 Aug 2022 11:29:59 +0000 (13:29 +0200)]
gnulib-tool.py: Make regex uses more straightforward.

* pygnulib/GLModuleSystem.py: Don't use flag re.S on regular expressions
that are meant to match a single line only, and remove the use of the
"minimal matching" *? construct whose only purpose was to neutralize the
re.S flag.
* pygnulib/GLEmiter.py: Likewise.
* pygnulib/GLImport.py: Likewise.
* pygnulib/GLTestDir.py: Likewise.

2 years agognulib-tool.py: Make regex uses more straightforward.
Bruno Haible [Sun, 7 Aug 2022 11:11:07 +0000 (13:11 +0200)]
gnulib-tool.py: Make regex uses more straightforward.

* pygnulib/GLEmiter.py: Don't use flag re.S on regular expressions on
regular expressions with no '.'.
* pygnulib/GLImport.py: Likewise.

2 years agognulib-tool: In the VC files messages, omit the destination directory.
Bruno Haible [Sat, 6 Aug 2022 21:22:26 +0000 (23:22 +0200)]
gnulib-tool: In the VC files messages, omit the destination directory.

This makes these messages consistent with the other "Copying ..." and
"Creating ..." messages.

* gnulib-tool (func_import): Omit $destdir/ from the "Updating"/
"Creating" messages regarding .gitignore files.
* pygnulib/GLImport.py (GLImport._update_ignorelist_): Likewise.

2 years agognulib-tool.py: Fix output in --dry-run mode.
Bruno Haible [Sat, 6 Aug 2022 21:10:14 +0000 (23:10 +0200)]
gnulib-tool.py: Fix output in --dry-run mode.

* pygnulib/GLImport.py (GLImport._update_ignorelist_): In dry-run mode,
say "Update", not "Updating".

2 years agognulib-tool.py: Finish implementing options --vc-files, --no-vc-files.
Bruno Haible [Sat, 6 Aug 2022 21:01:36 +0000 (23:01 +0200)]
gnulib-tool.py: Finish implementing options --vc-files, --no-vc-files.

* gnulib-tool.py (main): Accept options --vc-files, --no-vc-files.
* pygnulib/GLImport.py (GLImport.__init__): Correct parsing of
gl_VC_FILES directive.
(GLImport.gnulib_cache): Don't treat the value False like None.
(GLImport.execute): Skip the .gitignore file manipulations if vc_files
is False.

2 years agognulib-tool.py: Finish implementing option --witness-c-macro.
Bruno Haible [Sat, 6 Aug 2022 19:54:04 +0000 (21:54 +0200)]
gnulib-tool.py: Finish implementing option --witness-c-macro.

* gnulib-tool.py (main): Accept option --witness-c-macro.
* pygnulib/GLConfig.py (GLConfig.__init__): Remove wrong type check of
witness_c_macro argument.

2 years agognulib-tool.py: Don't initialize local variables too early.
Bruno Haible [Sat, 6 Aug 2022 01:18:32 +0000 (03:18 +0200)]
gnulib-tool.py: Don't initialize local variables too early.

* gnulib-tool.py (main): Initialize each local variable in one place.
I prefer to have pylint tell me about uninitialized variables than to
get the value None at runtime.

2 years agognulib-tool.py: Finish implementing option --po-domain.
Bruno Haible [Sat, 6 Aug 2022 01:06:51 +0000 (03:06 +0200)]
gnulib-tool.py: Finish implementing option --po-domain.

* gnulib-tool.py (main): Accept option --po-domain.
* pygnulib/GLEmiter.py (GLEmiter.po_POTFILES_in): Fix variable
reference.
* pygnulib/GLImport.py (GLImport.execute): Don't delete Makefile.in.in
from the gnulib directory. Don't require a shell when invoking wget.
After invoking wget, restore the current directory.

2 years agognulib-tool.py: Finish implementing option --macro-prefix.
Bruno Haible [Sat, 6 Aug 2022 00:10:32 +0000 (02:10 +0200)]
gnulib-tool.py: Finish implementing option --macro-prefix.

* gnulib-tool.py (main): Accept option --macro-prefix.

2 years agognulib-tool.py: Refactor --makefile-name option.
Bruno Haible [Fri, 5 Aug 2022 23:47:34 +0000 (01:47 +0200)]
gnulib-tool.py: Refactor --makefile-name option.

* gnulib-tool.py (main): Handle option --makefile-name like all other
string-valued options.

2 years agognulib-tool.py: Implement option --no-libtool.
Bruno Haible [Fri, 5 Aug 2022 22:14:02 +0000 (00:14 +0200)]
gnulib-tool.py: Implement option --no-libtool.

* gnulib-tool.py (main): Accept option --no-libtool.

2 years agognulib-tool.py: Remove redundant type checks.
Bruno Haible [Fri, 5 Aug 2022 21:34:20 +0000 (23:34 +0200)]
gnulib-tool.py: Remove redundant type checks.

* pygnulib/GLConfig.py (GLConfig.__init__): Remove redundant type
checks, left over from 2022-08-04.
(GLConfig.getIncludeGuardPrefix): Improve comment.
(GLConfig.resetMacroPrefix): Optimize.

2 years agognulib-tool.py: Refactor --makefile-name option.
Bruno Haible [Fri, 5 Aug 2022 21:15:39 +0000 (23:15 +0200)]
gnulib-tool.py: Refactor --makefile-name option.

* gnulib-tool.py (main): Rename variable 'makefile' to 'makefile_name'.
* pygnulib/GLConfig.py: Rename attribute 'makefile' to 'makefile_name'.
* pygnulib/GLMakefileTable.py: Update.
* pygnulib/GLEmiter.py: Likewise.
* pygnulib/GLImport.py: Likewise.
* pygnulib/GLFileSystem.py (GLFileAssistant): Remove unused assignment.

2 years agognulib-tool.py: Fix link_if_changed function.
Bruno Haible [Fri, 5 Aug 2022 17:24:14 +0000 (19:24 +0200)]
gnulib-tool.py: Fix link_if_changed function.

* pygnulib/constants.py (joinpath): Fix comment.
(as_link_value_at_dest): New function, extracted from link_relative.
(link_relative): Use it.
(link_if_changed): Really don't replace the symbolic link if it does not
need to change.

2 years agognulib-tool.py: Fix 'Unused import' warnings.
Bruno Haible [Fri, 5 Aug 2022 15:13:20 +0000 (17:13 +0200)]
gnulib-tool.py: Fix 'Unused import' warnings.

* gnulib-tool.py: Remove unused imports.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Fix 'Undefined variable' errors.
Bruno Haible [Fri, 5 Aug 2022 13:15:16 +0000 (15:15 +0200)]
gnulib-tool.py: Fix 'Undefined variable' errors.

* pygnulib/constants.py: Import codecs.
* pygnulib/GLConfig.py (GLConfig.setLibName): Fix local variable
reference.
* pygnulib/GLFileSystem.py (GLFileSystem.lookup,
GLFileAssistant.update): Fix local variable references.
* pygnulib/GLEmiter.py (GLEmiter.po_POTFILES_in): Fix reference.
* pygnulib/GLTestDir.py (GLMegaTestDir.execute): Define missing local
variables.

2 years agognulib-tool.py: Make option --version work.
Bruno Haible [Fri, 5 Aug 2022 12:17:35 +0000 (14:17 +0200)]
gnulib-tool.py: Make option --version work.

* pygnulib/constants.py (__copyright__): Bump copyright year.
* pygnulib/GLInfo.py (GLInfo.authors): Add a comma after the
second-to-last author.
(GLInfo.copyright): Show only the last modification year.
(GLInfo.date): Check whether git and GNU date are available. Use
'git log ChangeLog', not 'git log'. Run 'git log' in the gnulib
directory, not in the current directory. Search for 'Date:' only at the
beginning of a line. As a fallback, look at the first ChangeLog entry.
(GLInfo.version): Check whether git is available. Run git-version-gen in
the gnulib directory, not in the current directory. Replace '-dirty'
with '-modified'. As a fallback, return the empty string.
* gnulib-tool.py (main) [--version]: Add a space before the version.

2 years agognulib-tool.py: Simplify.
Bruno Haible [Fri, 5 Aug 2022 02:05:04 +0000 (04:05 +0200)]
gnulib-tool.py: Simplify.

* pygnulib/constants.py (compiler): Remove function.
* gnulib-tool.py: Use re.compile directly instead.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Fix typo.
Bruno Haible [Thu, 4 Aug 2022 20:24:20 +0000 (22:24 +0200)]
gnulib-tool.py: Fix typo.

* pygnulib/GLImport.py (GLImport.execute): Actually handle file
removals.

2 years agognulib-tool.py: Coding style: Revisit line breaks.
Bruno Haible [Thu, 4 Aug 2022 19:53:51 +0000 (21:53 +0200)]
gnulib-tool.py: Coding style: Revisit line breaks.

* gnulib-tool.py: Avoid line breaks at arbitrary points inside
expressions. Use line breaks to clarify [... for ...] iterations.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Simplify boolean setters.
Bruno Haible [Thu, 4 Aug 2022 17:10:27 +0000 (19:10 +0200)]
gnulib-tool.py: Simplify boolean setters.

* pygnulib/GLConfig.py (setLibtool): New method, replaces enableLibtool
and disableLibtool.
(setCondDeps): New method, replaces enableCondDeps and disableCondDeps.
(setVCFiles): New method, replaces enableVCFiles and disableVCFiles.
(setSymbolic): New method, replaces enableSymbolic and disableSymbolic.
(setLSymbolic): New method, replaces enableLSymbolic and
disableLSymbolic.
(setLibtests): New method, replaces enableLibtests and disableLibtests.
(setSingleConfigure): New method, replaces enableSingleConfigure and
disableSingleConfigure.
(setDryRun): New method, replaces enableDryRun and disableDryRun.
(setErrors): New method, replaces enableErrors and disableErrors.
(__init__): Update.
* pygnulib/GLImport.py: Likewise.
* pygnulib/GLTestDir.py: Likewise.

2 years agognulib-tool.py: Implement options --cache-modules, --no-cache-modules.
Bruno Haible [Thu, 4 Aug 2022 16:35:49 +0000 (18:35 +0200)]
gnulib-tool.py: Implement options --cache-modules, --no-cache-modules.

* gnulib-tool.py (main): Accept options --cache-modules,
--no-cache-modules.
* pygnulib/GLConfig.py: Remove modcache property and constructor
argument.
* pygnulib/GLInfo.py (GLInfo.usage): Don't document these no-op options.

2 years agognulib-tool.py: Use mainstream/GNU coding style.
Bruno Haible [Thu, 4 Aug 2022 16:26:08 +0000 (18:26 +0200)]
gnulib-tool.py: Use mainstream/GNU coding style.

* gnulib-tool.py: Break lines before the % operator, not after.
* pygnulib/*.py: Likewise. Avoid line breaks when the resulting lines
are not too long.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 24.
Bruno Haible [Thu, 4 Aug 2022 11:02:13 +0000 (13:02 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 24.

Follow gnulib-tool change
2017-02-19  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Avoid conflict of havelib-tests with --single-configure.

* pygnulib/GLTestDir.py (GLTestDir.__init__): Don't allocate the
GLModuleTable here.
(GLTestDir.execute): Do it here. Avoid havelib-tests when
--with-tests --single-configure is specified.

2 years agognulib-tool.py: Respect the specified module list.
Bruno Haible [Thu, 4 Aug 2022 10:48:56 +0000 (12:48 +0200)]
gnulib-tool.py: Respect the specified module list.

* pygnulib/GLTestDir.py (GLTestDir.execute): Don't remove specific
modules (ftruncate, mountlist, etc.) from the specified module list.

2 years agognulib-tool.py: Implement option --avoid.
Bruno Haible [Thu, 4 Aug 2022 10:40:04 +0000 (12:40 +0200)]
gnulib-tool.py: Implement option --avoid.

* pygnulib/GLModuleSystem.py (GLModuleTable.__init__): Compute the
effective avoids list here.
(GLModuleTable.transitive_closure, GLModuleTable.add_dummy): Consider
the avoids list.
* pygnulib/GLImport.py (GLImport.gnulib_cache): Use the avoids list from
GLConfig directly.
(GLImport.prepare): No need any more to set the avoids list in the
GLModuleTable.

2 years agognulib-tool.py: Make --with/--without-*-tests handling a little safer.
Bruno Haible [Thu, 4 Aug 2022 09:53:37 +0000 (11:53 +0200)]
gnulib-tool.py: Make --with/--without-*-tests handling a little safer.

* pygnulib/GLConfig.py (__init__): Fix reset* invocations.
setInclTestCategories, setExclTestCategories): Revert to old value if
the new value is invalid.

2 years agognulib-tool.py: Implement option --single-configure.
Bruno Haible [Wed, 3 Aug 2022 20:42:25 +0000 (22:42 +0200)]
gnulib-tool.py: Implement option --single-configure.

* gnulib-tool.py (main): Accept option --single-configure. Pass its
value to the GLConfig constructor.
* pygnulib/GLTestDir.py (GLTestDir.execute): Remove debugging output.

2 years agognulib-tool.py: Implement options --without-c++-tests etc.
Bruno Haible [Wed, 3 Aug 2022 20:29:52 +0000 (22:29 +0200)]
gnulib-tool.py: Implement options --without-c++-tests etc.

* gnulib-tool.py (main): Accept options --without-c++-tests,
--without-longrunning-tests, --without-privileged-tests,
--without-unportable-tests.
Improve error message for --copy-file with invalid number of arguments.
Check for invalid options given in --import, --add-import,
--remove-import, --update modes.
Pass both sets of test categories to the GLConfig constructor.
* pygnulib/GLConfig.py (GLConfig.__init__): Accept incl_test_categories
and excl_test_categories instead of testflags.
(checkInclTestCategory): Renamed from checkTestFlag.
(enableInclTestCategory): Renamed from enableTestFlag.
(disableInclTestCategory): Renamed from disableTestFlag.
(getInclTestCategories): Renamed from getTestFlags.
(setInclTestCategories): Renamed from setTestFlags.
(resetInclTestCategories): Renamed from resetTestFlags.
(setInclTestCategory, checkExclTestCategory, enableExclTestCategory,
disableExclTestCategory, getExclTestCategories, setExclTestCategories,
resetExclTestCategories): New methods.
* pygnulib/GLModuleSystem.py (GLModuleTable.__init__): Accept two
booleans as second and third constructor arguments.
(transitive_closure): Correct the determination of whether to include
each module, depending on the with-* and without-* options.
(transitive_closure_separately): Update.
* pygnulib/GLMakefileTable.py: Update.
* pygnulib/GLImport.py (__init__, actioncmd, gnulib_cache, execute):
Update.
* pygnulib/GLTestDir.py (GLTestDir.__init__, GLTestDir.execute,
GLMegaTestDir.__init__): Update.

2 years agognulib-tool.py: Implement option --without-tests.
Bruno Haible [Wed, 3 Aug 2022 16:00:13 +0000 (18:00 +0200)]
gnulib-tool.py: Implement option --without-tests.

* gnulib-tool.py (main): Accept option --without-tests.

2 years agognulib-tool.py: Fix broken 'for' loop.
Bruno Haible [Wed, 3 Aug 2022 15:55:24 +0000 (17:55 +0200)]
gnulib-tool.py: Fix broken 'for' loop.

* gnulib-tool.py (main): Canonicalize inctests before creating the
GLConfig. Rewrite a broken 'for' loop.
* pygnulib/GLConfig.py (GLConfig.setTestFlags): Remove unused statement.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 23.
Bruno Haible [Wed, 3 Aug 2022 14:49:15 +0000 (16:49 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 23.

Follow gnulib-tool changes
2016-11-11  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Support for the dual "LGPLv3+ or GPLv2" license.
2016-12-02  Nikos Mavrogiannopoulos <nmav@gnutls.org>
gnulib-tool (func_import): Adhere to the license guideline ...
2016-12-02  Daiki Ueno  <ueno@gnu.org>
gnulib-tool (func_import): Relax the regex ...

* gnulib-tool.py: For --lgpl, accept value 3orGPLv2.
* pygnulib/GLInfo.py (GLInfo.usage): Update.
* pygnulib/GLConfig.py (GLConfig.setLGPL): Update argument check.
* pygnulib/GLImport.py (GLImport.__init__, GLImport.gnulib_cache):
Update gl_LGPL handling.
(GLImport.prepare): Update license compatibility checks and license
header rewriting.
* pygnulib/GLTestDir.py (GLTestDir.execute): Update license
compatibility checks. Handle also the licenses GPLv3+, GPL, LGPLv3+.

2 years agognulib-tool.py: Fix unjustified "incompatible license" warnings.
Bruno Haible [Wed, 3 Aug 2022 13:51:35 +0000 (15:51 +0200)]
gnulib-tool.py: Fix unjustified "incompatible license" warnings.

* pygnulib/GLTestDir.py (GLTestDir.execute): Don't emit a warning when
the dependency module has a license such as "public domain" or
"unlimited".

2 years agognulib-tool.py: Follow gnulib-tool changes, part 22.
Bruno Haible [Wed, 3 Aug 2022 12:51:20 +0000 (14:51 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 22.

Follow gnulib-tool change
2016-10-15  Bruno Haible  <bruno@clisp.org>
Avoid gnulib-tool warnings about the dependencies of 'parse-datetime'.

* pygnulib/GLModuleSystem.py (GLModule.getLicense): Special-case the
'parse-datetime' module.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 21.
Bruno Haible [Wed, 3 Aug 2022 12:43:40 +0000 (14:43 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 21.

Follow gnulib-tool change
2016-10-16  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Make --create-testdir on all modules work again.

* pygnulib/GLTestDir.py (GLTestDir.execute): Don't include the
non-recursive-gnulib-prefix-hack module.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 20.
Bruno Haible [Wed, 3 Aug 2022 12:37:12 +0000 (14:37 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 20.

Follow gnulib-tool changes
2016-01-15  Paul Eggert  <eggert@cs.ucla.edu>
gnulib-tool: don't assume ln -s works
2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
gnulib-tool: don't give up on ln -s so easily
2017-06-08  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Fix bug in func_ln_s, from 2016-01-15.

* pygnulib/constants.py (symlink_relative): New function.
(link_relative): Use it instead of os.symlink.

2 years agognulib-tool.py: Avoid errors when writing to a VFAT file system, part 2.
Bruno Haible [Wed, 3 Aug 2022 12:27:51 +0000 (14:27 +0200)]
gnulib-tool.py: Avoid errors when writing to a VFAT file system, part 2.

* pygnulib/constants.py (movefile): New function.
* pygnulib/*.py: Use it instead of shutil.

2 years agognulib-tool.py: Avoid errors when writing to a VFAT file system.
Bruno Haible [Wed, 3 Aug 2022 09:27:21 +0000 (11:27 +0200)]
gnulib-tool.py: Avoid errors when writing to a VFAT file system.

* pygnulib/constants.py (copyfile, copyfile2): New functions.
* gnulib-tool.py: Use them instead of shutil.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Fix typo.
Bruno Haible [Tue, 2 Aug 2022 22:24:29 +0000 (00:24 +0200)]
gnulib-tool.py: Fix typo.

* pygnulib/GLImport.py (GLImport.__init__): Use the relative auxdir as
second, not as first argument of joinpath.

2 years agognulib-tool.py: Fix typo.
Bruno Haible [Sun, 31 Jul 2022 21:28:18 +0000 (23:28 +0200)]
gnulib-tool.py: Fix typo.

* pygnulib/GLTestDir.py (GLMegaTestDir.execute): Invoke os.mkdir as
intended.

2 years agognulib-tool.py: Improve some error messages.
Bruno Haible [Sun, 31 Jul 2022 21:02:58 +0000 (23:02 +0200)]
gnulib-tool.py: Improve some error messages.

* gnulib-tool.py (main): Write "*** Stop." instead of "*** Exit.".
(__main__): Print an error message for GLError 5, 13, 14, 15, 16, 17, 18.
* pygnulib/GLError.py (GLError.__repr__): Compute one error message,
not 19.

2 years agognulib-tool.py: Write errors to stderr, not stdout.
Bruno Haible [Sun, 31 Jul 2022 20:35:30 +0000 (22:35 +0200)]
gnulib-tool.py: Write errors to stderr, not stdout.

* pygnulib/constants.py: Write error messages to stderr, not stdout.

2 years agognulib-tool.py: Use mainstream coding style.
Bruno Haible [Sun, 31 Jul 2022 20:29:15 +0000 (22:29 +0200)]
gnulib-tool.py: Use mainstream coding style.

* pygnulib/GLConfig.py: Use 'raise' to re-throw an exception.

2 years agognulib-tool.py: Implement options --symlink and --local-symlink.
Bruno Haible [Sun, 31 Jul 2022 19:08:55 +0000 (21:08 +0200)]
gnulib-tool.py: Implement options --symlink and --local-symlink.

* gnulib-tool.py (main): Handle options --symlink and --local-symlink.
* pygnulib/constants.py (link_if_changed): Ignore FileNotFoundError from
os.remove call.

2 years agognulib-tool.py: Make --copy-file work.
Bruno Haible [Sun, 31 Jul 2022 18:02:40 +0000 (20:02 +0200)]
gnulib-tool.py: Make --copy-file work.

* gnulib-tool.py (main) [copy-file]: Fix reference to uninitialized
variable. Fix error handling of os.makedirs. Pass the destdir to the
GLFileAssistant.

2 years agognulib-tool.py: Allow module arguments to occur at any position.
Bruno Haible [Sun, 31 Jul 2022 16:56:05 +0000 (18:56 +0200)]
gnulib-tool.py: Allow module arguments to occur at any position.

* gnulib-tool.py (main): Collect the non-option arguments in a single
list, regardless of their position. Use parse_known_args instead of
parse_args, and give an error message about unknown options ourselves.
* gnulib-tool: Fix typo in error message.

2 years agognulib-tool.py: Make --test behaviour more similar to gnulib-tool.
Bruno Haible [Sun, 31 Jul 2022 16:54:22 +0000 (18:54 +0200)]
gnulib-tool.py: Make --test behaviour more similar to gnulib-tool.

* gnulib-tool.py (main) [test]: Remove space from the testdir name.

2 years agognulib-tool: Clarify that --test allows zero module arguments.
Bruno Haible [Sun, 31 Jul 2022 16:53:24 +0000 (18:53 +0200)]
gnulib-tool: Clarify that --test allows zero module arguments.

* gnulib-tool (func_usage): Mark the modules for --test as optional.
* pygnulib/GLInfo.py (GLInfo.usage): Likewise.

2 years agognulib-tool.py: Make option processing more similar to gnulib-tool.
Bruno Haible [Sun, 31 Jul 2022 16:51:17 +0000 (18:51 +0200)]
gnulib-tool.py: Make option processing more similar to gnulib-tool.

* gnulib-tool.py (main): Allow --add-import and --remove-import with 0
modules.

2 years agognulib-tool.py: Improve compliance with GNU standards.
Bruno Haible [Sun, 31 Jul 2022 16:48:25 +0000 (18:48 +0200)]
gnulib-tool.py: Improve compliance with GNU standards.

* gnulib-tool.py (main): Handle --help and --version before testing for
conflicting modes.

2 years agognulib-tool.py: Emit error message when conflicting modes are specified.
Bruno Haible [Sun, 31 Jul 2022 16:44:56 +0000 (18:44 +0200)]
gnulib-tool.py: Emit error message when conflicting modes are specified.

* gnulib-tool.py (main): Fix test of conflicting modes. (Some options
produce a value of [], and as a condition, [] evaluates to False.)

2 years agognulib-tool.py: Remove most short options.
Bruno Haible [Sun, 31 Jul 2022 16:42:31 +0000 (18:42 +0200)]
gnulib-tool.py: Remove most short options.

* gnulib-tool.py (main): Reorder the list of options. Remove most short
options, for consistency with gnulib-tool.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 19.
Bruno Haible [Sun, 31 Jul 2022 16:39:19 +0000 (18:39 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 19.

Follow gnulib-tool changes
2015-12-09  Pavel Raiskup  <praiskup@redhat.com>
gnulib-tool: allow multiple --local-dir usage
2019-02-14  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Improve handling of multiple --local-dir options.

* gnulib-tool (func_reconstruct_cached_dir): When the argument is
absolute, return it unmodified.
(func_compute_relative_local_gnulib_path): Renamed from
func_count_relative_local_gnulib_path. Add comment.
* gnulib-tool.py: Accept multiple --local-dir options and collect the
values into localpath.
* pygnulib/GLConfig.py: Take a localpath argument instead of a localdir
argument.
(getLocalDir, setLocalDir, resetLocalDir): Remove methods.
(getLocalPath, setLocalPath, resetLocalPath): New methods.
* pygnulib/GLFileSystem.py (CopyAction): New class.
(GLFileSystem.lookup): Consider all dirs in localpath.
(GLFileSystem.shouldLink): New method.
(GLFileAssistant): Use shouldLink.
* pygnulib/GLModuleSystem.py (GLModuleSystem.exists): Iterate over all
dirs in localpath.
(GLModuleSystem.list): Likewise.
* pygnulib/GLEmiter.py: Update.
* pygnulib/GLImport.py (GLImport.__init__): Put the argument of
gl_LOCAL_DIR into localpath, not localdir.
(GLImport.actioncmd): Consider all dirs in localpath.
(GLImport.relative_to_destdir, GLImport.relative_to_currdir): New
methods.
(GLImport.gnulib_cache): Combine all dirs in localpath. Use
self.relative_to_destdir.
* pygnulib/GLTestDir.py (GLTestDir.execute): Use shouldLink.

2 years agognulib-tool.py: Improve the primitives for relative file names.
Bruno Haible [Sun, 31 Jul 2022 16:35:58 +0000 (18:35 +0200)]
gnulib-tool.py: Improve the primitives for relative file names.

* pygnulib/constants.py (relativize): Don't attempt to handle absolute
file names. Fix bug with relativize('../foo/bar', '../foo/bla/zut').
(relconcat): New function.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 18.
Bruno Haible [Sun, 31 Jul 2022 16:30:50 +0000 (18:30 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 18.

Follow gnulib-tool change
2005-09-20  Bruno Haible  <bruno@clisp.org>
gnulib-tool: Remove trailing slashes

* pygnulib/constants.py (remove_trailing_slashes): New function.
* pygnulib/GLConfig.py (GLConfig): Use it in the setters.

2 years agoavltree-omap, avltree-oset, avltreehash-list, rbtree-omap: Pacify GCC.
Bruno Haible [Sun, 31 Jul 2022 21:48:14 +0000 (23:48 +0200)]
avltree-omap, avltree-oset, avltreehash-list, rbtree-omap: Pacify GCC.

* lib/gl_avltree_omap.c (gl_avltree_omap_check_invariants): Add extern
decl.
* lib/gl_avltree_oset.c (gl_avltree_oset_check_invariants): Likewise.
* lib/gl_avltreehash_list.c (gl_avltreehash_list_check_invariants):
Likewise.
* lib/gl_rbtree_omap.c (gl_rbtree_omap_check_invariants): Likewise.

2 years agorbtree-oset: Pacify GCC
Paul Eggert [Sun, 31 Jul 2022 17:17:35 +0000 (10:17 -0700)]
rbtree-oset: Pacify GCC

* lib/gl_rbtree_oset.c (gl_rbtree_oset_check_invariants):
* lib/gl_rbtreehash_list.c (gl_rbtreehash_list_check_invariants):
Add extern decls, to pacify --enable-gcc-warnings with Bison.

2 years agoUpdate gnulib-tool.py.TODO.
Bruno Haible [Sun, 31 Jul 2022 16:28:32 +0000 (18:28 +0200)]
Update gnulib-tool.py.TODO.

2 years agognulib-tool: add support for --automake-subdir-tests
Akim Demaille [Mon, 4 Jul 2022 05:18:07 +0000 (07:18 +0200)]
gnulib-tool: add support for --automake-subdir-tests

<https://lists.gnu.org/r/bug-gnulib/2022-01/msg00111.html>

* gnulib-tool (main): Handle --automake-subdir-tests.
(func_emit_shellvars_init, func_emit_lib_Makefile_am): Use
$sourcebase when handling tests and --automake-subdir-tests is
given.
(func_append_actionarg): Support --automake-subdir-tests.
(func_create_testdir): Add missing argument for func_emit_initmacro_end.

2 years agogendocs.sh: Fix error when invoking 'perl' (regression 2022-07-23).
Bruno Haible [Sun, 31 Jul 2022 05:16:34 +0000 (07:16 +0200)]
gendocs.sh: Fix error when invoking 'perl' (regression 2022-07-23).

* build-aux/gendocs.sh (PERL): Use double-quotes, not single-quotes.

2 years agognulib-tool.py: Clean up imports.
Bruno Haible [Sat, 30 Jul 2022 11:51:36 +0000 (13:51 +0200)]
gnulib-tool.py: Clean up imports.

* gnulib-tool.py: Remove unused constants.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Assume Python 3.
Bruno Haible [Sat, 30 Jul 2022 11:29:26 +0000 (13:29 +0200)]
gnulib-tool.py: Assume Python 3.

* gnulib-tool.py: Don't allow 'bytes' as an alternative to 'str'.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Assume Python 3.
Bruno Haible [Sat, 30 Jul 2022 09:45:36 +0000 (11:45 +0200)]
gnulib-tool.py: Assume Python 3.

* gnulib-tool.py: Don't set PYTHON3, string. Use str instead of string.
* pygnulib/*.py: Likewise.

2 years agognulib-tool.py: Modernize coding style.
Bruno Haible [Sat, 30 Jul 2022 08:44:02 +0000 (10:44 +0200)]
gnulib-tool.py: Modernize coding style.

* pygnulib/*.py: Remove parentheses around raise value expressions.

2 years agodoc: Update regarding bootstrap split.
Bruno Haible [Sat, 30 Jul 2022 23:07:08 +0000 (01:07 +0200)]
doc: Update regarding bootstrap split.

Reported by Paul Smith <psmith@gnu.org>.

* doc/gnulib-tool.texi (gettextize and autopoint): Mention autogen.sh
instead of bootstrap.
(VCS Issues): Describe three alternative approaches.
* doc/gnulib.texi (Developer tools): Mention also autopull.sh and
autogen.sh.
* top/bootstrap (usage): Fix copy&paste mistake.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 17.
Bruno Haible [Fri, 29 Jul 2022 21:29:23 +0000 (23:29 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 17.

Follow gnulib-tool change
2015-10-06  Pavel Raiskup  <praiskup@redhat.com>
gnulib-tool: fix tests of 'extensions' module

* pygnulib/GLEmiter.py (GLEmiter.preEarlyMacros): New function.
* pygnulib/GLImport.py (GLImport.gnulib_comp): Invoke it.
* pygnulib/GLTestDir.py (GLTestDir.execute): Likewise.

2 years agognulib-tool.py: Follow gnulib-tool changes, part 16.
Bruno Haible [Fri, 29 Jul 2022 20:58:27 +0000 (22:58 +0200)]
gnulib-tool.py: Follow gnulib-tool changes, part 16.

Follow gnulib-tool change
2015-09-25  Pavel Raiskup  <praiskup@redhat.com>
gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash

* pygnulib/GLImport.py (GLImport.gnulib_comp): Put the
gl_USE_SYSTEM_EXTENSIONS right before gl_PROG_AR_RANLIB into
gnulib-comp.m4 (if the 'extensions' module is used).

2 years agognulib-tool.py: Modernize coding style.
Bruno Haible [Fri, 29 Jul 2022 16:45:33 +0000 (18:45 +0200)]
gnulib-tool.py: Modernize coding style.

* pygnulib/*.py: Remove parentheses around return value expressions.

2 years agognulib-tool.py: Modernize the file headers.
Bruno Haible [Fri, 29 Jul 2022 14:41:28 +0000 (16:41 +0200)]
gnulib-tool.py: Modernize the file headers.

* pygnulib/*.py: Remove '#!/usr/bin/python' (not needed) and
'encoding: UTF-8' lines (default in Python 3). Add copyright notice.

2 years agognulib-tool.py: Use mainstream coding style.
Bruno Haible [Fri, 29 Jul 2022 14:35:28 +0000 (16:35 +0200)]
gnulib-tool.py: Use mainstream coding style.

* gnulib-tool.py: Clarify the coding style. Fix some pycodestyle
warnings.
* pygnulib/constants.py: Likewise.
* pygnulib/GLEmiter.py: Likewise.
* pygnulib/GLImport.py: Likewise.
* pygnulib/GLMakefileTable.py: Likewise.

2 years agognulib-tool.py: Fix error (regression 2021-04-11).
Bruno Haible [Fri, 29 Jul 2022 09:20:00 +0000 (11:20 +0200)]
gnulib-tool.py: Fix error (regression 2021-04-11).

* pygnulib/GLConfig.py (GLConfig.getModuleIndicatorPrefix): Fix code.

2 years agognulib-tool.py: Fix warning from Python 3.10.4.
Bruno Haible [Fri, 29 Jul 2022 09:14:27 +0000 (11:14 +0200)]
gnulib-tool.py: Fix warning from Python 3.10.4.

* pygnulib/GLModuleSystem.py (getConditionalName): Fix a string
substitution expression.

2 years agognulib-tool.py: Fix error in Ubuntu 22.04.
Bruno Haible [Fri, 29 Jul 2022 09:09:00 +0000 (11:09 +0200)]
gnulib-tool.py: Fix error in Ubuntu 22.04.

* gnulib-tool.py: Search for python3 in $PATH.

2 years agoUpdate gnulib-tool.py.TODO.
Bruno Haible [Fri, 29 Jul 2022 05:26:22 +0000 (07:26 +0200)]
Update gnulib-tool.py.TODO.

2 years agoautoupdate
Karl Berry [Tue, 26 Jul 2022 14:55:39 +0000 (07:55 -0700)]
autoupdate

2 years agobootstrap: Make the automatic sync more resilient.
Bruno Haible [Mon, 25 Jul 2022 08:21:42 +0000 (10:21 +0200)]
bootstrap: Make the automatic sync more resilient.

Reported by Paul Eggert in
<https://lists.gnu.org/archive/html/bug-gnulib/2022-07/msg00060.html>.

* top/bootstrap (bootstrap_sync): Set to true when bootstrap-funclib.sh
is not present.
* top/gen-bootstrap.sed: Insert a couple of comment lines.
* build-aux/bootstrap: Regenerated using "make build-aux/bootstrap".

2 years agoFix comment.
Bruno Haible [Sun, 24 Jul 2022 22:53:48 +0000 (00:53 +0200)]
Fix comment.

Reported by Paul Eggert in
<https://lists.gnu.org/archive/html/bug-gnulib/2022-07/msg00058.html>.

* top/bootstrap-funclib.sh: Fix comment about canonical location.
* top/autopull.sh: Likewise.
* top/autogen.sh: Likewise.
* top/bootstrap: Likewise.

2 years agoSplit bootstrap into autopull.sh and autogen.sh.
Bruno Haible [Sun, 24 Jul 2022 14:24:37 +0000 (16:24 +0200)]
Split bootstrap into autopull.sh and autogen.sh.

* top/bootstrap-funclib.sh: New file, based on build-aux/bootstrap.
* top/autopull.sh: New file, based on build-aux/bootstrap.
* top/autogen.sh: New file, based on build-aux/bootstrap.
* top/bootstrap: New file, based on build-aux/bootstrap.
* top/gen-bootstrap.sed: New file.
* Makefile (build-aux/bootstrap): New rule.
(regen): Depend on it.
* build-aux/bootstrap: Regenerated using "make build-aux/bootstrap".

2 years agobootstrap: Obey another environment variable GNULIB_REFDIR.
Bruno Haible [Sun, 24 Jul 2022 10:58:44 +0000 (12:58 +0200)]
bootstrap: Obey another environment variable GNULIB_REFDIR.

* build-aux/bootstrap (usage): Document option --gnulib-refdir and
environment variable GNULIB_REFDIR.
Accept option --gnulib-refdir.
When GNULIB_SRCDIR is specified, verify that it denotes a directory.
Use $GNULIB_REFDIR, not $GNULIB_SRCDIR, as argument to git's --reference
option.
Improve an error message.
* NEWS: Mention the change.

2 years agoFix a couple of ShellCheck warnings.
Bruno Haible [Sat, 23 Jul 2022 11:31:20 +0000 (13:31 +0200)]
Fix a couple of ShellCheck warnings.

* MODULES.html.sh (sed_escape_slash): Remove unused variable.
* build-aux/bootstrap: Avoid computed printf format strings.
* build-aux/do-release-commit-and-tag: Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/declared.sh: Fix "unrecognized option" message.
* gnulib-tool (supplied_opts): Remove unused variable.
(--single-con): Remove redundant option recognition.
* tests/test-parse-duration.sh (nl): Remove unused variable.
* tests/test-update-copyright.sh: Use double-quotes instead of
single-quotes.

2 years agoAvoid DoS vulnerability through unsafe default assignment.
Bruno Haible [Sat, 23 Jul 2022 10:01:35 +0000 (12:01 +0200)]
Avoid DoS vulnerability through unsafe default assignment.

See https://www.shellcheck.net/wiki/SC2223 .

* MODULES.html.sh (func_tmpdir): Surround default assignment with
double-quotes.
* build-aux/bootstrap: Likewise.
* build-aux/csharpcomp.sh.in (func_tmpdir): Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/libtool-next-version (func_tmpdir): Likewise.
* config/srclist-update: Likewise.
* gnulib-tool (func_tmpdir): Likewise.
* posix-modules (func_tmpdir): Likewise.
* tests/test-atexit.sh: Likewise.
* tests/test-btoc32-1.sh: Likewise.
* tests/test-btoc32-2.sh: Likewise.
* tests/test-btowc1.sh: Likewise.
* tests/test-btowc2.sh: Likewise.
* tests/test-c-dtoastr.sh: Likewise.
* tests/test-c-ldtoastr.sh: Likewise.
* tests/test-c-snprintf.sh: Likewise.
* tests/test-c-strcase.sh: Likewise.
* tests/test-c-vasprintf.sh: Likewise.
* tests/test-c-vsnprintf.sh: Likewise.
* tests/test-c-xvasprintf.sh: Likewise.
* tests/test-c32isalnum.sh: Likewise.
* tests/test-c32isalpha.sh: Likewise.
* tests/test-c32isblank.sh: Likewise.
* tests/test-c32iscntrl.sh: Likewise.
* tests/test-c32isdigit.sh: Likewise.
* tests/test-c32isgraph.sh: Likewise.
* tests/test-c32islower.sh: Likewise.
* tests/test-c32isprint.sh: Likewise.
* tests/test-c32ispunct.sh: Likewise.
* tests/test-c32isspace.sh: Likewise.
* tests/test-c32isupper.sh: Likewise.
* tests/test-c32isxdigit.sh: Likewise.
* tests/test-c32rtomb.sh: Likewise.
* tests/test-c32snrtombs-1.sh: Likewise.
* tests/test-c32snrtombs-2.sh: Likewise.
* tests/test-c32snrtombs-3.sh: Likewise.
* tests/test-c32snrtombs-4.sh: Likewise.
* tests/test-c32srtombs-1.sh: Likewise.
* tests/test-c32srtombs-2.sh: Likewise.
* tests/test-c32srtombs-3.sh: Likewise.
* tests/test-c32srtombs-4.sh: Likewise.
* tests/test-c32stombs-1.sh: Likewise.
* tests/test-c32stombs-2.sh: Likewise.
* tests/test-c32stombs-3.sh: Likewise.
* tests/test-c32stombs-4.sh: Likewise.
* tests/test-closein.sh: Likewise.
* tests/test-copy-acl.sh (func_tmpdir): Likewise.
* tests/test-copy-file.sh (func_tmpdir): Likewise.
* tests/test-dprintf-posix.sh: Likewise.
* tests/test-execl.sh: Likewise.
* tests/test-execle.sh: Likewise.
* tests/test-execlp.sh: Likewise.
* tests/test-execv.sh: Likewise.
* tests/test-execve.sh: Likewise.
* tests/test-execvp.sh: Likewise.
* tests/test-execvpe.sh: Likewise.
* tests/test-file-has-acl.sh (func_tmpdir): Likewise.
* tests/test-fprintf-posix.sh: Likewise.
* tests/test-init.sh: Likewise.
* tests/test-iswdigit.sh: Likewise.
* tests/test-iswxdigit.sh: Likewise.
* tests/test-mbmemcasecmp1.sh: Likewise.
* tests/test-mbmemcasecmp2.sh: Likewise.
* tests/test-mbmemcasecmp3.sh: Likewise.
* tests/test-mbmemcasecoll1.sh: Likewise.
* tests/test-mbmemcasecoll2.sh: Likewise.
* tests/test-mbmemcasecoll3.sh: Likewise.
* tests/test-mbrtoc32-1.sh: Likewise.
* tests/test-mbrtoc32-2.sh: Likewise.
* tests/test-mbrtoc32-3.sh: Likewise.
* tests/test-mbrtoc32-4.sh: Likewise.
* tests/test-mbrtowc1.sh: Likewise.
* tests/test-mbrtowc2.sh: Likewise.
* tests/test-mbrtowc3.sh: Likewise.
* tests/test-mbrtowc4.sh: Likewise.
* tests/test-mbscasecmp.sh: Likewise.
* tests/test-mbscasestr2.sh: Likewise.
* tests/test-mbscasestr3.sh: Likewise.
* tests/test-mbscasestr4.sh: Likewise.
* tests/test-mbschr.sh: Likewise.
* tests/test-mbscspn.sh: Likewise.
* tests/test-mbsinit.sh: Likewise.
* tests/test-mbsncasecmp.sh: Likewise.
* tests/test-mbsnrtoc32s-1.sh: Likewise.
* tests/test-mbsnrtoc32s-2.sh: Likewise.
* tests/test-mbsnrtoc32s-3.sh: Likewise.
* tests/test-mbsnrtoc32s-4.sh: Likewise.
* tests/test-mbsnrtowcs1.sh: Likewise.
* tests/test-mbsnrtowcs2.sh: Likewise.
* tests/test-mbsnrtowcs3.sh: Likewise.
* tests/test-mbsnrtowcs4.sh: Likewise.
* tests/test-mbspbrk.sh: Likewise.
* tests/test-mbspcasecmp.sh: Likewise.
* tests/test-mbsrchr.sh: Likewise.
* tests/test-mbsrtoc32s-1.sh: Likewise.
* tests/test-mbsrtoc32s-2.sh: Likewise.
* tests/test-mbsrtoc32s-3.sh: Likewise.
* tests/test-mbsrtoc32s-4.sh: Likewise.
* tests/test-mbsrtowcs1.sh: Likewise.
* tests/test-mbsrtowcs2.sh: Likewise.
* tests/test-mbsrtowcs3.sh: Likewise.
* tests/test-mbsrtowcs4.sh: Likewise.
* tests/test-mbsspn.sh: Likewise.
* tests/test-mbsstr2.sh: Likewise.
* tests/test-mbsstr3.sh: Likewise.
* tests/test-mbstoc32s-1.sh: Likewise.
* tests/test-mbstoc32s-2.sh: Likewise.
* tests/test-mbstoc32s-3.sh: Likewise.
* tests/test-mbstoc32s-4.sh: Likewise.
* tests/test-nl_langinfo.sh: Likewise.
* tests/test-parse-duration.sh (func_tmpdir): Likewise.
* tests/test-perror.sh: Likewise.
* tests/test-printf-posix.sh: Likewise.
* tests/test-set-mode-acl.sh (func_tmpdir): Likewise.
* tests/test-setlocale1.sh: Likewise.
* tests/test-strtod1.sh: Likewise.
* tests/test-strtold1.sh: Likewise.
* tests/test-unicodeio2.sh: Likewise.
* tests/test-unicodeio3.sh: Likewise.
* tests/test-vasnprintf-posix2.sh: Likewise.
* tests/test-vc-list-files-cvs.sh: Likewise.
* tests/test-vc-list-files-git.sh: Likewise.
* tests/test-vdprintf-posix.sh: Likewise.
* tests/test-vfprintf-posix.sh: Likewise.
* tests/test-vprintf-posix.sh: Likewise.
* tests/test-wcrtomb.sh: Likewise.
* tests/test-wcsnrtombs1.sh: Likewise.
* tests/test-wcsnrtombs2.sh: Likewise.
* tests/test-wcsnrtombs3.sh: Likewise.
* tests/test-wcsnrtombs4.sh: Likewise.
* tests/test-wcsrtombs1.sh: Likewise.
* tests/test-wcsrtombs2.sh: Likewise.
* tests/test-wcsrtombs3.sh: Likewise.
* tests/test-wcsrtombs4.sh: Likewise.
* tests/test-xprintf-posix.sh: Likewise.
* tests/test-xstrtoimax.sh: Likewise.
* tests/test-xstrtol.sh: Likewise.
* tests/test-xstrtoll.sh: Likewise.
* tests/test-xstrtoumax.sh: Likewise.
* tests/test-yesno.sh: Likewise.
* tests/unicase/test-locale-language.sh: Likewise.
* tests/unicase/test-ulc-casecmp1.sh: Likewise.
* tests/unicase/test-ulc-casecmp2.sh: Likewise.
* tests/unicase/test-ulc-casecoll1.sh: Likewise.
* tests/unicase/test-ulc-casecoll2.sh: Likewise.
* tests/unigbrk/test-ulc-grapheme-breaks.sh: Likewise.
* tests/unistdio/test-u16-vasnprintf2.sh: Likewise.
* tests/unistdio/test-u16-vasnprintf3.sh: Likewise.
* tests/unistdio/test-u32-vasnprintf2.sh: Likewise.
* tests/unistdio/test-u32-vasnprintf3.sh: Likewise.
* tests/unistdio/test-u8-vasnprintf2.sh: Likewise.
* tests/unistdio/test-u8-vasnprintf3.sh: Likewise.
* tests/unistdio/test-ulc-vasnprintf2.sh: Likewise.
* tests/unistdio/test-ulc-vasnprintf3.sh: Likewise.
* tests/uniwbrk/test-ulc-wordbreaks.sh: Likewise.
* tests/uniwidth/test-uc_width2.sh: Likewise.

2 years agobootstrap: Comments.
Bruno Haible [Mon, 18 Jul 2022 17:55:17 +0000 (19:55 +0200)]
bootstrap: Comments.

* build-aux/bootstrap: Comment about two unused variables.

2 years agodoc: Update README.
Bruno Haible [Sun, 17 Jul 2022 10:55:05 +0000 (12:55 +0200)]
doc: Update README.

* doc/README: Fix stale links (reported by Tzvetelin Katchov). Clarify
the relation to build-aux/gnu-web-doc-update.

2 years agodoc: Fix typo.
Bruno Haible [Thu, 14 Jul 2022 19:57:16 +0000 (21:57 +0200)]
doc: Fix typo.

Reported by Eric Gallager <egall@gwmail.gwu.edu> in
<https://lists.gnu.org/archive/html/bug-gnulib/2022-07/msg00045.html>.

* doc/posix-functions/mmap.texi: Add parenthesis.

2 years ago* doc/parse-datetime.texi: Tweak wording again.
Paul Eggert [Thu, 14 Jul 2022 01:54:56 +0000 (18:54 -0700)]
* doc/parse-datetime.texi: Tweak wording again.

2 years agoparse-datetime: improve doc for TZ="<-07>7" etc.
Paul Eggert [Wed, 13 Jul 2022 00:11:26 +0000 (17:11 -0700)]
parse-datetime: improve doc for TZ="<-07>7" etc.

* doc/parse-datetime.texi (Specifying time zone rules):
Give examples of POSIX TZ strings that specify UTC offsets (Bug#56524).

2 years agosigsegv: Optimize stackvma implementation for AIX 7.
Bruno Haible [Sun, 10 Jul 2022 21:19:03 +0000 (23:19 +0200)]
sigsegv: Optimize stackvma implementation for AIX 7.

Reported by Neha Jain <nehajain29@in.ibm.com> in
<https://lists.gnu.org/archive/html/bug-m4/2022-06/msg00005.html>
via Eric Blake.

* lib/stackvma.c: For AIX, add implementation that uses /proc/$pid/map,
based on lib/vma-iter.c.
(sigsegv_get_vma): Use it on AIX 7 or higher.

2 years agovma-iter: Add support for AIX 7.
Bruno Haible [Sun, 10 Jul 2022 19:52:11 +0000 (21:52 +0200)]
vma-iter: Add support for AIX 7.

* lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on AIX.
* lib/vma-iter.c (vma_iterate): Add code for AIX, known to work on
AIX 7.
* lib/get-rusage-as.c: Update comments.
* lib/get-rusage-data.c: Likewise.
* tests/test-get-rusage-as.c (main): Take into account the special
address space organization on AIX in 32-bit mode.

2 years agoiconv: Define a summary result.
Bruno Haible [Sun, 10 Jul 2022 15:30:28 +0000 (17:30 +0200)]
iconv: Define a summary result.

Reported by Simon Josefsson in
<https://lists.gnu.org/archive/html/bug-gnulib/2022-07/msg00020.html>.

* m4/iconv.m4 (AM_ICONV): Define also am_cv_func_iconv_summary.

2 years agoiconv: Remove obsolete comment.
Bruno Haible [Sun, 10 Jul 2022 08:23:48 +0000 (10:23 +0200)]
iconv: Remove obsolete comment.

* m4/iconv.m4 (AM_ICONV): Remove comment that is obsolete since
2020-08-16.

2 years agoannounce-gen: Fix internationalization in verification instructions.
Bruno Haible [Sun, 10 Jul 2022 07:21:20 +0000 (09:21 +0200)]
announce-gen: Fix internationalization in verification instructions.

* build-aux/announce-gen: Set LC_ALL, not LANG, to "C", to force English
output from gpg.

2 years agolib-symbol-visibility: Improve documentation.
Bruno Haible [Sun, 10 Jul 2022 07:02:42 +0000 (09:02 +0200)]
lib-symbol-visibility: Improve documentation.

* doc/lib-symbol-visibility.texi: Tweak BUILDING_SHARED snippet.

2 years agodoc: Mark Minix as no longer tested.
Bruno Haible [Sun, 10 Jul 2022 06:47:59 +0000 (08:47 +0200)]
doc: Mark Minix as no longer tested.

Rationale: No commits since 2018 at https://git.minix3.org/.

Reported by Paul Eggert and Jim Meyering in
<https://lists.gnu.org/archive/html/grep-devel/2022-07/msg00027.html>.

* doc/gnulib-intro.texi (Supported Platforms): Mark Minix as no longer
tested.

2 years agoannounce-gen: better diagnose some usage errors
Jim Meyering [Sun, 10 Jul 2022 01:42:29 +0000 (18:42 -0700)]
announce-gen: better diagnose some usage errors

* build-aux/announce-gen (main): Erroneous usage would elicit a
misleading diagnostic. When --gnulib-version=V was specified:
- without --bootstrap-tools=..., or
- with --bootstrap-tools=..., but without "gnulib" in that list
we would give an inappropriate diagnostic. Now, each diagnostic
is tailored to the precise erroneous condition.
Reported by Bruno Haible in
https://lists.gnu.org/r/bug-gnulib/2022-01/msg00025.html

2 years agogit-version-gen: Doc fix.
Simon Josefsson [Sat, 9 Jul 2022 08:27:15 +0000 (10:27 +0200)]
git-version-gen: Doc fix.

Reported by Reuben Thomas <rrt@sc3d.org> in
<https://lists.gnu.org/archive/html/bug-gnulib/2022-04/msg00012.html>.

* build-aux/git-version-gen (usage): Replace incorrect text with
bug report instructions.

2 years agoannounce-gen: Improve GnuPG verification instructions.
Simon Josefsson [Fri, 8 Jul 2022 22:32:04 +0000 (00:32 +0200)]
announce-gen: Improve GnuPG verification instructions.

* build-aux/announce-gen: Add GPG fingerprint to output, and a
pointer to GNU keyring.