Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/vis15/src/compiler/Makefile_mlton.in
ViewVC logotype

Annotation of /branches/vis15/src/compiler/Makefile_mlton.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3731 - (view) (download)

1 : jhr 3715 # Makefile_mlton.in
2 :     #
3 :     # This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)
4 :     #
5 :     # COPYRIGHT (c) 2015 The University of Chicago
6 :     # All rights reserved.
7 :     #
8 :     # @configure_input@
9 :     #
10 :     # A Makefile for when we are using mlton to build the compiler
11 :     #
12 :    
13 :     #### Start of system configuration section. ####
14 :    
15 :     #
16 :     # directories for the install target
17 :     #
18 :     PREFIX = @prefix@
19 :     INSTALL_BINDIR = $(PREFIX)/bin
20 :     INSTALL_LIBDIR = $(PREFIX)/lib
21 :     INSTALL_INCDIR = $(PREFIX)/include
22 :    
23 :     #
24 :     # directories for the local-install target
25 :     #
26 :     SRCDIR = @DIDEROT_ROOT@/src
27 :     LIBDIR = @DIDEROT_ROOT@/lib
28 :     BINDIR = @DIDEROT_ROOT@/bin
29 :    
30 : jhr 3722 #
31 :     # configuration support
32 :     #
33 :     CONFIGDIR = @DIDEROT_ROOT@/config
34 :    
35 : jhr 3715 INSTALL = @INSTALL@
36 :     SHELL = @SHELL@
37 :     @SET_MAKE@
38 :    
39 :     MLTON = @MLTON@
40 : jhr 3726 MLTON_FLAGS = -const 'Exn.keepHistory true'
41 : jhr 3715
42 :     #### End of system configuration section. ####
43 :    
44 :     PROGRAM = diderotc
45 :     ROOT_MLB = driver/sources.mlb
46 :    
47 : jhr 3722 #
48 :     # generated parser files
49 :     #
50 : jhr 3731 PARSER_FILES = parser/diderot.grm.sml parser/diderot.lex.sml
51 : jhr 3722 #
52 :     # preprocess files that contain UTF-8 multibyte sequences
53 :     #
54 : jhr 3726 UTF8_FILES = cfg-ir/dom-tree-fn.sml \
55 :     ein/ein-pp.sml \
56 :     parse-tree/operators.sml \
57 :     typechecker/check-expr.sml
58 : jhr 3722 EXPANDED_FILES = $(patsubst %.sml,%_mlton.sml,$(UTF8_FILES))
59 :    
60 : jhr 3715 CODE_FRAG_FILES =
61 :    
62 :     .PHONY: local-install
63 :     local-install: $(PROGRAM)
64 :     cp -p $(PROGRAM) $(BINDIR)
65 :    
66 :     .PHONY: install
67 :     install: $(HEAP_IMAGE)
68 :     cp -p $(PROGRAM) $(INSTALL_BINDIR)
69 :    
70 :     .PHONY: build
71 :     build: $(PROGRAM)
72 :    
73 : jhr 3722 $(PROGRAM): $(ROOT_MLB) $(CODE_FRAG_FILES) $(PARSER_FILES) $(EXPANDED_FILES)
74 : jhr 3726 $(MLTON) $(MLTON_FLAGS) -output $(PROGRAM) $(ROOT_MLB)
75 : jhr 3715
76 :     .PHONY: typecheck
77 : jhr 3722 typecheck: $(ROOT_MLB) $(CODE_FRAG_FILES) $(PARSER_FILES) $(EXPANDED_FILES)
78 : jhr 3726 $(MLTON) -stop tc $(MLTON_FLAGS) $(ROOT_MLB)
79 : jhr 3715
80 : jhr 3722 #
81 :     # Generate the scanner and parser from specs
82 :     #
83 : jhr 3715 parser/diderot.grm.sml: parser/diderot.grm
84 :     cd parser; ml-antlr diderot.grm
85 :    
86 :     parser/diderot.lex.sml: parser/diderot.lex
87 :     cd parser; ml-ulex --strict-sml diderot.lex
88 :    
89 : jhr 3722 #
90 :     # preprocess files that contain UTF-8 multibyte sequences
91 :     #
92 :    
93 :     $(EXPANDED_FILES): %_mlton.sml: %.sml expand-utf8
94 :     expand-utf8 < $< > $@
95 : jhr 3726
96 : jhr 3722 .phony: UTF8
97 :     UTF8:
98 :     expand-utf8: $(CONFIGDIR)/expand-utf8.c
99 :     $(CC) -o expand-utf8 $(CONFIGDIR)/expand-utf8.c
100 :    
101 : jhr 3715 #################### Cleanup ####################
102 :    
103 :     CLEAN_SUBDIRS =
104 :    
105 :     CLEAN_FILES += $(PROGRAM) \
106 : jhr 3722 $(CODE_FRAG_FILES) \
107 : jhr 3726 $(PARSER_FILES) \
108 :     $(EXPANDED_FILES) \
109 : jhr 3722 expand-utf8
110 : jhr 3715
111 :     DISTCLEAN_FILES += Makefile \
112 :     common/paths.sml \
113 :     common/size-of.sml \
114 :     nrrd/run-dnorm.sml
115 :    
116 :     DEVCLEAN_FILES =
117 :    
118 :     include @DIDEROT_MKDIR@/clean-rules.gmk

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0