X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=scripts%2FMakefile;h=230db03d3109d72440fc436f7da0db58b676902c;hb=d2de471ff7e79c1d6096bd8132aad80258852cdd;hp=423e7128d6bb3331714591388424339e36eef94b;hpb=d6978d316016d0c96753ace2a2e474c50bd40c42;p=cocanwiki.git diff --git a/scripts/Makefile b/scripts/Makefile index 423e712..230db03 100644 --- a/scripts/Makefile +++ b/scripts/Makefile @@ -1,114 +1,105 @@ # Makefile for COCANWIKI. -# $Id: Makefile,v 1.9 2004/09/08 14:47:47 rich Exp $ +# $Id: Makefile,v 1.55 2007/02/24 17:28:52 rich Exp $ include ../Makefile.config +PGOCAML_PP := camlp4o -I +pcre -I +extlib -I $(PGOCAMLDIR) $(OCAMLLIBDIR)/unix.cma $(OCAMLLIBDIR)/pcre/pcre.cma $(OCAMLLIBDIR)/extlib/extLib.cma $(OCAMLLIBDIR)/calendar/calendar.cma $(CSVDIR)/csv/csv.cma pgocaml.cma pa_pgsql.cmo + +PACKAGES = apache,pcre,extlib,netstring,calendar + OCAMLC := ocamlc -OCAMLCFLAGS := -w s -I +apache -I +pcre -I +dbi -I +extlib +OCAMLCFLAGS = \ + -package $(PACKAGES) \ + -I $(PGOCAMLDIR) -I $(CSVDIR) \ + -I lib -pp "$(PGOCAML_PP)" CPP := cpp +export PGDATABASE=cocanwiki + +ifeq ($(shell hostname),oirase) +# While compiling on home machine, create a tunnel using +# ssh -L 5430:localhost:5432 towada.merjis.com +export PGHOST=localhost +export PGPORT=5430 +endif + +SRCS := $(wildcard *.ml) +ADMIN_SRCS := $(wildcard admin/*.ml) + +OBJS := $(SRCS:.ml=.cmo) +ADMIN_OBJS := $(ADMIN_SRCS:.ml=.cmo) + +# NB. Order in which these are built really matters! To rebuild +# the ordering after substantially editing the library files, try: +# PGDATABASE=cocanwiki ocamldsort -pp "'$(PGOCAML_PP)'" -byte *.ml *.mli LIB_OBJS := \ - cocanwiki_date.cmo \ - cocanwiki_version.cmo \ - cocanwiki_files.cmo \ - cocanwiki_strings.cmo \ - cocanwiki_images.cmo \ - cocanwiki_template.cmo \ - cocanwiki_ok.cmo \ - cocanwiki.cmo \ - cocanwiki_diff.cmo \ - cocanwiki_emailnotify.cmo \ - wikilib.cmo \ - cgi_expires.cmo - -OBJS := create.cmo \ - create_form.cmo \ - delete_file.cmo \ - delete_file_form.cmo \ - delete_image.cmo \ - delete_image_form.cmo \ - diff.cmo \ - edit.cmo \ - edit_page_css.cmo \ - edit_page_css_form.cmo \ - edit_sitemenu.cmo \ - edit_user.cmo \ - edit_user_form.cmo \ - file.cmo \ - files.cmo \ - forgot_password.cmo \ - forgot_password_form.cmo \ - history.cmo \ - hoststyle.cmo \ - image.cmo \ - images.cmo \ - login.cmo \ - login_form.cmo \ - logout.cmo \ - page.cmo \ - pagestyle.cmo \ - preview.cmo \ - recent.cmo \ - restore.cmo \ - restore_form.cmo \ - search.cmo \ - signup.cmo \ - sitemap.cmo \ - undelete_file.cmo \ - undelete_file_form.cmo \ - undelete_image.cmo \ - undelete_image_form.cmo \ - upload_file.cmo \ - upload_file_form.cmo \ - upload_image.cmo \ - upload_image_form.cmo \ - users.cmo - -ADMIN_OBJS := \ - admin/admin.cmo \ - admin/create_host.cmo \ - admin/create_host_form.cmo \ - admin/edit_emails.cmo \ - admin/edit_emails_form.cmo \ - admin/edit_host_css.cmo \ - admin/edit_host_css_form.cmo \ - admin/edit_hostnames.cmo \ - admin/edit_hostnames_form.cmo \ - admin/host.cmo + lib/cocanwiki_version.cmo \ + lib/cocanwiki_extensions.cmo \ + lib/cocanwiki_date.cmo \ + lib/cocanwiki_files.cmo \ + lib/cocanwiki_server_settings.cmo \ + lib/cocanwiki_strings.cmo \ + lib/cocanwiki_version.cmo \ + lib/cocanwiki_create_host.cmo \ + lib/wikilib.cmo \ + lib/cocanwiki_template.cmo \ + lib/cocanwiki_images.cmo \ + lib/cocanwiki_ok.cmo \ + lib/cocanwiki.cmo \ + lib/cocanwiki_links.cmo \ + lib/cocanwiki_ext_calendar.cmo \ + lib/cocanwiki_emailnotify.cmo \ + lib/cocanwiki_pages.cmo \ + lib/cocanwiki_diff.cmo \ + lib/cocanwiki_mail.cmo \ + lib/cdvmm_phone_numbers.cmo \ + lib/cocanwiki_func_shell.cmo + +ifneq ($(OCAMLRSS),) +LIB_OBJS += lib/cocanwiki_func_rss.cmo +OCAMLCFLAGS += -package netclient -I $(OCAMLRSS) -I $(XML_LIGHT) +endif INSTDIR := ../html/_bin -all: cocanwiki.cma $(OBJS) $(ADMIN_OBJS) +all: lib/cocanwiki.cma $(OBJS) $(ADMIN_OBJS) -cocanwiki.cma: $(LIB_OBJS) - $(OCAMLC) $(OCAMLCFLAGS) -a -o $@ $^ +lib/cocanwiki.cma: $(LIB_OBJS) + ocamlfind ocamlc $(OCAMLCFLAGS) -a -o $@ $^ -cocanwiki_version.ml: cocanwiki_version.ml.in ../Makefile.config +lib/cocanwiki_version.ml: lib/cocanwiki_version.ml.in ../Makefile.config $(CPP) -P -DPACKAGE="$(PACKAGE)" -DVERSION="$(VERSION)" $< > $@ +# For debugging camlp4 macro. +print: + $(PGOCAML_PP) pr_o.cmo lib/cocanwiki_pages.ml + clean: - rm -f *~ *.bak core *.cmi *.cmo *.cma cocanwiki_version.ml + rm -f *~ *.bak core *.cmi *.cmo *.cma lib/cocanwiki_version.ml + rm -f lib/*~ lib/*.bak lib/core lib/*.cmi lib/*.cmo lib/*.cma rm -f admin/*~ admin/*.bak admin/core admin/*.cmi admin/*.cmo install: install -d -m 0755 $(INSTDIR) - install -c -m 0555 cocanwiki.cma $(OBJS) $(INSTDIR) + install -c -m 0555 lib/cocanwiki.cma $(INSTDIR) + install -c -m 0555 $(OBJS) $(INSTDIR) install -d -m 0755 $(INSTDIR)/admin install -c -m 0555 $(ADMIN_OBJS) $(INSTDIR)/admin %.cmi: %.mli - $(OCAMLC) $(OCAMLCFLAGS) -c $< + ocamlfind ocamlc $(OCAMLCFLAGS) -c $< %.cmo: %.ml - $(OCAMLC) $(OCAMLCFLAGS) -c $< + ocamlfind ocamlc $(OCAMLCFLAGS) -c $< dep: .depend depend: .depend .depend: - rm -f .depend - ocamldep *.mli *.ml admin/*.ml > $@ + ocamldep -pp "$(PGOCAML_PP)" \ + -I lib \ + lib/*.ml lib/*.mli *.ml admin/*.ml > $@ ifeq ($(wildcard .depend),.depend) include .depend