contrib/jwrapper: check-libs depends on each other and nitpick the result
[nit.git] / contrib / jwrapper / Makefile
1 all: bin/jwrapper
2
3 ../nitcc/src/nitcc:
4 make -C ../nitcc
5
6 src/javap_test_parser.nit: ../nitcc/src/nitcc grammar/javap.sablecc
7 ../nitcc/src/nitcc grammar/javap.sablecc
8 mkdir -p src gen
9 mv javap_*.nit src/
10 mv javap* gen/
11
12 bin/jwrapper: src/javap_test_parser.nit $(shell ../../bin/nitls -M src/jwrapper.nit) ../../bin/nitc
13 mkdir -p bin
14 ../../bin/nitc src/jwrapper.nit -o bin/jwrapper
15
16 clean:
17 rm -f bin/javap_test_parser bin/jwrapper
18 rm -f gen/*
19 rm src/javap_lexer.nit src/javap_parser.nit src/javap_test_parser.nit
20
21 check: bin/jwrapper tests/wildcards.javap
22 mkdir -p tmp
23 bin/jwrapper -v -u comment -o tests/long.nit tests/long.javap
24 ../../bin/nitpick -q tests/long.nit
25 bin/jwrapper -v -u comment -o tests/inits.nit tests/inits.javap
26 ../../bin/nitpick -q tests/inits.nit
27 bin/jwrapper -v -u comment -o tests/testjvm.nit tests/testjvm.javap
28 ../../bin/nitpick -q tests/testjvm.nit
29 bin/jwrapper -v -u comment -o tests/many.nit tests/many.javap
30 ../../bin/nitpick -q tests/many.nit
31 bin/jwrapper -v -u comment -o tests/wildcards.nit tests/wildcards.javap
32 ../../bin/nitpick -q tests/wildcards.nit
33 make -C examples/queue/ check
34
35 check-libs: bin/jwrapper
36 # This config dependent rule must be tweaked according to each system
37
38 # The full local Java standard library
39 bin/jwrapper -v -u comment -o tests/rt_full.nit /usr/lib/jvm/default-java/jre/lib/rt.jar
40 echo "+ Disabled functions: `grep '# fun' tests/rt_full.nit | wc -l` / `grep '^ fun' tests/rt_full.nit | wc -l`"
41 nitpick tests/rt_full.nit
42
43 # Only the `java` namespace of the standard library to avoid conflicts with other libs
44 bin/jwrapper -v -u comment -o tests/rt.nit /usr/lib/jvm/default-java/jre/lib/rt.jar -r ^java
45 echo "+ Disabled functions: `grep '# fun' tests/rt.nit | wc -l` / `grep '^ fun' tests/rt.nit | wc -l`"
46 nitpick tests/rt.nit
47
48 # tools.jar, not using the standard library because of conflicts on sun.tools.jar.*
49 bin/jwrapper -v -u comment -o tests/java_tools.nit /usr/lib/jvm/default-java/lib/tools.jar -i tests/rt.nit
50 sed -i -e "s/import java/import java\nimport rt/" tests/java_tools.nit
51 echo "+ Disabled functions: `grep '# fun' tests/java_tools.nit | wc -l` / `grep '^ fun' tests/java_tools.nit | wc -l`"
52 nitpick tests/java_tools.nit
53
54 # SableCC using the standard Java library
55 bin/jwrapper -v -u comment -o tests/sablecc.nit ~/apps/sablecc-3-beta.3.altgen.20041114/lib/sablecc.jar -i tests/rt.nit
56 sed -i -e "s/import java/import java\nimport rt/" tests/sablecc.nit
57 echo "+ Disabled functions: `grep '# fun' tests/sablecc.nit | wc -l` / `grep '^ fun' tests/sablecc.nit | wc -l`"
58 nitpick tests/sablecc.nit
59
60 make -C examples/android_api/ check