]> git.ipfire.org Git - thirdparty/libtool.git/log
thirdparty/libtool.git
13 years agosyntax-check: fix violations and re-enable sc_file_system.
Gary V. Vaughan [Mon, 24 Oct 2011 09:23:41 +0000 (16:23 +0700)] 
syntax-check: fix violations and re-enable sc_file_system.

* cfg.mk (local-checks-to-fix): Remove sc_file_system from list
of disabled checks.
(VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
to avoid running its contents through syntax-check.
* build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
for "file system".
* libltdl/ltdl.c (try_dlopen): Ditto.
* tests/dlloader-api.at: Ditto.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: fix violations and re-enable sc_error_message_uppercase.
Gary V. Vaughan [Wed, 26 Oct 2011 07:33:45 +0000 (14:33 +0700)] 
syntax-check: fix violations and re-enable sc_error_message_uppercase.

* cfg.mk (local-checks-to-fix): Remove
sc_error_message_uppercase from list of disabled checks.
(exclude_file_name_regexp--sc_error_message_uppercase): Don't
match cvsu, which is not our file to edit.
* doc/libtool.texi: Use lowercase error message in example.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
Gary V. Vaughan [Thu, 17 Nov 2011 11:04:31 +0000 (18:04 +0700)] 
syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.

* cfg.mk: Note that we support C++ compilation of libltdl, which
in turn requires that *alloc return values be cast correctly.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
Gary V. Vaughan [Wed, 26 Oct 2011 08:11:45 +0000 (15:11 +0700)] 
syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.

* cfg.mk (local-checks-to-fix): Remove
sc_cast_of_argument_to_free from list of disabled checks.
* build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
libltdl/lt__dirent.c: Casting argument to free is never
necessary.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: fix violations and re-enable sc_avoid_if_before_free.
Gary V. Vaughan [Wed, 26 Oct 2011 07:57:55 +0000 (14:57 +0700)] 
syntax-check: fix violations and re-enable sc_avoid_if_before_free.

* cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
from list of disabled checks.
According to gnulib/doc/free.texi: "On old platforms such as
SunOS4, @code{free (NULL)} fails.  However, since all such
systems are so old as to no longer be considered ``reasonable
portability targets,'' this module is no longer useful."
* libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
against freeing NULL bug on SunOS4.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agosyntax-check: skip sc_unmarked_diagnostics.
Gary V. Vaughan [Tue, 25 Oct 2011 04:31:48 +0000 (11:31 +0700)] 
syntax-check: skip sc_unmarked_diagnostics.

* cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
from here...
(local-checks-to-skip): ...to here.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: rename `libltdl/config' directory to standard `build-aux'.
Gary V. Vaughan [Thu, 27 Oct 2011 03:00:29 +0000 (10:00 +0700)] 
libtoolize: rename `libltdl/config' directory to standard `build-aux'.

In addition to moving the autoconf auxiliary script directory
into the place expected by GNU developers ($top_srcdir/build-aux)
we also simplify libtoolize somewhat by having libltdl use
whatever directory was specified by the parent project.  This is
much more flexible, allows libltdl client projects to also use a
single canonical `$top_srcdir/build-aux' auxiliary script
directory, and maintains backward compatibility with existing
projects that wish to continue using $ltdl_dir/config.
* libltdl/config: Moved whole directory from here...
* build-aux: ...to here.
* libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
(func_install_pkgaux_parent): Remove.
(func_install_pkgaux_files): Considerably simplified now that we
have only a single auxiliary directory to worry about.
(subproject_aux_dir): Remove.
* bootstrap.conf (libtool_readme_release_package_substitutions):
No need to substitute our old unusual aux_dir location into
README-release any more.
* cfg.mk (_build-aux): Now that we use the standard location for
this directory, no need to set this variable either.
* configure.ac (AC_INIT): git-version-gen has moved.
(AC_CONFIG_AUX_DIR): Adjust.
* Makefile.am (stamp-mk, auxexefiles, auxfiles)
(install-data-local): Use build-aux instead of config.
(libltdl/stamp-mk): Ditto.
* libltdl/configure.ac, tests/cdemo/configure.ac,
tests/demo/configure.ac, tests/depdemo/configure.ac,
tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac
(AC_CONFIG_AUX_DIR): Ditto.
* tests/defs.m4sh (aux_dir): Ditto.
* tests/configure-iface.at, tests/getopt-m4sh.at,
tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
Ditto.
* Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
* libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
libtoolize can access it at runtime without requiring GNU M4 via
the extract-trace script.
(require_Makefile_am_filter): Use it to determine whether the
aux_dir declared in the current (parent) project configure is
compatible with the declarations in installed ltdl autotools
source files.
(require_configure_ac_filter): New function to perform similar
checks and rewrite configure.ac during installation if necessary.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: aux scripts go in ltdl dir when parent has no configure.
Gary V. Vaughan [Mon, 14 Nov 2011 04:54:22 +0000 (11:54 +0700)] 
libtoolize: aux scripts go in ltdl dir when parent has no configure.

When using libtoolize to install subproject libltdl into a
parent project that does not use autotools, set the default
directory for auxiliary scripts inside libltdl rather than
littering the parent project with files it doesn't use.
* libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
report results like other require_ funcs.
(func_require_aux_dir): Put subproject auxiliary files into ltdl
directory where libltdl/configure will be able to find
`install-sh' and others.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: simplify runtime by substituting pkgauxdir.
Gary V. Vaughan [Mon, 14 Nov 2011 04:44:54 +0000 (11:44 +0700)] 
libtoolize: simplify runtime by substituting pkgauxdir.

* Makefile.am (configure_edit): Substitute pkgauxdir.
* libtoolize.m4sh (func_install_pkgaux_subproject)
(func_install_pkgaux_parent, extract_trace): Use it.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: generate require_ltdl_relative_aux_dir definition.
Gary V. Vaughan [Mon, 14 Nov 2011 04:28:33 +0000 (11:28 +0700)] 
libtoolize: generate require_ltdl_relative_aux_dir definition.

* libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
be generated function...
(require_ltdl_relative_aux_dir): ...so that we can easily
generate this very similar function from the same code.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: rename `libltdl/m4' directory to standard `m4'.
Gary V. Vaughan [Thu, 27 Oct 2011 11:29:50 +0000 (18:29 +0700)] 
libtoolize: rename `libltdl/m4' directory to standard `m4'.

In addition to moving the autoconf macro directory into the
place expected by GNU developers ($top_srcdir/m4), we also
simplify libtoolize somewhat by having libltdl use whatever
directory was specified by the parent project.  This is much
more flexible, allows libltdl client projects to also use a
single canonical `$top_srcdir/m4' macro directory, and maintains
backward compatibility with existing projects that wish to
continue using $ltdl_dir/m4.
* libltdl/m4: Moved to it's parent directory.
* Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
(libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
* configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
* libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
libtoolize script can pick up the project macro directory from
ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
to regenerate configure for the sake of a different macro
directory declared in the libltdl using client project.
* libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
(func_install_pkgmacro_parent): Remove.
(subproject_macro_dir): Remove.
(require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
(require_ltdl_am_macro_dir): New functions, generated at runtime
by adding libltdl/Makefile.am to the generation loop.
(func_install_pkgmacro_files): Considerably simplified now that
we have only a single macro directory to worry about.
(require_ltdl_relative_macro_dir): New function. Calculate the
relative path from $ltdl_dir to the parent project macro_dir.
(require_Makefile_am_filter): Depending on $ltdl_mode, edit
Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
directory if necessary.
(require_aclocal_m4_filter): Make sure m4_includes point to the
correct macro directory by editing the file as it is copied
into the parent project.
(func_install_pkgltdl_files): Use the filters.
(func_check_macros): Remove various advice that no longer
applies with an always shared macro directory.
(func_require_ltdl_dir): Don't default ltdl_dir to subproject
when `--ltdl' was not given.
(func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
not set.
(func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
mode with no other directory implied by AC_CONFIG_MACRO_DIR or
ACLOCAL_AMFLAGS, otherwise m4 as before.
* tests/libtoolize.at: Match new "creating file `Makefile.am'"
messages correctly.
(subproject ltdl with non-shared directories): This test no
longer makes sense, so repurposed...
(subproject ltdl with non-canonical macro dir): ...this, to
ensure subproject ltdl continues to automatically share the
parent macro directory.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
of macro_dir.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
Gary V. Vaughan [Tue, 1 Nov 2011 05:29:48 +0000 (12:29 +0700)] 
libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.

* libltdl/Makefile.inc: Moved from here...
* libltdl/ltdl.mk: ...to here.
* Makefile.am, bootstrap.conf, tests/libtoolize.at,
tests/nonrecursive.at: Adjust.
* libtoolize.m4sh (func_install_pkgltdl_files): Set the
destination file to `Makefile.inc' if grep finds an include for
that name in a top-level Makefile.am.
(func_check_macros): Print a deprecation warning if use of the
old `Makefile.inc' convention is found.
* tests/old-ltdl-iface.at: New test for renaming and warning
correctly when `Makefile.inc' convention is still in use.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor ACLOCAL_AMFLAGS extraction.
Gary V. Vaughan [Fri, 11 Nov 2011 04:49:23 +0000 (11:49 +0700)] 
libtoolize: refactor ACLOCAL_AMFLAGS extraction.

Another simple refactor to simplify following changesets.
* libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
(require_am_macro_dir): Generate these functions at runtime.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: rename require_makefile_am to require_Makefile_am.
Gary V. Vaughan [Fri, 11 Nov 2011 04:32:51 +0000 (11:32 +0700)] 
libtoolize: rename require_makefile_am to require_Makefile_am.

A simple refactoring to keep the next change self-contained.
* libtoolize.m4sh (require_makefile_am): Renamed from this...
(require_Makefile_am): ...to this.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: simplify copying of files that are edited during install.
Gary V. Vaughan [Thu, 10 Nov 2011 11:27:51 +0000 (18:27 +0700)] 
libtoolize: simplify copying of files that are edited during install.

* libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
that Automake automatically adds to a (subproject)
distribution...
* Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
because we reuse libltdl/Makefile.inc in non-recursive mode in
our own tree, so we do need to add those very same files here...
* libtoolize.m4sh (require_Makefile_am_filter)
(require_Makefile_inc_filter): ...all of which means we no
longer need to manually remove those files at libtoolize time.
These two new functions are factored out of...
(func_fixup_Makefile): ...this old function, now removed.
(func_copy): Add support for an optional sed script as the last
argument to filter the content of a file as it is copied.
(func_install_pkgltdl_files): Much simplified by $require_<foo>
the relevant filter scripts and passing them to func_copy.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: simplify file-copying and -linking call-graph.
Gary V. Vaughan [Thu, 10 Nov 2011 09:14:48 +0000 (16:14 +0700)] 
libtoolize: simplify file-copying and -linking call-graph.

* libtoolize.m4sh (TAR): Remove.
(func_copy_some_files, func_copy_cb): Remove.
(func_copy): Refactor from all of the above, and simplify. No
need to use $TAR to preserve timestamps when copying, since
we've been running touch right afterwards anyway. Adjust all
callers to use the new argument footprint.
(func_serial_update, func_keyword_update): Delete any pre-
existing destination file when used with `--force' before
calling func_copy, now that the hardcoded special cases are not
in there any more.
(func_install_pkgmacro_subproject)
(func_install_pkgaux_subproject): Use our own file loop -
func_copy subsumes all the checks previously in
func_copy_some_files, but operates on only one file at a time.
(func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
configure special cases here, before calling func_copy.
* tests/libtoolize.at: Make sure we match corrected "copying
`configure.ac'" output.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: generate full and correct ChangeLog.
Gary V. Vaughan [Thu, 17 Nov 2011 05:26:39 +0000 (12:26 +0700)] 
maint: generate full and correct ChangeLog.

* gnulib: Updated to pick up gitlog-to-changelog multi-author
support.
* gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
patch for '(tiny change)' support.
* Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
option.
* libltdl/config/git-hooks/commit-msg: New commit message hook
for git.
* libltdl/config/git-log-fix: New file, with ChangeLog fixes.
* HACKING (Using git): Update.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agooptions-parser: provide a saner pluggable API.
Gary V. Vaughan [Wed, 16 Nov 2011 05:43:53 +0000 (12:43 +0700)] 
options-parser: provide a saner pluggable API.

It's much too easy to forget that the functions you hook into
the option parser need to return unconsumed options in the
variable `func_run_hooks_result'; better to follow the
convention used in the rest of bootstrap and return results in a
variable named after the function with `_result' appended.
* libltdl/config/options-parser (func_run_hooks): implement this
new API.
(Option parsing): Update the example in the header comment for
this section to reflect the changes.
* bootstrap (bootstrap_options_prep, bootstrap_parse_options)
(bootstrap_validate_options): Adjust.
* bootstrap.conf (libtool_options_prep, libtool_parse_options)
(libtool_validate_options): Ditto.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: display accurate usage message.
Gary V. Vaughan [Wed, 16 Nov 2011 05:13:55 +0000 (12:13 +0700)] 
bootstrap: display accurate usage message.

After splitting bootstrap up, we also lost bootstraps usage
message, and were incorrectly displaying a partial extract-trace
message.
* bootstrap (usage): Set appropriately.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
Gary V. Vaughan [Wed, 16 Nov 2011 05:04:02 +0000 (12:04 +0700)] 
bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.

During the split of bootstrap into options-parser and
extract-trace, the generic long-option splitting code got lost.
* libltdl/config/options-parser (func_parse_options): Add the
code to split any long option separated by an equals from its
optarg back in.
Reported by Roumen Petrov.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agognulib: update gnulib submodule.
Gary V. Vaughan [Tue, 15 Nov 2011 09:44:15 +0000 (16:44 +0700)] 
gnulib: update gnulib submodule.

Among others, this fixes a bug in _build-aux expansion so that
`make syntax-check' works again.
* gnulib: Updated to todays master HEAD revision.
* gl/top/maint.mk.diff: Remove. This patch has been applied
upstream already.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: remove NL2SP and initialisation.
Gary V. Vaughan [Mon, 14 Nov 2011 10:37:39 +0000 (17:37 +0700)] 
libtoolize: remove NL2SP and initialisation.

There's only a single use of NL2SP, and that is redundant.
* libtoolize.m4sh (func_serial_update): Factor away use of
NL2SP.
(NL2SP, SP2NL): Remove initialisation.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: remove consumed options from the list to be processed.
Gary V. Vaughan [Tue, 15 Nov 2011 06:26:53 +0000 (13:26 +0700)] 
bootstrap: remove consumed options from the list to be processed.

Fix a bug where processed bootstrap options were not removed
from the queue, and eventually flagged as unknown in the
pluggable option parser driver.
* bootstrap (bootstrap_parse_options)
(bootstrap_validate_options): Follow the pluggable option parser
API correctly, and set func_run_hooks_result to the list of
remaining unconsumed options.
Reported by Roumen Petrov <bugtrack@roumenpetrov.info>

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor $opt_quiet, func_echo and func_echo_once.
Gary V. Vaughan [Wed, 9 Nov 2011 09:14:13 +0000 (16:14 +0700)] 
libtoolize: refactor $opt_quiet, func_echo and func_echo_once.

Instead of long sequences checking for setting of $opt_quiet,
followed by one or more func_echo variations, add and use a new
function func_whisper - the complement of func_verbose.
* libtoolize.m4sh (func_whisper): New function. Adjust all
callers previously using `$opt_quiet || func_echo ...'.
(func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
...'.
(func_whisper_hdr): New function, adjust all callers previously
using `func_whisper_once ...; func_whisper ...'.
(func_whisper_error_header): Ditto, but calling func_error.
(func_echo_once): Remove.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: update a bit-rotted comment.
Gary V. Vaughan [Thu, 10 Nov 2011 05:27:34 +0000 (12:27 +0700)] 
libtoolize: update a bit-rotted comment.

* libtoolize (func_copy_cb): Since this comment was written, the
function has been changed to timestamp files as it copies.
Update the comment to reflect that.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agogeneral.m4sh: relative path to the same directory is `.'.
Gary V. Vaughan [Mon, 14 Nov 2011 10:15:39 +0000 (17:15 +0700)] 
general.m4sh: relative path to the same directory is `.'.

* general.m4sh (func_relative_path): We sometimes want to use
the result of this function directly, rather than purely as a
prefix, so we need to return `.' when both directories end up at
the same location.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoltmain.sh: append relative path trailing slashes explicitly.
Gary V. Vaughan [Fri, 11 Nov 2011 03:06:20 +0000 (10:06 +0700)] 
ltmain.sh: append relative path trailing slashes explicitly.

In addition to being more idiomatic, and hence minimising
suprises, seeing the slash written explicity when appending to
the result of a relative path calculation is a lot more
readable.
* libltdl/config/general.m4sh (func_relative_path): Don't append
an implicit trailing slash...
* libltdl/config/ltmain.m4sh (func_mode_link): ...write it
explicitly at the time of use.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: use pkgauxdir for local install and uninstall rules.
Gary V. Vaughan [Wed, 9 Nov 2011 07:10:13 +0000 (14:10 +0700)] 
build: use pkgauxdir for local install and uninstall rules.

* Makefile.am (pkgauxdir): Set it correctly.
(uninstall-hook): Use it for pkgaux_scripts and
pkgaux_data_files.
(install-data-local): Ditto.
Remove `config/' prefix from extract-trace and option-parser
items.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoinstall: correct a typo in pkgaux_files location.
Gary V. Vaughan [Tue, 8 Nov 2011 17:53:33 +0000 (00:53 +0700)] 
install: correct a typo in pkgaux_files location.

* Makefile.am (install-data-local): Install pkgaux_files
directly from $(aux_dir) [./libltdl/config at the moment].

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: order pkgltdl_files to avoid reconfiguration.
Gary V. Vaughan [Tue, 8 Nov 2011 17:18:02 +0000 (00:18 +0700)] 
libtoolize: order pkgltdl_files to avoid reconfiguration.

* Makefile.am (pkgltdl_files): aclocal.m4 depends on
configure.ac, and will cause spurious reconfiguration of freshly
`libtoolize --ltdl' tree if we don't ensure configure.ac is the
older of these two files.
* tests/libtoolize.at: Adjust expout order to match.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: remove an over-exuberant $(srcdir) prefix.
Gary V. Vaughan [Tue, 8 Nov 2011 15:05:45 +0000 (22:05 +0700)] 
build: remove an over-exuberant $(srcdir) prefix.

* Makefile.am (git_version_gen): No need for an extra $(srcdir)
in the path when we always use after `cd $(srcdir).

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: massage installed auxiliary script list at make time.
Gary V. Vaughan [Fri, 28 Oct 2011 13:45:56 +0000 (20:45 +0700)] 
libtoolize: massage installed auxiliary script list at make time.

* Makefile.am (configure_edit): Rename pkgconfig_files
substitution to pkgaux_files, and add pkgaux_install_files and
pkgaux_parent_files substitutions for atlocal.
(pkgauxdir): Where to install pkgaux_files.
(auxfiles): Removed, and replaced by...
(pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
...these, which separate the files lists more logically for
easier installation, and use by libtoolize.m4sh.
(uninstall-hook): Adjust.
(tests/atlocal): Adjust.
* bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
* libtoolize.m4sh (func_install_pkgconfig_files)
(func_install_pkgconfig_subproject)
(func_install_pkgconfig_parent, func_install_pkgconfig_files)
(all_pkgconfig_files): Renamed to...
(func_install_pkgaux_files, unc_install_pkgaux_subproject)
(func_install_pkgaux_parent, func_install_pkgaux_files)
(all_pkgaux_files): ...these, resp. Adjust all callers.
(func_massage_pkgconfig_files): Removed.
(pkgaux_files): List of all auxiliary scripts substituted from
Makefile.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: massage installed libltdl file list at make time.
Gary V. Vaughan [Fri, 28 Oct 2011 16:25:48 +0000 (23:25 +0700)] 
libtoolize: massage installed libltdl file list at make time.

* libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
is set, adjust to look in libltdl subdirectory.
(func_massage_pkgltdl_files): Removed function and only caller,
because...
(pkgltdl_files): ...we substitute the pre-massaged files
directly...
(func_install_pkgltdl_files): ...from here.
Adjust installation of specially handled additional files.
* Makefile.am (ltdldir): Location of libltdl files in source
tree.
(ltdldest, ltdldatafiles): Removed.
(pkgltdl_files): New pre-massaged list of libltdl sources.
(install-data-local, uninstall-hook): Use it.
* tests/libtoolize.at: Reorder expected output to match actual
libtoolize output.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: massage installed macro list at make time.
Gary V. Vaughan [Fri, 28 Oct 2011 09:46:52 +0000 (16:46 +0700)] 
libtoolize: massage installed macro list at make time.

* libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
and only caller, because...
(pkgmacro_files): ...we substitute the pre-massaged files
directly...
(func_install_pkgmacro_files): ...from here.
* Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
macros used by func_install_pkgmacro_files.
(configure_edit): Substitute pkgmacro_files instead of
aclocalfiles.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: use only space delimited file lists.
Gary V. Vaughan [Fri, 28 Oct 2011 12:18:43 +0000 (19:18 +0700)] 
libtoolize: use only space delimited file lists.

We don't install any files with whitespace in their file name,
so using colon delimited lists to make that possible was a
premature optimisation and an unneeded complication.
* libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
and just pull space delimited files in a for loop idiomatically.
(func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
(func_install_pkgmacro_parent, func_install_pkgmacro_files)
(func_massage_pkgltdl_files, func_massage_pkgconfig_files):
Append to file lists with space delimiter.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: remove sed based configure scanning.
Gary V. Vaughan [Fri, 4 Nov 2011 10:08:32 +0000 (17:08 +0700)] 
libtoolize: remove sed based configure scanning.

* libtoolize (func_scan_files): Removed function and callers.
(require_seen_ltdl, require_seen_libtool): Factor out remaining
functionality of former sed based scanning.
(func_check_macros): Adjust.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor ltdl_mode discovery.
Gary V. Vaughan [Fri, 4 Nov 2011 09:10:28 +0000 (16:10 +0700)] 
libtoolize: refactor ltdl_mode discovery.

* libtoolize.m4sh (require_ac_ltdl_mode)
(require_ac_ltdl_options, require_ltdl_mode): New functions
factored out of func_scan_files for scanning and setting
ltdl_mode and friends.
(func_scan_files): Remove the factored out code.
(func_install_pkgmacro_files, func_install_pkgltdl_files)
(func_install_pkgconfig_files, func_check_macros): Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor ltdl_dir discovery.
Gary V. Vaughan [Fri, 4 Nov 2011 07:43:23 +0000 (14:43 +0700)] 
libtoolize: refactor ltdl_dir discovery.

* libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
New functions factored out of func_scan_files for scanning and
setting ac_ltdl_dir and ltdl_dir resp.
(func_scan_files): Remove the factored out code.
(func_fixup_Makefile, func_serial_update_check)
(func_install_pkgltdl_files, func_install_pkgconfig_subproject)
(func_check_macros): Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor aux_dir discovery.
Gary V. Vaughan [Thu, 3 Nov 2011 18:30:24 +0000 (01:30 +0700)] 
libtoolize: refactor aux_dir discovery.

* libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
functions factored out of func_scan_files for scanning and
setting aux_dir and friends.
(func_scan_files): Remove the factored out code to scan
configure.ac with sed, and then set macro_dir appropriately.
(func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
(func_install_pkgmacro_files, func_check_macros): Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: install autoconf macros only if there is a $configure_ac.
Gary V. Vaughan [Mon, 7 Nov 2011 14:06:59 +0000 (21:06 +0700)] 
libtoolize: install autoconf macros only if there is a $configure_ac.

* libtoolize.m4sh (func_install_pkgmacro_files): If there is no
$configure_ac in the parent project directory, and libtoolize is
in subproject mode, then the parent project has no use for
autoconf macros, so don't install them.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: display aux files output header for non-autoconf parents.
Gary V. Vaughan [Mon, 7 Nov 2011 13:49:53 +0000 (20:49 +0700)] 
libtoolize: display aux files output header for non-autoconf parents.

* libtoolize.m4sh (func_install_pkgconfig_subproject): When the
parent project does not use Autoconf, be sure to display an
output header before copying auxiliary files despite not being
able to scan for AC_CONFIG_AUX_DIR arguments.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor macro_dir discovery around extract-trace script.
Gary V. Vaughan [Thu, 3 Nov 2011 17:44:08 +0000 (00:44 +0700)] 
libtoolize: refactor macro_dir discovery around extract-trace script.

* libtoolize.m4sh (func_extract_trace): Function to call
$aux_dir/extract-trace.  The name and footprint are the same as
the core function in the extract-trace script file so that we
can choose to source that file when the option processing
becomes compatible with ours.
(require_ac_macro_dir, require_aclocal_amflags)
(require_am_macro_dir, require_macro_dir, require_makefile_am):
New functions factored out of func_scan_files for scanning and
setting macro_dir and friends.
(func_scan_files): Remove the factored out code to scan
configure.ac with sed, and then set macro_dir appropriately.
(func_serial_update_check, func_install_pkgmacro_subproject)
(func_install_pkgmacro_parent, func_install_pkgmacro_files)
(func_check_macros): Adjust.
* tests/libtoolize.at (Subproject ltdl without GNU M4): New test
to ensure `libtoolize --subproject' continues to work without a
GNU M4 dependency.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: refactor configure_ac discovery.
Gary V. Vaughan [Thu, 3 Nov 2011 14:45:15 +0000 (21:45 +0700)] 
libtoolize: refactor configure_ac discovery.

Make a start on decomposing some of the giant functions at the
heart of libtoolize into the much more flexible and manageable
(albeit somewhat more verbose) model of self-organising
$require_<foo> function pointers.
* libtoolize.m4sh (require_configure_ac): New function factored
out of func_scan_files for setting $configure_ac appropriately,
implementation taken from extract-trace script.
(func_autoconf_configure): And similarly for ensuring that a
filename which matches something Autoconf would read also has
content that appears to be destined for Autoconf processing.
(func_scan_files): Simplified the factored out code to a single
require_configure_ac call.
(func_install_pkgconfig_files, func_check_macros): Ditto.
(seen_autoconf): Removed.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobootstrap: split into reusable parts.
Gary V. Vaughan [Thu, 3 Nov 2011 08:23:45 +0000 (15:23 +0700)] 
bootstrap: split into reusable parts.

* bootstrap: Bourne shell has no scoping, so be extremely
careful with namespaces, functions in `^func_' and `^require_';
private variables in `^_G_', and public variables all well
documented by comments.
* libltdl/config/extract-trace: New file, containing the minimum
of code previously in bootstrap plus a little glue to make the
GNU M4 based autotools tracing function (as opposed to the
kludgy sed extraction currently used everywhere else) a
standalone script that can be executed or sourced.
* libltdl/config/options-parser: New file, containing the
pluggable options parser code shared between the other two.
* bootstrap.conf: Adjust.
* Makefile.am (EXTRA_DIST): Be sure to distribute the new
extract-trace and options-parser scripts.
(install-data-local): And install them where libtoolize can find
them.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: prefix absolute directory variables with 'abs_'.
Gary V. Vaughan [Sun, 6 Nov 2011 05:14:40 +0000 (12:14 +0700)] 
tests: prefix absolute directory variables with 'abs_'.

Avoid any possible confusion about the contests of thes
variables compared to $aux_dir, $macro_dir and $src_dir in
configure.ac, Makefile.am, libtoolize.m4sh and others.
* tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
(abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
* tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
tests/demo-pic-exec.test, tests/demo-pic-make.test,
tests/demo-shared-exec.test, tests/demo-shared-inst.test,
tests/demo-shared-make.test, tests/demo-shared-unst.test,
tests/demo-static-exec.test, tests/demo-static-inst.test,
tests/demo-static-make.test, tests/demo-static-unst.test,
tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
tests/sh.test, tests/tagdemo-shared-exec.test,
tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: calculate required mkinstalldirs calls during `make install'.
Gary V. Vaughan [Sun, 6 Nov 2011 10:55:08 +0000 (17:55 +0700)] 
maint: calculate required mkinstalldirs calls during `make install'.

* Makefile.am (install-data-local): Make sure all destination
directories are in place before copying files there, without
hardcoding them.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: substitute static directory names.
Gary V. Vaughan [Sun, 6 Nov 2011 04:48:38 +0000 (11:48 +0700)] 
maint: substitute static directory names.

By substituting just the directory name as passed to the macro,
aux_dir can be used with or without $srcdir prefix, which is
more flexible, and always means the same thing in each file,
rather than sometimes being a directory name, sometimes relative
to $top_srcdir.
* configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
(LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
with unexpanded shell variables.
* Makefile.am, tests/defs.m4sh: Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: fix spelling nit.
Peter Rosin [Mon, 7 Nov 2011 10:49:39 +0000 (11:49 +0100)] 
libtoolize: fix spelling nit.

* libtoolize (M4SH_GETOPTS): Fix spelling nit.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
13 years agotests: fix parsing of configure output by pic_flag.at.
Gary V. Vaughan [Mon, 7 Nov 2011 16:43:56 +0000 (23:43 +0700)] 
tests: fix parsing of configure output by pic_flag.at.

Close http://debbugs.gnu.org/9962.
* tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
with --disable-silent-rules so that the full output parsed by
the rest of the test is available.
Reported by Roumen Petrov.

Signed-off-by: Gary V. Vaughan <gary@vaughan.pe>
13 years agolibtoolize: rename `--subproject' option, and make it work.
Gary V. Vaughan [Mon, 7 Nov 2011 04:34:13 +0000 (11:34 +0700)] 
libtoolize: rename `--subproject' option, and make it work.

* libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
worked, and add `--subproject' which sets ltdl_mode correctly.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: fix a scoping bug in func_aclocal_update_check.
Gary V. Vaughan [Sat, 5 Nov 2011 12:40:30 +0000 (19:40 +0700)] 
libtoolize: fix a scoping bug in func_aclocal_update_check.

libtoolize.m4sh (func_aclocal_update_check): This body of this
function used a global variable set by the outer loop of the
caller. Fix to Use the function argument correctly.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: rename the debug shell command variable to `debug_cmd'.
Gary V. Vaughan [Fri, 4 Nov 2011 11:38:06 +0000 (18:38 +0700)] 
maint: rename the debug shell command variable to `debug_cmd'.

Not only does it make more sense, it also matches bootstrap and
others.
* libtoolize.m4sh, libltdl/config/ltmain.m4sh,
libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
to debug_cmd.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: dynamically strip unused scripts from libltdl Makefile.
Gary V. Vaughan [Sun, 30 Oct 2011 04:03:00 +0000 (11:03 +0700)] 
maint: dynamically strip unused scripts from libltdl Makefile.

* configure.ac (pkgaux_scripts): Centrally maintain the complete
list of aux scripts required to build libltdl, and which need to
be installed by libtoolize --ltdl, and consequently need to be
placed in $pkgdatadir by make install.
* Makefile.am (libltdl/stamp.mk): Improved to strip the unused
scripts not listed in pkgaux_scripts without the need for manual
synchronisation.
(auxexefiles): Removed. Replaced by new pkgaux_scripts
substitution.
(install-data-local): Adjust.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: substitute paths into defs.m4sh instead of recalculating.
Gary V. Vaughan [Thu, 27 Oct 2011 04:50:53 +0000 (11:50 +0700)] 
build: substitute paths into defs.m4sh instead of recalculating.

* Makefile.am (configure_edit): Add substitutions for aux_dir,
macro_dir and srcdir.
* tests/defs.m4sh: Don't recalculate srcdir.
(aux_dir, macro_dir, srcdir): Convert to absolute paths.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: support AM_SILENT_RULES
Gary V. Vaughan [Mon, 31 Oct 2011 08:21:40 +0000 (15:21 +0700)] 
build: support AM_SILENT_RULES

* configure.ac: Add AM_SILENT_RULES.
* libltdl/configure.ac: Ditto, but only if defined.
* Makefile.am (.version, ChangeLog, README, doc/notes.txt)
(libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
(libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
(tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
GEN when V==0.
* libltdl/Makfile.inc (libltdl/argz.h): Ditto.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: add autobuild prerequisite only if autobuild.m4 is absent.
Gary V. Vaughan [Thu, 27 Oct 2011 05:10:49 +0000 (12:10 +0700)] 
maint: add autobuild prerequisite only if autobuild.m4 is absent.

* bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
is already present.
* bootstrap.conf (require_autobuild_bulidreq): No need to set this
specially any more.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: ensure bootstrap runs from dist tarball.
Gary V. Vaughan [Wed, 26 Oct 2011 05:58:35 +0000 (12:58 +0700)] 
maint: ensure bootstrap runs from dist tarball.

* bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
not available, check that there is a copy of the file from a
previous run available before bailing out with a diagnostic.
(func_install_gnulib_non_module_files): Don't diagnose missing
files explicitly - func_gnulib_tool_copy_file takes care of it
now.
(func_require_checkout_only_file): In the diagnostic for
not being in a source-controlled tree, note that `--force' must
be used to rebootstrap.
(func_require_gnulib_files_already_present): Removed.  All the
necessary checks are correctly performed in
func_gnulib_tool_copy_file withot resorting to heuristics.
(func_require_gnulib_mk): Don't continue to try to access
gnulib-cache.m4 after discovering we're running from a dist
tarball.
(func_require_dotgitmodules_parameters): Skip if .gitmodules
file is missing and git binary is not available.
* bootstrap.conf (checkout_only_file): Set to HACKING, which is
a non-distributed file.
(libtool_cleanup_empty_dirs): Don't print spurious errors when
trying to delete gnulib-tool droppings, in case gnulib-tool is
not available on this run.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: add a keyword `expensive' to very long running tests.
Gary V. Vaughan [Mon, 31 Oct 2011 09:52:16 +0000 (16:52 +0700)] 
tests: add a keyword `expensive' to very long running tests.

* tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
`expensive'.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agolibtoolize: fix some long-standing sed substitution bugs
Gary V. Vaughan [Mon, 31 Oct 2011 11:29:35 +0000 (18:29 +0700)] 
libtoolize: fix some long-standing sed substitution bugs

* libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
script that is evaluated twice before execution becomes a `\$',
which sed interprets as a literal $.  The script will then delete
any lines with a first non-whitespace character of `$'. Instead
use `\\\\$' in single quotes, which sed eventually receives as
`\\$' and correctly interprets as part of an instruction to
delete otherwise empty lines ending with a `\'.
Additionally the rest of the same sed script is no longer
applied to comment lines to avoid munging the copyright header
among others.
* NEWS: Updated.

13 years agomaint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
Gary V. Vaughan [Sat, 22 Oct 2011 09:46:31 +0000 (16:46 +0700)] 
maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.

* ChangeLog: Removed.
* HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
compensate.
* bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
* Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
(dist-hook): ...from the output of `git log' before rolling a
distribution tarball.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use gnulib's git-version-gen instead of mkstamp.
Gary V. Vaughan [Thu, 20 Oct 2011 15:17:23 +0000 (22:17 +0700)] 
maint: use gnulib's git-version-gen instead of mkstamp.

* libltdl/config/mkstamp: File removed.
* bootstrap.conf (gnulib_modules): Add git-version-gen.
* configure.ac (AC_INIT, package_revision): Use git-version-gen to
calculate version number.
(TIMESTAMP): Removed.
* libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(TIMESTAMP): Ditto.
* Makefile.am (TIMESTAMP): Ditto.
(MKSTAMP): Renamed from this...
(git_version_gen): ...to this. Set revision here.  An alpha is now a
release with an odd micro relase number.
(rebuild): Don't reset revision here.
(build_scripts): Remove mkstamp, add git-version-gen.
(EXTRA_DIST, BUILT_SOURCES): Add .version.
(libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
Don't depend on configure.ac or ChangeLog to determine when the
version number has reved, use .version directly.
(.version): Flush most recent configure calculated VERSION to disk.
(dist-hook): Flush current VERSION to disk at dist time.
(dotserial): Distributed file to cache the serial number for
when git is not available to recalculate it when building from a
release tarball.
(dist-hook): Make sure .serial is created.
(libltdl/config/ltversion.m4): Use .serial when it is present
(in a dist tarball) or calculate with git otherwise (in a git
working directory).
(EXTRA_DIST): Add .serial file.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use gnulib's maint.mk and support scripts release procedure.
Gary V. Vaughan [Tue, 18 Oct 2011 16:24:53 +0000 (23:24 +0700)] 
maint: use gnulib's maint.mk and support scripts release procedure.

* Makefile.maint: Removed.
* configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
All removed. Makefile.maint was the only client.
* HACKING (Release Procedure): Removed.
* bootstrap.conf (gnulib_modules): Add announce-gen,
do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
readme-release.
* cfg.mk (manual_title): Set it for web-manual rule.
(announcement_Cc_): Release announcement email addresses.
* Makefile.am (build_scripts): Add to EXTRA_DIST additional files
imported from gnulib for maint.mk release procedure.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: ensure VPATH autom4te search path can find autotests.
Gary V. Vaughan [Mon, 24 Oct 2011 07:49:30 +0000 (14:49 +0700)] 
tests: ensure VPATH autom4te search path can find autotests.

* Makefile.am (tests/testsuite): Passing only $(srcdir) include path
to autom4te is unable to find tests/package.m4, and passing only
$(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
which are relative to $(srcdir)... so we pass both!
* NEWS: Updated.
Reported by Bob Friesenhahn.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agodoc: modernize libtool.texi.
Karl Berry [Mon, 24 Oct 2011 02:31:55 +0000 (09:31 +0700)] 
doc: modernize libtool.texi.

* libtool.texi (@copying): Use this instead of @ifnottex; format for
Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
instead of duplicating text.
(@syncodeindex): Move all to the Texinfo header, where they belong.
(@dircategory): Use "Software development" instead of "GNU programming
tools", for consistency; and align individual entries to avoid
multiple lines; and move to after the copyright message.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: don't make autobuild a hard bootstrap requirement.
Gary V. Vaughan [Mon, 24 Oct 2011 01:43:46 +0000 (08:43 +0700)] 
maint: don't make autobuild a hard bootstrap requirement.

* bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
that bootstrap doesn't auto-add autobuild to $buildreq.

13 years agomaint: use gnulib's maintainer-makefile module.
Gary V. Vaughan [Wed, 19 Oct 2011 04:48:56 +0000 (11:48 +0700)] 
maint: use gnulib's maintainer-makefile module.

* bootstrap.conf (gnulib_modules): Add maintainer-makefile.
(gnulib_tool_options): Add --avoid=dummy now that we have a real
module to import.
* cfg.mk: New file. Customize maint.mk for Libtool.
* Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use gnulib's canonical fdl.texi.
Gary V. Vaughan [Wed, 19 Oct 2011 05:22:12 +0000 (12:22 +0700)] 
maint: use gnulib's canonical fdl.texi.

* doc/fdl.texi: Removed.
* bootstrap.conf (gnulib_non_module_files): Add fdl.texi.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use gnulib's canonical COPYING files.
Gary V. Vaughan [Tue, 18 Oct 2011 14:23:31 +0000 (21:23 +0700)] 
maint: use gnulib's canonical COPYING files.

* COPYING, libltdl/COPYING.LIB: Removed.
* bootstrap.conf (gnulib_non_module_files): Add COPYING.
(libtool_add_libltdl_copying): New func_gnulib_tool hook
function to copy the canonical LGPL2 COPYING file from gnulib at
bootstrap.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use gnulib's (pending saner) bootstrap script.
Gary V. Vaughan [Fri, 24 Sep 2010 21:26:00 +0000 (04:26 +0700)] 
maint: use gnulib's (pending saner) bootstrap script.

* bootstrap: Replaced with gnulib script.
* bootstrap.conf: New file with Libtool specific bootstrap
configuration.
* Makefile.am (EXTRA_DIST): Add bootstrap.conf.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: add gnulib submodule.
Gary V. Vaughan [Thu, 9 Sep 2010 18:14:41 +0000 (01:14 +0700)] 
maint: add gnulib submodule.

* configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
its configure time checks.
* .gitmodules (gnulib): New file with configuration for our
gnulib git submodule.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: tidy, sort and consolidate .gitignore files.
Gary V. Vaughan [Wed, 8 Sep 2010 07:49:32 +0000 (14:49 +0700)] 
maint: tidy, sort and consolidate .gitignore files.

The `gnulib-tool' and gnulib `bootstrap' scripts  maintain
`.gitignore' files in asciibetical order, so reorder them now
to avoid spurious patches later.

Take advantage of putting recursive file ignore matches into
`$top_srcdir/.gitignore' and remove repetitions from other
`.gitignore' files.

13 years agomaint: don't run help2man on programs not-yet-built.
Gary V. Vaughan [Fri, 24 Sep 2010 21:18:04 +0000 (04:18 +0700)] 
maint: don't run help2man on programs not-yet-built.

* Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
comment about why the dependencies here have to be a mite
bizarre.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agotests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
Gary V. Vaughan [Sun, 26 Sep 2010 11:25:36 +0000 (18:25 +0700)] 
tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.

* tests/getopt-m4sh.at (aux_dir): Remove unused variable.

13 years agotests: DRYing out `tests/sh.test'.
Gary V. Vaughan [Sun, 26 Sep 2010 11:19:18 +0000 (18:19 +0700)] 
tests: DRYing out `tests/sh.test'.

* Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
(lt_aclocal_m4_deps): Use it.

13 years agomaint: pass directory declarations in configure.ac into Makefile.
Gary V. Vaughan [Fri, 24 Sep 2010 21:01:56 +0000 (04:01 +0700)] 
maint: pass directory declarations in configure.ac into Makefile.

* configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
(AC_CONFIG_MACRO_DIR): Append code to these functions to
capture and propagate their directory arguments to Makefile.
* Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
* bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
`$ltdl_dir'.
<Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
and `macro_dir' at the top of the quick'n'dirty bootstrap
Makefile.

13 years agomaint: factor out ltmain.sh variable deletion.
Gary V. Vaughan [Sun, 26 Sep 2010 09:21:10 +0000 (16:21 +0700)] 
maint: factor out ltmain.sh variable deletion.

* Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
adding the extra line to delete boilerplate variable settings
from libltdl/config/general.m4sh that don't apply here.
(libltdl/config/ltmain.sh): Use it.

13 years agomaint: DRYing out `Makefile.am' file paths.
Gary V. Vaughan [Fri, 24 Sep 2010 20:40:27 +0000 (03:40 +0700)] 
maint: DRYing out `Makefile.am' file paths.

* Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
declaration. Adjust all references.
(doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
to hold directory paths, all including `$(srcdir)', to reduce
typing.
(LT_M4SH): Use `$m4sh_dir' as include directory.
(defs): This one is for a file in the build-tree, so no
leading `$(srcdir)'.

13 years agoCLEANUP: fix error from pushing too far up the branch.
Gary V. Vaughan [Fri, 24 Sep 2010 20:25:48 +0000 (03:25 +0700)] 
CLEANUP: fix error from pushing too far up the branch.

* Makefile.am (install-data-local): Undo character transposition
from too early push of untested v2.4-17-gaf74d58.
* ChangeLog (2010-09-16): Remove spurious entry.

13 years agomaint: use macro_dir consistently in all files.
Gary V. Vaughan [Fri, 24 Sep 2010 14:12:18 +0000 (21:12 +0700)] 
maint: use macro_dir consistently in all files.

* Makefile.am: Replace all uses of m4dir with macrodir to
match AC_CONFIG_MACRO_DIR.
* libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
with macro_dir.
* tests/defs.m4sh, tests/sh.test: Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: use aux_dir consistently in all files.
Gary V. Vaughan [Fri, 24 Sep 2010 14:10:19 +0000 (21:10 +0700)] 
maint: use aux_dir consistently in all files.

* Makefile.am, Makefile.maint: Replace all uses of auxdir
with aux_dir to match AC_CONFIG_AUX_DIR.
* libltdl/config/libtoolize.m4sh: Likewise.
* tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoMakefile: try to be robust against shell meta-chars in filenames.
Gary V. Vaughan [Fri, 24 Sep 2010 13:58:39 +0000 (20:58 +0700)] 
Makefile: try to be robust against shell meta-chars in filenames.

* Makefile.am: In each rule body, unless a make variable needs
to be seen as multiple words by the shell (for word-splitting
loops, or because it contains several commands), quote it. Use
single quotes unless the shell needs to perform variable inter-
polation, in which case use double quotes.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: let make employ user's `SED' setting.
Gary V. Vaughan [Fri, 24 Sep 2010 13:26:36 +0000 (20:26 +0700)] 
maint: let make employ user's `SED' setting.

* Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
out.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agomaint: simplify and improve safety of bootstrap process.
Gary V. Vaughan [Thu, 2 Sep 2010 09:44:32 +0000 (16:44 +0700)] 
maint: simplify and improve safety of bootstrap process.

* Makefile.am (bootstrap_files): List files that need to be
generated at bootstrap time before `./configure && make' can
work.  It turns out that this is considerably fewer files than we
had thought necessary previously.
(bootstrap-deps-prep): Ensure minimum set of required substitution
variables are non-empty.
(bootstrap-deps): Depend on `bootstrap' files.
* bootstrap (Generate bootstrap dependencies): Now that
`Makefile.am' is entirely responsible for rebuilding files at
bootstrap time, we need only specify the new `bootstrap-deps'
target, and supply values for the substitutions checked by
`bootstrap-deps-prep'.
* configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
right after running `bootstrap'.  So rely on the presence of
`libltdl/config/libtoolize.m4sh', which is always there.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: eliminate superfluous temporary files from `Makefile.am'.
Gary V. Vaughan [Thu, 23 Sep 2010 12:53:48 +0000 (19:53 +0700)] 
build: eliminate superfluous temporary files from `Makefile.am'.

* Makefile.am (CLEANFILES): Remove temporary file entries.
(libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
(tests/defs, tests/testsuite): Factor away temporary files.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
Gary V. Vaughan [Thu, 23 Sep 2010 12:42:30 +0000 (19:42 +0700)] 
build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.

* Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
avoid use of superfluous intermediate file.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: don't hardcode repeated long paths in Makefile rules.
Gary V. Vaughan [Thu, 23 Sep 2010 12:31:10 +0000 (19:31 +0700)] 
build: don't hardcode repeated long paths in Makefile rules.

According to the DRY principle, scattering several copies of
something across a file or project leads to pain.  Let's not
do that!
* Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
(libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
hold the location of important files and targets.
(EXTRA_DIST): Add the distributed ones by variable.
(libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
(libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
(tests/defs.in): Use the new variables to reduce noise and
repetition.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: make better use of automatic variables in `Makefile.am'.
Gary V. Vaughan [Thu, 23 Sep 2010 11:30:36 +0000 (18:30 +0700)] 
build: make better use of automatic variables in `Makefile.am'.

* Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
(libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
(libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
Make better use of automatic variables.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: name temporary files in `Makefile.am' consistently.
Gary V. Vaughan [Thu, 23 Sep 2010 11:44:16 +0000 (18:44 +0700)] 
build: name temporary files in `Makefile.am' consistently.

Sadly, we still have to jump through hoops for MICROS~1's very
old, very broken 8.3 naming convention, so we have to be careful
to be unique in the first 8 letters, and not to use two periods
in a filename, otherwise we could use the much more elegent
`temporary files use "$@T"' idiom:
* Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
to `ltversion.tmp'.
(libltdl/config/ltmain.sh): Rename temporary file to
`libltdl/config/ltmain.tmp'.
(libtoolize): Rename temporary file to `libtoolize.tmp'.
(tests/defs): Rename temporary file to `tests/defs.tmp'
(tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
(CLEANFILES): Append temporary files as we create rules that
use them.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: factor Makefile.am `m4sh' invocations to LT_M4SH.
Gary V. Vaughan [Thu, 23 Sep 2010 11:06:09 +0000 (18:06 +0700)] 
build: factor Makefile.am `m4sh' invocations to LT_M4SH.

* Makefile.am (LT_M4SH): Now that all directories are listed as
fully qualified paths, the search path argument to M4SH is always
the same, so factor it out into a variable.  Adjust all callers.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: avoid unnecessary directory changes in Makefile rules.
Gary V. Vaughan [Thu, 23 Sep 2010 11:02:12 +0000 (18:02 +0700)] 
build: avoid unnecessary directory changes in Makefile rules.

* Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
(libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
(libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
unnecessary `cd' commands by using fully qualified paths to files
outside of current directory.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: compare `revision' rather than `correctver' in Makefile.am.
Gary V. Vaughan [Thu, 23 Sep 2010 10:37:00 +0000 (17:37 +0700)] 
build: compare `revision' rather than `correctver' in Makefile.am.

* Makefile.am (rebuild): Set the shell variable `revision' rather
than `correctver' for clarity of purpose.
(bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
(libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
the serial number comment line with set, extract `macro_version'
from this file, and compare it directly with `revision'.
(libtool): Likewise for `package_revision'.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agobuild: avoid spurious bootstrap_edit call.
Gary V. Vaughan [Thu, 20 Oct 2011 16:40:13 +0000 (23:40 +0700)] 
build: avoid spurious bootstrap_edit call.

* Makefile.am (tests/package.m4): @FOO@ substitutions have already
been made by the time Makefile.am has been transformed into Makefile,
so don't try to rerun the substitutions manually with
$(bootstrap_edit) after the fact.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoPost-release administrivia.
Gary V. Vaughan [Tue, 18 Oct 2011 08:30:13 +0000 (15:30 +0700)] 
Post-release administrivia.

* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers.
* NEWS: Add header line for next release.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoRelease 2.4.2. v2.4.2
Gary V. Vaughan [Tue, 18 Oct 2011 06:20:53 +0000 (13:20 +0700)] 
Release 2.4.2.

* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers.
* NEWS: Update version number.

13 years agoReplace leading spaces with tabs.
Gary V. Vaughan [Mon, 17 Oct 2011 09:43:18 +0000 (16:43 +0700)] 
Replace leading spaces with tabs.

* libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
spaces in soure code with tabs to match surrounding code.

Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
13 years agoMake a note to use gnu/linux for version_type.
Gary V. Vaughan [Mon, 17 Oct 2011 05:40:55 +0000 (12:40 +0700)] 
Make a note to use gnu/linux for version_type.

* libltdl/m4/libtool.m4 (version_type): Add a comment to change
version_type setting from 'linux' to 'gnu/linux' during the next
destabilising code refactoring.
* libltdl/config/ltmain.m4sh: ditto.

Requested by Richard Stallman.

13 years agoTypo fix - change func_apped into func_append
Bart Van Assche [Tue, 4 Oct 2011 21:02:35 +0000 (16:02 -0500)] 
Typo fix - change func_apped into func_append

* libltdl/config/ltmain.m4sh: Fix typo.

13 years ago Avoid problems when FreeBSD goes to version 10.
Xin LI [Sun, 2 Oct 2011 15:02:18 +0000 (10:02 -0500)] 
Avoid problems when FreeBSD goes to version 10.

* libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
for FreeBSD 2 and 3 detection to avoid future problems
* libltdl/m4/ltmain.m4sh: ditto.

13 years agoAvoid mentioning "Linux", use "GNU/Linux", if appropriate.
Cristophe Jarry [Sun, 25 Sep 2011 22:39:04 +0000 (17:39 -0500)] 
Avoid mentioning "Linux", use "GNU/Linux", if appropriate.

* TODO: Don't use bare "Linux".
* doc/libtool.texi: ditto.
* doc/notes.texi: ditto.
* libltdl/README: ditto.
* libltdl/m4/libtool.m4: ditto.

13 years agoAdd flag to inhibit warnings.
Peter O'Gorman [Thu, 1 Sep 2011 23:45:03 +0000 (18:45 -0500)] 
Add flag to inhibit warnings.

* libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
Reported by John Davd Anglin.