3d87b3fd5d4cdb3dc4531dde3845c669fa3aec34
[cocanwiki.git] / scripts / Makefile
1 # Makefile for COCANWIKI.
2 # $Id: Makefile,v 1.10 2004/09/08 17:07:24 rich Exp $
3
4 include ../Makefile.config
5
6 OCAMLC := ocamlc
7 OCAMLCFLAGS := -w s -I +apache -I +pcre -I +dbi -I +extlib
8 CPP := cpp
9
10 LIB_OBJS := \
11         cocanwiki_date.cmo \
12         cocanwiki_version.cmo \
13         cocanwiki_files.cmo \
14         cocanwiki_strings.cmo \
15         cocanwiki_images.cmo \
16         cocanwiki_template.cmo \
17         cocanwiki_ok.cmo \
18         cocanwiki.cmo \
19         cocanwiki_diff.cmo \
20         cocanwiki_emailnotify.cmo \
21         wikilib.cmo \
22         cgi_expires.cmo
23
24 OBJS := 00-TEMPLATE.cmo \
25         create.cmo \
26         create_form.cmo \
27         delete_file.cmo \
28         delete_file_form.cmo \
29         delete_image.cmo \
30         delete_image_form.cmo \
31         diff.cmo \
32         edit.cmo \
33         edit_page_css.cmo \
34         edit_page_css_form.cmo \
35         edit_sitemenu.cmo \
36         edit_user.cmo \
37         edit_user_form.cmo \
38         file.cmo \
39         files.cmo \
40         forgot_password.cmo \
41         forgot_password_form.cmo \
42         history.cmo \
43         hoststyle.cmo \
44         image.cmo \
45         images.cmo \
46         login.cmo \
47         login_form.cmo \
48         logout.cmo \
49         page.cmo \
50         pagestyle.cmo \
51         preview.cmo \
52         recent.cmo \
53         restore.cmo \
54         restore_form.cmo \
55         search.cmo \
56         signup.cmo \
57         sitemap.cmo \
58         undelete_file.cmo \
59         undelete_file_form.cmo \
60         undelete_image.cmo \
61         undelete_image_form.cmo \
62         upload_file.cmo \
63         upload_file_form.cmo \
64         upload_image.cmo \
65         upload_image_form.cmo \
66         users.cmo
67
68 ADMIN_OBJS := \
69         admin/admin.cmo \
70         admin/create_host.cmo \
71         admin/create_host_form.cmo \
72         admin/edit_emails.cmo \
73         admin/edit_emails_form.cmo \
74         admin/edit_host_css.cmo \
75         admin/edit_host_css_form.cmo \
76         admin/edit_hostnames.cmo \
77         admin/edit_hostnames_form.cmo \
78         admin/host.cmo
79
80 INSTDIR := ../html/_bin
81
82 all: cocanwiki.cma $(OBJS) $(ADMIN_OBJS)
83
84 cocanwiki.cma: $(LIB_OBJS)
85         $(OCAMLC) $(OCAMLCFLAGS) -a -o $@ $^
86
87 cocanwiki_version.ml: cocanwiki_version.ml.in ../Makefile.config
88         $(CPP) -P -DPACKAGE="$(PACKAGE)" -DVERSION="$(VERSION)" $< > $@
89
90 clean:
91         rm -f *~ *.bak core *.cmi *.cmo *.cma cocanwiki_version.ml
92         rm -f admin/*~ admin/*.bak admin/core admin/*.cmi admin/*.cmo
93
94 install:
95         install -d -m 0755 $(INSTDIR)
96         install -c -m 0555 cocanwiki.cma $(OBJS) $(INSTDIR)
97
98         install -d -m 0755 $(INSTDIR)/admin
99         install -c -m 0555 $(ADMIN_OBJS) $(INSTDIR)/admin
100
101 %.cmi: %.mli
102         $(OCAMLC) $(OCAMLCFLAGS) -c $<
103
104 %.cmo: %.ml
105         $(OCAMLC) $(OCAMLCFLAGS) -c $<
106
107 dep:    .depend
108 depend: .depend
109
110 .depend:
111         rm -f .depend
112         ocamldep *.mli *.ml admin/*.ml > $@
113
114 ifeq ($(wildcard .depend),.depend)
115 include .depend
116 endif
117
118 .SUFFIXES: .ml .mli .cmi .cmo