[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, ng/master, updated. v1.13.1
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, ng/master, updated. v1.13.1b-949-g00395d4 |
Date: |
Tue, 30 Apr 2013 17:42:10 +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 Automake".
http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=00395d44058a4c9cf0f8a6f3c481537a02b46bdd
The branch, ng/master has been updated
via 00395d44058a4c9cf0f8a6f3c481537a02b46bdd (commit)
via 502a7e005705c1a1e1ea8762085cb3b90a21da5b (commit)
via 32109153c928454a97ec5cbffe3f6c7820721a9c (commit)
via d4e48d558c4e7a4488b0a773a60df2665356972a (commit)
via e402b325d6d5a58c67a794f9406008ae620a8c1e (commit)
via dc4eaab21b45b6b1fe4348db603380dd9681d5c3 (commit)
via 96b1303de222614b325b6744e61addf15d4f80cf (commit)
via 2a40fa7174961a0eb0ca08280ab638ed1998ead4 (commit)
via f6338e8c4c818235aa333d8670023dd4d61ee04a (commit)
via ba7b59bf48ff262be97445ee4f4f94e85de4cb60 (commit)
via edfd3bc4c1057be0b5553b5789a44f1b77bb2b45 (commit)
via f0d1288f3a2033577ee4e374d203bcb5d8477a9d (commit)
via 3fd147d8cf435e337bc9c6270da23633993967cf (commit)
via 526df875677f9e67b86c89ad1c611a77cb924662 (commit)
via 13ca4c137dd5b33778861b82dfd1738fd601fb4f (commit)
via ad5816114582e329cfaf6df84ebfd6ddba190e34 (commit)
via fa55c5d8b1f37114c7c908957e9165b5accdd655 (commit)
via d23c55c2ef93c4678c5ded559663aa70699ff1d6 (commit)
via cfe0abc7fcedfac86c8928a7dce41aeb41f461a9 (commit)
via df375ef1c7f57bea5140b446ddd8ffb255913480 (commit)
via 334a2e0b46c3d17ffb24f415cbec2e13e48b6c94 (commit)
via 3de27839c88bda6c755f00c7142620080b725be0 (commit)
via 2d47361d9b5a8f313408c940ed23a24592db88f7 (commit)
via 40f949c71a05c411989746e74e661323b62ce083 (commit)
from dc33f64b11e20420b6447561b41998bbfc3b6ab1 (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 00395d44058a4c9cf0f8a6f3c481537a02b46bdd
Author: Stefano Lattarini <address@hidden>
Date: Tue Apr 30 19:41:42 2013 +0200
maintcheck: address a couple of spurious failures
Signed-off-by: Stefano Lattarini <address@hidden>
commit 502a7e005705c1a1e1ea8762085cb3b90a21da5b
Author: Stefano Lattarini <address@hidden>
Date: Tue Apr 30 19:30:45 2013 +0200
tests: adjust for warnings that have been moved to GNU make runtime
Some of those warnings are given at automake runtime in mainline
Automake, and some tests were relying on that behaviour, thus causing
spurious testsuite failures.
* t/proc-errmsg.sh: Adjust accordingly.
Signed-off-by: Stefano Lattarini <address@hidden>
commit 32109153c928454a97ec5cbffe3f6c7820721a9c
Author: Stefano Lattarini <address@hidden>
Date: Tue Apr 30 18:27:00 2013 +0200
compat: restore support for $(INCLUDES) variable
With the aim of avoiding the introduction of too much unneeded
differences and incompatibilities between Automake-NG and
mainline Automake.
See also commit v1.13.1b-166-g57c7200 (2013-04-19, compat: reinstate
support for obsolete $(INCLUDES) variable) in mainline Automake.
* automake.in (generate_makefile): The definition of the INCLUDES
variable now causes a warning in the 'obsolete' category rather than
a fatal error.
Suggested-by: Peter Rosin <address@hidden>
Signed-off-by: Stefano Lattarini <address@hidden>
commit d4e48d558c4e7a4488b0a773a60df2665356972a
Author: Stefano Lattarini <address@hidden>
Date: Tue Apr 30 18:19:36 2013 +0200
automake: fix some older mis-merge fallout
Signed-off-by: Stefano Lattarini <address@hidden>
commit e402b325d6d5a58c67a794f9406008ae620a8c1e
Merge: dc33f64 dc4eaab
Author: Stefano Lattarini <address@hidden>
Date: Tue Apr 30 17:36:41 2013 +0200
Merge branch 'master' into ng/master
* master:
sync: update files from upstream with "make fetch"
maintcheck: remove outdated whitelisting
tar: format 'ustar' cannot support UID/GID longer than 21 bits
docs: issues with configure substitutions in TESTS
tests: avoid possible autotools caching issues (automake bug#13832)
tests: rename some with more descriptive names
docs: add myself and Ralf Wildenhues as authors
authors: add myself
dry-run: don't get confused by '-I' option
tests: avoid a spurious failure with the Korn Shell
dry-run: with GNU make, prefer $(MFLAGS) over $(MAKEFLAGS)
header vars: can determine whether we are running under GNU make
NEWS: improve wording for automake bug#13514 fix
NEWS: document fix for automake bug#13514
+ Extra non-trivial changes:
* lib/am/header-vars.am: Ignore all upstream changes, we shouldn't
need them.
* t/make-is-gnu.sh: Remove; our generated makefiles have no need to
test whether they are running under GNU make --- of course they are!
Signed-off-by: Stefano Lattarini <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
AUTHORS | 22 -----
NEWS | 29 +++++--
THANKS | 3 +
automake.in | 7 +-
doc/automake-ng.texi | 10 ++-
lib/config.guess | 14 +++-
lib/config.sub | 6 +-
m4/tar.m4 | 160 +++++++++++++++++++++++--------------
t/ar-lib4.sh | 2 +
t/lisp-flags.sh | 2 +-
t/preproc-errmsg.sh | 12 +--
t/{tar3.sh => tar-opts-errors.sh} | 10 +-
t/tar-override.sh | 17 +++--
t/{tar2.sh => tar-pax.sh} | 11 ++-
t/tar-ustar-id-too-high.sh | 88 ++++++++++++++++++++
t/{tar.sh => tar-ustar.sh} | 11 ++-
16 files changed, 276 insertions(+), 128 deletions(-)
rename t/{tar3.sh => tar-opts-errors.sh} (87%)
rename t/{tar2.sh => tar-pax.sh} (85%)
create mode 100755 t/tar-ustar-id-too-high.sh
rename t/{tar.sh => tar-ustar.sh} (85%)
diff --git a/AUTHORS b/AUTHORS
index 7b11c8f..fbe1651 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,24 +1,2 @@
-Authors of GNU Automake-NG.
-
-David Mackenzie
- First version of most ".am" files.
- Wrote sh version of automake.in.
-
-Tom Tromey
- Touched all ".am" files.
- Rewrote automake.in
-
-Alexandre Oliva
- Some of the user-side dependency tracking system.
- Some more random hacking.
-
-Alexandre Duret-Lutz
- Major overhaul of everything.
- Maintenance since 2002.
-
-Ralf Wildenhues
- Random breakage.
- Maintenance since 2006.
-
Stefano Lattarini
Started the Automake-NG fork.
diff --git a/NEWS b/NEWS
index fb70eee..1bbb0fb 100644
--- a/NEWS
+++ b/NEWS
@@ -246,6 +246,12 @@ New in 1.13.2:
* Bugs fixed:
+ - When the 'ustar' option is used, the generated configure script no
+ longer risks hanging during the tests for the availability of the
+ 'pax' utility, even if the user running configure has a UID or GID
+ that requires more than 21 bits to be represented.
+ See automake bug#8343 and bug#13588.
+
- The obsolete macros AM_CONFIG_HEADER or AM_PROG_CC_STDC work once
again, as they did in Automake 1.12.x (albeit printing runtime
warnings in the 'obsolete' category). Removing them has turned
@@ -254,12 +260,23 @@ New in 1.13.2:
Automake 1.13, has turned out to be a similarly very bad idea,
for exactly the same reason.
- - Aclocal no longer error out if the first local m4 directory (as
- specified by the '-I' option or the 'AC_CONFIG_MACRO_DIRS' or
- 'AC_CONFIG_MACRO_DIR' macros) doesn't exist; it merely report a
- warning in the 'unsupported' category. This is done to support
- some pre-existing real-world usages; refer to automake bug#13514
- for more details.
+ - aclocal will no longer error out if the first local m4 directory
+ (as specified by the '-I' option or the 'AC_CONFIG_MACRO_DIRS' or
+ 'AC_CONFIG_MACRO_DIR' macros) doesn't exist; it will merely report
+ a warning in the 'unsupported' category. This is done to support
+ some pre-existing real-world usages. See automake bug#13514.
+
+ - aclocal will no longer consider directories for extra m4 files more
+ than once, even if they are specified multiple times. This ensures
+ packages that specify both
+
+ AC_CONFIG_MACRO_DIR([m4]) in configure.ac
+ ACLOCAL_AMFLAGS = -I m4 in Makefile.am
+
+ will work correctly, even when the 'm4' directory contains no
+ package-specific files, but is used only to install third-party
+ m4 files (as can happen with e.g., "libtoolize --install").
+ See automake bug#13514.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/THANKS b/THANKS
index cf46972..6f82e93 100644
--- a/THANKS
+++ b/THANKS
@@ -226,6 +226,7 @@ Luo Yi address@hidden
Maciej Stachowiak address@hidden
Maciej W. Rozycki address@hidden
Manu Rouat address@hidden
+Marc Herbert address@hidden
Marcus Brinkmann address@hidden
Marcus G. Daniels address@hidden
Marius Vollmer address@hidden
@@ -314,6 +315,7 @@ Peter Muir address@hidden
Peter O'Gorman address@hidden
Peter Rosin address@hidden
Peter Seiderer address@hidden
+Petr Hracek address@hidden
Petter Reinholdtsen address@hidden
Petteri Räty address@hidden
Phil Edwards address@hidden
@@ -394,6 +396,7 @@ Tim Rice address@hidden
Tim Van Holder address@hidden
Toshio Kuratomi address@hidden
Tom Epperly address@hidden
+Tom Rini address@hidden
Ulrich Drepper address@hidden
Ulrich Eckhardt address@hidden
Václav Haisman address@hidden
diff --git a/automake.in b/automake.in
index b01803f..f3fc068 100644
--- a/automake.in
+++ b/automake.in
@@ -576,7 +576,7 @@ register_language ('name' => 'c',
'flags' => ['CFLAGS', 'CPPFLAGS'],
'ccer' => 'CC',
'compiler' => 'COMPILE',
- 'compile' => '$(CC) $(DEFS) $(AM_DEFAULT_INCLUDES)
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)',
+ 'compile' => "\$(CC) @cpplike_flags \$(AM_CFLAGS)
\$(CFLAGS)",
'lder' => 'CCLD',
'ld' => '$(CC)',
'linker' => 'LINK',
@@ -6198,7 +6198,6 @@ sub locate_aux_dir ()
# push_required_file ($DIR, $FILE, $FULLFILE)
# -------------------------------------------
-# Push the given file onto DIST_COMMON.
sub push_required_file
{
my ($dir, $file, $fullfile) = @_;
@@ -6538,8 +6537,8 @@ sub generate_makefile
}
if (my $ovar = var ('INCLUDES'))
{
- reject_var $ovar,
- "'INCLUDES' is obsolete; you should use 'AM_CPPFLAGS'"
+ msg_var 'obsolete', $ovar,
+ "'INCLUDES' is deprecated; you should use 'AM_CPPFLAGS'"
. " (or '*_CPPFLAGS') instead"
}
diff --git a/doc/automake-ng.texi b/doc/automake-ng.texi
index d20b7ae..308958e 100644
--- a/doc/automake-ng.texi
+++ b/doc/automake-ng.texi
@@ -4055,8 +4055,8 @@ removed, in future Automake versions.
@vindex mkdir_p
From Automake 1.8 to 1.9.6 this macro used to define the output
-variable @code{mkdir_p} to one of @code{mkdir -p}, @code{install-sh
--d}, or @code{mkinstalldirs}.
+variable @code{mkdir_p} to one of @code{mkdir -p} or
address@hidden -d}.
Nowadays Autoconf provides a similar functionality with
@code{AC_PROG_MKDIR_P} (@pxref{Particular Programs, , Particular
@@ -9046,6 +9046,12 @@ you're advised to limit to the use of alphanumeric
characters, plus
eventually the underscore @samp{_}, the dot @samp{.}, the dash
@samp{-} characters.
address@hidden Configure substitutions in @code{TESTS}
+It is important to note that, due to current limitations (unlikely to be
+lifted), configure substitutions in the definition of @code{TESTS} can
+only work if they will expand to a list of tests that have a suffix listed
+in @code{TEST_EXTENSIONS}.
+
@vindex _LOG_COMPILE
@vindex _LOG_COMPILER
@vindex _LOG_FLAGS
diff --git a/lib/config.guess b/lib/config.guess
index f475ceb..2055429 100755
--- a/lib/config.guess
+++ b/lib/config.guess
@@ -2,7 +2,7 @@
# Attempt to guess a canonical system name.
# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2013-02-12'
+timestamp='2013-04-24'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -883,6 +883,9 @@ EOF
if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit ;;
+ arc:Linux:*:* | arceb:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ exit ;;
arm*:Linux:*:*)
eval $set_cc_for_build
if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
@@ -921,6 +924,11 @@ EOF
#ifdef __dietlibc__
LIBC=dietlibc
#endif
+ #else
+ #include <features.h>
+ #ifdef __UCLIBC__
+ LIBC=uclibc
+ #endif
EOF
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
@@ -998,7 +1006,9 @@ EOF
echo ${UNAME_MACHINE}-dec-linux-gnu
exit ;;
x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ LIBC=gnu
+ test -r /lib/libc.so && od -An -S13 /lib/libc.so | grep -q
__uClibc_main && LIBC=uclibc
+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
exit ;;
xtensa*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
diff --git a/lib/config.sub b/lib/config.sub
index 872199a..8b612ab 100755
--- a/lib/config.sub
+++ b/lib/config.sub
@@ -2,7 +2,7 @@
# Configuration validation subroutine script.
# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2013-02-12'
+timestamp='2013-04-24'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -252,7 +252,7 @@ case $basic_machine in
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] |
alpha64pca5[67] \
| am33_2.0 \
- | arc \
+ | arc | arceb \
| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
| avr | avr32 \
| be32 | be64 \
@@ -366,7 +366,7 @@ case $basic_machine in
| aarch64-* | aarch64_be-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
| avr-* | avr32-* \
| be32-* | be64-* \
diff --git a/m4/tar.m4 b/m4/tar.m4
index ec8c83e..aac6d8f 100644
--- a/m4/tar.m4
+++ b/m4/tar.m4
@@ -19,76 +19,114 @@
# Substitute a variable $(am__untar) that extract such
# a tarball read from stdin.
# $(am__untar) < result.tar
+#
AC_DEFUN([_AM_PROG_TAR],
[# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
- [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
+
+# We'll loop over all known methods to create a tar archive until one works.
_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf -
"'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf -
"'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
+m4_if([$1], [v7],
+ [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ [m4_case([$1],
+ [ustar],
+ [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+ # There is notably a 21 bits limit for the UID and the GID. In fact,
+ # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+ # and bug#13588).
+ am_max_uid=2097151 # 2^21 - 1
+ am_max_gid=$am_max_uid
+ # The $UID and $GID variables are not portable, so we need to resort
+ # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
+ # below are definitely unexpected, so allow the users to see them
+ # (that is, avoid stderr redirection).
+ am_uid=`id -u || echo unknown`
+ am_gid=`id -g || echo unknown`
+ AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+ if test $am_uid -le $am_max_uid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi
+ AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+ if test $am_gid -le $am_max_gid; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ _am_tools=none
+ fi],
+
+ [pax],
+ [],
+
+ [m4_fatal([Unknown tar format])])
+
+ AC_MSG_CHECKING([how to create a $1 tar archive])
+
+ # Go ahead even if we have the value already cached. We do so because we
+ # need to set the values for the 'am__tar' and 'am__untar' variables.
+ _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+ for _am_tool in $_am_tools; do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar; do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf -
"'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf -
"'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
+
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works.
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ AM_RUN_LOG([cat conftest.dir/file])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+ done
rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+ AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+ AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
AC_SUBST([am__tar])
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
diff --git a/t/ar-lib4.sh b/t/ar-lib4.sh
index 68615e8..4d3c40a 100755
--- a/t/ar-lib4.sh
+++ b/t/ar-lib4.sh
@@ -39,6 +39,8 @@ AUTOMAKE_fails
grep 'requires.*AM_PROG_AR' stderr
+rm -rf autom4te*.cache
+
cp X configure.ac
cat >> configure.ac << 'END'
diff --git a/t/lisp-flags.sh b/t/lisp-flags.sh
index f942461..adb0ba3 100755
--- a/t/lisp-flags.sh
+++ b/t/lisp-flags.sh
@@ -20,7 +20,7 @@
# Don't get fooled when running as an Emacs subprocess. This is
# for the benefit of the "make -e" invocation below.
-unset EMACS
+EMACS=; unset EMACS
cat > Makefile.am << 'EOF'
lisp_LISP = foo.el
diff --git a/t/preproc-errmsg.sh b/t/preproc-errmsg.sh
index 704562d..fd428c1 100755
--- a/t/preproc-errmsg.sh
+++ b/t/preproc-errmsg.sh
@@ -30,7 +30,7 @@ END
mkdir sub sub/sub2
cat > Makefile.am <<'END'
-%canon_reldir%_x1_SOURCES = bar.c
+%canon_reldir%_UNDEFINED_0 +=
include sub/local.mk
END
@@ -38,7 +38,7 @@ cat > sub/local.mk <<'END'
AUTOMAKE_OPTIONS = -Wno-extra-portability
include %D%/sub2/more.mk
noinst_LIBRARIES = %reldir%-one.a %D%-two.a
-%C%_x2_SOURCES = foo.c
+%C%_UNDEFINED_1 +=
END
cat > sub/sub2/more.mk <<'END'
@@ -49,20 +49,18 @@ $ACLOCAL
AUTOMAKE_fails
cat > expected << 'END'
+Makefile.am:1: UNDEFINED_0 must be set with '=' before using '+='
sub/sub2/more.mk:1: sub_sub2_UNDEFINED must be set with '=' before using '+='
Makefile.am:2: 'sub/local.mk' included from here
sub/local.mk:2: 'sub/sub2/more.mk' included from here
+sub/local.mk:4: sub_UNDEFINED_1 must be set with '=' before using '+='
+Makefile.am:2: 'sub/local.mk' included from here
sub/local.mk:3: 'sub-one.a' is not a standard library name
sub/local.mk:3: did you mean 'libsub-one.a'?
Makefile.am:2: 'sub/local.mk' included from here
sub/local.mk:3: 'sub-two.a' is not a standard library name
sub/local.mk:3: did you mean 'libsub-two.a'?
Makefile.am:2: 'sub/local.mk' included from here
-Makefile.am:1: variable 'x1_SOURCES' is defined but no program or
-Makefile.am:1: library has 'x1' as canonical name (possible typo)
-sub/local.mk:4: variable 'sub_x2_SOURCES' is defined but no program or
-sub/local.mk:4: library has 'sub_x2' as canonical name (possible typo)
-Makefile.am:2: 'sub/local.mk' included from here
END
# We need to break these substitutions into multiple sed invocations
diff --git a/t/tar3.sh b/t/tar-opts-errors.sh
similarity index 87%
rename from t/tar3.sh
rename to t/tar-opts-errors.sh
index 040d7b4..befc23f 100755
--- a/t/tar3.sh
+++ b/t/tar-opts-errors.sh
@@ -18,8 +18,8 @@
. test-init.sh
-cat > configure.ac << 'END'
-AC_INIT([tar2], [1.0])
+cat > configure.ac <<END
+AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE([tar-pax tar-v7])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
@@ -37,8 +37,8 @@ grep "'tar-v7'" tar-err
rm -rf autom4te.cache
-cat > configure.ac << 'END'
-AC_INIT([tar2], [1.0])
+cat > configure.ac <<END
+AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
@@ -47,6 +47,6 @@ END
echo 'AUTOMAKE_OPTIONS = tar-pax' > Makefile.am
AUTOMAKE_fails
-grep '^Makefile\.am:1:.*tar-pax.*AM_INIT_AUTOMAKE' stderr
+grep "^Makefile\.am:1:.*'tar-pax'.*AM_INIT_AUTOMAKE" stderr
:
diff --git a/t/tar-override.sh b/t/tar-override.sh
index 863b9ab..bbf3fbb 100755
--- a/t/tar-override.sh
+++ b/t/tar-override.sh
@@ -16,8 +16,8 @@
# Check that the user can override the tar program used by "make dist"
# at runtime, by redefining the 'TAR' environment variable.
-# FIXME: currently this works only when the tar format used is 'v7'
-# FIXME: (which is the default one).
+# NOTE: currently this works only when the tar format used is 'v7'
+# (which is the default one).
. test-init.sh
@@ -35,6 +35,7 @@ chmod a+x am--tar
cat > Makefile.am <<'END'
check-local: dist
+ ls -l ;: For debugging.
test -f am--tar-has-run
CLEANFILES = am--tar-has-run
END
@@ -44,22 +45,24 @@ $AUTOCONF
$AUTOMAKE
./configure
+clean_temp () { rm -f *.tar.* *has-run*; }
+
$MAKE dist
-test -f $me-1.0.tar.gz
+test -f $distdir.tar.gz
ls | grep has-run && exit 1
-rm -f *.tar.* *has-run*
+clean_temp
TAR="$cwd/am--tar foo" $MAKE distcheck
-test -f $me-1.0.tar.gz
+test -f $distdir.tar.gz
test "$(cat am--tar-has-run)" = foo
-rm -f *.tar.* *has-run*
+clean_temp
TAR=; unset TAR
# Creative use of eval to pacify maintainer checks.
eval \$'MAKE dist "TAR=./am--tar mu"'
-test -f $me-1.0.tar.gz
+test -f $distdir.tar.gz
test "$(cat am--tar-has-run)" = mu
:
diff --git a/t/tar2.sh b/t/tar-pax.sh
similarity index 85%
rename from t/tar2.sh
rename to t/tar-pax.sh
index 5a9d4d7..758d89a 100755
--- a/t/tar2.sh
+++ b/t/tar-pax.sh
@@ -18,8 +18,8 @@
. test-init.sh
-cat > configure.ac << 'END'
-AC_INIT([tar2], [1.0])
+cat > configure.ac <<END
+AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE([tar-pax])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
@@ -32,9 +32,12 @@ $AUTOCONF
$AUTOMAKE
./configure
-if grep 'am__tar.*false' Makefile; then
+grep 'am__tar' Makefile # For debugging.
+if grep '^am__tar = false' Makefile; then
skip_ "cannot find proper archiver program"
fi
$MAKE distcheck
-test -f tar2-1.0.tar.gz
+test -f "$distdir.tar.gz"
+
+:
diff --git a/t/tar-ustar-id-too-high.sh b/t/tar-ustar-id-too-high.sh
new file mode 100755
index 0000000..79ae89d
--- /dev/null
+++ b/t/tar-ustar-id-too-high.sh
@@ -0,0 +1,88 @@
+#! /bin/sh
+# Copyright (C) 2013 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# Check that UID or GID too high for the ustar format are correctly
+# rwcognized and diagnosed by configure. See bug#8343 and bug#13588.
+
+. test-init.sh
+
+cat > configure.ac <<END
+AC_INIT([$me], [1.0])
+AM_INIT_AUTOMAKE([tar-ustar])
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
+END
+
+: > Makefile.am
+
+run_configure()
+{
+ st=0; ./configure ${1+"$@"} >stdout || st=$?
+ cat stdout || exit 1
+ test $st -eq 0 || exit 1
+}
+
+checked ()
+{
+ grep "^checking $1\.\.\. $2$" stdout
+}
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+mkdir bin
+cat > bin/id <<'END'
+#!/bin/sh -e
+case "$*" in
+ -u) echo "${am_uid-1000}";;
+ -g) echo "${am_gid-1000}";;
+ *) echo "id: bad/unexpected usage" >&2; exit 1;;
+esac
+END
+chmod a+x bin/id
+
+PATH=$(pwd)/bin$PATH_SEPARATOR$PATH
+
+# Problematic ID reported in
+# <https://bugzilla.redhat.com/show_bug.cgi?id=843376>.
+am_uid=16777216; export am_uid
+am_gid=1000; export am_gid
+run_configure
+checked "whether UID '$am_uid' is supported by ustar format" "no"
+checked "whether GID '1000' is supported by ustar format" "yes"
+checked "how to create a ustar tar archive" "none"
+
+# Another problematic ID reported in
+# <https://bugzilla.redhat.com/show_bug.cgi?id=843376>.
+am_uid=1000; export am_uid
+am_gid=17000000; export am_gid
+run_configure
+checked "whether UID '1000' is supported by ustar format" "yes"
+checked "whether GID '$am_gid' is supported by ustar format" "no"
+checked "how to create a ustar tar archive" "none"
+
+# The minimal ID that is too big.
+two_to_twentyone=$((32 * 32 * 32 * 32 * 2))
+# <https://bugzilla.redhat.com/show_bug.cgi?id=843376>.
+am_uid=$two_to_twentyone; export am_uid
+am_gid=$two_to_twentyone; export am_gid
+run_configure
+checked "whether UID '$two_to_twentyone' is supported by ustar format" "no"
+checked "whether GID '$two_to_twentyone' is supported by ustar format" "no"
+checked "how to create a ustar tar archive" "none"
+
+:
diff --git a/t/tar.sh b/t/tar-ustar.sh
similarity index 85%
rename from t/tar.sh
rename to t/tar-ustar.sh
index 58e52ea..c146ad9 100755
--- a/t/tar.sh
+++ b/t/tar-ustar.sh
@@ -18,8 +18,8 @@
. test-init.sh
-cat > configure.ac << 'END'
-AC_INIT([tar], [1.0])
+cat > configure.ac <<END
+AC_INIT([$me], [1.0])
AM_INIT_AUTOMAKE([tar-ustar])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
@@ -32,9 +32,12 @@ $AUTOCONF
$AUTOMAKE
./configure
-if grep 'am__tar.*false' Makefile; then
+grep 'am__tar' Makefile # For debugging.
+if grep '^am__tar = false' Makefile; then
skip_ "cannot find proper archiver program"
fi
$MAKE distcheck
-test -f tar-1.0.tar.gz
+test -f "$distdir.tar.gz"
+
+:
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, ng/master, updated. v1.13.1b-949-g00395d4,
Stefano Lattarini <=