3b377ae8790b1932aeeee4861749c976e2af5ce6
[cocanwiki.git] / scripts / Makefile
1 # Makefile for COCANWIKI.
2 # $Id: Makefile,v 1.19 2004/09/22 11:41:03 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         contact.cmo \
26         contact_show.cmo \
27         contacts.cmo \
28         create.cmo \
29         create_form.cmo \
30         create_contact.cmo \
31         create_contact_form.cmo \
32         create_user.cmo \
33         create_user_form.cmo \
34         delete_contact.cmo \
35         delete_contact_form.cmo \
36         delete_file.cmo \
37         delete_file_form.cmo \
38         delete_image.cmo \
39         delete_image_form.cmo \
40         delete_user.cmo \
41         delete_user_form.cmo \
42         diff.cmo \
43         edit.cmo \
44         edit_contact.cmo \
45         edit_contact_form.cmo \
46         edit_host_css.cmo \
47         edit_host_css_form.cmo \
48         edit_page_css.cmo \
49         edit_page_css_form.cmo \
50         edit_sitemenu.cmo \
51         edit_user.cmo \
52         edit_user_form.cmo \
53         file.cmo \
54         files.cmo \
55         forgot_password.cmo \
56         forgot_password_form.cmo \
57         history.cmo \
58         hoststyle.cmo \
59         host_menu.cmo \
60         image.cmo \
61         images.cmo \
62         largest_pages.cmo \
63         login.cmo \
64         login_form.cmo \
65         logout.cmo \
66         page.cmo \
67         pagestyle.cmo \
68         preview.cmo \
69         recent.cmo \
70         restore.cmo \
71         restore_form.cmo \
72         rss.cmo \
73         search.cmo \
74         send_feedback.cmo \
75         send_feedback_form.cmo \
76         set_password.cmo \
77         set_password_form.cmo \
78         signup.cmo \
79         sitemap.cmo \
80         undelete_file.cmo \
81         undelete_file_form.cmo \
82         undelete_image.cmo \
83         undelete_image_form.cmo \
84         upload_file.cmo \
85         upload_file_form.cmo \
86         upload_image.cmo \
87         upload_image_form.cmo \
88         users.cmo
89
90 ADMIN_OBJS := \
91         admin/admin.cmo \
92         admin/create_host.cmo \
93         admin/create_host_form.cmo \
94         admin/edit_emails.cmo \
95         admin/edit_emails_form.cmo \
96         admin/edit_host_css.cmo \
97         admin/edit_host_css_form.cmo \
98         admin/edit_hostnames.cmo \
99         admin/edit_hostnames_form.cmo \
100         admin/host.cmo
101
102 INSTDIR := ../html/_bin
103
104 all: cocanwiki.cma $(OBJS) $(ADMIN_OBJS)
105
106 cocanwiki.cma: $(LIB_OBJS)
107         $(OCAMLC) $(OCAMLCFLAGS) -a -o $@ $^
108
109 cocanwiki_version.ml: cocanwiki_version.ml.in ../Makefile.config
110         $(CPP) -P -DPACKAGE="$(PACKAGE)" -DVERSION="$(VERSION)" $< > $@
111
112 clean:
113         rm -f *~ *.bak core *.cmi *.cmo *.cma cocanwiki_version.ml
114         rm -f admin/*~ admin/*.bak admin/core admin/*.cmi admin/*.cmo
115
116 install:
117         install -d -m 0755 $(INSTDIR)
118         install -c -m 0555 cocanwiki.cma $(OBJS) $(INSTDIR)
119
120         install -d -m 0755 $(INSTDIR)/admin
121         install -c -m 0555 $(ADMIN_OBJS) $(INSTDIR)/admin
122
123 %.cmi: %.mli
124         $(OCAMLC) $(OCAMLCFLAGS) -c $<
125
126 %.cmo: %.ml
127         $(OCAMLC) $(OCAMLCFLAGS) -c $<
128
129 dep:    .depend
130 depend: .depend
131
132 .depend:
133         rm -f .depend
134         ocamldep *.mli *.ml admin/*.ml > $@
135
136 ifeq ($(wildcard .depend),.depend)
137 include .depend
138 endif
139
140 .SUFFIXES: .ml .mli .cmi .cmo