Working bot.
[xavierbot.git] / Makefile
1 # $Id: Makefile,v 1.2 2007/06/28 20:49:10 rjones Exp $
2
3 include Makefile.config
4
5 CC      := gcc
6 CFLAGS  := -Wall -Werror
7
8 all: pa_noexternal.cmo init ocamlbotwrapper xavierbot.pl
9
10 ocamlbotwrapper: ocamlbotwrapper.o
11         $(CC) $(CFLAGS) $< -o $@
12
13 ocamlbotwrapper.c: ocamlbotwrapper.c.in Makefile.config
14         sed \
15           -e 's|@OCAML@|$(OCAML)|' \
16           -e 's|@INITSCRIPT@|$(INITSCRIPT)|' \
17           -e 's|@CHROOTDIR@|$(CHROOTDIR)|' \
18           < $< > $@
19
20 init: init.in Makefile.config
21         sed \
22           -e 's|@OCAMLUSER@|$(OCAMLUSER)|' \
23           -e 's|@CHROOTDIR@|$(CHROOTDIR)|' \
24           < $< > $@
25
26 xavierbot.pl: xavierbot.pl.in Makefile.config
27         sed \
28           -e 's|@WRAPPER@|$(WRAPPER)|' \
29           < $< > $@
30         chmod 0755 $@
31
32 pa_noexternal.cmo: pa_noexternal.ml
33         ocamlfind ocamlc \
34           -pp "camlp4o pa_extend.cmo q_MLast.cmo" -I +camlp4 -c $<
35
36 clean:
37         rm -f ocamlbotwrapper *.o *.cmo *.cmi *~
38
39 # Distribution.
40
41 dist:
42         $(MAKE) check-manifest
43         rm -rf $(PACKAGE)-$(VERSION)
44         mkdir $(PACKAGE)-$(VERSION)
45         tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
46         tar zcf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
47         rm -rf $(PACKAGE)-$(VERSION)
48         ls -l $(PACKAGE)-$(VERSION).tar.gz
49
50 check-manifest:
51         @for d in `find -type d -name CVS | grep -v '^\./debian/'`; \
52         do \
53         b=`dirname $$d`/; \
54         awk -F/ '$$1 != "D" {print $$2}' $$d/Entries | \
55         sed -e "s|^|$$b|" -e "s|^\./||"; \
56         done | sort > .check-manifest; \
57         sort MANIFEST > .orig-manifest; \
58         diff -u .orig-manifest .check-manifest; rv=$$?; \
59         rm -f .orig-manifest .check-manifest; \
60         exit $$rv
61
62
63 .PHONY: depend dist check-manifest dpkg doc print_test
64
65 .SUFFIXES:      .cmo .cmi .cmx .ml .mli