[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Libtool branch, master, updated. v2.4.2-38-gaf4537c
From: |
Gary V. Vaughan |
Subject: |
[SCM] GNU Libtool branch, master, updated. v2.4.2-38-gaf4537c |
Date: |
Mon, 31 Oct 2011 12:52:16 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Libtool".
The branch, master has been updated
via af4537cd8a1308a1c783519fccd71e08392ea66c (commit)
via c9f43dcc39c858cc5cd14b0e423fe376fa0e01f2 (commit)
via 54d7385ca66e8f936679063cf41dced89c1fb5b2 (commit)
via f1fd9a12cb4475e81f4ee8310a0108d9fc92934d (commit)
from bba5b84fcd05fe4872b0228104b7be9b7de8daba (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit af4537cd8a1308a1c783519fccd71e08392ea66c
Author: Gary V. Vaughan <address@hidden>
Date: Thu Oct 27 12:10:49 2011 +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 <address@hidden>
commit c9f43dcc39c858cc5cd14b0e423fe376fa0e01f2
Author: Gary V. Vaughan <address@hidden>
Date: Wed Oct 26 12:58:35 2011 +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 <address@hidden>
commit 54d7385ca66e8f936679063cf41dced89c1fb5b2
Author: Gary V. Vaughan <address@hidden>
Date: Mon Oct 31 16:52:16 2011 +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 <address@hidden>
commit f1fd9a12cb4475e81f4ee8310a0108d9fc92934d
Author: Gary V. Vaughan <address@hidden>
Date: Mon Oct 31 18:29:35 2011 +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.
-----------------------------------------------------------------------
Summary of changes:
NEWS | 7 ++
bootstrap | 169 ++++++++++++++++++++-----------------------------
bootstrap.conf | 14 +++--
libtoolize.m4sh | 5 +-
tests/cmdline_wrap.at | 2 +-
tests/stresstest.at | 2 +-
6 files changed, 91 insertions(+), 108 deletions(-)
diff --git a/NEWS b/NEWS
index a960e43..3672ff8 100644
--- a/NEWS
+++ b/NEWS
@@ -5,11 +5,18 @@ NEWS - list of user-visible changes between releases of GNU
Libtool
** New features:
- Moved to gnulib release infrastructure.
+ - The Autotest testsuite can be run without the especially time consuming
+ tests with:
+
+ make check-local TESTSUITEFLAGS='-k "!expensive"'
** Bug fixes:
- Fix a long-standing latent bug in autom4te include path for autotests
with VPATH builds.
+ - Fix a long-standing latent bug in libtoolize which could delete lines
+ from libltdl/Makefile.am in recursive mode due to underquoting in a
+ sed script.
New in 2.4.2 2011-10-17: git version 2.4.1a, Libtool team:
diff --git a/bootstrap b/bootstrap
index 336c8a9..ecfa39b 100755
--- a/bootstrap
+++ b/bootstrap
@@ -942,12 +942,26 @@ func_gnulib_tool_copy_file ()
gnulib_copy_cmd="$gnulib_tool --copy-file"
$opt_copy || func_append gnulib_copy_cmd " --symlink"
- test -f "$gnulib_path/$1" || {
- func_error "error: \`$gnulib_path/$file' does not exist"
- return 1
- }
+ if test true = "$gnulib_tool"; then
+ # If gnulib-tool is not available (e.g. bootstrapping in a
+ # distribution tarball), make sure that at least we have some
+ # version of the required file already in place.
+ test -f "$2" || func_fatal_error "\
+error: Can't find, copy or download \`$2', a required
+ gnulib supplied file, please provide the location of a
+ complete \`gnulib' tree by setting \`gnulib_path' in your
+ \`bootstrap.conf' or with the \`--gnulib-srcdir' option -
+ or else specify the location of your \`git' binary by
+ setting \`GIT' in the environment so that a fresh
+ \`gnulib' submodule can be cloned."
+ else
+ test -f "$gnulib_path/$1" || {
+ func_error "error: \`$gnulib_path/$1' does not exist"
+ return 1
+ }
- $gnulib_copy_cmd $1 $2
+ $gnulib_copy_cmd $1 $2
+ fi
}
@@ -959,34 +973,25 @@ func_install_gnulib_non_module_files ()
$debug_cmd
$require_build_aux
- $require_gnulib_path
+ $require_gnulib_tool
test -n "$gnulib_non_module_files" && {
- if test -n "$gnulib_path"; then
- maybe_exit_cmd=:
-
- for file in $gnulib_non_module_files; do
- case $file in
- */COPYING*) dest=COPYING;;
- */INSTALL) dest=INSTALL;;
- build-aux/*) dest=$build_aux/`expr "$file" : 'build-aux/\(.*\)'`;;
- *) dest=$file;;
- esac
-
- # Be sure to show all copying errors before bailing out
- func_gnulib_tool_copy_file "$file" "$dest" \
- || maybe_exit_cmd="exit $EXIT_FAILURE"
- done
-
- $maybe_exit_cmd
- else
- func_warning recommend "\
-Unable to link \`\$gnulib_non_module_files', please provide the
-location of a complete \`gnulib' tree by setting \`gnulib_path' in
-your \`bootstrap.conf' or with the \`--gnulib-srcdir' option - or
-else specify the location of your \`git' binary by setting \`GIT'
-in the environment so that a fresh \`gnulib' submodule can be cloned."
- fi
+ maybe_exit_cmd=:
+
+ for file in $gnulib_non_module_files; do
+ case $file in
+ */COPYING*) dest=COPYING;;
+ */INSTALL) dest=INSTALL;;
+ build-aux/*) dest=$build_aux/`expr "$file" : 'build-aux/\(.*\)'`;;
+ *) dest=$file;;
+ esac
+
+ # Be sure to show all copying errors before bailing out
+ func_gnulib_tool_copy_file "$file" "$dest" \
+ || maybe_exit_cmd="exit $EXIT_FAILURE"
+ done
+
+ $maybe_exit_cmd
}
}
@@ -1197,9 +1202,12 @@ func_require_checkout_only_file ()
{
$debug_cmd
- test -n "$checkout_only_file" && test ! -f "$checkout_only_file" \
- && func_fatal_error "\
-error: Bootstrapping from a non-checked-out distribution is risky."
+ $opt_force || {
+ test -n "$checkout_only_file" && test ! -f "$checkout_only_file" \
+ && func_fatal_error "\
+error: Bootstrapping from a non-checked-out distribution is risky.
+ If you wish to bootstrap anyway, use the \`--force' option."
+ }
require_checkout_only_file=:
}
@@ -1240,7 +1248,11 @@ func_require_autobuild_buildreq ()
{
$debug_cmd
- printf '%s\n' "$buildreq" |func_grep_q '^[ ]*autobuild' || {
+ $require_macro_dir
+
+ test -f "$macro_dir/autobuild.m4" \
+ || printf '%s\n' "$buildreq" |func_grep_q '^[ ]*autobuild' \
+ || {
$require_configure_ac
func_extract_trace AB_INIT
@@ -1634,46 +1646,6 @@ func_require_gnulib_cache ()
}
-# require_gnulib_files_already_present
-# ------------------------------------
-# If we have no means to update imported gnulib files, then try to
-# ensure at least that this tree already has files from a previous
-# `gnulib-tool' run.
-require_gnulib_files_already_present=func_require_gnulib_files_already_present
-func_require_gnulib_files_already_present ()
-{
- $debug_cmd
-
- $require_build_aux
- $require_macro_dir
- $require_gnulib_mk
- $require_source_base
-
- # As a heuristic, only bail out if any of the following
- # are missing.
- my_gnulib_files_already_present="
- $build_aux/install-sh
- $macro_dir/00gnulib.m4
- $source_base/${gnulib_mk:-Makefile.am}
- "
-
- $opt_dry_run || {
- for my_file in $my_gnulib_files_already_present; do
- test -f "$my_file" || func_fatal_error "\
-error: Can't find, copy or download required gnulib files,
- please provide the location of a complete \`gnulib' tree
- by setting \`gnulib_path' in your \`bootstrap.conf' or
- with the \`--gnulib-srcdir' option - or else specify the
- location of your \`git' binary by setting \`GIT' in the
- environment so that a fresh \`gnulib' submodule can be
- cloned."
- done
- }
-
- require_gnulib_files_already_present=:
-}
-
-
# require_gnulib_merge_changelog
# ------------------------------
# See if we can use gnulib's git-merge-changelog merge driver.
@@ -1712,7 +1684,7 @@ func_require_gnulib_mk ()
{
$debug_cmd
- test -n "$gnulib_mk" || {
+ test -f "$gnulib_cache" && test -z "$gnulib_mk" && {
$require_gnulib_cache
$require_macro_dir
@@ -1738,33 +1710,36 @@ func_require_dotgitmodules_parameters ()
$require_git
- if test true = "$GIT"; then
+ test true = "$GIT" && {
# If we can't find git (or if the user specified `--skip-git'),
# then use an existing gnulib directory specified with
# `--gnulib-srcdir' if possible.
test -n "$gnulib_path" \
|| test ! -x "$opt_gnulib_srcdir/gnulib-tool" \
|| gnulib_path="$opt_gnulib_srcdir"
- fi
+ }
+
$require_dotgitmodules
- # Extract the parameters with sed, since git may be missing
- test -n "$gnulib_path" \
- || gnulib_path=`$SED -e '/^.submodule "gnulib".$/,${
- /[ ]*path *= */{
- s,[ ]*,,g;s,^[^=]*=,,;p
- }
- };d' .gitmodules |$SED 1q`
- test -n "$gnulib_url" \
- || gnulib_url=`$SED -e '/^.submodule "gnulib".$/,${
- /[ ]*url *= */{
- s,[ ]*,,g;s,^[^=]*=,,;p
- }
- };d' .gitmodules |$SED 1q`
-
- func_verbose "gnulib_path='$gnulib_path'"
- func_verbose "gnulib_url='$gnulib_url'"
+ test -f .gitmodules && {
+ # Extract the parameters with sed, since git may be missing
+ test -n "$gnulib_path" \
+ || gnulib_path=`$SED -e '/^.submodule "gnulib".$/,${
+ /[ ]*path *= */{
+ s,[ ]*,,g;s,^[^=]*=,,;p
+ }
+ };d' .gitmodules |$SED 1q`
+ test -n "$gnulib_url" \
+ || gnulib_url=`$SED -e '/^.submodule "gnulib".$/,${
+ /[ ]*url *= */{
+ s,[ ]*,,g;s,^[^=]*=,,;p
+ }
+ };d' .gitmodules |$SED 1q`
+
+ func_verbose "gnulib_path='$gnulib_path'"
+ func_verbose "gnulib_url='$gnulib_url'"
+ }
require_gnulib_path=:
require_gnulib_url=:
@@ -1842,8 +1817,6 @@ func_require_gnulib_tool ()
|| gnulib_tool="$gnulib_path/gnulib-tool"
test -x "$gnulib_tool" || {
- $require_gnulib_files_already_present
-
gnulib_tool=true
func_warning recommend \
"No \`gnulib-tool' found; gnulib modules may be missing."
@@ -2092,9 +2065,7 @@ func_require_source_base ()
func_verbose "source_base='$source_base'"
}
- # Only prevent repeated calls if we found something...
- # gnulib-cache.m4 might arrive before the next call.
- test -n "$source_base" && require_source_base=:
+ require_source_base=:
}
diff --git a/bootstrap.conf b/bootstrap.conf
index 3d36983..116023c 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -37,6 +37,10 @@ export MAKE
## Configuration. ##
## -------------- ##
+# File that should exist in the top directory of a checked out hierarchy,
+# but not in a distribution tarball.
+checkout_only_file=HACKING
+
# List of programs (and minimum versions) required to bootstrap, maintain
# and release Libtool.
buildreq="
@@ -420,8 +424,11 @@ libtool_cleanup_empty_dirs ()
{
$debug_cmd
- rm lib/.gitignore lib/Makefile.am || exit 1
- rmdir lib || exit 1
+ my_gnulib_source="${source_base-lib}"
+ if test -d "$my_gnulib_source"; then
+ rm -f "$my_gnulib_source/.gitignore" "$my_gnulib_source/Makefile.am" ||
exit 1
+ rmdir "$my_gnulib_source" || exit 1
+ fi
}
func_add_hook func_fini libtool_cleanup_empty_dirs
@@ -431,9 +438,6 @@ func_add_hook func_fini libtool_cleanup_empty_dirs
## Resource management. ##
## -------------------- ##
-# Although autobuild is awesome, libtool will bootstrap without it.
-require_autobuild_buildreq=:
-
# require_package_url
# -------------------
# Ensure that package_url has a sensible default.
diff --git a/libtoolize.m4sh b/libtoolize.m4sh
index 1626c17..4489b57 100644
--- a/libtoolize.m4sh
+++ b/libtoolize.m4sh
@@ -320,7 +320,7 @@ func_fixup_Makefile ()
my_filename="$1"
my_srcdir="$2"
my_destdir="$3"
- my_fixup_non_subpackage_script="\
+ my_fixup_non_subpackage_script='/^[^#]/{
s,(LIBOBJS),(ltdl_LIBOBJS),g
s,(LTLIBOBJS),(ltdl_LTLIBOBJS),g
s,libltdl/configure.ac,,
@@ -329,7 +329,8 @@ func_fixup_Makefile ()
s,libltdl/config-h.in,,
s,libltdl/Makefile.am,,
s,libltdl/Makefile.in,,
- /^[ ]*\\\\\$/d"
+ /^[ ]*\\\\$/d
+ }'
case $my_filename in
Makefile.am)
my_fixup_non_subpackage_script=`echo "$my_fixup_non_subpackage_script"
| \
diff --git a/tests/cmdline_wrap.at b/tests/cmdline_wrap.at
index 13edabc..c7f5671 100644
--- a/tests/cmdline_wrap.at
+++ b/tests/cmdline_wrap.at
@@ -26,7 +26,7 @@
# We simulate this by setting max_cmd_len very low.
AT_SETUP([Run tests with low max_cmd_len])
-AT_KEYWORDS([recursive])
+AT_KEYWORDS([recursive expensive])
m4_ifdef([AT_CAPTURE_FILE],
[AT_CAPTURE_FILE([testsuite.log])])
diff --git a/tests/stresstest.at b/tests/stresstest.at
index e71d492..9568d49 100644
--- a/tests/stresstest.at
+++ b/tests/stresstest.at
@@ -29,7 +29,7 @@
AT_BANNER([Libtool stress test.])
AT_SETUP([Link option thorough search test])
-AT_KEYWORDS([libtool])
+AT_KEYWORDS([libtool expensive])
eval `$LIBTOOL --config | $EGREP '^(CC|objdir|allow_undefined_flag)='`
mkdir sub sub2 sub3 2>/dev/null
hooks/post-receive
--
GNU Libtool
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Libtool branch, master, updated. v2.4.2-38-gaf4537c,
Gary V. Vaughan <=