VERSION=1.6.3

build: setup.data
	ocaml setup.ml -build

doc:
	@mkdir -p doc/ocamldoc
	(cd doc/ocamldoc && ocamlfind ocamldoc ../../src/lablgtkReact.mli ../../src/miniFRP.mli -package lablgtk2 -I +threads -html)
	(cd doc/intro && \
		latex lablgtk-react-intro.tex && latex lablgtk-react-intro.tex && \
		dvipdf lablgtk-react-intro.dvi)

doc-upload: doc
	git archive --format tar HEAD doc | ssh -C forge.ocamlcore.org "tar x -C /home/groups/lablgtk-react/htdocs"
	scp -C doc/index.html forge.ocamlcore.org:/home/groups/lablgtk-react/htdocs/
	scp -C doc/intro/lablgtk-react-intro.pdf forge.ocamlcore.org:/home/groups/lablgtk-react/htdocs/doc/intro
	tar cz -C doc ocamldoc | ssh forge.ocamlcore.org "tar xz -C /home/groups/lablgtk-react/htdocs/doc"

install: build
	ocaml setup.ml -install

uninstall:
	ocaml setup.ml -uninstall

tarball-gz:
	git archive --prefix=lablgtk-react-$(VERSION)/ --format=tar HEAD | gzip -9 > lablgtk-react-$(VERSION).tar.gz

clean:
	ocaml setup.ml -clean
	rm -f doc/ocamldoc/*
	(cd doc/intro/ && A="lablgtk-react-intro" && rm -f $A.aux $A.htoc $A.haux $A.hhtoc $A.dvi $A.log $A.pdf $A.toc $A.html)

browser_test:
	make -C src browser_test

.PHONY: build doc install uninstall clean
