summaryrefslogtreecommitdiff
path: root/t/fort4.sh
diff options
context:
space:
mode:
authorStefano Lattarini <stefano.lattarini@gmail.com>2013-05-18 20:28:20 +0200
committerStefano Lattarini <stefano.lattarini@gmail.com>2013-05-18 20:28:20 +0200
commit42eaadf9b117768814796728c8bef23009d9a52a (patch)
tree7cff713d3e41beb3c9967d59031426761d73a906 /t/fort4.sh
parent5fe99e28ae324fe1fd211cf289c0f9f75977f07e (diff)
parentca41efd3e14a9523e4e0cc1d9689eb30b6b7045a (diff)
downloadautomake-42eaadf9b117768814796728c8bef23009d9a52a.tar.gz
Merge branch 'subdir-objects-work'
* subdir-objects-work: depend: reduce code duplication, de-uglify make verbose output depend: prefer $(...) over `...` in Cygwin-specific recipes depend: reduce code duplication depend: a preparatory refactoring depend: refactor and remove code duplication Automake::Language: drop unused fields 'compile_flag' and 'output_flag' depend: assume '-c' compiler flag always means to produce object files depend: assume we can always pass '-o' to the C compiler cleanup: having subdir-objects mandatory allow us some simplifications subdir-objects: enable unconditionally
Diffstat (limited to 't/fort4.sh')
-rw-r--r--t/fort4.sh39
1 files changed, 24 insertions, 15 deletions
diff --git a/t/fort4.sh b/t/fort4.sh
index 2ef27abeb..2d01ee46d 100644
--- a/t/fort4.sh
+++ b/t/fort4.sh
@@ -34,6 +34,7 @@ END
cat >bye.f90 <<'END'
program goodbye
call baz
+ call zar
stop
end
END
@@ -46,6 +47,7 @@ END
sed s,foo,bar, foo.f90 > sub/bar.f90
sed s,foo,baz, foo.f90 > sub/baz.f
+sed s,foo,zar, foo.f90 > sub/zardoz.f90
cat >>configure.ac <<'END'
AC_PROG_F77
@@ -59,9 +61,29 @@ END
cat >Makefile.am <<'END'
bin_PROGRAMS = hello goodbye
hello_SOURCES = hello.f foo.f90 sub/bar.f90
-goodbye_SOURCES = bye.f90 sub/baz.f
+goodbye_SOURCES = bye.f90 sub/baz.f sub/zardoz.f90
goodbye_FCFLAGS =
LDADD = $(FCLIBS)
+
+.PHONY: test-obj
+test-obj:
+ ls -l . sub # For debugging.
+ test -f hello.$(OBJEXT)
+ test -f foo.$(OBJEXT)
+ test -f sub/bar.$(OBJEXT)
+ test ! -f bar.$(OBJEXT)
+ test -f goodbye-bye.$(OBJEXT)
+ test ! -f bye.$(OBJEXT)
+ test -f sub/goodbye-zardoz.$(OBJEXT)
+ test ! -f sub/zardoz.$(OBJEXT)
+ test ! -f goodbye-zardoz.$(OBJEXT)
+ test ! -f zardoz.$(OBJEXT)
+## The setting of FCFLAGS should only cause objects deriving from
+## Fortran 90, not Fortran 77, to be renamed.
+ test -f sub/baz.$(OBJEXT)
+ test ! -f sub/goodbye-baz.$(OBJEXT)
+ test ! -f goodbye-baz.$(OBJEXT)
+ test ! -f baz.$(OBJEXT)
END
$ACLOCAL
@@ -73,22 +95,9 @@ $AUTOCONF
# ./configure may exit with status 77 if no compiler is found,
# or if the compiler cannot compile Fortran 90 files).
./configure
-$MAKE
-subobjs=$(echo sub/*.o sub/*.obj)
-test "$subobjs" = 'sub/*.o sub/*.obj'
-$MAKE distcheck
-$MAKE distclean
-echo 'AUTOMAKE_OPTIONS = subdir-objects' >> Makefile.am
-$AUTOMAKE
-./configure
$MAKE
-test ! -e bar.o
-test ! -e bar.obj
-test ! -e baz.o
-test ! -e baz.obj
-test ! -e goodbye-baz.o
-test ! -e goodbye-baz.obj
+$MAKE test-obj
$MAKE distcheck
: