29 UseCamlp4(pa_openin pa_oo pa_field)
32 OCAMLINCLUDES += $(ROOT)/base
33 OCAML_LIBS += $(ROOT)/base/base
35 OCAMLOPT = ocamlopt -for-pack $(capitalize $(basename $(PROGRAM)))
36 OCAMLOPTLINK= ocamlopt
38 .DEFAULT: $(MyOCamlPackage $(PROGRAM), $(FILES))
40 OCamlProgram(gen_inst,gen_inst)
41 OCamlProgram(gen_typemap,gen_typemap)
42 OCamlProgram(main, main $(FILES))
45 OUnitTest(label , label)
46 OUnitTest(bytesOut , bytesOut label)
47 OUnitTest(bytesIn , bytesIn)
48 OUnitTest(abcIn , abcIn bytesIn bytesOut)
49 OUnitTest(lowInst , lowInst bytesOut bytesIn label)
50 OUnitTest(highInst , highInst label cpool revList)
51 OUnitTest(abcOut , abcOut label bytesOut)
52 OUnitTest(methodOut, methodOut cpool bytesOut label revList)
53 OUnitTest(revList , revList)
54 OUnitTest(cpool , cpool revList)
56 OUnitTest(swfOut, swfOut swfBaseOut bitsOut)
57 OUnitTest(tagOut, tagOut)
58 OUnitTest(swfBaseOut, swfBaseOut bitsOut)
59 OUnitTest(bitsOut, bitsOut)
64 %.type.h: gen_typemap$(EXE)
65 ./gen_typemap$(EXE) -$> > $@
67 %.inst.h: gen_inst$(EXE) instruction.txt
68 ./gen_inst$(EXE) -$> < instruction.txt > $@
70 %.tag.h: gen_inst$(EXE) tag.txt
71 ./gen_inst$(EXE) -$> < tag.txt > $@
73 %.pat.h: gen_inst$(EXE) instruction.txt
74 ./gen_inst$(EXE) -pat $> < instruction.txt > $@
76 %.extra.h: gen_inst$(EXE) instruction.txt
77 ./gen_inst$(EXE) -extra $> < instruction.txt > $@
79 .SCANNER: %.ml : %.mlp
80 (grep "#include \"" $<;true) | sed 's/.*"\(.*\)".*/'$@': \1/'
83 ocaml-clean *.h lowInst.ml gen_inst$(EXE) gen_typemap$(EXE)