Commit | Line | Data |
---|---|---|
7f918cf1 CE |
1 | ## Copyright (C) 2010 Matthew Fluet. |
2 | # | |
3 | # MLton is released under a BSD-style license. | |
4 | # See the file MLton-LICENSE for details. | |
5 | ## | |
6 | ||
7 | # | |
8 | # SML/NJ tools and heap suffix | |
9 | # | |
10 | ML_BUILD := ml-build | |
11 | ML_BUILD_FLAGS := | |
12 | ML_HEAP_SUFFIX := $(shell echo 'TextIO.output (TextIO.stdErr, SMLofNJ.SysInfo.getHeapSuffix ());' | sml 2>&1 1> /dev/null) | |
13 | ||
14 | # | |
15 | # cm2mlb root .cm | |
16 | # | |
17 | CM2MLB_CM := cm2mlb.cm | |
18 | # | |
19 | # cm2mlb heap image | |
20 | # | |
21 | CM2MLB_HEAP := cm2mlb.$(ML_HEAP_SUFFIX) | |
22 | ||
23 | all: $(CM2MLB_HEAP) | |
24 | ||
25 | $(CM2MLB_HEAP): cm2mlb.cm cm2mlb.sml gen-mlb.sml cm2mlb-map | |
26 | rm -f $(CM2MLB_HEAP) | |
27 | # $(ML_BUILD) $(ML_BUILD_FLAGS) $(CM2MLB_CM) CM2MLB.main $(CM2MLB_HEAP) | |
28 | ( \ | |
29 | echo 'if (CM.make "cm2mlb.cm") handle _ => false'; \ | |
30 | echo ' then ()'; \ | |
31 | echo ' else OS.Process.exit OS.Process.failure;'; \ | |
32 | echo 'CM2MLB.export();' \ | |
33 | ) | sml | |
34 | ||
35 | .PHONY: clean | |
36 | clean: | |
37 | ../../bin/clean | |
38 | ||
39 | SMLDIR := $(dir $(shell which sml)) | |
40 | .PHONY: install | |
41 | install: $(CM2MLB_HEAP) | |
42 | rm -f $(SMLDIR).heap/$(CM2MLB_HEAP) $(SMLDIR)cm2mlb | |
43 | cp $(CM2MLB_HEAP) $(SMLDIR).heap | |
44 | (cd $(SMLDIR) ; ln -s .run-sml cm2mlb) |