adamc@1141
|
1 ACLOCAL_AMFLAGS = -I m4
|
adamc@1141
|
2
|
jgross@1837
|
3 BIN = @BIN@
|
jgross@1837
|
4 SRCLIB = @SRCLIB@
|
jgross@1837
|
5 INCLUDE = @INCLUDE@
|
jgross@1837
|
6 SITELISP = @SITELISP@
|
jgross@1837
|
7 VERSION = @VERSION@
|
jgross@1837
|
8 MLTONARGS = @MLTONARGS@
|
adamc@378
|
9
|
adam@1760
|
10 LIB_UR = $(SRCLIB)/ur
|
adam@1760
|
11 LIB_C = $(SRCLIB)/c
|
adam@1760
|
12 LIB_JS = $(SRCLIB)/js
|
adamc@1095
|
13
|
adamc@1132
|
14 all-local: smlnj mlton
|
adamc@378
|
15
|
adamc@1132
|
16 SUBDIRS = src/c
|
adamc@378
|
17
|
adamc@1133
|
18 .PHONY: smlnj mlton package reauto
|
adamc@378
|
19
|
adam@1847
|
20 smlnj: src/urweb.cm xml/entities.sml
|
adamc@378
|
21 mlton: bin/urweb
|
adamc@855
|
22
|
adamc@1132
|
23 clean-local:
|
adamc@378
|
24 rm -f src/*.mlton.grm.* src/*.mlton.lex.* \
|
adam@1592
|
25 src/urweb.cm src/urweb.mlb xml/parse xml/entities.sml
|
adamc@378
|
26 rm -rf .cm src/.cm
|
adamc@378
|
27
|
adamc@378
|
28 src/urweb.cm: src/prefix.cm src/sources
|
adamc@378
|
29 cat src/prefix.cm src/sources \
|
adamc@378
|
30 >src/urweb.cm
|
adamc@378
|
31
|
adamc@378
|
32 src/urweb.mlb: src/prefix.mlb src/sources src/suffix.mlb
|
adamc@378
|
33 cat src/prefix.mlb src/sources src/suffix.mlb \
|
adamc@1159
|
34 | sed -e 's/^\(.*\).grm$$/\1.mlton.grm.sig:\1.mlton.grm.sml/' -e 'y/:/\n/' \
|
adamc@1159
|
35 -e 's/^\(.*\).lex$$/\1.mlton.lex.sml/' \
|
adamc@791
|
36 >$@
|
adamc@378
|
37
|
adamc@1154
|
38 src/urweb.mlton.lex: src/urweb.lex
|
adamc@378
|
39 cp $< $@
|
adamc@1154
|
40 src/urweb.mlton.grm: src/urweb.grm
|
adamc@378
|
41 cp $< $@
|
adamc@378
|
42
|
adamc@1154
|
43 src/urweb.mlton.lex.sml: src/urweb.mlton.lex
|
adamc@378
|
44 mllex $<
|
adamc@378
|
45
|
adamc@1154
|
46 src/urweb.mlton.grm.sig src/urweb.mlton.grm.sml: src/urweb.mlton.grm
|
adamc@378
|
47 mlyacc $<
|
adamc@378
|
48
|
adam@1760
|
49 MLTON = mlton
|
adamc@378
|
50
|
adamc@1132
|
51 #ifdef DEBUG
|
adamc@1132
|
52 # MLTON += -const 'Exn.keepHistory true'
|
adamc@1132
|
53 #endif
|
adamc@378
|
54
|
adamc@1132
|
55 #ifdef PROFILE
|
adamc@1132
|
56 # MLTON += -profile $(PROFILE)
|
adamc@1132
|
57 #endif
|
adamc@507
|
58
|
adam@1592
|
59 bin/urweb: xml/entities.sml \
|
adam@1592
|
60 src/compiler.mlb src/urweb.mlb src/*.sig src/*.sml \
|
adamc@378
|
61 src/urweb.mlton.lex.sml \
|
adamc@378
|
62 src/urweb.mlton.grm.sig src/urweb.mlton.grm.sml
|
jgross@1837
|
63 $(MLTON) $(MLTONARGS) -output $@ src/compiler.mlb
|
adamc@378
|
64
|
adam@1592
|
65 xml/entities.sml: xml/parse xml/xhtml-lat1.ent xml/xhtml-special.ent xml/xhtml-symbol.ent
|
adam@1592
|
66 xml/parse >xml/entities.sml
|
adam@1592
|
67
|
adam@1592
|
68 xml/parse: xml/parse.sml
|
jgross@1842
|
69 $(MLTON) $(MLTONARGS) xml/parse.sml
|
adam@1592
|
70
|
adam@1441
|
71 install-exec-emacs:
|
adam@1441
|
72 if USE_EMACS
|
adam@1441
|
73 mkdir -p $(DESTDIR)$(SITELISP)
|
adam@1441
|
74 cp src/elisp/*.el $(DESTDIR)$(SITELISP)/
|
adam@1441
|
75 endif
|
adam@1441
|
76
|
adam@1441
|
77 install-exec-local-main:
|
adam@1440
|
78 mkdir -p $(DESTDIR)$(BIN)
|
adam@1733
|
79 install bin/urweb $(DESTDIR)$(BIN)/
|
adam@1440
|
80 mkdir -p $(DESTDIR)$(LIB_UR)
|
adam@1440
|
81 cp lib/ur/*.urs $(DESTDIR)$(LIB_UR)/
|
adam@1440
|
82 cp lib/ur/*.ur $(DESTDIR)$(LIB_UR)/
|
adam@1440
|
83 mkdir -p $(DESTDIR)$(LIB_JS)
|
adam@1440
|
84 cp lib/js/*.js $(DESTDIR)$(LIB_JS)/
|
adam@1440
|
85 mkdir -p $(DESTDIR)$(INCLUDE)
|
ezyang@1739
|
86 cp include/urweb/*.h $(DESTDIR)$(INCLUDE)/
|
adam@1441
|
87
|
adam@1441
|
88 install-exec-local: install-exec-local-main install-exec-emacs
|
adamc@1134
|
89 -ldconfig
|
adamc@427
|
90
|
adam@1441
|
91 uninstall-emacs:
|
adam@1441
|
92 if USE_EMACS
|
adam@1441
|
93 rm -f $(DESTDIR)$(SITELISP)/urweb-compat.el $(DESTDIR)$(SITELISP)/urweb-mode.el $(DESTDIR)$(SITELISP)/urweb-move.el \
|
adam@1441
|
94 $(DESTDIR)$(SITELISP)/urweb-defs.el $(DESTDIR)$(SITELISP)/urweb-mode-startup.el $(DESTDIR)$(SITELISP)/urweb-util.el
|
adam@1441
|
95 endif
|
adam@1441
|
96
|
adam@1441
|
97 uninstall-local-main:
|
adam@1440
|
98 rm -f $(DESTDIR)$(BIN)/urweb \
|
adam@1440
|
99 $(DESTDIR)$(LIB_UR)/basis.urs $(DESTDIR)$(LIB_UR)/char.urs $(DESTDIR)$(LIB_UR)/listPair.urs $(DESTDIR)$(LIB_UR)/list.urs \
|
adam@1440
|
100 $(DESTDIR)$(LIB_UR)/monad.urs $(DESTDIR)$(LIB_UR)/option.urs $(DESTDIR)$(LIB_UR)/string.urs $(DESTDIR)$(LIB_UR)/top.urs \
|
adam@1440
|
101 $(DESTDIR)$(LIB_UR)/char.ur $(DESTDIR)$(LIB_UR)/listPair.ur $(DESTDIR)$(LIB_UR)/list.ur \
|
adam@1440
|
102 $(DESTDIR)$(LIB_UR)/monad.ur $(DESTDIR)$(LIB_UR)/option.ur $(DESTDIR)$(LIB_UR)/string.ur $(DESTDIR)$(LIB_UR)/top.ur \
|
adam@1440
|
103 $(DESTDIR)$(LIB_JS)/urweb.js \
|
adam@1440
|
104 $(DESTDIR)$(INCLUDE)/config.h $(DESTDIR)$(INCLUDE)/queue.h $(DESTDIR)$(INCLUDE)/request.h $(DESTDIR)$(INCLUDE)/types.h \
|
adam@1441
|
105 $(DESTDIR)$(INCLUDE)/urweb.h
|
adam@1441
|
106
|
adam@1441
|
107 uninstall-local: uninstall-local-main uninstall-emacs
|
adam@1399
|
108
|
adamc@427
|
109 package:
|
adam@1520
|
110 hg archive -t tgz -X tests "/tmp/urweb-$(VERSION).tgz"
|
adamc@1132
|
111
|
adamc@1133
|
112 reauto:
|
adamc@1135
|
113 -autoreconf
|
adamc@1133
|
114 libtoolize -cf
|
adamc@1133
|
115 automake --add-missing --force-missing --copy
|
adamc@1133
|
116 autoreconf
|
adam@1895
|
117
|
adam@1895
|
118 EXTRA_DIST = demo/* doc/* lib/js/* lib/ur/* src/* src/coq/* xml/*
|