LIBS = pcre extra debian
CMA = unix.cma $(patsubst %, %.cma, $(LIBS))
CMXA = unix.cmxa $(patsubst %, %.cmxa, $(LIBS))
OCOPTS = $(patsubst %, -I +%, $(LIBS))

ML = mimetypes.ml
CMX = $(patsubst %.ml, %.cmx, $(ML))

OCHOME=$(shell ocamlc -where)

all: mimetypes

mimetypes: $(CMX) $(OCHOME)/debian/debian.cmxa
	ocamlopt $(OCOPTS) $(CMXA) $(CMX) -o $@

mimetypes-bytecode: mimetypes.cmo
	ocamlc $(OCOPTS) -g $(CMA) mimetypes.cmo -o mimetypes

%.cmx: %.ml
	ocamlopt -unsafe -compact $(OCOPTS) -c $*.ml

%.cmo: %.ml
	ocamlc $(OCOPTS) -g -c $*.ml

mytop: mimetypes.ml
	ocamlmktop pcre.cma unix.cma dsf.cma debian.cma mimetypes.ml -o $@

install: mimetypes
	mkdir -p $(PREFIX)/usr/bin
	install -s mimetypes $(PREFIX)/usr/bin/collect-mimetypes
	mkdir -p $(PREFIX)/etc/init.d
	ln -sf /usr/bin/collect-mimetypes $(PREFIX)/etc/init.d/mimetypes

clean:
	rm -rf *.cm[ixo] *.o mimetypes mytop *~
