|
Lines 12-18
Link Here
|
| 12 |
HOST_ARCH := $(shell "$(SRC)/bin/host-arch") |
12 |
HOST_ARCH := $(shell "$(SRC)/bin/host-arch") |
| 13 |
HOST_OS := $(shell "$(SRC)/bin/host-os") |
13 |
HOST_OS := $(shell "$(SRC)/bin/host-os") |
| 14 |
LIB := $(BUILD)/lib |
14 |
LIB := $(BUILD)/lib |
| 15 |
MLTON := mlton |
15 |
MLTON := ../../usr/bin/mlton |
| 16 |
TARGET := self |
16 |
TARGET := self |
| 17 |
AOUT := mlton-compile |
17 |
AOUT := mlton-compile |
| 18 |
UP := upgrade-basis.sml |
18 |
UP := upgrade-basis.sml |
|
Lines 43-54
Link Here
|
| 43 |
endif |
43 |
endif |
| 44 |
endif |
44 |
endif |
| 45 |
|
45 |
|
| 46 |
ifeq (new,$(shell PATH="$(BIN):$$PATH"; mlton -target self >/dev/null 2>&1 && echo new)) |
46 |
ifeq (new,$(shell PATH="$(BIN):$$PATH"; $(MLTON) -target self >/dev/null 2>&1 && echo new)) |
| 47 |
FLAGS += -target $(TARGET) |
47 |
FLAGS += -target $(TARGET) |
| 48 |
else |
48 |
else |
| 49 |
FLAGS += -host $(TARGET) |
49 |
FLAGS += -host $(TARGET) |
| 50 |
endif |
50 |
endif |
| 51 |
ifeq (new,$(shell PATH="$(BIN):$$PATH"; mlton -verbose 1 >/dev/null 2>&1 && echo new)) |
51 |
ifeq (new,$(shell PATH="$(BIN):$$PATH"; $(MLTON) -verbose 1 >/dev/null 2>&1 && echo new)) |
| 52 |
FLAGS += -verbose 2 -output "$(AOUT)" |
52 |
FLAGS += -verbose 2 -output "$(AOUT)" |
| 53 |
else |
53 |
else |
| 54 |
FLAGS += -v -o "$(AOUT)" |
54 |
FLAGS += -v -o "$(AOUT)" |
|
Lines 64-70
Link Here
|
| 64 |
front-end/mlb.lex.sml \ |
64 |
front-end/mlb.lex.sml \ |
| 65 |
front-end/mlb.grm.sig \ |
65 |
front-end/mlb.grm.sig \ |
| 66 |
front-end/mlb.grm.sml \ |
66 |
front-end/mlb.grm.sml \ |
| 67 |
$(shell if [ -r $(FILE) ]; then mlton -stop f $(FILE); fi) |
67 |
$(shell if [ -r $(FILE) ]; then $(MLTON) -stop f $(FILE); fi) |
| 68 |
|
68 |
|
| 69 |
.PHONY: all |
69 |
.PHONY: all |
| 70 |
all: $(AOUT) |
70 |
all: $(AOUT) |
|
Lines 82-88
Link Here
|
| 82 |
rm -f $(UP) |
82 |
rm -f $(UP) |
| 83 |
$(MAKE) $(UP) |
83 |
$(MAKE) $(UP) |
| 84 |
@echo 'Compiling mlton (takes a while)' |
84 |
@echo 'Compiling mlton (takes a while)' |
| 85 |
mlton $(FLAGS) $(FILE) |
85 |
$(MLTON) $(FLAGS) $(FILE) |
| 86 |
|
86 |
|
| 87 |
#! Pass $(PATH) to upgrade-basis because it is run via #!/usr/bin/env |
87 |
#! Pass $(PATH) to upgrade-basis because it is run via #!/usr/bin/env |
| 88 |
# bash, which resets the path. |
88 |
# bash, which resets the path. |
|
Lines 90-100
Link Here
|
| 90 |
"$(SRC)/bin/upgrade-basis" '$(PATH)' "$(HOST_ARCH)" "$(HOST_OS)" >$(UP) |
90 |
"$(SRC)/bin/upgrade-basis" '$(PATH)' "$(HOST_ARCH)" "$(HOST_OS)" >$(UP) |
| 91 |
|
91 |
|
| 92 |
mlton.sml: $(SOURCES) |
92 |
mlton.sml: $(SOURCES) |
| 93 |
rm -f mlton.sml && mlton -stop sml mlton.cm && chmod -w mlton.sml |
93 |
rm -f mlton.sml && $(MLTON) -stop sml mlton.cm && chmod -w mlton.sml |
| 94 |
|
94 |
|
| 95 |
.PHONY: def-use |
95 |
.PHONY: def-use |
| 96 |
def-use: |
96 |
def-use: |
| 97 |
mlton -stop tc -prefer-abs-paths true -show-def-use mlton.def-use $(FILE) |
97 |
$(MLTON) -stop tc -prefer-abs-paths true -show-def-use mlton.def-use $(FILE) |
| 98 |
|
98 |
|
| 99 |
.PHONY: clean |
99 |
.PHONY: clean |
| 100 |
clean: |
100 |
clean: |
|
Lines 168-172
Link Here
|
| 168 |
|
168 |
|
| 169 |
.PHONY: warn |
169 |
.PHONY: warn |
| 170 |
warn: |
170 |
warn: |
| 171 |
mlton -stop tc -default-ann 'warnUnused true' $(FILE) \ |
171 |
$(MLTON) -stop tc -default-ann 'warnUnused true' $(FILE) \ |
| 172 |
>/tmp/z.warn 2>&1 |
172 |
>/tmp/z.warn 2>&1 |