*.spot
*.spit
*.annot
+*.runner
# auto generate file
Shell. +=
ocaml-clean(argv) =
- rm -f *.cm[aiox] *.o *.omc *.opt *.run *~ $(argv) *.cmxa *.a *.spot *.spit *.annot
+ rm -f *.cm[aiox] *.o *.omc *.opt *.run *~ $(argv) *.cmxa *.a *.spot *.spit *.annot *.runner
# ------------------------------
# camlp4 rules
(grep "FAIL\|ERROR\|Error\|Fail" && exit 1) || exit 0
public.OUnitTest(name,files) =
- .PHONY: check check-$(name) clean
+ protected.test_file = $(addsuffix Test,$(name))
+ protected.target = $(addsuffix .runner,$(test_file))
protected.src_files = $(addprefix $(OUNIT_SRC_DIR),$(files))
- OCamlProgram($(name),$(name) $(src_files) $(OUNIT_LIBS))
- check-$(name): $(name)$(EXE)
- ./$(name)$(EXE) | ounit-postproc
+ .PHONY: check check-$(name) clean
+ OCamlProgram($(target), $(test_file) $(src_files) $(OUNIT_LIBS))
+
+ check-$(name): $(target)
+ $(addprefix ./,$(target)) | ounit-postproc
check: check-$(name)
- clean:
- rm -f $(name)$(EXE)
-
export
# ------------------------------
OCAML_LIBS += $(ROOT)/base/base
-OUnitTest(colorTest,color)
-OUnitTest(ruleTest,rule)
+OUnitTest(color,color)
+OUnitTest(rule ,rule)
#
# PHONY TARGET
UseCamlp4(pa_oo)
FILES[] =
+ token
parsec
lexer
sexp
hListTest
interCodeTest
-PROGRAM = runner
-OCAML_LIBS += $(SRC)/habc-scm
-
-OCamlProgram($(PROGRAM), $(FILES))
-
+E[]=
+OUnitTest(base,$(E))
+OUnitTest(hList,$(E))
+OUnitTest(interCode,interCode)
#############################################################
#
# PHONY Target
#
.DEFAULT: check
-check: $(PROGRAM)$(EXE)
- ./$(PROGRAM)$(EXE) | ounit-postproc
clean:
- ocaml-clean $(PROGRAM)
+ ocaml-clean
codegenClassTest
overrideTest
-PROGRAM = runner
-
OCAMLINCLUDES += $(SRC)/codegen/
-OCAML_LIBS += $(SRC)/codegen/codegen
+OUNIT_SRC_DIR=$(SRC)/codegen/
+
+OUNIT_LIBS+=astUtil
+
+OUnitTest(bytes , bytes label)
+OUnitTest(abc , abc label bytes)
+OUnitTest(revList , revList)
+OUnitTest(cpool , cpool abc revList label bytes)
+OUnitTest(closureTrans , closureTrans module)
+OUnitTest(asm , asm abc label revList cpool bytes instruction)
+OUnitTest(codegenExpr , codegen label cpool asm bytes revList instruction)
+OUnitTest(codegenStmt , codegen label cpool asm bytes revList instruction)
+OUnitTest(codegenClass , codegen label cpool asm bytes revList instruction)
+OUnitTest(override , override binding module)
-OCamlProgram($(PROGRAM), $(FILES))
#############################################################
#
#
.DEFAULT: check
-check: $(PROGRAM)$(EXE)
- ./$(PROGRAM)$(EXE) | ounit-postproc
-
clean:
- ocaml-clean $(PROGRAM)
+ ocaml-clean
# Build an OCaml program
#
-FILES[] =
- astUtil
- bindingTest
-
-PROGRAM = runner
-
OCAMLINCLUDES += $(SRC)/filter
-OCAML_LIBS += $(SRC)/filter/filter
-
-OCamlProgram($(PROGRAM), $(FILES))
+OUNIT_SRC_DIR=$(SRC)/filter/
+OUNIT_LIBS+=astUtil
+OUnitTest(binding, binding)
#############################################################
#
#
.DEFAULT: check
-check: $(PROGRAM)$(EXE)
- ./$(PROGRAM)$(EXE) | ounit-postproc
-
clean:
- ocaml-clean $(PROGRAM)
+ ocaml-clean
# Build an OCaml program
#
-FILES[] =
- lexerTest
- sexpTest
- astUtil
- lispTest
-
-PROGRAM = runner
-
-
OCAMLINCLUDES += $(SRC)/parser
-OCAML_LIBS += $(SRC)/parser/parser
+OUNIT_LIBS += astUtil
+OUNIT_SRC_DIR=$(SRC)/parser/
+
+OUnitTest(lexer ,lexer parsec)
+OUnitTest(sexp ,sexp lexer parsec)
+OUnitTest(lisp ,lisp sexp parsec lexer)
-OCamlProgram($(PROGRAM), $(FILES))
#############################################################
#
# PHONY Target
#
-.DEFAULT: check
-
-check: $(PROGRAM)$(EXE)
- ./$(PROGRAM)$(EXE) | ounit-postproc
clean:
- ocaml-clean $(PROGRAM)
+ ocaml-clean
# Build an OCaml program
#
-FILES[] =
- psetTest
- nodeTest
-
-PROGRAM = runner
-
OCAMLINCLUDES += $(SRC)/type
-OCAML_LIBS += $(SRC)/type/type
+OUNIT_SRC_DIR=$(SRC)/type/
-OCamlProgram($(PROGRAM), $(FILES))
+OUnitTest(pset, pSet)
+OUnitTest(node, node)
#############################################################
#
#
.DEFAULT: check
-check: $(PROGRAM)$(EXE)
- ./$(PROGRAM)$(EXE) | ounit-postproc
-
clean:
- ocaml-clean $(PROGRAM)
+ ocaml-clean
OCAMLINCLUDES += $(ROOT)/base/
OCAML_LIBS += $(ROOT)/base/base
-OUnitTest(byteTest ,byte parsec)
-OUnitTest(abcTest ,abc parsec disasm byte)
-OUnitTest(swfmillTest,swfmill easyXml abc code byte disasm parsec)
-OUnitTest(codeTest ,code easyXml)
+OUnitTest(byte ,byte parsec)
+OUnitTest(abc ,abc parsec disasm byte)
+OUnitTest(swfmill,swfmill easyXml abc code byte disasm parsec)
+OUnitTest(code ,code easyXml)
#
# PHONY TARGET