blob: b202772728e38d3807fd214e5dd896b673615877 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
BASEDIR=../..
CSC=csc
default:
@if [ -z "$(BYTECODE_ONLY)" ]; then \
$(MAKE) all; \
fi
all: prepare bytecode bytecode-dll native native-dll
prepare:
@$(OCAMLC) -c plugin.ml
@$(OCAMLOPT) -o plugin.cmxs -shared plugin.ml
bytecode:
@printf " ... testing 'bytecode':"
@if [ ! `which $(CSC) > /dev/null 2>&1` ]; then \
echo " => passed"; \
else \
$(OCAMLC) -output-obj -o main.dll dynlink.cma main.ml entry.c; \
$(CSC) /out:main.exe main.cs; \
./main.exe > bytecode.result; \
$(DIFF) bytecode.reference bytecode.result > /dev/null && echo " => passed" || echo " => failed"; \
fi
bytecode-dll:
@printf " ... testing 'bytecode-dll':"
@if [ ! `which $(CSC) > /dev/null 2>&1` ]; then \
echo " => passed"; \
else \
$(OCAMLC) -output-obj -o main_obj.$(O) dynlink.cma entry.c main.ml; \
$(MKDLL) -maindll -o main.dll main_obj.$(O) entry.$(O) ../../byterun/libcamlrun.$(A) $(BYTECCLIBS) -v; \
$(CSC) /out:main.exe main.cs; \
./main.exe > bytecode.result; \
$(DIFF) bytecode.reference bytecode.result > /dev/null && echo " => passed" || echo " => failed"; \
fi
native:
@printf " ... testing 'native':"
@if [ ! `which $(CSC) > /dev/null 2>&1` ]; then \
echo " => passed"; \
else \
$(OCAMLOPT) -output-obj -o main.dll dynlink.cmxa entry.c main.ml; \
$(CSC) /out:main.exe main.cs; \
./main.exe > native.result; \
$(DIFF) native.reference native.result > /dev/null && echo " => passed" || echo " => failed"; \
fi
native-dll:
@printf " ... testing 'native-dll':"
@if [ ! `which $(CSC) > /dev/null 2>&1` ]; then \
echo " => passed"; \
else \
$(OCAMLOPT) -output-obj -o main_obj.$(O) dynlink.cmxa entry.c main.ml; \
$(MKDLL) -maindll -o main.dll main_obj.$(O) entry.$(O) ../../asmrun/libasmrun.lib -v; \
$(CSC) /out:main.exe main.cs; \
./main.exe > native.result; \
$(DIFF) native.reference native.result > /dev/null && echo " => passed" || echo " => failed"; \
fi
promote: defaultpromote
clean: defaultclean
@rm -f *.result *.exe *.dll
include $(BASEDIR)/makefiles/Makefile.common
|