]> git.ipfire.org Git - thirdparty/libtool.git/log
thirdparty/libtool.git
13 years agobootstrap: allow bootstrap.texi to pass syntax-check.
Gary V. Vaughan [Sun, 21 Oct 2012 16:58:33 +0000 (23:58 +0700)] 
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>
13 years agobootstrap: move into local gl overrides directory.
Gary V. Vaughan [Sat, 13 Oct 2012 07:39:45 +0000 (14:39 +0700)] 
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>
13 years agotests: make sure AC_CONFIG_MACRO_DIR is still supported.
Gary V. Vaughan [Fri, 19 Oct 2012 09:50:01 +0000 (16:50 +0700)] 
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>
13 years agolibtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
Gary V. Vaughan [Fri, 19 Oct 2012 09:21:27 +0000 (16:21 +0700)] 
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>
13 years agolibtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
Gary V. Vaughan [Thu, 18 Oct 2012 13:37:03 +0000 (20:37 +0700)] 
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>
13 years agolibtool: parse "dumpbin -headers" to get symbols exported from implibs
Peter Rosin [Fri, 19 Oct 2012 15:19:50 +0000 (17:19 +0200)] 
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>
13 years agolibtool: make func_win32_libid work when the name lister is MS dumpbin
Peter Rosin [Fri, 19 Oct 2012 09:51:12 +0000 (11:51 +0200)] 
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>
13 years agobootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
Gary V. Vaughan [Fri, 19 Oct 2012 05:23:39 +0000 (12:23 +0700)] 
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>
13 years agobootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
Gary V. Vaughan [Fri, 19 Oct 2012 05:09:37 +0000 (12:09 +0700)] 
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>
13 years agobootstrap: use short gnu.org urls consistently.
Gary V. Vaughan [Fri, 19 Oct 2012 07:12:59 +0000 (14:12 +0700)] 
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>
13 years agolibtoolize: fix a misspelled variable name.
Gary V. Vaughan [Fri, 19 Oct 2012 05:32:25 +0000 (12:32 +0700)] 
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>
13 years agotests: always extract only the first AC_CONFIG_MACRO_DIR arg.
Gary V. Vaughan [Fri, 19 Oct 2012 05:23:39 +0000 (12:23 +0700)] 
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>
13 years agotests: always extract only the first ACLOCAL_AMFLAGS include arg.
Gary V. Vaughan [Fri, 19 Oct 2012 05:23:39 +0000 (12:23 +0700)] 
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>
13 years agodoc: add a missing period following @xref.
Gary V. Vaughan [Fri, 19 Oct 2012 05:07:38 +0000 (12:07 +0700)] 
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>
13 years agolibtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
Peter Rosin [Fri, 19 Oct 2012 06:54:15 +0000 (08:54 +0200)] 
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.

13 years agolibtool: unbreak Windows path quoting
Peter Rosin [Thu, 18 Oct 2012 22:18:10 +0000 (00:18 +0200)] 
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>
13 years agolibtool: kill leftover m4 quoting
Peter Rosin [Thu, 18 Oct 2012 21:49:21 +0000 (23:49 +0200)] 
libtool: kill leftover m4 quoting

