# Liber(ator)/OFCP/OHLFI Source Distribution Makefile OCAML=ocamlc OCAMLOPT=ocamlopt OCAMLDEP=ocamldep INSTALL=install OPT=-thread -pp camlp4o PREFIX=/usr/local OCAML_PREFIX=/usr/local/lib/ocaml BIN_PREFIX=$(PREFIX)/bin DOC_PREFIX=$(PREFIX)/doc/ofcp LIB_PREFIX=$(OCAML_PREFIX)/ofcp EXECUTABLES=liber mimetype_compile GENERATED=mimetype_default.ml BIN_DIST=liber $(LIBS) $(INTFS) $(INTFS_COMP) $(DOCS) liber_mimetypes DOCS=README COPYING TODO FREESITE-HOWTO LIBS=fcp.cma hlfi.cma asfi.cma fcp.cmxa hlfi.cmxa asfi.cmxa INTFS=fcp.mli hlfreenet.mli asfreenet.mli fieldset.mli fstream.mli INTFS_COMP=fcp.cmi hlfreenet.cmi asfreenet.cmi fieldset.cmi fstream.cmi VERSION=2.0.2 MACHINE=`uname -m` all: lib liber.custom #all: lib liber.opt opt: fcp.opt hlfi.opt asfi.opt liber.opt lib: fcp hlfi asfi fcp.opt hlfi.opt asfi.opt install: opt rm -rf .doc_install mkdir .doc_install - cp -f doc/* .doc_install rm -rf .doc_install/*~ $(INSTALL) -d $(BIN_PREFIX) $(INSTALL) -m 755 liber $(BIN_PREFIX) $(INSTALL) -d $(DOC_PREFIX) $(INSTALL) -m 644 $(DOCS) $(DOC_PREFIX) $(INSTALL) -m 644 .doc_install/* $(DOC_PREFIX) $(INSTALL) -d $(LIB_PREFIX) $(INSTALL) -m 644 $(LIBS) $(INTFS) $(INTFS_COMP) $(LIB_PREFIX) rm -rf .doc_install dist: dist.gz dist.bz2 dist.gz: rm -rf ofcp-$(VERSION) mkdir ofcp-$(VERSION) mkdir ofcp-$(VERSION)/FEC mkdir ofcp-$(VERSION)/doc - cp -f * ofcp-$(VERSION) - cp -f FEC/* ofcp-$(VERSION)/FEC - cp -f doc/* ofcp-$(VERSION)/doc (cd ofcp-$(VERSION); make clean; rm -rf *~ FEC/*~ doc/*~) tar c ofcp-$(VERSION) | gzip -c > ofcp-$(VERSION).tar.gz rm -rf ofcp-$(VERSION) dist.bz2: rm -rf ofcp-$(VERSION) mkdir ofcp-$(VERSION) mkdir ofcp-$(VERSION)/FEC mkdir ofcp-$(VERSION)/doc - cp -f * ofcp-$(VERSION) - cp -f FEC/* ofcp-$(VERSION)/FEC - cp -f doc/* ofcp-$(VERSION)/doc (cd ofcp-$(VERSION); make clean; rm -rf *~ FEC/*~ doc/*~) tar c ofcp-$(VERSION) | bzip2 -c > ofcp-$(VERSION).tar.bz2 rm -rf ofcp-$(VERSION) bindist: bindist.gz bindist.bz2 bindist.gz: lib liber.opt rm -rf ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE)/doc cp Makefile.bin ofcp-$(VERSION).$(MACHINE)/Makefile cp $(BIN_DIST) ofcp-$(VERSION).$(MACHINE) - cp -f doc/* ofcp-$(VERSION).$(MACHINE)/doc rm -rf ofcp-$(VERSION).$(MACHINE)/doc/*~ tar -c ofcp-$(VERSION).$(MACHINE) | gzip -c > ofcp-$(VERSION).$(MACHINE).tar.gz rm -rf ofcp-$(VERSION).$(MACHINE) bindist.bz2: lib liber.opt rm -rf ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE)/doc cp Makefile.bin ofcp-$(VERSION).$(MACHINE)/Makefile cp $(BIN_DIST) ofcp-$(VERSION).$(MACHINE) - cp -f doc/* ofcp-$(VERSION).$(MACHINE)/doc rm -rf ofcp-$(VERSION).$(MACHINE)/doc/*~ tar -c ofcp-$(VERSION).$(MACHINE) | bzip2 -c > ofcp-$(VERSION).$(MACHINE).tar.bz2 rm -rf ofcp-$(VERSION).$(MACHINE) bindist.custom: bindist.custom.gz bindist.custom.bz2 bindist.custom.gz: lib liber.custom rm -rf ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE)/doc cp Makefile.bin ofcp-$(VERSION).$(MACHINE)/Makefile cp $(BIN_DIST) ofcp-$(VERSION).$(MACHINE) - cp -f doc/* ofcp-$(VERSION).$(MACHINE)/doc rm -rf ofcp-$(VERSION).$(MACHINE)/doc/*~ tar -c ofcp-$(VERSION).$(MACHINE) | gzip -c > ofcp-$(VERSION).$(MACHINE).tar.gz rm -rf ofcp-$(VERSION).$(MACHINE) bindist.custom.bz2: lib liber.custom rm -rf ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE) mkdir ofcp-$(VERSION).$(MACHINE)/doc cp Makefile.bin ofcp-$(VERSION).$(MACHINE)/Makefile cp $(BIN_DIST) ofcp-$(VERSION).$(MACHINE) - cp -f doc/* ofcp-$(VERSION).$(MACHINE)/doc rm -rf ofcp-$(VERSION).$(MACHINE)/doc/*~ tar -c ofcp-$(VERSION).$(MACHINE) | bzip2 -c > ofcp-$(VERSION).$(MACHINE).tar.bz2 rm -rf ofcp-$(VERSION).$(MACHINE) fcp: strutil.cmo fcp.cmo $(OCAML) $(OPT) -a -o fcp.cma strutil.cmo fcp.cmo fcp.opt: strutil.cmx fcp.cmx $(OCAMLOPT) $(OPT) -a -o fcp.cmxa strutil.cmx fcp.cmx hlfi: strutil.cmo fcp.cmo fieldset.cmo fstream.cmo hlfreenet.cmo $(OCAML) $(OPT) -a -o hlfi.cma strutil.cmo fcp.cmo fieldset.cmo fstream.cmo hlfreenet.cmo hlfi.opt: strutil.cmx fcp.cmx fieldset.cmx fstream.cmx hlfreenet.cmx $(OCAMLOPT) $(OPT) -a -o hlfi.cmxa strutil.cmx fcp.cmx fieldset.cmx fstream.cmx hlfreenet.cmx asfi: strutil.cmo fcp.cmo fieldset.cmo fstream.cmo hlfreenet.cmo asfreenet.cmo $(OCAML) $(OPT) -a -o asfi.cma asfreenet.cmo asfi.opt: strutil.cmx fcp.cmx fieldset.cmx fstream.cmx hlfreenet.cmx asfreenet.cmx $(OCAMLOPT) $(OPT) -a -o asfi.cmxa asfreenet.cmx liber: fcp hlfi asfi config.cmo arg2.cmo log.cmo config.cmo mimetype_default.cmo mimetype.cmo liber.cmo $(OCAML) $(OPT) -o liber str.cma unix.cma threads.cma strutil.cmo fcp.cmo fieldset.cmo fstream.cmo hlfreenet.cmo asfreenet.cmo arg2.cmo log.cmo config.cmo mimetype_default.cmo mimetype.cmo liber.cmo liber.opt: fcp.opt hlfi.opt asfi.opt arg2.cmx log.cmx config.cmx mimetype_default.cmx mimetype.cmx liber.cmx $(OCAMLOPT) $(OPT) -o liber str.cmxa unix.cmxa threads.cmxa strutil.cmx fcp.cmx fieldset.cmx fstream.cmx hlfreenet.cmx asfreenet.cmx arg2.cmx log.cmx config.cmx mimetype_default.cmx mimetype.cmx liber.cmx liber.custom: fcp hlfi asfi config.cmo arg2.cmo log.cmo config.cmo mimetype_default.cmo mimetype.cmo liber.cmo $(OCAML) $(OPT) -custom -o liber str.cma unix.cma threads.cma strutil.cmo fcp.cmo fieldset.cmo fstream.cmo hlfreenet.cmo asfreenet.cmo arg2.cmo log.cmo config.cmo mimetype_default.cmo mimetype.cmo liber.cmo strutil.cmx: strutil.cmi strutil.ml $(OCAMLOPT) $(OPT) -c strutil.ml strutil.cmo: strutil.cmi strutil.ml $(OCAML) $(OPT) -c strutil.ml strutil.cmi: strutil.mli $(OCAML) $(OPT) -c strutil.mli fcp.cmx: strutil.cmi fcp.cmi fcp.ml $(OCAMLOPT) $(OPT) -c fcp.ml fcp.cmo: strutil.cmi fcp.cmi fcp.ml $(OCAML) $(OPT) -c fcp.ml fcp.cmi: fcp.mli $(OCAML) $(OPT) -c fcp.mli fieldset.cmx: strutil.cmi fieldset.cmi fieldset.ml $(OCAMLOPT) $(OPT) -c fieldset.ml fieldset.cmo: strutil.cmi fieldset.cmi fieldset.ml $(OCAML) $(OPT) -c fieldset.ml fieldset.cmi: fieldset.mli $(OCAML) $(OPT) -c fieldset.mli hlfreenet.cmx: strutil.cmi fcp.cmi fieldset.cmi fstream.cmi hlfreenet.cmi hlfreenet.ml $(OCAMLOPT) $(OPT) -c hlfreenet.ml hlfreenet.cmo: strutil.cmi fcp.cmi fieldset.cmi fstream.cmi hlfreenet.cmi hlfreenet.ml $(OCAML) $(OPT) -c hlfreenet.ml hlfreenet.cmi: hlfreenet.mli $(OCAML) $(OPT) -c hlfreenet.mli asfreenet.cmx: strutil.cmi fcp.cmi fieldset.cmi fstream.cmi hlfreenet.cmi asfreenet.cmi asfreenet.ml $(OCAMLOPT) $(OPT) -c asfreenet.ml asfreenet.cmo: strutil.cmi fcp.cmi fieldset.cmi fstream.cmi hlfreenet.cmi asfreenet.cmi asfreenet.ml $(OCAML) $(OPT) -c asfreenet.ml asfreenet.cmi: asfreenet.mli $(OCAML) $(OPT) -c asfreenet.mli arg2.cmx: arg2.cmi arg2.ml $(OCAMLOPT) $(OPT) -c arg2.ml arg2.cmo: arg2.cmi arg2.ml $(OCAML) $(OPT) -c arg2.ml arg2.cmi: arg2.mli $(OCAML) $(OPT) -c arg2.mli config.cmx: config.cmi config.ml $(OCAMLOPT) $(OPT) -c config.ml config.cmo: config.cmi config.ml $(OCAML) $(OPT) -c config.ml config.cmi: config.mli $(OCAML) $(OPT) -c config.mli log.cmx: log.cmi log.ml $(OCAMLOPT) $(OPT) -c log.ml log.cmo: log.cmi log.ml $(OCAML) $(OPT) -c log.ml log.cmi: log.mli $(OCAML) $(OPT) -c log.mli mimetype_default.cmx: mimetype_default.cmi mimetype_default.ml $(OCAMLOPT) $(OPT) -c mimetype_default.ml mimetype_default.cmo: mimetype_default.cmi mimetype_default.ml $(OCAML) $(OPT) -c mimetype_default.ml mimetype_default.cmi: mimetype_default.mli $(OCAML) $(OPT) -c mimetype_default.mli mimetype_default.ml: mimetype_compile liber_mimetypes ./mimetype_compile -o mimetype_default.ml liber_mimetypes mimetype.cmx: strutil.cmi mimetype_default.cmi mimetype.cmi mimetype.ml $(OCAMLOPT) $(OPT) -c mimetype.ml mimetype.cmo: strutil.cmi mimetype_default.cmi mimetype.cmi mimetype.ml $(OCAML) $(OPT) -c mimetype.ml mimetype.cmi: mimetype.mli $(OCAML) $(OPT) -c mimetype.mli fstream.cmx: fstream.cmi fstream.ml $(OCAMLOPT) $(OPT) -c fstream.ml fstream.cmo: fstream.cmi fstream.ml $(OCAML) $(OPT) -c fstream.ml fstream.cmi: fstream.mli $(OCAML) $(OPT) -c fstream.mli liber.cmx: arg2.cmi strutil.cmi fstream.cmi hlfreenet.cmi log.cmi config.cmi mimetype.cmi liber.ml $(OCAMLOPT) $(OPT) -c liber.ml liber.cmo: arg2.cmi strutil.cmi fstream.cmi hlfreenet.cmi log.cmi config.cmi mimetype.cmi liber.ml $(OCAML) $(OPT) -c liber.ml mimetype_compile: strutil.cmo arg2.cmo mimetype_compile.cmo $(OCAML) $(OPT) -o mimetype_compile str.cma strutil.cmo arg2.cmo mimetype_compile.cmo mimetype_compile.cmx: strutil.cmi arg2.cmi mimetype_compile.ml $(OCAMLOPT) $(OPT) -c mimetype_compile.ml mimetype_compile.cmo: strutil.cmi arg2.cmi mimetype_compile.ml $(OCAML) $(OPT) -c mimetype_compile.ml clean: rm -f *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.tar.bz2 *.tar.gz $(EXECUTABLES) $(GENERATED)