packages feed

interpol-0.2.3: Makefile

TESTS1 := Simple One String NoImport
TESTS2 := Standalone Pure PureString NoWarn JustShow
GHC := ghc -Wall -Werror

.PHONY: all build dist install clean clean-tests test doc

all: build

build: dist/setup-config
	cabal build

dist: test
	cabal sdist

install: build
	cabal install

clean: clean-tests
	cabal clean

clean-tests:
	rm -f Test/*.{hi,o}
	$(foreach t,$(TESTS1) $(TESTS2),rm -f Test/$(t)${\n})

define \n


endef

test: build clean-tests
	cabal test
	make install
	$(foreach t,$(TESTS1),cd Test && $(GHC) -F -pgmF interpol $(t)${\n})
	$(foreach t,$(TESTS2),cd Test && $(GHC) $(t)${\n})
	$(foreach t,$(TESTS1) $(TESTS2),cd Test && [ "`./$(t)`" = "I have 23 apples." ]${\n})

dist/setup-config: interpol.cabal
	cabal configure --enable-tests

doc: build
	cabal haddock