HS = Merged.hs ICOList.hs ITList.hs DNList.hs PDF.hs Utils.hs
BINS = merged icolist itlist dnlist
PKGS = containers xhtml base process directory regex-compat tagsoup csv time

HC = ghc $(PKGSPEC)

PKGSPEC = -hide-all-packages $(PKGS:%=-package %)


%.hi: %.o
	@:

%.o: %.hs
	$(HC) -c $<

%.p_o: %.hs
	$(HC_P) -c $<

%.main.o: %.hs %.o
	$(HC) -main-is $(subst /,.,$(patsubst %.main.o,%,$@)).main -o $@ -c $<

all: $(BINS)

merged: Merged.main.o
	$(HC) -main-is Merged.main -o $@ Merged.main.o ICOList.o ITList.o DNList.o Utils.o PDF.o

icolist: ICOList.main.o
	$(HC) -main-is ICOList.main -o $@ ICOList.main.o Utils.o PDF.o

itlist: ITList.main.o
	$(HC) -main-is ITList.main -o $@ ITList.main.o Utils.o PDF.o

dnlist: DNList.main.o
	$(HC) -main-is DNList.main -o $@ DNList.main.o Utils.o

clean:
	rm -f *.o *.hi $(BINS)

depend: $(HS) Makefile
	$(HC) -M -dep-makefile -optdep$@ $(HS)

include depend