@@ -49,19 +49,30 @@ qc-hpc: Properties.hs QuickCheckUtils.hs SlowFunctions.hs TestUtils.hs $(lib-src
49 $(ghc) $(ghc-hpc-flags) $(ghc-test-flags) $(ghc-opt-flags) -ihpcdir \
49 $(ghc) $(ghc-hpc-flags) $(ghc-test-flags) $(ghc-opt-flags) -ihpcdir \
50 --make -threaded -o $@ $<
50 --make -threaded -o $@ $<
52−Regressions.o: TestUtils.o
52+stdio-hpc: StdioCoverage.hs $(lib-srcs:%=../%)
54−regressions: Regressions.o TestUtils.o
54+ @rm -f $@.tix
55− $(ghc) $(ghc-test-flags) -o $@ $^ $(lib)
55+ $(ghc) $(ghc-hpc-flags) $(ghc-test-flags) $(ghc-opt-flags) -ihpcdir \
56+ --make -threaded -o $@ $<
57−coverage: qc-hpc-html/hpc_index.html
58+coverage: coverage-html/hpc_index.html
59−qc-hpc-html/hpc_index.html: qc-hpc
60+coverage-html/hpc_index.html: qc-hpc
61+ @rm -f qc-hpc.tix stdio-hpc.tix coverage.tix
60 ./qc-hpc -a 100 +RTS -N
62 ./qc-hpc -a 100 +RTS -N
63+ bash ./cover-stdio.sh
64+ hpc combine --output=coverage.tix --exclude=Main \
65+ qc-hpc.tix stdio-hpc.tix
61− hpc markup qc-hpc --exclude=Main --exclude=Properties \
66+ hpc markup coverage --exclude=Main --exclude=Properties --exclude=Main \
62− --exclude=Data.Text.Fusion.CaseMapping \
67+ --exclude=Data.Text.Fusion.CaseMapping --exclude StdioCoverage \
63 --exclude=SlowFunctions --exclude=TestUtils \
68 --exclude=SlowFunctions --exclude=TestUtils \
64 --exclude=QuickCheckUtils --srcdir=.. --srcdir=. --destdir=$(dir $@)
69 --exclude=QuickCheckUtils --srcdir=.. --srcdir=. --destdir=$(dir $@)
72+Regressions.o: TestUtils.o
74+regressions: Regressions.o TestUtils.o
75+ $(ghc) $(ghc-test-flags) -o $@ $^ $(lib)
66Benchmarks.o: ghc-opt-flags = -O
77Benchmarks.o: ghc-opt-flags = -O
67bm Benchmarks.o: ghc-flags += -package utf8-string
78bm Benchmarks.o: ghc-flags += -package utf8-string
@@ -83,4 +94,4 @@ text-testdata.tar.bz2:
83 curl -O http://projects.haskell.org/text/text-testdata.tar.bz2
94 curl -O http://projects.haskell.org/text/text-testdata.tar.bz2
86− -rm -rf *.o *.hi *.tix bm qc qc-hpc hpcdir .hpc qc-hpc-html
97+ -rm -rf *.o *.hi *.tix bm qc qc-hpc stdio-hpc hpcdir .hpc coverage-html