* build-aux/ltmain.in (func_mode_compile): Use literal ] and [.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
13 years agosyntax-check: exclude false positive nested quote test.
Gary V. Vaughan [Thu, 18 Oct 2012 17:49:01 +0000 (00:49 +0700)] 
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>
13 years agolibtool: don't set auxscriptsdir at bootstrap time.
Gary V. Vaughan [Thu, 18 Oct 2012 17:38:28 +0000 (00:38 +0700)] 
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>
13 years agoextract-trace: only source funclib.sh when $progname is extract-trace.
Gary V. Vaughan [Thu, 18 Oct 2012 16:41:53 +0000 (23:41 +0700)] 
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>
13 years agolibtool: fix spelling nit
Peter Rosin [Thu, 18 Oct 2012 12:27:10 +0000 (14:27 +0200)] 
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>
13 years agomaint: remove m4sh support.
Gary V. Vaughan [Thu, 11 Oct 2012 05:43:03 +0000 (12:43 +0700)] 
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.

13 years agolibtool: rewritten over funclib.sh instead of general.m4sh.
Gary V. Vaughan [Wed, 10 Oct 2012 12:30:07 +0000 (19:30 +0700)] 
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>
13 years agolibtoolize: inline sourced helper scripts during install.
Gary V. Vaughan [Thu, 11 Oct 2012 13:36:17 +0000 (20:36 +0700)] 
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.

13 years agolibtoolize: rewritten over funclib.sh instead of general.m4sh.
Gary V. Vaughan [Sun, 7 Oct 2012 05:58:18 +0000 (12:58 +0700)] 
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>
13 years agooptions-parser: correctly quote shell meta-characters in arguments.
Gary V. Vaughan [Wed, 10 Oct 2012 17:09:48 +0000 (00:09 +0700)] 
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>
13 years agomaint: factor common shell code into build-aux/funclib.sh.
Gary V. Vaughan [Sun, 7 Oct 2012 11:01:24 +0000 (18:01 +0700)] 
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>
13 years agolibtoolize: source extract-trace rather than fork and execute each call.
Gary V. Vaughan [Sun, 7 Oct 2012 15:32:18 +0000 (22:32 +0700)] 
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>
13 years agooptions-parser: employ fork minimisation.
Gary V. Vaughan [Sat, 6 Oct 2012 10:50:57 +0000 (17:50 +0700)] 
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>
13 years agooptions-parser: keep non-option arguments separate!
Gary V. Vaughan [Wed, 10 Oct 2012 17:32:10 +0000 (00:32 +0700)] 
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>
13 years agooptions-parser: prefix usage message with "Usage: ".
Gary V. Vaughan [Wed, 10 Oct 2012 09:11:04 +0000 (16:11 +0700)] 
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>
13 years agobootstrap: work when using fallback shallow gnulib clone.
Gary V. Vaughan [Fri, 12 Oct 2012 10:54:21 +0000 (17:54 +0700)] 
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.

13 years agobootstrap: require GNU make to bootstrap.
Gary V. Vaughan [Tue, 9 Oct 2012 12:52:51 +0000 (19:52 +0700)] 
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>
13 years agomaint: simplify "Local variables:" footer with time-stamp-pattern.
Gary V. Vaughan [Sun, 7 Oct 2012 10:51:17 +0000 (17:51 +0700)] 
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>
13 years agotests: skip the with-pic test only if DLL_EXPORT is defined
Peter Rosin [Mon, 8 Oct 2012 15:59:51 +0000 (17:59 +0200)] 
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>
13 years agotests: rerefix line ending problems on MinGW.
Peter Rosin [Mon, 8 Oct 2012 11:10:02 +0000 (13:10 +0200)] 
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>
13 years agotests: refix line ending problems on MinGW.
Peter Rosin [Sat, 6 Oct 2012 22:57:26 +0000 (00:57 +0200)] 
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>
13 years agotests: use dry runs in both parts of 'check link mode operation'
Peter Rosin [Sat, 6 Oct 2012 22:57:10 +0000 (00:57 +0200)] 
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>
13 years agotests: sanitise the libtool quote checking Autotests.
Gary V. Vaughan [Sat, 6 Oct 2012 08:01:52 +0000 (15:01 +0700)] 
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>
13 years agotests: ensure mdemo.at doesn't rely on installed libltdl.
Gary V. Vaughan [Sat, 6 Oct 2012 05:53:33 +0000 (12:53 +0700)] 
tests: ensure mdemo.at doesn't rely on installed libltdl.

* tests/mdemo.at (configuer.ac): Build an included convenience
libltdl.
(Makefile.am): Add subdir-objects.
Remove override rules from legacy mdemo tests to reuse parent
libltdlc.la.
(LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
arguments so that test cases always use the subproject libltdl
in preference to any installed libltdl.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: allow for unstable fortran output ordering.
Gary V. Vaughan [Sat, 6 Oct 2012 04:47:56 +0000 (11:47 +0700)] 
tests: allow for unstable fortran output ordering.

Due to differences in line-endings between C stdout and Fortran
stdout, as well as unpredictable output ordering between
platforms and runtimes, weaken success criteria to not require
the entire output of fortran programs to match a test case.
* itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
Improve comments, and weaken test case to grep for a known line
in the f77 runtime output.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: make LT_AT_HOST_DATA retain whitespace on MinGW
Peter Rosin [Fri, 5 Oct 2012 19:43:45 +0000 (21:43 +0200)] 
tests: make LT_AT_HOST_DATA retain whitespace on MinGW

Fixes issues with depdemo.at, f77demo.at and fcdemo.at.

* tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
and trailing spaces and tabs when converting line endings.

13 years agotests: fix line ending problems on MinGW
Peter Rosin [Fri, 5 Oct 2012 19:31:33 +0000 (21:31 +0200)] 
tests: fix line ending problems on MinGW

* tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
compiled programs.
* tests/demo.at: Likewise.
* tests/depdemo.at: Likewise.
* tests/f77demo.at: Likewise.
* tests/fcdemo.at: Likewise.
* tests/mdemo.at: Likewise.
* tests/tagdemo.at: Likewise.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
13 years agotests: remove last vestiges of the legacy test harness.
Gary V. Vaughan [Thu, 4 Oct 2012 15:54:55 +0000 (22:54 +0700)] 
tests: remove last vestiges of the legacy test harness.

All legacy tests have been fully migrated to Autotest, so
no need to cling to the legacy scaffolding any more.
* tests/defs.m4sh: Delete file.
* configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
parallel-tests options.
* Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
Adjust all dependencies.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tagtrace.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 15:38:01 +0000 (22:38 +0700)] 
tests: migrate legacy tagtrace.test to Autotest.

* tests/tagtrace.test: Delete file.
* tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
Autotest equivalent.
* Makefile.am (TESTS): Remove tests/tagtrace.test.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy objectlist.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 15:04:11 +0000 (22:04 +0700)] 
tests: migrate legacy objectlist.test to Autotest.

