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 3722 - (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 :    
41 :     #### End of system configuration section. ####
42 :    
43 :     PROGRAM = diderotc
44 :     ROOT_MLB = driver/sources.mlb
45 :    
46 : jhr 3722 #
47 :     # generated parser files
48 :     #
49 :     PARSER_FILES = parser/diderot.grm parser/diderot.lex
50 :     #
51 :     # preprocess files that contain UTF-8 multibyte sequences
52 :     #
53 :     UTF8_FILES = parse-tree/operators.sml
54 :     EXPANDED_FILES = $(patsubst %.sml,%_mlton.sml,$(UTF8_FILES))
55 :    
56 : jhr 3715 CODE_FRAG_FILES =
57 :    
58 :     .PHONY: local-install
59 :     local-install: $(PROGRAM)
60 :     cp -p $(PROGRAM) $(BINDIR)
61 :    
62 :     .PHONY: install
63 :     install: $(HEAP_IMAGE)
64 :     cp -p $(PROGRAM) $(INSTALL_BINDIR)
65 :    
66 :     .PHONY: build
67 :     build: $(PROGRAM)
68 :    
69 : jhr 3722 $(PROGRAM): $(ROOT_MLB) $(CODE_FRAG_FILES) $(PARSER_FILES) $(EXPANDED_FILES)
70 : jhr 3715 $(MLTON) -output $(PROGRAM) $(ROOT_MLB)
71 :    
72 :     .PHONY: typecheck
73 : jhr 3722 typecheck: $(ROOT_MLB) $(CODE_FRAG_FILES) $(PARSER_FILES) $(EXPANDED_FILES)
74 : jhr 3715 $(MLTON) -stop tc $(ROOT_MLB)
75 :    
76 : jhr 3722 #
77 :     # Generate the scanner and parser from specs
78 :     #
79 : jhr 3715 parser/diderot.grm.sml: parser/diderot.grm
80 :     cd parser; ml-antlr diderot.grm
81 :    
82 :     parser/diderot.lex.sml: parser/diderot.lex
83 :     cd parser; ml-ulex --strict-sml diderot.lex
84 :    
85 : jhr 3722 #
86 :     # preprocess files that contain UTF-8 multibyte sequences
87 :     #
88 :     UTF8_FILES = parse-tree/operators.sml
89 :     EXPANDED_FILES = $(patsubst %.sml,%_mlton.sml,$(UTF8_FILES))
90 :    
91 :     $(EXPANDED_FILES): %_mlton.sml: %.sml expand-utf8
92 :     expand-utf8 < $< > $@
93 :    
94 :     .phony: UTF8
95 :     UTF8:
96 :     expand-utf8: $(CONFIGDIR)/expand-utf8.c
97 :     $(CC) -o expand-utf8 $(CONFIGDIR)/expand-utf8.c
98 :    
99 : jhr 3715 #################### Cleanup ####################
100 :    
101 :     CLEAN_SUBDIRS =
102 :    
103 :     CLEAN_FILES += $(PROGRAM) \
104 :     */*.grm.sml \
105 :     */*.lex.sml \
106 : jhr 3722 $(CODE_FRAG_FILES) \
107 :     expand-utf8
108 : jhr 3715
109 :     DISTCLEAN_FILES += Makefile \
110 :     common/paths.sml \
111 :     common/size-of.sml \
112 :     nrrd/run-dnorm.sml
113 :    
114 :     DEVCLEAN_FILES =
115 :    
116 :     include @DIDEROT_MKDIR@/clean-rules.gmk

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