[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
distdir.test failures: VPATH and subdirs
From: |
Ralf Wildenhues |
Subject: |
distdir.test failures: VPATH and subdirs |
Date: |
Mon, 8 May 2006 22:20:27 +0200 |
User-agent: |
Mutt/1.5.11+cvs20060403 |
On all HP-UX and Tru64 boxen I have access to, distdir.test fails like
this:
$ make dist # in VPATH build, which is part of the distcheck stage
| No suffix list.
| Make: Don't know how to make ./joe. Stop.
Removing the leading `./' from
EXTRA_DIST = ./joe [...]
fixes that on these hosts, so IMHO that should be considered necessary
for portable Makefiles.
The only remaining problem child I know about is Solaris 2.6 `make',
which has more problems with VPATH for files in subdirs:
(distdir.test)
| make check-local
| test -f ../foo/bar
| test -f ../woo/doo
| test -f ../joe
| test -f ../dada
| make: Fatal error: Don't know how to make target `foo/bar'
| Current working directory
| /tmp/build-sparc-sun-solaris2.6/tests/testSubDir/distdir-1.0/_build
| *** Error code 1
| make: Fatal error: Command failed for target `distcheck'
| FAIL: ../../automake-1.9a/tests/distdir.test
(similar failure in extra6.test)
| + mkdir foo2
| + mkdir foo2/bar2
| + touch foo2/bar2/baz2
| + mkdir baz2
| + touch baz2/foo2
| + make check
| make: Fatal error: Don't know how to make target `foo/bar'
| FAIL: ../../automake-1.9a/tests/extra6.test
(and pr9.test)
| && make distcleancheck
| checking for a BSD-compatible install... ../support/install-sh -c
| checking whether build environment is sane... yes
| checking for gawk... no
| checking for mawk... no
| checking for nawk... nawk
| checking whether make sets $(MAKE)... yes
| configure: creating ./config.status
| config.status: creating Makefile
| make: Fatal error: Don't know how to make target `support/install-sh'
| Current working directory
/tmp/build-sparc-sun-solaris2.6/tests/testSubDir/pr9-0/_build
| *** Error code 1
| make: Fatal error: Command failed for target `distcheck'
| + exit 1
| FAIL: ../../automake-1.9a/tests/pr9.test
(and subpkg3.test)
| Making uninstall in subpkg
| make: Fatal error: Don't know how to make target `subpkg/foobar'
| Current working directory
/tmp/build-sparc-sun-solaris2.6/tests/testSubDir/subpkg3-1.0/_build
| *** Error code 1
| make: Fatal error: Command failed for target `distcheck'
| FAIL: ../../automake-1.9a/tests/subpkg3.test
Luckily all of these are fixed in Solaris >=2.7. Yay!
So I'm bound to think we should ignore Solaris 2.6 issues here -- after
all, GNU make compiles and runs fine on this system -- and just go with
the patch below to fix the remaining failures.
Do you think it's ok to require that `./file' should not be used?
Should it be documented in automake.texi? Alternatively, should
EXTRA_DIST be rewritten by Automake to kill leading "./"?
Cheers,
Ralf
* tests/distdir.test: Do not use leading `./' in EXTRA_DIST for
files in the source tree. Fixes failures with HP-UX and Tru64
make.
Index: tests/distdir.test
===================================================================
RCS file: /cvs/automake/automake/tests/distdir.test,v
retrieving revision 1.9
diff -u -r1.9 distdir.test
--- tests/distdir.test 5 Jan 2006 23:32:35 -0000 1.9
+++ tests/distdir.test 8 May 2006 20:08:34 -0000
@@ -19,7 +19,9 @@
# Boston, MA 02110-1301, USA.
# Test to make sure subdirs in EXTRA_DIST work. Also tests to make
-# sure "./" is ignored and *srcdir properly handled.
+# sure *srcdir is properly handled. Note that using `./', as in
+# EXTRA_DIST = ./joe
+# does not work portably: it fails with HP-UX and Tru64 make.
. ./defs || exit 1
@@ -28,7 +30,7 @@
echo AC_OUTPUT >>configure.in
cat > Makefile.am << 'END'
-EXTRA_DIST = foo/bar ./joe $(top_srcdir)/woo/doo $(srcdir)/dada
+EXTRA_DIST = foo/bar joe $(top_srcdir)/woo/doo $(srcdir)/dada
check-local:
test -f $(srcdir)/foo/bar
test -f $(srcdir)/woo/doo
- distdir.test failures: VPATH and subdirs,
Ralf Wildenhues <=