Commit Graph

3947 Commits

Author SHA1 Message Date
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
87d3655d1c bootstrap: show output from 'make bootstrap-deps'.
* bootstrap.conf (libtool_build_prerequisites): Add support for
AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
Instead of eliding non-error output from bootstrap-deps, show
the results, with verbosity set according to $opt_verbose.
* Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
(README): Fix the display rules to correctly fall-back to
AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-23 22:02:57 -05:00
Gary V. Vaughan
f1a3325bf8 maint: fixup badly formatted ChangeLog entries.
* build-aux/git-log-fix: Mostly missing category tags and refilling
to 64 columns, but also deleting duplicate entries from merging the
gary/reredo-test-operand-order branch.
* g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
printing unqualified header lines for deleted duplicate patches.
* THANKS: Put email address for Paul Seidler here...
* build-aux/git-log-fix: ...and remove from ChangeLog here.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 17:02:02 +07: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
Mikhail Zabaluev
7b059d5ad9 configury: make LT_INIT options pic-only and no-pic work.
* m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 14:53:23 +07:00
Bob Friesenhahn
c82eaf360b Fixed func_split_equals shell quoting syntax error encountered with
non-XSI shells.  Problem was noticed under Solaris 10.
2012-10-21 18:17:52 -05: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
67759e9fb7 tests: remove spurious shell variable braces.
* tests/testsuite.at: Allow the shell braces syntax check to pass
again.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 00:01:13 +07:00
Gary V. Vaughan
e7ab807440 bootstrap: add missing bootstrap override module file.
* gl/modules/bootstrap: Forgot to add this file in a previous
commit.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-22 00:00:26 +07:00
Gary V. Vaughan
7a8bed43d6 bootstrap: allow bootstrap.texi to pass syntax-check.
* cfg.mk (sc_require_function_nl_brace): Skip texi files.
* gl/doc/bootstrap.texi: Fix assorted syntax-check violations.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-21 23:58:33 +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
05bd3f8b86 tests: make sure AC_CONFIG_MACRO_DIR is still supported.
* tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
Make sure we continue to support AC_CONFIG_MACRO_DIR using
projects.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-20 11:21:56 +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
Peter Rosin
0dd94ed521 libtool: parse "dumpbin -headers" to get symbols exported from implibs
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
imported from DLLs by import libraries in the Microsoft dumpbin
wrapper.
(LT_PATH_NM): Add -headers option if dumpbin is the located name
lister to feed the above new code.
* NEWS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-19 17:19:50 +02:00
Peter Rosin
2fc9d079d6 libtool: make func_win32_libid work when the name lister is MS dumpbin
* m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
func_win32_libid as file_magic_cmd when the name lister
is MS dumpbin.
(_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
to the libtool script.
* build-aux/ltmain.in (func_cygming_gnu_implib_p)
(func_cygming_ms_implib_p): Move up to before...
(func_win32_libid): ...which now uses them to determine if
the object is an import library when the nm_interface is
"MS dumpbin".
* NEWS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-19 11:51:12 +02: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
25b3dda216 bootstrap: use short gnu.org urls consistently.
* bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
the ones added automatically by the main bootstrap script.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:21 +07:00
Gary V. Vaughan
9477e33ef0 libtoolize: fix a misspelled variable name.
* libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
not _G_opt.  Now spelled correctly.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:21 +07:00
Gary V. Vaughan
55262b6fe4 tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
Previous releases of libtoolize used the final invocation when
there were several, and after the rewrite over extract-trace,
all the invocation directories were concatenated.  This change
enforces correct and consistent behaviour.
* tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
New test.
* build-aux/extract-trace (func_extract_trace_first): New function
for clients that source this file, which returns only the first
argument to the first invocation of the named macros.
* libtoolize.in (func_require_ac_macro_dir): Use it to make sure
the first argument is always used.
(func_require_ac_aux_dir, func_require_ac_ltdl_dir)
(func_require_ac_ltdl_options): Future proof these functions against
multiple invocations or additional arguments to the macros they
trace.
* News (Important incompatible changes): Note change in semantics.
Reported by Eric Blake.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:21 +07:00
Gary V. Vaughan
f8061eabaf tests: always extract only the first ACLOCAL_AMFLAGS include arg.
* tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
New test.
* libtoolize.in (func_check_macros): Display the correct advice
when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
does not.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:24:20 +07:00
Gary V. Vaughan
3f951c3817 doc: add a missing period following @xref.
* doc/libtool.texi: Silence a warning by adding back a missing
period.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 14:17:12 +07:00
Peter Rosin
55fd801b97 libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
If an object has a symbol lacking an expected leading underscore,
the symbol name is not printed, but the symbol type is, leading
to output such as:
    T _normal _normal
    T T _another _another
when the expected output would have been something like:
    T _normal _normal
    T no_underscore no_underscore
    T _another _another
However, symbols lacking an expected leading underscore are
not "real" symbols, they are internal symbols which we don't
care about, therefore drop them instead.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
symbol line in one go.
* NEWS: Update.
2012-10-19 08:54:15 +02:00
Peter Rosin
cfe82e7f85 libtool: unbreak Windows path quoting
The lt_sed_naive_backslashify variable lost its lt_ prefix
when m4sh was dropped. But not everywhere.
* build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
(func_convert_core_msys_to_w32): Drop the lt_ prefix from
the lt_sed_naive_backslashify variable.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-19 00:18:10 +02:00
Peter Rosin
92b77ed8bb libtool: kill leftover m4 quoting
* build-aux/ltmain.in (func_mode_compile): Use literal ] and [.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-18 23:49:58 +02:00
Gary V. Vaughan
a3b06455e9 syntax-check: exclude false positive nested quote test.
* build-aux/funclib.sh (func_echo_infix_1): These quotes are not
actually nested, so add an exclude marker for the syntax-check.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 00:49:01 +07:00
Gary V. Vaughan
b07f86e9ea libtool: don't set auxscriptsdir at bootstrap time.
* build-aux/ltmain.in: Declare relative paths to aux scripts from
source commands, for early inlining during bootstrap.
* Makefile.am (bootstrap_edit): Move auxscriptsdir
substitution from here....
(configure_edit): ...to here.
($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
is generated to remove relative paths to aux scripts.
(install-data-local): Simplify. No need for special treatment for
ltmain.sh during installation, since aux scripts have already
been inlined.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-19 00:38:28 +07:00
Gary V. Vaughan
64c02af9f1 extract-trace: only source funclib.sh when $progname is extract-trace.
* build-aux/extract-trace: $usage is too generic, and can cause
sourced extract-trace to re-source options-parser.  We already
require that funclib.sh be sourced before sourcing options-parser,
so it's safer to check that $progname is correct before sourcing
options-parser again from here.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-18 23:41:53 +07:00
Peter Rosin
cfcb7afd26 libtool: fix spelling nit
* build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
* libltdl/libltdl/lt_system.h: Likewise.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-18 14:27:10 +02:00
Gary V. Vaughan
bbfb7d0580 maint: remove m4sh support.
Now that the code base has coalesced around a single option
parser, there's no need for the unused getopt.m4sh and support.
* build-aux/getopt.m4sh, build-aux/general.m4sh,
tests/getopt-m4sh.at: Remove.
* Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
(sh_files): Remove.
(TESTSUITE_AT): Remove tests/getopt-m4sh.at.
(TESTS_ENVIRONMENT): Remove M4SH.
* bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
* configure.ac (M4SH): Remove.
* HACKING (Editing `.m4sh' Files): Remove and renumber following
sections.
2012-10-12 20:18:30 +07:00
Gary V. Vaughan
0a42997c60 libtool: rewritten over funclib.sh instead of general.m4sh.
* Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
(ltmain_in): Path to ltmain.in.
(ltmain_sh): Generate ltmain.sh from ltmain.in using
$(bootstrap_edit).
* build-aux/ltmain.m4sh: Remove.
* build-aux/ltmain.in: Rewritten as a client of funclib.sh.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 20:18:29 +07:00
Gary V. Vaughan
75ca37e267 libtoolize: inline sourced helper scripts during install.
* build-aux/inline-source: New file.
* Makefile.am (inline_source): Path to inline-source script.
(EXTRA_DIST): Distribute inline-source too.
(helper_scripts): Remove.
(install-data-local): Inline sourced helper scripts during
installation.
Don't install helper_scripts.
(uninstall-hook): Don't uninstall helper_scripts.
2012-10-12 20:18:29 +07:00
Gary V. Vaughan
3cf11cfe2b libtoolize: rewritten over funclib.sh instead of general.m4sh.
* Makefile.am (libtoolize_m4sh): Remove.
(EXTRA_DIST): Delete libtoolize_m4sh.
(libtoolize_in): Remove rule.
(libtoolize): Apply bootstrap_edit to libtoolize.in too.
* configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
* libtoolize.m4sh: Remove.
* libtoolize.in: Rewrite as a client of options-parser and the
new funclib.sh, avoiding the m4sh expansion step.
* tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
to match funclib.sh error output.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 20:18:29 +07:00
Gary V. Vaughan
4930ebf6b1 options-parser: correctly quote shell meta-characters in arguments.
When any argument contains a shell meta-character, it needs to be
quoted when passed around.  We already pass parameter lists as
space delimited strings of arguments, and pass the string through
eval to turn it back into a list before re-assigning using `set'.
To prevent the shell from interpreting any meta-characters during
an `eval set dummy $argumentlist', they must be quoted again
inside the quoted argument list.
* build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
a separate tally of quoted and unquoted argument lists, to
conform to the API of the single argument func_quote_for_eval
implementation in build-aux/general.m4sh.
* bulid-aux/options-parser (func_run_hooks): To account for the
doubly quoted meta-character argument lists, we must eval the
parameter reassignment `set' call separately from evaluating the
dynamically named hook results variable.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 20:18:28 +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
2a43c87092 libtoolize: source extract-trace rather than fork and execute each call.
Rather than forking and executing a full $SHELL for each macro
extraction, source the script and its dependencies into our
execution space and use the provided func_extract_trace API.
* libtoolize.m4sh: Source extract-trace from an appropriate
directory determined presently by make.
(func_extract_trace): Remove this wrapper.
* Makefile.am (abs_aux_dir): Absolute path to extract-trace
directory.
(configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
(bin_SCRIPTS): Remove libtoolize.
(uninstall-hook): Manually uninstall libtoolize.
(install-data-local): Inject pkgauxdir into installed libtoolize
during installation.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 18:36:38 +07:00
Gary V. Vaughan
125eb722e4 options-parser: employ fork minimisation.
* build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
overrideable defaults for bash and zsh, which are known to
support XSI extensions.
(_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
which are known to have += support.
(func_append): Only perform the shell += probe when state of
support is unknown.
(func_split_equals, func_split_short_opt): Similarly for XSI
probe to select fastest working implementation.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 18:36:37 +07:00
Gary V. Vaughan
95e3f5ee75 options-parser: keep non-option arguments separate!
* build-aux/options-parser (func_parse_options): When there is
more than one non-option argument, "$*" forces all of them into
a single string.  Use ${1+"$@"} to set arguments correctly.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 18:36:37 +07:00
Gary V. Vaughan
ff7555a5aa options-parser: prefix usage message with "Usage: ".
* build-aux/options-parser (func_usage_message): Prefix usage
message with "Usage: ".

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-12 18:36:37 +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
fa881c36ca bootstrap: require GNU make to bootstrap.
Make is not installed by default in some environments, such as
cygwin... which is slow enough already without having to wait
for gnulib-tool, bootstrap and half of configure to complete
before getting an error.
* bootstrap.conf (buildreq): Add recent GNU make to bootstrap
requirements.  Now missing make is diagnosed in the earliest
part of bootstrap.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
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
Peter Rosin
b3e96ce7d1 tests: skip the with-pic test only if DLL_EXPORT is defined
For some systems with PIC as default, the test was inadvertently
skipped. Issue introduced in commit 4440d65.
Report by Roumen Petrov.

* tests/with-pic.at: Skip the test for systems that define
DLL_EXPORT.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-08 17:59:51 +02:00
Peter Rosin
0f31e37510 tests: rerefix line ending problems on MinGW.
The previous commit broke Linux->MinGW cross-compiling.
Report by Roumen Petrov.

* tests/mdemo.at: Normalize line endings after $EGREP.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-08 13:10:02 +02:00
Peter Rosin
b78fd9740e tests: refix line ending problems on MinGW.
In commit 22f5750, one of the hunks actually introduced
line ending problems. Revert that hunk.

* tests/mdemo.at: Use AT_DATA for expected output when the
output from compiled programs is fed through $EGREP.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-07 00:57:26 +02:00
Peter Rosin
82791b3fb7 tests: use dry runs in both parts of 'check link mode operation'
MSVC exits with status 2 instead of the expected 1 when a
real link is attempted.

* tests/libtool.at (check link mode operation): Use a dry run and
expect a clean exit status instead of expecting a fail.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-07 00:57:10 +02:00
Gary V. Vaughan
5962e9ab32 tests: sanitise the libtool quote checking Autotests.
Carefully comment the maze of quoting and escaping needed to
pass through M4, $SHELL, and grep before regexp matching.
* tests/libtool.at (quote shell meta-characters in filenames):
Split backslash into a separate test group, because it needs
additional escaping.
Use grep consistently for the entire test group.
Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
escaping literal $ correctly with LT_ESCAPE.
Use the correct number of backslashes for each sub-group.
Escape double-quote literals portably.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-06 15:10:05 +07:00