* tests/objectlist.test: Delete file.
* tests/libtool.at (check objectlist file operation): Add
Autotest equivalent.
* Makefile.am (TESTS): Remove tests/objectlist.test.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy link.test and link-2.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 14:55:17 +0000 (21:55 +0700)] 
tests: migrate legacy link.test and link-2.test to Autotest.

* tests/link.test, tests/link-2.test: Delete files.
* tests/libtool.at (Check link operation): Add Autotest
equivalent.
* Makefile.am (TESTS): Remove tests/link.test and
tests/link-2.test.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy nomode.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 14:38:39 +0000 (21:38 +0700)] 
tests: migrate legacy nomode.test to Autotest.

* tests/nomode.test: Delete file.
* test/libtool.at (Check help output, No mode diagnostic): Add
equivalent tests in Autotest.
* Makefile.am (TESTS): Remove tests/nomode.test.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy suffix.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 14:22:06 +0000 (21:22 +0700)] 
tests: migrate legacy suffix.test to Autotest.

* tests/suffix.test: Delete file.
* tests/libtool.at (Transform source suffices): Add Autotest
equivalent.
* Makefile.am (TESTS): Remove tests/suffix.test.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy quote.test to Autotest.
Gary V. Vaughan [Thu, 4 Oct 2012 14:00:30 +0000 (21:00 +0700)] 
tests: migrate legacy quote.test to Autotest.

* tests/quote.test: Moved from here...
* tests/libtool.at: ...to here, and updated to Autotest.
* Makefile.am (TESTS): Remove tests/quote.test.
(TESTSUITE_AT): Add tests/libtool.at.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: add missing 2012 copyright to newly pushed old files.
Gary V. Vaughan [Thu, 4 Oct 2012 13:19:33 +0000 (20:19 +0700)] 
maint: add missing 2012 copyright to newly pushed old files.

* tests/cdemo.at, tests/demo.at, tests/depdemo.at,
tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
tests/tagdemo.at (Copyright): Update with missing 2012.

13 years agosyntax-check: remove test/demo directories from exemption regexps.
Gary V. Vaughan [Thu, 4 Oct 2012 13:13:29 +0000 (20:13 +0700)] 
syntax-check: remove test/demo directories from exemption regexps.

* cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
(exclude_file_name_regexp--sc_program_name): Remove. The excluded
directories no longer exist.
(exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
for matching removed demo directories.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoconfigure: remove unused conditionals and support for order only rules.
Gary V. Vaughan [Sun, 27 Nov 2011 16:50:15 +0000 (23:50 +0700)] 
configure: remove unused conditionals and support for order only rules.

Clean up some more unused cruft.
* configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
Remove.  These were only used by the recently removed legacy
tests.
[order-only prerequisites]: Ditto.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: remove support for `-r' and `reconf_dirs'.
Gary V. Vaughan [Thu, 24 Nov 2011 11:36:04 +0000 (18:36 +0700)] 
bootstrap: remove support for `-r' and `reconf_dirs'.

With all those extra demo directories out of the way, we can
revert to a more canonical bootstrap process, and jettison the
cruft that was only there to work around the pain of
needing to autoreconf 11 directories.  Bootstrap is now an order
of magnitude faster.
* bootstrap.conf (require_ltdl_dir): New function. Factored out
of `libtool_build_prerequisites'.
(libtool_build_prerequisites): Adjust.
(func_reconfigure): Use `require_ltdl_dir' to determine the name
of the other directory we need to autoreconf during bootstrap.
(libtool_options_prep, libtool_parse_options)
(libtool_validate_options): Remove.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: let pic_flag and with-pic Autotests work on non-VPATH builds.
Gary V. Vaughan [Sun, 27 Nov 2011 12:18:23 +0000 (19:18 +0700)] 
tests: let pic_flag and with-pic Autotests work on non-VPATH builds.

* tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
project, rather than relying on $abs_top_srcdir/configure.
* tests/with-pic.at: Likewise.
* Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
tests/with-pic.at so that they run immediately following
tests/demo.at.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/fcdemo tests to Autotest.
Gary V. Vaughan [Thu, 24 Nov 2011 11:26:17 +0000 (18:26 +0700)] 
tests: migrate legacy tests/fcdemo tests to Autotest.

Along with the demise of the last demo directory, so all the
cruft for re-autotooling and distributing the additional
directories is no longer necessary.
* tests/fcdemo.at: New autotest groups, based on...
* tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
tests/fcdemo-static.test: ...these legacy tests, now removed.
* tests/fcdemo/Makefile.am, tests/fcdemo/README,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
tests/fcdemo/fprogram.f90: Remove.
* configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
* Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
(configure-subdirs, distclean-recursive, distdir)
(fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
(COMMON_TESTS): Rename from this...
(TESTS): ...to this.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/f77demo tests to Autotest.
Gary V. Vaughan [Thu, 24 Nov 2011 10:51:08 +0000 (17:51 +0700)] 
tests: migrate legacy tests/f77demo tests to Autotest.

* tests/f77demo.at: New autotest groups, based on...
* tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared-exec.test,
tests/f77demo-shared-make.test, tests/f77demo-shared.test,
tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
tests/f77demo-static.test: ...these legacy tests, now removed.
* tests/f77demo/Makefile.am, tests/f77demo/README,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
tests/f77demo/foof2.f, tests/f77demo/foof3.f,
tests/f77demo/fprogram.f: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/f77demo.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/mdemo2 tests to Autotest.
Gary V. Vaughan [Thu, 24 Nov 2011 08:49:07 +0000 (15:49 +0700)] 
tests: migrate legacy tests/mdemo2 tests to Autotest.

This test was just a small non-ltdl aware library to load a
library from the legacy mdemo test, which in turn used ltdl to
call functions from modules. No need to create a whole other
test group with copies of everything from mdemo setup - just
tack the additional test on the end of the mdemo group.
* tests/mdemo.at (link with library that loads ltdl modules):
New test, based on...
* tests/mdemo2-conf.test, tests/mdemo-exec.test,
tests/mdemo-make.test: ...these legacy tests, now removed.
* tests/mdemo2/Makefile.am, tests/mdemo2/README,
tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/mdemo tests to Autotest.
Gary V. Vaughan [Thu, 24 Nov 2011 08:10:11 +0000 (15:10 +0700)] 
tests: migrate legacy tests/mdemo tests to Autotest.

* tests/mdemo.at: New autotest groups, based on...
* tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared-exec.test,
tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
tests, now removed.
* tests/mdemo/Makefile.am, tests/mdemo/README,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/pdemo tests to Autotest.
Gary V. Vaughan [Thu, 24 Nov 2011 04:29:10 +0000 (11:29 +0700)] 
tests: migrate legacy tests/pdemo tests to Autotest.

This test was a thinly veiled copy of the basic legacy
demo-conf.test series, with the addition of long file names that
are not unique in the first 17 characters of their name, mashed
up with the cmdline_wrap.at max_cmd_len limits.  Migrating to
Autotest means that this test will be automatically rerun with
max_cmd_len=24 as cmdline_wrap.at recurses through the whole
testsuite, so the migrated pdemo test is now simply another test
case in demo.at with longer file names.
* test/demo.at (linking with long file names): New test, based
on...
* tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
tests, now removed.
* tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/tagdemo tests to Autotest.
Gary V. Vaughan [Wed, 23 Nov 2011 15:23:16 +0000 (22:23 +0700)] 
tests: migrate legacy tests/tagdemo tests to Autotest.

* tests/tagdemo.at: New autotest groups, based on...
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
...these legacy tests, now removed.
* tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
tests/tagdemo/README, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/depdemo tests to Autotest.
Gary V. Vaughan [Wed, 23 Nov 2011 13:03:59 +0000 (20:03 +0700)] 
tests: migrate legacy tests/depdemo tests to Autotest.

* tests/depdemo.at: New autotest groups, based on...
* tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
tests/depdemo-shared.test, tests/depdemo-static-exec.test,
tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
tests/depdemo-static-unst.test, tests/depdemo-static.test,
tests/depdemo-unst.test: ...these legacy test cases, now
removed.
* tests/depdemo/Makefile.am, tests/depdemo/README,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/demo tests to Autotest.
Gary V. Vaughan [Wed, 23 Nov 2011 08:17:49 +0000 (15:17 +0700)] 
tests: migrate legacy tests/demo tests to Autotest.

* tests/demo.at: New autotest groups, based on...
* tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
tests/demo-nopic.test, tests/demo-pic-exec.test,
tests/demo-pic-make.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared-exec.test,
tests/demo-shared-inst.test, tests/demo-shared-make.test,
tests/demo-shared-unst.test, tests/demo-shared.test,
tests/demo-static-exec.test, tests/demo-static-inst.test,
tests/demo-static-make.test, tests/demo-static-unst.test,
tests/demo-static.test, tests/demo-unst.test: ...these legacy
test cases, now removed.
* tests/demo/Makefile.am, tests/demo/README,
tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/demo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: migrate legacy tests/cdemo tests to Autotest.
Gary V. Vaughan [Mon, 21 Nov 2011 16:15:54 +0000 (23:15 +0700)] 
tests: migrate legacy tests/cdemo tests to Autotest.

* tests/cdemo.at: New Autotest groups, based on...
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared-exec.test,
tests/cdemo-shared-make.test, tests/cdemo-shared.test,
tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
tests/cdemo-static.test, tests/cdemo-undef-exec.test,
tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
legacy test cases, now removed.
tests/cdemo/Makefile.am, tests/cdemo/README,
tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
tests/cdemo/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
* Makefile.am: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: distribute a single ChangeLog file.
Gary V. Vaughan [Thu, 4 Oct 2012 12:28:50 +0000 (19:28 +0700)] 
maint: distribute a single ChangeLog file.

* ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove.  Content
moved from here...
* ChangeLog.old: ...to here.
* Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
(changelog_old): New variable to hold path to ChangeLog.old file.
($(changelog)): Update to concatenate non-distributed
ChangeLog.old file to distributed ChangeLog after git log entries.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: fix violations and implement sc_prohibit_space_semicolon.
Gary V. Vaughan [Thu, 4 Oct 2012 13:04:32 +0000 (20:04 +0700)] 
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>
13 years agoMerge branch 'gary/reredo-test-operand-order'
Gary V. Vaughan [Wed, 3 Oct 2012 04:49:27 +0000 (11:49 +0700)] 
Merge branch 'gary/reredo-test-operand-order'

The original manually applied changeset 962aa91 contained several
errors (some corrected by subsequent patches on master, others not)
and many unrelated (although in this case, correct) changes were also
committed in the same changeset.

The merged branch gary/reredo-test-operand-order factors the
unrelated changes out into separate commits, and performs the work
that should have been in 962aa91 with a script, the results of which
were then painstakingly inspected for errors.

This merge moves the corrections for errors made in the original
manual patch from the branch onto master.  Please inspect the many
separate changesets on the branch rather than the original patch
when you bisect or otherwise find your way to an error caused by
962aa91.

13 years agotests: simplify some shell code. gary/reredo-test-operand-order
Gary V. Vaughan [Tue, 2 Oct 2012 13:51:13 +0000 (20:51 +0700)] 
tests: simplify some shell code.

* tests/fail.at: Simplify.
* tests/static.at: Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: unroll complex nested compound statements
Gary V. Vaughan [Tue, 2 Oct 2012 13:44:54 +0000 (20:44 +0700)] 
libtool: unroll complex nested compound statements

* build-aux/ltmain.m4sh: Use an if statement instead of ugified
compound statements.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: unroll nested if into a single case statement.
Gary V. Vaughan [Tue, 2 Oct 2012 12:39:35 +0000 (19:39 +0700)] 
libtool: unroll nested if into a single case statement.

* build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
understad nested if statement into a more readable single case
statement.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: simplify $skipped_export blocks
Gary V. Vaughan [Tue, 2 Oct 2012 12:31:49 +0000 (19:31 +0700)] 
libtool: simplify $skipped_export blocks

* build-aux/ltmain.m4sh (func_mode_link): Save an if statement
with '$skipped_export && { block; }' instead of 'if $skipped_export;
then block; fi'.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: simplify an if statement
Gary V. Vaughan [Tue, 2 Oct 2012 12:28:54 +0000 (19:28 +0700)] 
libtool: simplify an if statement

* build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
order for an if statement for readability.
* m4/libtool.m4: Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: save an if statement, with a compound statement.
Gary V. Vaughan [Tue, 2 Oct 2012 12:25:17 +0000 (19:25 +0700)] 
libtool: save an if statement, with a compound statement.

* build-aux/ltmain.m4sh (func_mode_link): Simplify.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: simplify multiple string tests
Gary V. Vaughan [Tue, 2 Oct 2012 12:09:51 +0000 (19:09 +0700)] 
libtool: simplify multiple string tests

* build-aux/ltmain.m4sh (func_mode_link): Save test invocations
by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
= "$b"'.
* m4/libtool.m4: Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: fold if into a compound OR statement when more readable
Gary V. Vaughan [Tue, 2 Oct 2012 11:52:40 +0000 (18:52 +0700)] 
libtool: fold if into a compound OR statement when more readable

* build-aux/ltmain.m4sh (func_mode_link): For readability, use
'test string = "$var" || { stuff; }' in preference to
'if test string != "$var"; then stuff; fi'.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $rmforce, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $rmforce, and simplify

* build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
comparison by setting $rmforce to false or : and using it
directly as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $wrappers_required, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $wrappers_required, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $wrappers_required to false or : and using
it directly with a ored block rather than an if statement.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $linkalldeplibs, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $linkalldeplibs, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $linkalldeplibs to false or : and using it
directly as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $valid_a_lib, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $valid_a_lib, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $valid_a_lib to false or : and using it
directly as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $found, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $found, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $found to false or : and using it directly
as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $alldeplibs, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $alldeplibs, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $alldeplibs to false or : and using it
directly as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $preload, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $preload, and simplify

* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $preload to false or : and using it directly
instead of if statements.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $my_pic_p, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $my_pic_p, and simplify

* build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
comparison by setting $my_pic_p to false or : and using it directly
instead of calling if.
Adjust all callers.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $finalize, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $finalize, and simplify

* build-aux/ltmain.m4sh (func_mode_install): Save a string
comparison by setting $finalize to false or : and using it
directly as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtool: use false or : for $isdir, and simplify
Gary V. Vaughan [Tue, 2 Oct 2012 11:08:29 +0000 (18:08 +0700)] 
libtool: use false or : for $isdir, and simplify

* build-aux/ltmain.m4sh (func_mode_install): Save a string
comparison by setting $isdir to false or : and using it directly
as the first argument to if.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: skip with-pic test when no "real" pic flag is used.
Peter Rosin [Wed, 19 Sep 2012 09:53:02 +0000 (11:53 +0200)] 
tests: skip with-pic test when no "real" pic flag is used.

* tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
"flag", but never applies it to static libraries. Cater for this
and skip if no "real" pic flag is in use.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
13 years agosyntax-check: fix texinfo formatting flagged by prohibit_undesirable_word_seq.
Gary V. Vaughan [Sun, 16 Sep 2012 10:43:05 +0000 (17:43 +0700)] 
syntax-check: fix texinfo formatting flagged by prohibit_undesirable_word_seq.

* doc/libtool.text: Fix several misuses of @xref and @pxref so that
the prohibit_undesirable_word_seq syntax check passes again.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: remove useless_braces_in_variable_derefs.
Gary V. Vaughan [Sun, 16 Sep 2012 10:47:04 +0000 (17:47 +0700)] 
syntax-check: remove useless_braces_in_variable_derefs.

* build-aux/general.m4sh: Remove spurious braces around
${ZSH_VERSION} dereference.
* build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: skip prohibit_strncpy.
Gary V. Vaughan [Sun, 16 Sep 2012 10:23:49 +0000 (17:23 +0700)] 
syntax-check: skip prohibit_strncpy.

* cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: skip prohibit_always_true_header_tests rule.
Gary V. Vaughan [Sun, 16 Sep 2012 10:02:22 +0000 (17:02 +0700)] 
syntax-check: skip prohibit_always_true_header_tests rule.

* cfg.mk (local-checks-to-skip): Add
sc_prohibit_always_true_header_tests.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoRevert "bootstrap: delete unneeded README-release patch"
Gary V. Vaughan [Sun, 16 Sep 2012 07:35:55 +0000 (14:35 +0700)] 
Revert "bootstrap: delete unneeded README-release patch"

This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.

These instructions are hard to find for new maintainers, so it's
good to keep them to hand with the release notes.

And the additional distchecks are important prior to a release.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: remove unused cvsu script.
Gary V. Vaughan [Sun, 16 Sep 2012 06:17:46 +0000 (13:17 +0700)] 
maint: remove unused cvsu script.

* build-aux/cvsu: Remove. This script is not useful now that
Libtool's repository is hosted in git.
* Makefile.am (build_scripts): Remove cvsu reference.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: run update-copyright for missing 2011 and 2012 years.
Gary V. Vaughan [Sun, 16 Sep 2012 06:10:09 +0000 (13:10 +0700)] 
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>
13 years agobootstrap: use gnulib update-copyright script.
Gary V. Vaughan [Sun, 16 Sep 2012 06:04:23 +0000 (13:04 +0700)] 
bootstrap: use gnulib update-copyright script.

See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* bootstrap.conf (gnulib_modules): Add update-copyright.
* cfg.mk (update-copyright-env): Set environment variables for
update-copyright script.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: update bootstrap script to latest upstream.
Gary V. Vaughan [Sun, 16 Sep 2012 04:47:22 +0000 (11:47 +0700)] 
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>
13 years agogit: don't complain about new parallel tests driver and file droppings.
Gary V. Vaughan [Sun, 16 Sep 2012 04:45:04 +0000 (11:45 +0700)] 
git: don't complain about new parallel tests driver and file droppings.

* build-aux/.gitignore: Ignore parallel `test-driver' script.
* tests/.gitignore: Ignore `test-driver' .trs file droppings.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agognulib: update local gnulib patches.
Gary V. Vaughan [Sun, 16 Sep 2012 04:40:16 +0000 (11:40 +0700)] 
gnulib: update local gnulib patches.

* gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
* gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
to match current gnulib.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agognulib: update gnulib submodule.
Gary V. Vaughan [Sun, 16 Sep 2012 04:38:50 +0000 (11:38 +0700)] 
gnulib: update gnulib submodule.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: ensure there is a ChangeLog before running automake.
Gary V. Vaughan [Sun, 16 Sep 2012 04:34:19 +0000 (11:34 +0700)] 
bootstrap: ensure there is a ChangeLog before running automake.

Automake refuses to run in GNU-mode unless there is a ChangeLog file
in the top-level directory.
* bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: improve verbose mode output.
Gary V. Vaughan [Sun, 11 Dec 2011 11:31:56 +0000 (18:31 +0700)] 
libtoolize: improve verbose mode output.

* libtoolize (func_require_seen_ltdl)
(func_require_seen_libtool): Output success message in verbose
mode.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>