Among others, this fixes the reference to a local commit.
* gnulib: Updated to todays master HEAD revision.
* gl/top/README-release.diff: Update to account for changes to
gnulib/top/README-release since the last gnulib update.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
$((..)) arithmetic, which causes an error on dash, use a case
based bash version check.
(lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
feature probing forks and set these automatically when zsh is
detected.
Reported by Stefano Lattarini.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
has a crippled echo builtin that mis-handles backslashes.
* build-aux/options-parser (bs_echo): Adopt the autoconf echo
normalization code to find a suitable replacement for buggy echo
commands.
Adjust all uses of echo to $bs_echo.
* build-aux/extract-trace (func_extract_trace, func_main):
Likewise.
* bootstrap: To retain some execution speed on platforms with
buggy builtin echo, replace most occurrences of `echo' with
`$bs_echo' - except where its arguments will obviously never
contain backslashes or be overly long.
Reported by Reuben Thomas.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
(lt_HAVE_XSI_OPS): Set these without forking a test script when
running under bash, to avoid a few unnecessary forks.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Aside from Apple grep silently failing to run this test and
report violations, libtool still uses non-gnulib versions of
dirent.h and argz.h which use the same macros, but are not
always-defined.
* cfg.mk (local-checks-to-fix): Move
sc_prohibit_always-defined_macros from here...
(local-checks-to-skip): ...to here.
Reported by Peter O'Gorman.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* tests/demo-noinst-link.test (func_save_files): set the restore
trap outside a function, otherwise AIX 5.3 /bin/sh will run the
trap at the end of the function, instead of when the script
exits.
* tests/demo-relink.test (func_save_files): Ditto.
* tests/depdemo-relink.test (func_save_files): Ditto.
Reported by Stefano Lattarini.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* bootstrap (func_require_buildreq_autobuild)
(func_require_buildreq_automake): Vi's delete word command is
too greedy and also eats trailing whitespace before following
non-word-chars. Put back the spaces it ate so that
syntax-checks pass once again.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Prevent the various require_filter functions from becoming too
long by factoring common code into new functions.
* libtoolize (func_make_relative_dir_filter)
(func_make_relative_ltdl_filter): New functions. Generalize and
consolidate the various similar snippets for concatenating
together the sed scripts for func_copy filtering.
(require_filter_Makefile_am, require_filter_aclocal_m4)
(require_filter_configure_ac): Simplify.
(require_ltdl_relative_aux_dir): Remove.
(require_ltdl_relative_macro_dir): Ditto.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Determine, on a function by function basis, what XSI features
are available in the shell that is actually running the script,
rather than the one that was picked at configure time by the
re-execution engine.
* m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
(_LT_PROG_REPLACE_SHELLFNS): Remove.
(_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len, func_basename, func_dirname)
(func_dirname_and_basename, func_stripname): List both enhanced
and fallback implementations, and choose one based on whether
the enhanced features required by the fastest version are
available.
* build-aux/getopt.m4sh (func_split_short_opt)
(func_split_long_opt): Ditto.
* build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
* tests/getopt-m4sh.at: Add tests for enhanced and fallback
implementations of func_arith, func_len, func_stripname and
func_dirname_and_basename.
* NEWS: Updated.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* build-aux/ltmain.m4sh (func_append, func_append_quoted)
(func_arith, func_len): Removed from here...
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len): ...and added to here.
(func_dirname, func_dirname_and_basename, func_normal_abspath)
(func_relative_path): Use func_append.
* tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
Fallback functions are now in any m4sh generated file
automatically.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (require_Makefile_inc_filter): Rename from
this...
(require_ltdl_mk_filter): ...to this. Adjust all callers.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* bootstrap: Although not a real bug, for consistency, be sure
to correctly escape single quotes inside a single quoted
function generator.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* bootstrap (require_bootstrap_uptodate)
(require_buildtools_uptodate): Use `require_...' in header
comment for these functions to be consistent with the rest,
rather than `func_require_...'.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Make sure we're not lacking any functionality provided by the
incumbent gnulib bootstrap script, and where it's easy to do so
(like it is here), provide better functionality!
* bootstrap (require_patch): Make sure that PATCH expands to the
best `patch' command available on the system, honouring
overrides in the users environment.
(require_patch_buildreq): Automatically add a requirement for a
patch command to buildreq when there are diff files in
$local_gl_dir.
(func_require_buildtools_uptodate): Call require_patch_buildreq
before testing build tool versions.
(func_gnulib_tool_copy_file): Make sure PATCH is set before using
gnulib-tool to copy files.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* build-aux/git-log-fix: Spell Stefano Lattarini's name
correctly.
Don't use my home email address for GNU commits.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
I like to name temporary directories that I will remove shortly
with two leading commas so that they sort lexicographically at
the top of `ls' output. Now, `./configure
--prefix=`pwd`/,,inst' works again, for the first time in
several years.
* cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
character to use routinely as the separator for sed
substitutions on file paths and other variables determined by
the user, causing bugs like the one I describe above. Make sure
we don't accidentally reintroduce any comma separators in
future.
* Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
Try to use `|' as the default separator wherever possible,
otherwise something else that doesn't occur in the substitution
expression.
* NEWS: Updated.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
To safely use a non-literal first argument to `test', you must
always prepend a literal non-`-' character, but often the second
operand is a constant that doesn't begin with a `-' already, so
always use `test a = "$b"' instead of noisy `test "X$b" = Xa'.
* cfg.mk (sc_prohibit_test_const_follows_var): New syntax-check
rule to ensure we don't reintroduce noisy test operands.
* bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
build-aux/ltmain.m4sh, doc/libtool.texi, libtoolize.m4sh,
m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at,
tests/defs.m4sh, tests/demo-relink.test,
tests/demo/configure.ac, tests/depdemo-relink.test,
tests/destdir.at, tests/duplicate_conv.at, tests/fail.at,
tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/need_lib_prefix.at, tests/nocase.at,
tests/pdemo/configure.ac, tests/pic_flag.at,
tests/search-path.at, tests/shlibpath.at, tests/static.at,
tests/sysroot.at, tests/tagtrace.test, tests/testsuite.at,
tests/with-pic.at: Swap operands to avoid useless noise.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Until now, libtool sources have used braced variable names
seemingly at random! Almost always the braces are just noise, so
remove all the unnecessary ones.
* cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
check rule to ensure we only reintroduce braced variable
dereferences if they are followed by a valid variable name
character.
build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
tests/objectlist.test, tests/quote.test, tests/static.at: Remove
spurious braces.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
Make sure not to go back to using occasional `|$basename' or
`|$dirname' syntax.
* build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
* build-aux/options-parser, tests/fcdemo-conf.test,
* tests/fcdemo-shared.test, tests/fcdemo-static.test,
* tests/libtoolize.at: Fix violations.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Some modernization of the legacy testsuite.
* tests/sh.test: Remove.
* Makefile.am (COMMON_TESTS): Adjust.
* cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
(sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
(sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
(sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
(sc_prohibit_test_unary_operators, sc_prohibit_test_X)
(sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
Functionally identical tests to what used to be performed by
sh.test, only with coverage of all files.
* bootstrap, build-aux/edit-readme-alpha,
build-aux/extract-trace, build-aux/getopt.m4sh,
build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
tests/dlloader-api.at, tests/exceptions.at,
tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
tests/link-order2.at, tests/loadlibrary.at,
tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
tests/lt_dlopenext.at, tests/need_lib_prefix.at,
tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
tests/testsuite.at: Fix violations of the new syntax checks.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Contrary to popular belief, Bourne shell does not resplit RHS of
assignments after expansion, so if there are no unquoted shell
metacharacters or whitespace, the quotes are useless.
* cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
_sc_search_regexp that also allows individual exclusions at the
site of what would otherwise match by adding a comment.
(sc_useless_quotes_in_assignment): New syntax-check rule to
ensure we don't reintroduce useless quoted assignments.
* bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/general.m4sh, build-aux/getopt.m4sh,
build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
tests/lalib-syntax.at, tests/libtoolize.at,
tests/lt_dlopenext.at, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
tests/no-executables.at, tests/quote.test, tests/suffix.test:
Remove spurious quotes.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Contrary to popular belief, Bourne shell does not resplit case
expressions after expansion, so if there are no unquoted shell
metacharacters or whitespace, the quotes are useless.
* cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
ensure we don't reintroduce useless quoted case expressions.
* build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
tests/sysroot.at: Remove spurious quotes.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* bootstrap (func_insert_sorted_if_absent): Don't forget the
double quotes, since we can't control the content of $file.
Reported by Steffano Lattarini.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
bootstrap_edit make macro already contains double quotes, so
when echoing it, don't surround it with more double quotes since
it is not escaped.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
To make sure we don't accidentally release anything with
failing syntax-checks, have `make distcheck' run the
syntax-checks automatically.
* Makefile.am (distcheck-hook): New rule depending on
syntax-check.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_always_true_header_tests from list of disabled
checks, because it no longer flags any violations.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-skip): Remove sc_program_name
list of disabled checks.
(exclude_file_name_regexp--sc_program_name): Don't check demo
programs for use of set_program_name.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
list of disabled checks.
(exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
programs for use of bindtextdomain.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
disabled checks.
(exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
sequences in diff files as an error.
* Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
tests/stresstest.at, tests/template.at: Fix space-tab sequences by
reversing them in regexps, and deleting leading spaces in indentation.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_undesirable_word_seq from list of disabled checks.
* doc/libtool.texi, build-aux/ltmain.m4sh,
libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
not" with "cannot".
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove
sc_probhibit_test_minus_ao from list of disabled checks.
(exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
matches from this syntax-check in libtool.m4 are all bogus.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
from list of disabled checks.
(exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
violations in libtool.texi and any demo C files.
* libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
this...
(STRNEQ, STREQ): ..to this. Adjust all callers.
* tests/slist.at: Add STREQ definition. Change all !strcmp calls
to STREQ.
* build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
STREQ definition.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_stddef_without_use from list of disabled checks.
* libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
spurious stddef.h #include lines.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
from list of disabled checks.
* ltmain.c: Removed unused file.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
from list of disabled checks.
* tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
HAVE_CONFIG_H guards for #include <config.h>.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_empty_lines_at_EOF from list of disabled checks.
* THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
tests/f77demo/README, tests/f77demo/cprogram.c,
tests/f77demo/fprogram.f, tests/fcdemo/README,
tests/fcdemo/cprogram.c, tests/libtoolize.at,
tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
Remove spurious empty lines from the end of these files.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
from list of disabled checks.
* build-aux/general.m4sh (func_quote_for_eval): Remove one of a
pair of "and"s in a comment.
* tests/lt_dladvise.at (hint_global): Remove one of a pair of
consecutive "to"s split across lines in a comment.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
from list of disabled checks.
* tests/tagdemo/README: Remove spurious CVS keyword.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>