Import Upstream version 20180207
[hcoop/debian/mlton.git] / util / cm2mlb / Makefile
... / ...
CommitLineData
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#
10ML_BUILD := ml-build
11ML_BUILD_FLAGS :=
12ML_HEAP_SUFFIX := $(shell echo 'TextIO.output (TextIO.stdErr, SMLofNJ.SysInfo.getHeapSuffix ());' | sml 2>&1 1> /dev/null)
13
14#
15# cm2mlb root .cm
16#
17CM2MLB_CM := cm2mlb.cm
18#
19# cm2mlb heap image
20#
21CM2MLB_HEAP := cm2mlb.$(ML_HEAP_SUFFIX)
22
23all: $(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
36clean:
37 ../../bin/clean
38
39SMLDIR := $(dir $(shell which sml))
40.PHONY: install
41install: $(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)