blob: 1ed2d2114dc25aa422315eab7e11171f67362de7 [file] [log] [blame]
danghvu72a196e2013-11-27 10:00:13 -06001TMPDIR = /tmp/capstone_test
2
danghvu7b088042013-11-27 10:58:31 -06003DIFF = diff -u -w
danghvu72a196e2013-11-27 10:00:13 -06004
5TEST = $(TMPDIR)/test
6TEST_ARM = $(TMPDIR)/test_arm
7TEST_ARM64 = $(TMPDIR)/test_arm64
8TEST_MIPS = $(TMPDIR)/test_mips
Nguyen Anh Quynh1055a2e2014-03-10 14:37:08 +08009TEST_PPC = $(TMPDIR)/test_ppc
10TEST_SPARC = $(TMPDIR)/test_sparc
Nguyen Anh Quynh1c8405d2014-03-23 11:17:24 +080011TEST_SYSZ = $(TMPDIR)/test_systemz
danghvu72a196e2013-11-27 10:00:13 -060012TEST_X86 = $(TMPDIR)/test_x86
Nguyen Anh Quynh553bb482014-05-26 23:47:04 +080013TEST_XCORE = $(TMPDIR)/test_xcore
danghvu72a196e2013-11-27 10:00:13 -060014
Nguyen Anh Quynhd6ef46a2013-12-02 18:06:31 +080015.PHONY: all expected python java ocaml
16
17all:
danghvu0c478ab2014-05-12 14:35:54 -050018 cd python && $(MAKE) gen_const
19 cd java && $(MAKE) gen_const
Nguyen Anh Quynh586be762014-09-21 23:23:38 +080020 cd ocaml && $(MAKE) gen_const
Nguyen Anh Quynhd6ef46a2013-12-02 18:06:31 +080021
danghvu9ed9d852013-12-01 13:27:05 -060022tests: expected python java #oclma ruby
danghvu72a196e2013-11-27 10:00:13 -060023
danghvu486111c2013-12-05 19:36:28 -060024test_java: expected java
25test_python: expected python
26
danghvu72a196e2013-11-27 10:00:13 -060027expected:
danghvu0c478ab2014-05-12 14:35:54 -050028 cd ../tests && $(MAKE)
danghvu72a196e2013-11-27 10:00:13 -060029 mkdir -p $(TMPDIR)
30 ../tests/test > $(TEST)_e
31 ../tests/test_arm > $(TEST_ARM)_e
32 ../tests/test_arm64 > $(TEST_ARM64)_e
33 ../tests/test_mips > $(TEST_MIPS)_e
Nguyen Anh Quynh1055a2e2014-03-10 14:37:08 +080034 ../tests/test_ppc > $(TEST_PPC)_e
35 ../tests/test_sparc > $(TEST_SPARC)_e
Nguyen Anh Quynh1c8405d2014-03-23 11:17:24 +080036 ../tests/test_systemz > $(TEST_SYSZ)_e
danghvu72a196e2013-11-27 10:00:13 -060037 ../tests/test_x86 > $(TEST_X86)_e
Nguyen Anh Quynh553bb482014-05-26 23:47:04 +080038 ../tests/test_xcore > $(TEST_XCORE)_e
danghvu72a196e2013-11-27 10:00:13 -060039
40python: FORCE
danghvu0c478ab2014-05-12 14:35:54 -050041 cd python && $(MAKE)
danghvu72a196e2013-11-27 10:00:13 -060042 python python/test.py > $(TEST)_o
43 python python/test_arm.py > $(TEST_ARM)_o
44 python python/test_arm64.py > $(TEST_ARM64)_o
45 python python/test_mips.py > $(TEST_MIPS)_o
Nguyen Anh Quynh1055a2e2014-03-10 14:37:08 +080046 python python/test_ppc.py > $(TEST_PPC)_o
47 python python/test_sparc.py > $(TEST_SPARC)_o
Nguyen Anh Quynh1c8405d2014-03-23 11:17:24 +080048 python python/test_systemz.py > $(TEST_SYSZ)_o
danghvu72a196e2013-11-27 10:00:13 -060049 python python/test_x86.py > $(TEST_X86)_o
Nguyen Anh Quynh553bb482014-05-26 23:47:04 +080050 python python/test_xcore.py > $(TEST_XCORE)_o
danghvu9ed9d852013-12-01 13:27:05 -060051 $(MAKE) test_diff
danghvu72a196e2013-11-27 10:00:13 -060052
53java: FORCE
danghvu0c478ab2014-05-12 14:35:54 -050054 cd java && $(MAKE)
55 cd java && ./run.sh > $(TEST)_o
56 cd java && ./run.sh arm > $(TEST_ARM)_o
57 cd java && ./run.sh arm64 > $(TEST_ARM64)_o
58 cd java && ./run.sh mips > $(TEST_MIPS)_o
59 cd java && ./run.sh ppc > $(TEST_PPC)_o
60 cd java && ./run.sh sparc > $(TEST_SPARC)_o
61 cd java && ./run.sh systemz > $(TEST_SYSZ)_o
62 cd java && ./run.sh x86 > $(TEST_X86)_o
Nguyen Anh Quynh553bb482014-05-26 23:47:04 +080063 cd java && ./run.sh xcore > $(TEST_XCORE)_o
danghvu9ed9d852013-12-01 13:27:05 -060064 $(MAKE) test_diff
danghvu72a196e2013-11-27 10:00:13 -060065
Nguyen Anh Quynhd6ef46a2013-12-02 18:06:31 +080066ocaml: FORCE
67
danghvu9ed9d852013-12-01 13:27:05 -060068test_diff: FORCE
danghvu72a196e2013-11-27 10:00:13 -060069 $(DIFF) $(TEST)_e $(TEST)_o
70 $(DIFF) $(TEST_ARM)_e $(TEST_ARM)_o
71 $(DIFF) $(TEST_ARM64)_e $(TEST_ARM64)_o
72 $(DIFF) $(TEST_MIPS)_e $(TEST_MIPS)_o
Nguyen Anh Quynh1055a2e2014-03-10 14:37:08 +080073 $(DIFF) $(TEST_PPC)_e $(TEST_PPC)_o
74 $(DIFF) $(TEST_SPARC)_e $(TEST_SPARC)_o
Nguyen Anh Quynh1c8405d2014-03-23 11:17:24 +080075 $(DIFF) $(TEST_SYSZ)_e $(TEST_SYSZ)_o
danghvu72a196e2013-11-27 10:00:13 -060076 $(DIFF) $(TEST_X86)_e $(TEST_X86)_o
Nguyen Anh Quynh553bb482014-05-26 23:47:04 +080077 $(DIFF) $(TEST_XCORE)_e $(TEST_XCORE)_o
danghvu72a196e2013-11-27 10:00:13 -060078
danghvuc698fb62013-12-01 13:48:53 -060079clean:
80 rm -rf $(TMPDIR)
danghvu0c478ab2014-05-12 14:35:54 -050081 cd java && $(MAKE) clean
82 cd python && $(MAKE) clean
Nguyen Anh Quynh586be762014-09-21 23:23:38 +080083 cd ocaml && $(MAKE) clean
danghvuc698fb62013-12-01 13:48:53 -060084
Nguyen Anh Quynh984d4502014-10-01 16:42:29 +080085check:
86 make -C ocaml check
87 make -C python check
88 make -C java check
89
danghvu72a196e2013-11-27 10:00:13 -060090FORCE: