]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
PR tests: add excerpts from original bug reports, for clarity.
authorStefano Lattarini <stefano.lattarini@gmail.com>
Sun, 8 Aug 2010 14:45:17 +0000 (16:45 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Tue, 10 Aug 2010 17:39:22 +0000 (19:39 +0200)
* tests/pr2.test: Ditto.
* tests/pr9.test: Likewise.
* tests/pr72.test: Likewise.
* tests/pr87.test: Likewise.
* tests/pr211.test: Likewise.
* tests/pr220.test: Likewise.
* tests/pr224.test: Likewise.
* tests/pr229.test: Likewise.
* tests/pr243.test: Likewise.
* tests/pr266.test: Likewise.
* tests/pr279.test: Likewise, and tell to keep it in sync
with its sister test.
* tests/pr279-2.test: Likewise.

14 files changed:
ChangeLog
tests/pr2.test
tests/pr211.test
tests/pr220.test
tests/pr224.test
tests/pr229.test
tests/pr243.test
tests/pr266.test
tests/pr279-2.test
tests/pr279.test
tests/pr307.test
tests/pr72.test
tests/pr87.test
tests/pr9.test

index 6eb364f0733ca45da80677a22bb813693af5e86d..bfc7f91d544649cbb5d1a64f2eb65733e610b7b0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2010-08-09  Stefano Lattarini  <stefano.lattarini@gmail.com>
+
+       Tests for PR: add excerpts from original bug report, for clarity.
+       * tests/pr2.test: Ditto.
+       * tests/pr9.test: Likewise.
+       * tests/pr72.test: Likewise.
+       * tests/pr87.test: Likewise.
+       * tests/pr211.test: Likewise.
+       * tests/pr220.test: Likewise.
+       * tests/pr224.test: Likewise.
+       * tests/pr229.test: Likewise.
+       * tests/pr243.test: Likewise.
+       * tests/pr266.test: Likewise.
+       * tests/pr279.test: Likewise, and tell to keep it in sync
+       with its sister test.
+       * tests/pr279-2.test: Likewise.
+
 2010-08-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
 
        Tweak, extend and improve tests `cond[a-z]*.test'.
index 258a8efbb3d1a80317d76f22d66a04162fd0ab11..83303317159b1723d9b99cf5e448efa51c1eb5d3 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for bug reported in PR 2.
+# "make dist" fails for AC_OUTPUT(README.foo:templ/README.foo.in).
+#
+# == Report ==
+# When my AC_OUTPUT macro in configure.in contains something
+# like the following (among the Makefiles)
+#       README.foo:templ/README.foo.in
+# the generated dist target in the Makefile.in fails,
+# because DIST_COMMON will contain templ/README.foo.in
+# and the dist target will try to copy templ/README.foo.in
+# to the distribution directory before it creates a templ
+# subdirectory in the distribution directory.
 
 . ./defs || Exit 1
 
 set -e
 
+# Please keep this underquoted and old-style.
 cat > configure.in << 'END'
 AC_INIT
 AM_INIT_AUTOMAKE(nonesuch, nonesuch)
index 9344fd2dc769f4b6ebedf7ee95a65bb2fa1ded52..f29797a754a19382f495e9055d37c8c3c5c0b4e4 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR 211.
+#
+# == Description ==
+# Suppose you have a library and an ltlibrary in the same
+# directory which use the same source:
+#
+#   libfoo_la_SOURCES = foo.c
+#   libbar_a_SOURCES = foo.c
+#
+# In this case foo.c will be compiled twice but using different
+# compilers.  This is a conflict.  In this case the user should
+# rename one of the `foo.o's.
 
 required=libtoolize
 . ./defs || Exit 1
index 25e1f0e5f9d25ad26fc48d69d9e1d63d4f26bdb8..9525694c80c307e8a71874ceb0add43dba0aad92 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR automake/220.
+# Test for problems when conditionals are not actually defined.
+# Check that the problems is diagnosed by configure.
+# This isn't perfect (ideally we'd like an error from autoconf),
+# but it is the best we can do.  It certainly makes it easier
+# to debug the problem.
+# Note that this should be also in the documentation.
 
 required=gcc
 . ./defs || Exit 1
index fdcb997bf9430f1952196061676cefb555efcda7..63f78f1c6875169c6556da41004bb795c42beb7b 100755 (executable)
 # 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 for $(top_srcdir) with dependencies.
+# Test for PR automake/224: $(top_srcdir) w.r.t. dependencies.
+#
+# == Description ==
+# Dependency tracking data should be stored in in the relative path
+# of the source file, as opposed the object file.
+# I.e., for `foo.c' in `$(top_srcdir)/bar', being built in
+# `$(top_srcdir)/build', the location of the `.deps' directory
+# should be `$(top_builddir)/bar/.deps'.
 
 required=gcc
 . ./defs || Exit 1
index a97ef4f6253bedb9857343e629815775589a05f0..3efa6ed9daa623c67bfdf33013400ec2e5c73f2f 100755 (executable)
@@ -14,6 +14,7 @@
 # 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 for PR automake/229.
 # Make sure AC_CYGWIN requires config.{sub,guess}.
 # Reported by James Youngman.
 
index a5e869edf939f0f2c021e13be87d116fb993b823..cf39b880d35bb0f08f6893872864129449cfa498 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR 243.
+# AM_OUTPUT_DEPENDENCY_COMMANDS doesn't handle
+# `Makefile:Makefile.in:tail.mk' in AC_OUTPUT.
+#
+# == Report ==
+# If configure.in has something like:
+#       AC_OUTPUT(Makefile:Makefile.in:tail.mk)
+# then config.status cannot parse the Makefile to build the
+# dependency files in the .deps directory.  This is because
+# the AM_OUTPUT_DEPENDENCY_COMMANDS macro cannot cope with
+# the colon in the CONFIG_FILES variable.
 
 . ./defs || Exit 1
 
index a1cd2fed2462ad51fc10306820a29695357dd409..f2b54dd0654af8fb654e015c53b8d76abaccbde2 100755 (executable)
@@ -15,6 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR 266.
+# Dependency tracking -vs- nonstandard Makefile names
 
 . ./defs || Exit 1
 
index 286e33a51ca3dffe0289aa789137e49177bc1c2f..5bc9f85324761ac76c9cbb2b66d4b15c66a902d5 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Another test related to PR 279.
+# Multiple DEPENDENCIES on conditionals.
+# Please keep this in sync with sister test pr279.test.
+#
+# == Report ==
+# When defining xxx_LDADD and xxx_DEPENDENCIES variables where the
+# xxx_LDADD one contains values set in conditionals, automake will
+# fail with messages like:
+#       foo_DEPENDENCIES was already defined in condition TRUE, ...
 
 . ./defs || Exit 1
 
index 50dff53e52f4063a1c7dacdf5cfe3cb8411e28f8..ba11b2dfcd1de00c218c092725d95485f92f9ea1 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR 279.
+# Multiple DEPENDENCIES on conditionals.
+# Please keep this in sync with sister test pr279-2.test.
+#
+# == Report ==
+# When defining xxx_LDADD and xxx_DEPENDENCIES variables where the
+# xxx_LDADD one contains values set in conditionals, automake will
+# fail with messages like:
+#       foo_DEPENDENCIES was already defined in condition TRUE, ...
 
 . ./defs || Exit 1
 
index 0091415dd066514701eed841595191ba99374638..9890289e4e1de0fe854cd99b934333de2e3674d8 100755 (executable)
 # Test for PR 307: depcomp with depmode=dashmstdout libtool race condition
 # Report from Laurent Morichetti.
 # (Also exercises check_LTLIBRARIES.)
+#
+# == Report ==
+#  The dashmstdout depmode calls libtool in parallel to generate the
+#  dependencies (with -M flag) and to build the objfile (both have
+#  --mode=compile and -o).
+#  The process with 'libtool --mode=compile .* -M' can corrupt the objfile
+#  as none is generated by the compiler.  Since --mode=compile and -o are
+#  set libtool assumes that a objfile should be generated and will execute
+#  invalid $mv & $LN_S.
+#
+# == Fix ==
+#  Now 'depcomp' never compute dependencies in the background, as this can
+#  cause races with libtool.  Compute the dependencies after the actual
+#  compilation.
 
 required='libtoolize gcc'
 . ./defs || Exit 1
index d67c17b789f25108170ad024bcf31cebde5b42da..767b5d27578db5ccc8961a7a408e074e5451d6f1 100755 (executable)
@@ -15,6 +15,8 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR 72
+# Empty _SOURCES results in $(LINK) undefined.
+
 required=libtool
 . ./defs || Exit 1
 
index 369849b44deaf6cfd5de89aa8aec7324978c8a49..187d5ea1baf8ca43276aa629977c695f00396932 100755 (executable)
@@ -15,6 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for PR automake/87.
+# "make distcheck" fails when two source dirs exist.
 
 required=gcc
 . ./defs || Exit 1
index dab97348018e686d2a452aceeca90e56006a529d..788fd64c33c545e457e3e16630b0d863d03ce84d 100755 (executable)
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # Test for bug in PR 9.
+# "make dist" incorrect when AC_CONFIG_AUX_DIR is present.
+#
+# == Report ==
+# When AC_CONFIG_AUX_DIR is set (in my case to `support'), make dist
+# no longer automatically includes config.guess, config.sub, install-sh,
+# ltconfig, ltmain.sh, mdate-sh, missing, and mkinstalldirs.  In fact,
+# the entire `support/' directory is omitted.
 
 required=gzip
 . ./defs || Exit 1