[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.13-56-g
From: |
Stefano Lattarini |
Subject: |
[Automake-commit] [SCM] GNU Automake branch, master, updated. v1.13-56-ge4a5f2b |
Date: |
Tue, 01 Jan 2013 00:43:44 +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=e4a5f2bfc83ffee919c2c46311573f8cfa04c825
The branch, master has been updated
via e4a5f2bfc83ffee919c2c46311573f8cfa04c825 (commit)
via f87ce5b01869361bb9f1035ae9f45bbf5e76b8bc (commit)
via f2443786a7dec55f498c06b8b207751aa06368cf (commit)
via a1de656319377f01599d0002f0f4022bbd59b589 (commit)
via a2e9a71348a6ad79c9f856997b41daa36cca3f0b (commit)
via f3e8d1cd06707576cf702e11c758617bea1a067f (commit)
from 2d5ad971f6fed096afd26e19aabe223b5cf3c030 (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 e4a5f2bfc83ffee919c2c46311573f8cfa04c825
Merge: 2d5ad97 f87ce5b
Author: Stefano Lattarini <address@hidden>
Date: Tue Jan 1 01:33:12 2013 +0100
Merge branch 'maint'
* maint:
tests: don't always look for a C++ compiler named 'RCC'
tests: fix bug in pkg-config-macros.sh, could cause spurious SKIPs
docs: autom4te cache can break CONFIGURE_DEPENDENCIES
coverage: test CONFIGURE_DEPENDENCIES
coverage: test CONFIG_STATUS_DEPENDENCIES
-----------------------------------------------------------------------
Summary of changes:
THANKS | 1 +
configure.ac | 10 ++-
doc/automake.texi | 8 ++-
t/list-of-tests.mk | 2 +
t/pkg-config-macros.sh | 5 +-
...cro.sh => remake-config-status-dependencies.sh} | 66 ++++++++--------
t/remake-configure-dependencies.sh | 80 ++++++++++++++++++++
7 files changed, 131 insertions(+), 41 deletions(-)
copy t/{remake-renamed-m4-macro.sh => remake-config-status-dependencies.sh}
(51%)
create mode 100755 t/remake-configure-dependencies.sh
diff --git a/THANKS b/THANKS
index 1ff7c08..5fa307d 100644
--- a/THANKS
+++ b/THANKS
@@ -337,6 +337,7 @@ Robert Collins address@hidden
Robert Swafford address@hidden
Roberto Bagnara address@hidden
Roman Fietze address@hidden
+Ronald Copley address@hidden
Ronald Landheer address@hidden
Roumen Petrov address@hidden
Russ Allbery address@hidden
diff --git a/configure.ac b/configure.ac
index daca0e8..e8af0fc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -466,12 +466,14 @@ AS_IF([test x"$GCC" = x"yes"], [am_CC_is_GNU=yes],
[am_CC_is_GNU=no])
# On case-insensitive file systems (seen e.g. on Cygwin and Mac OS X)
# we must avoid looking for 'CC', because that would be the same as
# 'cc', and could cause $CXX to point to the C compiler, instead of
-# to a C++ compiler as expected. See automake bugs #11893 and #10766.
+# to a C++ compiler as expected (see automake bugs #11893 and #10766).
+# Similarly, we must avoid looking for 'RCC', as that can point to the
+# Qt4 "Resource Compiler": <http://doc.qt.digia.com/4.2/rcc.html>
if test -f /bIn/rMdIr || test -f /uSr/bIn/rMdIr; then
# Case-insensitive file system, don't look for CC.
- am_CC=
+ am_CC= am_RCC=
else
- am_CC=CC
+ am_CC=CC am_RCC=RCC
fi
# The list of C++ compilers here has been copied, pasted and edited
@@ -479,7 +481,7 @@ fi
# Keep it in sync, or better again, find out a way to avoid this code
# duplication.
_AM_COMPILER_CAN_FAIL([AC_PROG_CXX(dnl
- [aCC $am_CC FCC KCC RCC xlC_r xlC c++ cxx cc++ gpp g++])],
+ [aCC $am_CC FCC KCC $am_RCC xlC_r xlC c++ cxx cc++ gpp g++])],
[CXX=false; _AM_SKIP_COMP_TESTS([C++])])
AS_IF([test x"$GXX" = x"yes"], [am_CXX_is_GNU=yes], [am_CXX_is_GNU=no])
diff --git a/doc/automake.texi b/doc/automake.texi
index a3f1e81..4e5062b 100644
--- a/doc/automake.texi
+++ b/doc/automake.texi
@@ -9838,6 +9838,7 @@ from @file{configure.ac}. For instance, the following
statement will
cause @file{configure} to be rerun each time @file{version.sh} is
changed.
address@hidden Keep in sync with remake-config-status-dependencies.sh
@example
AC_SUBST([CONFIG_STATUS_DEPENDENCIES], ['$(top_srcdir)/version.sh'])
@end example
@@ -9850,12 +9851,17 @@ any level in the build hierarchy.
Beware not to mistake @code{CONFIGURE_DEPENDENCIES} for
@code{CONFIG_STATUS_DEPENDENCIES}.
address@hidden Keep in sync with remake-configure-dependencies.sh
@code{CONFIGURE_DEPENDENCIES} adds dependencies to the
@file{configure} rule, whose effect is to run @command{autoconf}. This
variable should be seldom used, because @command{automake} already tracks
@code{m4_include}d files. However it can be useful when playing
tricky games with @code{m4_esyscmd} or similar non-recommendable
-macros with side effects.
+macros with side effects. Be also aware that interactions of this
+variable with the @ref{Autom4te Cache, , autom4te cache, autoconf,
+The Autoconf Manual} are quite problematic and can cause subtle
+breakage, so you might want to disable the cache if you want to use
address@hidden
@code{CONFIG_STATUS_DEPENDENCIES} adds dependencies to the
@file{config.status} rule, whose effect is to run @file{configure}.
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index eef3de9..883640a 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -919,6 +919,8 @@ t/remake-after-aclocal-m4.sh \
t/remake-include-configure.sh \
t/remake-include-makefile.sh \
t/remake-include-aclocal.sh \
+t/remake-config-status-dependencies.sh \
+t/remake-configure-dependencies.sh \
t/remake-deeply-nested.sh \
t/remake-mild-stress.sh \
t/remake-all-1.sh \
diff --git a/t/pkg-config-macros.sh b/t/pkg-config-macros.sh
index ec8b381..5069c08 100755
--- a/t/pkg-config-macros.sh
+++ b/t/pkg-config-macros.sh
@@ -48,9 +48,10 @@ XT_ACLOCAL_PATH=/usr/local/share/aclocal:/usr/share/aclocal
# Find the location of the pkg-config executable.
oIFS=$IFS dir=
+IFS=:
for d in $PATH; do
IFS=$oIFS
- if test -f $dir/pkg-config || test -f $dir/pkg-config.exe; then
+ if test -f $d/pkg-config || test -f $d/pkg-config.exe; then
dir=$d
break
fi
@@ -61,7 +62,7 @@ IFS=$oIFS
# where the corresponding pkg.m4 might be installed.
if test -n "$dir"; then
# Only support standard installation layouts.
- XT_ACLOCAL_PATH=${dir%/bin}/share/alocal:$XT_ACLOCAL_PATH
+ XT_ACLOCAL_PATH=${dir%/bin}/share/aclocal:$XT_ACLOCAL_PATH
fi
XT_ACLOCAL_PATH=$XT_ACLOCAL_PATH${ACLOCAL_PATH+":$ACLOCAL_PATH"}
diff --git a/t/remake-renamed-m4-macro.sh
b/t/remake-config-status-dependencies.sh
similarity index 51%
copy from t/remake-renamed-m4-macro.sh
copy to t/remake-config-status-dependencies.sh
index d149a50..c625661 100755
--- a/t/remake-renamed-m4-macro.sh
+++ b/t/remake-config-status-dependencies.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2011-2013 Free Software Foundation, Inc.
+# 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
@@ -14,32 +14,28 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-# Test remake rules when the name of an m4 macro change. Try both with
-# and without indirection.
+# Test CONFIG_STATUS_DEPENDENCIES.
. test-init.sh
cat >> configure.ac <<'END'
-AC_CONFIG_MACRO_DIR([m4])
-MY_MACRO
+. ${srcdir}/version.sh
+AC_SUBST([EXTRA_VERSION])
+AC_SUBST([CONFIG_STATUS_DEPENDENCIES], ['$(top_srcdir)/version.sh'])
AC_OUTPUT
END
-cat > Makefile.am <<'END'
-.PHONY: test
-test:
- test '$(the_answer)' -eq 42
-END
-
-mkdir m4
-
-cat > m4/macros.m4 <<'END'
-AC_DEFUN([MY_MACRO], [FOO_1])
-END
+echo EXTRA_VERSION=1.0 > version.sh
-cat > m4/foo.m4 <<'END'
-AC_DEFUN([FOO_1], [the_answer=42
- AC_SUBST([the_answer])])
+cat > Makefile.am <<'END'
+.PHONY: test-1 test-2 test-3
+check-local: test-3
+test-1:
+ test $(EXTRA_VERSION) = 1.0
+test-2:
+ test $(EXTRA_VERSION) = 2.1
+test-3:
+ test $(EXTRA_VERSION) = 3.14
END
$ACLOCAL
@@ -47,26 +43,28 @@ $AUTOCONF
$AUTOMAKE
./configure
-$MAKE test
+$MAKE test-1
$sleep
-
-for x in macros foo; do
- sed -e 's/FOO_1/FOO_2/' m4/$x.m4 > t
- mv -f t m4/$x.m4
-done
-
+echo EXTRA_VERSION=2.1 > version.sh
using_gmake || $MAKE Makefile
-$MAKE test
+$MAKE test-2
+$MAKE distclean
+mkdir build
+cd build
+../configure
+$MAKE test-2
$sleep
-
-for f in m4/macros.m4 configure.ac; do
- sed -e 's/MY_MACRO/YOUR_MACRO/' $f > t
- mv -f t $f
-done
-
+echo EXTRA_VERSION=3.14 > ../version.sh
using_gmake || $MAKE Makefile
-$MAKE test
+$MAKE test-3
+
+# Contents of $(CONFIG_STATUS_DEPENDENCIES) are *not* to be
+# automatically distributed; there is no generic good reason
+# for that.
+$MAKE distdir
+test ! -e $distdir/version.sh
+test -f $distdir/configure || exit 99 # Sanity check.
:
diff --git a/t/remake-configure-dependencies.sh
b/t/remake-configure-dependencies.sh
new file mode 100755
index 0000000..2e5df88
--- /dev/null
+++ b/t/remake-configure-dependencies.sh
@@ -0,0 +1,80 @@
+#! /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/>.
+
+# Test CONFIGURE_DEPENDENCIES.
+
+. test-init.sh
+
+cat > configure.ac <<'END'
+AC_INIT([confdeps], m4_esyscmd([./print-version]))
+AM_INIT_AUTOMAKE([foreign])
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
+END
+
+# Needless to say, the autom4te cache happily break this test.
+cat > .autom4te.cfg <<'END'
+begin-language: "Autoconf-without-aclocal-m4"
+args: --no-cache
+end-language: "Autoconf-without-aclocal-m4"
+END
+
+cat > Makefile.am <<'END'
+EXTRA_DIST = .autom4te.cfg
+CONFIGURE_DEPENDENCIES = $(top_srcdir)/print-version
+
+test-1:
+ test $(VERSION) = 1.0
+test-2:
+ test $(VERSION) = 2.1
+test-3:
+ test $(VERSION) = 3.14
+
+.PHONY: test-1 test-2 test-3
+
+# Contents of $(CONFIGURE_DEPENDENCIES) are to be automatically
+# distributed.
+local-check: test-3 distdir
+ test -f $(distdir)/print-version
+END
+
+(echo '#!/bin/sh' && echo 'printf %s 1.0') > print-version
+chmod a+x print-version
+
+$ACLOCAL
+$AUTOCONF
+$AUTOMAKE
+
+./configure
+$MAKE test-1
+
+(echo '#!/bin/sh' && echo 'printf %s 2.1') > print-version
+using_gmake || $MAKE Makefile
+$MAKE test-2
+
+$MAKE distclean
+mkdir build
+cd build
+../configure
+$MAKE test-2
+(echo '#!/bin/sh' && echo 'printf %s 3.14') > ../print-version
+using_gmake || $MAKE Makefile
+$MAKE test-3
+
+# Check that $(CONFIGURE_DEPENDENCIES) are automatically distributed.
+$MAKE distcheck
+
+:
hooks/post-receive
--
GNU Automake
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Automake-commit] [SCM] GNU Automake branch, master, updated. v1.13-56-ge4a5f2b,
Stefano Lattarini <=