1 # make all: make bytecode archive
2 # make opt: make native archive
3 # make install: install bytecode archive, and if present, native archive
4 # make uninstall: uninstall package
5 # make clean: remove intermediate files (in this directory)
6 # make CLEAN: remove intermediate files (recursively)
7 # make distclean: remove any superflous files (recursively)
8 # make release: cleanup, create archive, tag CVS module
11 #----------------------------------------------------------------------
17 $(MAKE) -C m2parsergen all
18 $(MAKE) -C tools/ucs2_to_utf8 all
19 $(MAKE) -f Makefile.code all
20 $(MAKE) -C compatibility all
24 $(MAKE) -C m2parsergen all
25 $(MAKE) -C tools/ucs2_to_utf8 all
26 $(MAKE) -f Makefile.code opt
27 $(MAKE) -C compatibility opt
30 install: all tmp/pxp_entity.mli
31 files=`tools/collect_files *.cmi *.cma *.cmxa *.a \
32 pxp_utf8.cmo pxp_utf8.cmx pxp_utf8.o` && \
33 ocamlfind install $(NAME) $(MLI) tmp/pxp_entity.mli $$files META
37 ocamlfind remove $(NAME)
39 .PHONY: markup-install
41 $(MAKE) -C compatibility install
43 .PHONY: markup-uninstall
45 $(MAKE) -C compatibility uninstall
47 tmp/pxp_entity.mli: pxp_entity.ml
49 rm -f tmp/pxp_entity.*
51 echo '(* Sorry, this is currently undocumented *)' >tmp/mli
52 ocamlc -i -c tmp/pxp_entity.ml >>tmp/mli
53 mv tmp/mli tmp/pxp_entity.mli
57 rm -f *.cmi *.cmo *.cma *.cmx *.o *.a *.cmxa *.new *.old
59 touch lexers/objects_iso88591 lexers/objects_utf8 lexers/depend
60 $(MAKE) -C lexers clean
61 $(MAKE) -C compatibility clean
66 $(MAKE) -C examples CLEAN
67 $(MAKE) -C rtests CLEAN
68 $(MAKE) -C m2parsergen CLEAN
69 touch tools/ucs2_to_utf8/depend
70 $(MAKE) -C tools/ucs2_to_utf8 clean
74 rm -f *~ depend depend.pkg
75 $(MAKE) -C doc distclean
76 $(MAKE) -C examples distclean
77 $(MAKE) -C rtests distclean
78 $(MAKE) -C m2parsergen distclean
79 touch tools/ucs2_to_utf8/depend
80 $(MAKE) -C tools/ucs2_to_utf8 clean
81 $(MAKE) -C compatibility distclean
84 awk '/version/ { print substr($$3,2,length($$3)-2) }' META >RELEASE
88 r=`head -1 RELEASE`; cd ..; gtar czf $(NAME)-$$r.tar.gz --exclude='*/CVS*' --exclude="*~" --exclude="*/depend.pkg" --exclude="*/depend" --exclude="*/oo_questions*" --exclude="*/testsamples*" --exclude="*/tmp/*" --exclude="*reptil*" --exclude="*/doc/common.xml" --exclude="*/doc/config.xml" --exclude="*.fig.bak" --exclude="*/ps/pic*" --exclude="*/examples/panel*" --exclude="*/examples/xmlforms_gtk*" --exclude="*/Mail*" $(NAME)/*
92 r=`head -1 RELEASE | sed -e s/\\\./-/g`; cd ..; cvs tag -F $(NAME)-$$r markup
104 $(MAKE) -C examples/validate distclean
105 $(MAKE) -C examples/validate validate