Commit Graph

161 Commits

Author SHA1 Message Date
Gary V. Vaughan
880a41f6f5 bootstrap: fix a quoting error.
* gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
the extracted version number correctly so that it is displayed in
verbose mode.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-29 17:08:49 +13:00
Gary V. Vaughan
fec7d87180 funclib.sh: simplify version comparison functions.
* gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
(func_lt_ver): New function, return true if arguments are in
ascending order.
* gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
* gl/build-aux/do-release-commit-and-tag.diff: Likewise.
* bootstrap: Regenerate.

Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-28 20:49:47 +13:00
Gary V. Vaughan
9fd7b88bc2 bootstrap: show found GREP and SED in verbose mode.
* gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
These are already set by funclib.sh.
(func_prep): After --verbose has been processed, show the paths
to GREP and SED found by funclib.sh.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-28 20:49:47 +13:00
Gary V. Vaughan
94271692f0 refactor: simplify program path searching in funclib.sh.
* gl/build-aux/funclib.sh (func_path_progs): New function. Factor
out common code from GREP and SED searches.
(func_check_prog_sed, func_check_prog_grep): New functions, for
non-common code.
(scriptversion): Update.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-28 20:49:47 +13:00
Gary V. Vaughan
13d640337a bootstrap: search for a non-truncating grep binary.
On at least Unixware 7.1.4, the first grep binary on PATH is
unable to process the extract-trace scripts.
* gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
that doesn't truncate its own output if available, and set GREP
accordingly.
* Makefile.am (SCRIPT_ENV): Add setting for GREP.
* bootstrap: Regenerate.
Reported by Tim Rice.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-28 20:43:14 +13:00
Gary V. Vaughan
97a331b094 bootstrap: search for a non-truncating sed binary.
On at least Unixware 7.1.4, the first sed binary on PATH is
unable to process the extract-trace scripts.
* gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
according to a feature test.
(func_executable_p): New function.
(SED): Search PATH for a sed binary that doesn't truncate its
own output if available, and set SED accordingly.
(scriptversion): Update.
* Makefile.am (SCRIPT_ENV): New macro, for propagating configured
variables.
(ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
* bootstrap: Regenerate.
Reported by Tim Rice.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-28 20:43:13 +13:00
Gary V. Vaughan
60a8f165b5 refactor: move func_sort_ver from bootstrap.in to funclib.sh.
* gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
* gl/build-aux/funclib.sh (func_sort_ver): ...to here.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-10-26 15:33:07 +13:00
Gary V. Vaughan
75051fb536 bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
* gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
error when running without gnulib-cache.m4.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-09-16 11:02:23 +07:00
Gary V. Vaughan
2d744d9eda bootstrap: make ensure_changelog work for update mode projects.
* gl/build-aux/bootstrap.in (func_bootstrap): Move
func_changelog_ensure invocation from here...
(func_reconfigure): ...to here. If gnulib_modules is empty, then
grep gnulib-cache.m4 for gitlog-to-changelog before invoking
func_changelog_ensure.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-09-15 20:40:07 +07:00
Gary V. Vaughan
96d876301b bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
Recent changes uncovered some bugs in handling of gnulib-tool
options for projects that check in gnulib-cache.m4 rather than
keep a separate list of modules and options in bootstrap.conf.
* gl/build-aux/bootstrap.in (func_require_doc_base)
(func_require_gnulib_name, func_require_local_gl_dir): New
functions to set defaults from gnulib-cache.m4 in projects that
use gnulib-tool in --update mode.
(func_require_gnulib_tool_base_options): Use them to fetch
defaults.
(func_require_gnulib_copy_cmd): New function to calculate the
options required for gnlib-tool copy command.
(func_gnulib_tool_copy_file): Simplify accordingly.
(scriptversion): Bump.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-09-15 13:38:11 +07:00
Gary V. Vaughan
ebeb8a62cd bootstrap: gnulib_tool=true means no gnulib submodule.
* gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
sneaking off and cloning gnulib when the user already specified
gnulib_tool=true in their bootstrap.conf!
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-29 20:44:42 +07:00
Alan Modra
d1ddb6fbbf bootstrap: make first char of IFS a space.
Putting tab first in IFS breaks func_echo_all usage of $*,
resulting in failure of func_infer_tag to match a command line
using a $CC with trailing spaces. The trailing spaces were
stripped out of CC_expanded but words in $CC were separated by
tabs. This didn't match the makefile expansion of $CC using the
standard IFS with a first char of space.
* gl/build-aux/funclib.sh (IFS): Make first char a space.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 20:38:47 +07:00
Gary V. Vaughan
c5d20a6dbc bootstrap: support --no-git and --no-po options.
* gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
--no-git as an alias for --skip-git for compatibility with gnulib
bootstrap, and --no-po for symmetry.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 20:28:25 +07:00
Gary V. Vaughan
a4a814cdaf bootstrap: support gnulib gnulib_tool_option_extras settings.
* gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
don't need it, support gnulib_tool_option_extras for bootstrap.conf
ported from gnulib bootstrap.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 20:21:45 +07:00
Gary V. Vaughan
4306ce7329 bootstrap: support tools that don't accept '--version' in buildreq.
* gl/build-aux/bootstrap.in (func_check_tool): Check whether there
is an executable as given or on the command PATH.
(func_check_version): Use func_check_tool to avoid invoking --version
when buildreq specifies '-' for the version number.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 19:47:47 +07:00
Gary V. Vaughan
a736237748 bootstrap: diagnose bad $buildreq formatting.
Particularly when porting from gnulib bootstrap to libtool
bootstrap, it's easy to forget the extra URL column used for
error reporting.
* gl/build-aux/bootstrap.in (func_check_versions): A non-URL
pattern in the 3rd column of buildreq triggers a fatal error.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 16:27:31 +07:00
Gary V. Vaughan
552c17f7b4 bootstrap: support OpenBSD sed.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
the problem of OpenBSD sed not supporting '-' as a notation for
standard input.
* bootstrap: Regenerate.
* THANKS: Add Mike Miller.
Reported by Mike Miller.

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 16:04:36 +07:00
Gary V. Vaughan
e87a65fa0c maint: correct many abuses of the word "which".
* HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
doc/notes.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
Use "which" correctly, or replace with "that", "where" or "what"
as appropriate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-08-23 11:12:57 +07:00
Gary V. Vaughan
2e40f7209a bootstrap: fix func_insert_if_absent bugs.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
message when there is a new entry to add.
Also, make sure to update the .gitignore file when changed.
* bootstrap: Regenerate.
* THANKS: Add Pádraig Brady.
Reported by Pádraig Brady.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-01-27 21:11:10 +07:00
Gary V. Vaughan
8d2a63c23a bootstrap: factor out gnulib-tool option calculations.
* gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
settings out...
(require_gnulib_tool_base_options): ...to here.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-01-27 20:34:54 +07:00
Gary V. Vaughan
ea6773ca6f syntax-check: fix a quoted_test_operand violation.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
test operands are quoted correctly.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-01-27 20:26:26 +07:00
Bernhard Voelker
05a3f42719 bootstrap: always auto-add .gitignore files at the top.
* gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
Strip comments and blank lines.
(func_insert_sorted_if_absent): Renamed...
(func_insert_if_absent): ...to this. Adjust all callers.
Instead of comparing the sorted new file with the original,
compare the line count, being careful to diagnose duplicate
entries which would otherwise skew the count.

Co-authored-by: Gary V. Vaughan <gary@gnu.org>
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-01-26 12:54:44 +07:00
Gary V. Vaughan
9a7071e668 maint: update copyright notices to include 2013.
* gnulib/: Update to latest upstream.
* AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
THANKS, TODO, bootstrap, bootstrap.conf,
build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
tests/am-subdir.at, tests/archive-in-archive.at,
tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
tests/cwrapper.at, tests/darwin.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-ident.at, tests/deplibs-mingw.at,
tests/destdir.at, tests/dlloader-api.at,
tests/dumpbin-symbols.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/exceptions.at,
tests/execute-mode.at, tests/exeext.at, tests/export.at,
tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
tests/flags.at, tests/help.at, tests/indirect_deps.at,
tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
tests/need_lib_prefix.at, tests/no-executables.at,
tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
tests/resident.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/slist.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
tests/template.at, tests/testsuite.at, tests/versioning.at,
tests/with-pic.at: Bump copyright year.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2013-01-02 00:34:06 +07:00
Gary V. Vaughan
cdd7f33f06 bootstrap: be sure to register gnulib submodule.
* gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
the gnulib submodule before updating it, even with a shallow
clone of gnulib.
* bootstrap: Regenerate.
Reported by Robert Boehne.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 14:00:09 +00:00
Gary V. Vaughan
7bbf8236dd bootstrap: fix a typo in a find invocation.
* gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 13:42:22 +00:00
Gary V. Vaughan
90152bb184 bootstrap: bash versions 3.00.x do not have += functionality.
* gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
bash versions 3.00.x.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 12:33:55 +00:00
Gary V. Vaughan
cd74bb4527 bootstrap: use of ';' in sed scripts is not portable.
* gl/build-aux/bootstrap.in (require_buildreq_automake)
(require_dotgitmodules_parameters, require_package)
(func_update_po_files): Use '\n' or -e to separate sed commands,
instead of ';'.
* gl/build-aux/extract-trace (func_autoconf_configure)
(func_extract_trace_first): Likewise.
* gl/funclib.sh: Likewise.
(func_tr_sh): Likewise.
* gl/build-aux/options-parser (func_usage_message): Likewise.
* bootstrap: Regenerate.
Reported by Robert Boehne.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 07:08:51 -05:00
Gary V. Vaughan
21538ee961 bootstrap: don't $tc_standout spaces, it's ugly!
* gl/build-aux/funclib.sh (func_error): Move the prefix indent
before $tc_standout to avoid bright red inverse spaces.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 07:08:51 -05:00
Gary V. Vaughan
52870fc557 bootstrap: fix rectangle select induced trailing spaces.
* gl/build-aux/funclib.sh (require_term_colors): Delete trailing
whitespace.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 07:05:20 -05:00
Gary V. Vaughan
c478e3a0b7 bootstrap: display prerequisite program environment vars.
Be more helpful when a prerequisite program from $buildreq
cannot be located, by showing what variable to export if it
is already installed but not in PATH.
* gl/build-aux/bootstrap.in (func_check_versions): Display
associated environment variables for not found prerequisite
programs.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 04:12:36 -05:00
Gary V. Vaughan
3f1fc2ea3a bootstrap: honor COLORTERM and USE_ANSI_COLORS.
Plenty of machines use a terminfo database that doesn't have
entries for color escape sequences, even though the terminal
itself most likely supports ANSI color escapes.
* gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
or USE_ANSI_COLORS are set, then ignore what terminfo says,
and use standard ANSI color escape sequences.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 03:32:35 -05:00
Gary V. Vaughan
eda239d989 bootstrap: make error messages prettier.
* gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
two additional spaces to line up nicely with 'warning' and
'running'.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-25 01:26:18 -05:00
Gary V. Vaughan
d5c146580c bootstrap: emphasize command executions with terminal bold.
* bootstrap.in (func_show_eval): Use $require_term_colors to
embolden the command about to be executed in output.
* bootstrap: Regenerate.
* bootstrap.conf (libtool_build_prerequisites): Use the standard
(colorful!) bootstrap func_show_eval here too.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-23 22:17:24 -05:00
Gary V. Vaughan
01f78ecf47 bootstrap: regenerate to propagate Bob's func_split_equals fix.
* bootstrap: regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 17:02:02 +07:00
Gary V. Vaughan
d98a30fbce syntax-check: fix violations and implement sc_old_style_quoting.
Modern GNU ASCII quoting in output and comments is done
'like this'.
* cfg.mk (sc_old_style_quoting): Try to catch most instances
of `old style quoting' so that it is not accidentally re-
introduced to the code.
* HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
Convert to upright quotes.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 00:01:13 +07:00
Gary V. Vaughan
711f2f3d45 bootstrap: move into local gl overrides directory.
In order to work as if it were already adopted by upstream
gnulib, put bootstrap and supporting scripts into the local
gnulib overrides directory.
* bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
build-aux/inline-source, build-aux/options-parser: Move from
here...
* gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
gl/build-aux/funclib.sh, gl/build-aux/inline-source,
gl/build-aux/options-parser: ...to here.
* gl/build-aux/options-parser (func_version): Show only the
first copyright notice on files generated with inline-source.
* gl/doc/bootstrap.texi: Developer documentation for bootstrap.
* gl/modules/extract-trace, gl/modules/funclib.sh,
gl/modules/inline-source, gl/modules/options-parser: Describe
dependencies for gnulib-tool.
* bootstrap.conf (gnulib_modules): Add extract-trace,
inline-source and options-parser modules.
* bootstrap: Regenerated from gnulib overrides as a mono-
lithic script file using gl/build-aux/inline-source.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-21 19:39:04 +07:00
Gary V. Vaughan
fad11c7777 libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
* tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
New test to ensure multiple directory arguments mork correctly.
* libtoolize.in (func_require_ac_macro_dir): Use expr to discard
any additional space delimited entries in the first
AC_CONFIG_MACRO_DIRS argument.
* bootstrap (func_require_macro_dir): Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-20 11:21:56 +07:00
Gary V. Vaughan
4d644c39d8 libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
* libtoolize.in (func_install_pkgmacro_files): Uee
AC_CONFIG_MACRO_DIRS.
(func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
(require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
(require_macro_dir): Likewise.
* bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
* configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
Autotools, that is allow bootstrap with current release versions.
Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
* tests/testsuite.at: Source build-aux/extract-trace for access
to func_extract_trace.
(LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
to pass manually to aclocal for compatibility with old Automake.
Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
in the test directory.
(LT_AT_AUTORECONF): Likewise.
* tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
tests/template.at: Likewise.
* doc/libtool.texi: Update.
* NEWS: Update.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-20 11:21:55 +07:00
Gary V. Vaughan
6c51572ae0 bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
Previous versions of bootstrap concatenated all the arguments to
multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
macro_dir directory name.  This change enforces correct and
consistent behaviour.
* libtoolize.in (func_require_macro_dir): Use the new
func_extract_trace_first function to make sure the first argument
is always used.
(func_require_aux_dir, func_require_gnulib_mk)
(func_require_source_base): Future proof these functions against
multiple invocations or additional arguments to the macros they
trace.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:21 +07:00
Gary V. Vaughan
670283ee70 bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
* bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
as it was will always return the last -I argument, which is wrong.
Move to a shell loop to ensure we always get the first -I argument
if any.  (code from libtoolize.in).

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:21 +07:00
Gary V. Vaughan
a73a99b88a maint: factor common shell code into build-aux/funclib.sh.
Moving potentially reusable code into a common file that can
be sourced by clients, and adjusting for impedance mismatch
or necessary renames during integration.
* build-aux/funclib.sh: New file.
* build-aux/options-parser (Shell normalisation)
(User overrideable command paths, Global variables, func_append)
(require_term_colors, func_echo, func_echo_infix_1, func_warn)
(func_error, func_fatal_error, func_quote_for_eval, func_verbose):
Move from here...
* build-aux/funclib.sh (Shell normalisation, User overrideable
command paths, Global variables, func_append)
(require_term_colors, func_echo, func_echo_infix_1)
(func_warn_and_continue, func_error, func_fatal_error)
(func_quote_for_eval, func_verbose): ...to here.
* build-aux/general.m4sh (func_arith, func_basename)
(func_dirname, func_dirname_and_basename, func_echo_all)
(func_grep, func_len, func_mkdir_p, func_mktempdir)
(func_normal_abspath, func_relative_path, func_quote_for_expand)
(func_stripname, func_show_eval, func_tr_sh): Move from here...
* build-aux/funclib.sh(func_arith, func_basename)
(func_dirname, func_dirname_and_basename, func_echo_all)
(func_grep, func_len, func_mkdir_p, func_mktempdir)
(func_normal_abspath, func_relative_path, func_quote_for_expand)
(func_stripname, func_show_eval, func_tr_sh): ...to here.
* bootstrap (usage message): Document `-no-warn' option.
(func_append_u, func_warning): Move from here...
* build-aux/funclib.sh (func_append_uniq, func_warning): ...to
here.
* bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
before build-aux/options-parser.
* build-aux/options-parser (usage, long_help_message): Set
default values to match what is parsed by the unmodified parser.
* build-aux/extract-trace (usage, long_help_message): Only set
from func_main, so that clients sourcing this file can still use
the correct defaults from build-aux/options-parser.
* bootstrap (bootstrap_options_prep, bootstrap_parse_options):
Move warning option parsing from here...
* build-aux/option-parser (func_options_prep)
(func_parse_options): ...to here, where all clients can benefit.
* Makefile.am (funclib_sh): New macro; path to funclib.sh.
(EXTRA_DIST): Add $(funclib_sh).

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 20:18:28 +07:00
Gary V. Vaughan
0ee460c127 bootstrap: work when using fallback shallow gnulib clone.
Bootstrapping without --gnulib-srcdir creates a shallow gnulib
clone to run gnulib-tool out of, except that the parent package
is almost certainly using a revision of gnulib before just tha
most recent 2 gnulib revisions.
* bootstrap (func_require_gnulib_submodule): Pull the most
recent 365 revisions, which ought to be enough for a well-
maintained parent package.
Don't forget to run 'git submodule update' to select the correct
gnulib revision.
2012-10-12 18:36:36 +07:00
Gary V. Vaughan
941797e273 maint: simplify "Local variables:" footer with time-stamp-pattern.
* bootstrap, build-aux/extract-trace, build-aux/options-parser
(Local variables): Use time-stamp-pattern to set number of
searched lines to 10, and to replace time-stamp-start,
time-stamp-end and time-stamp-format.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 18:36:36 +07:00
Gary V. Vaughan
9847559cef syntax-check: fix violations and implement sc_prohibit_space_semicolon.
No need for a spurious space before a command ending semi-colon.
* cfg.mk (sc_prohibit_space_semicolon): New test to catch
accidental reintroduction of spurious spaces removed by this
changeset.
* bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
Remove spurious spaces.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-04 20:11:04 +07:00
Gary V. Vaughan
d576fa9da1 maint: run update-copyright for missing 2011 and 2012 years.
See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* All Files (Copyright): Updated with missing 2011 and 2012.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:05:50 +07:00
Gary V. Vaughan
83d52fd6d2 bootstrap: update bootstrap script to latest upstream.
* bootstrap, build-aux/options-parser: apply upstream fixes and
enhancements.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:05:41 +07:00
Gary V. Vaughan
78385ffd8a bootstrap: adopt autoconf echo normalization code.
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>
2012-10-02 21:03:09 +07:00
Gary V. Vaughan
f32a760fbd bootstrap: put back missing spaces before parens.
* 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>
2012-10-02 21:02:55 +07:00
Gary V. Vaughan
c5230035e5 bootstrap: escape quotes properly in generated functions.
* 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>
2012-10-02 21:02:40 +07:00
Gary V. Vaughan
cb4ed2559e bootstrap: reorder function definitions to keep func_buildreq_* together.
* bootstrap: Restore asciibetical order, so that all the
buildreq function definitions are together.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:37 +07:00