Repository : ssh://darcs.haskell.org//srv/darcs/testsuite On branch : master
http://hackage.haskell.org/trac/ghc/changeset/a9d02b3508c2dba11cfac773ee649bacef327494 >--------------------------------------------------------------- commit a9d02b3508c2dba11cfac773ee649bacef327494 Author: Simon Marlow <[email protected]> Date: Fri Nov 18 12:40:47 2011 +0000 test for #3589 >--------------------------------------------------------------- tests/driver/recomp011/Main.hs | 5 +++++ tests/driver/recomp011/Makefile | 28 ++++++++++++++++++++++++++++ tests/driver/recomp011/all.T | 7 +++++++ tests/driver/recomp011/recomp011.stdout | 10 ++++++++++ 4 files changed, 50 insertions(+), 0 deletions(-) diff --git a/tests/driver/recomp011/Main.hs b/tests/driver/recomp011/Main.hs new file mode 100644 index 0000000..5cdb621 --- /dev/null +++ b/tests/driver/recomp011/Main.hs @@ -0,0 +1,5 @@ +{-# LANGUAGE CPP #-} +module Main where + +#include "A.hsinc" +#include "B.hsinc" diff --git a/tests/driver/recomp011/Makefile b/tests/driver/recomp011/Makefile new file mode 100644 index 0000000..0024625 --- /dev/null +++ b/tests/driver/recomp011/Makefile @@ -0,0 +1,28 @@ +TOP=../../.. +include $(TOP)/mk/boilerplate.mk +include $(TOP)/mk/test.mk + +# Recompilation tests + +clean: + rm -f *.o *.hi + rm -f A.hsinc B.hsinc + rm -f Main$(exeext) + +recomp011: clean + echo "main = putStrLn x" >A.hsinc + echo "x = show 42" >B.hsinc + '$(TEST_HC)' $(filter-out -fforce-recomp,$(TEST_HC_OPTS)) --make -O Main.hs + ./Main + sleep 1 + echo "x = show 43" >B.hsinc + '$(TEST_HC)' $(filter-out -fforce-recomp,$(TEST_HC_OPTS)) --make -O Main.hs + ./Main + sleep 1 + echo "main = putStrLn (x ++ x)" >A.hsinc + '$(TEST_HC)' $(filter-out -fforce-recomp,$(TEST_HC_OPTS)) --make -O Main.hs + sleep 1 + ./Main + '$(TEST_HC)' $(filter-out -fforce-recomp,$(TEST_HC_OPTS)) --make -O Main.hs + # don't change anything; check that no compilation happened + ./Main diff --git a/tests/driver/recomp011/all.T b/tests/driver/recomp011/all.T new file mode 100644 index 0000000..b7643f0 --- /dev/null +++ b/tests/driver/recomp011/all.T @@ -0,0 +1,7 @@ +# Test for #3589, recompiling when #included files change + +test('recomp011', + [ clean_cmd('$MAKE -s clean') ], + run_command, + ['$MAKE -s --no-print-directory recomp011']) + diff --git a/tests/driver/recomp011/recomp011.stdout b/tests/driver/recomp011/recomp011.stdout new file mode 100644 index 0000000..e0bfcde --- /dev/null +++ b/tests/driver/recomp011/recomp011.stdout @@ -0,0 +1,10 @@ +[1 of 1] Compiling Main ( Main.hs, Main.o ) +Linking Main ... +42 +[1 of 1] Compiling Main ( Main.hs, Main.o ) +Linking Main ... +43 +[1 of 1] Compiling Main ( Main.hs, Main.o ) +Linking Main ... +4343 +4343 _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
