1# $Id: Makefile,v 1.4 2005/05/15 17:01:04 hxml Exp $
2
3HXT_HOME	= ../../..
4PKGFLAGS	=
5GHCFLAGS	= -Wall -O2
6GHC		= ghc $(GHCFLAGS) $(PKGFLAGS)
7
8prog		= ./DTDtoHXT
9
10all		: $(prog)
11
12$(prog)		: $(prog).hs
13		$(GHC) --make -o $@ $<
14
15force		:
16		$(GHC) --make -o $(prog) $(prog).hs
17
18test		:
19		@echo "===> run a few generation examples"
20		$(MAKE) XHTML.o XHTML2.o
21		@echo "===> the generated modules"
22		ls -l XHTML*.hs XHTML*.o
23
24EX1		= ../../xhtml/xhtml.xml
25EX2		= ../../photoalbum/photos.xml
26
27XHTML.o		: $(prog) $(EX1)
28		@echo "===> generate a module for XHTML access function from the XHTML DTD with naming convention is<Elem>, get<Attr>, ..."
29		$(prog) --output-file XHTML.hs --uppercase-initials $(EX1)
30		$(GHC) -c XHTML.hs
31
32XHTML2.o	: $(prog) $(EX1)
33		@echo "===> generate a module for XHTML access function from the XHTML DTD with naming convention is_<elem>, get_<attr>, ..."
34		$(prog) --output-file XHTML2.hs --prefix-underline $(EX1)
35		$(GHC) -c XHTML2.hs
36
37Photo.hs	: $(prog) $(EX2)
38		$(prog) --output-file $@ --uppercase-initials $(EX2)
39
40
41DIST		= $(HXT_HOME)/dist/examples/arrows
42DIST_DIR	= $(DIST)/dtd2hxt
43DIST_FILES	= $(prog).hs Makefile
44
45dist		:
46		[ -d $(DIST_DIR) ] || mkdir -p $(DIST_DIR)
47		cp $(DIST_FILES) $(DIST_DIR)
48
49clean		:
50		rm -f $(prog) XHTML*.hs *.o *.hi
51
52