2010-04-13 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mono / tests / metadata-verifier / Makefile
blob263cde0c1f5027ac32731b38c2200d1ed7db6e9f
1 GLIB_CFLAGS=`pkg-config --cflags glib-2.0`
2 GLIB_LINK_FLAGS=`pkg-config --libs glib-2.0`
4 %.exe: %.il
5 ilasm2 -out:$@ $<
7 assembly-with-resource.exe: assembly-with-resource.cs
8 gmcs assembly-with-resource.cs -linkresource:Makefile -resource:simple-assembly.il
10 assembly-with-complex-type.exe: assembly-with-complex-type.cs
11 gmcs assembly-with-complex-type.cs
13 assembly-with-methods.exe: assembly-with-methods.cs
14 gmcs assembly-with-methods.cs
16 assembly-with-params.exe: assembly-with-params.cs
17 gmcs assembly-with-params.cs
19 assembly-with-constants.exe: assembly-with-constants.cs
20 gmcs assembly-with-constants.cs
22 assembly-with-cattr.exe: assembly-with-cattr.cs
23 gmcs assembly-with-cattr.cs
25 assembly-with-cattr-enc.exe: assembly-with-cattr-enc.cs
26 gmcs assembly-with-cattr-enc.cs
28 assembly-with-cas.exe: assembly-with-cas.cs
29 gmcs assembly-with-cas.cs
31 assembly-with-events.exe: assembly-with-events.cs
32 gmcs assembly-with-events.cs
34 assembly-with-properties.exe: assembly-with-properties.cs
35 gmcs assembly-with-properties.cs
37 assembly-with-fields.exe: assembly-with-fields.cs
38 gmcs assembly-with-fields.cs
40 module.netmodule: module.il
41 ilasm2 /dll /output:module.netmodule module.il
43 assembly-with-module.exe: assembly-with-module.cs module.netmodule
44 gmcs assembly-with-module.cs -addmodule:module.netmodule
46 assembly-with-generics.exe: assembly-with-generics.cs
47 gmcs assembly-with-generics.cs
49 assembly-with-signatures.exe: assembly-with-signatures.cs
50 gmcs assembly-with-signatures.cs
52 TEST_BINARIES = assembly-with-resource.exe \
53 assembly-with-complex-type.exe \
54 assembly-with-methods.exe \
55 assembly-with-params.exe \
56 assembly-with-constants.exe \
57 assembly-with-cattr.exe \
58 assembly-with-cattr-enc.exe \
59 assembly-with-cas.exe \
60 assembly-with-events.exe \
61 assembly-with-properties.exe \
62 assembly-with-module.exe \
63 assembly-with-resource.exe \
64 assembly-with-generics.exe \
65 assembly-with-custommod.exe \
66 assembly-with-signatures.exe \
67 assembly-with-locals.exe \
68 assembly-with-types.exe \
69 assembly-with-typespec.exe \
70 assembly-with-global-method.exe \
71 assembly-with-calli.exe \
72 assembly-with-fields.exe \
73 simple-assembly.exe
76 gen-md-tests: gen-md-tests.c
77 gcc $(GLIB_CFLAGS) $(GLIB_LINK_FLAGS) -I../../../ gen-md-tests.c ../../mini/.libs/libmono-2.0.a -g -Wall -lpthread -lm -ldl -lrt -o gen-md-tests
79 header-tests.ok: gen-md-tests header-tests.md simple-assembly.exe
80 ./gen-md-tests header-tests.md
81 touch header-tests.ok
83 section-table-tests.ok: gen-md-tests section-table-tests.md simple-assembly.exe
84 ./gen-md-tests section-table-tests.md
85 touch section-table-tests.ok
87 data-directory-tests.ok: gen-md-tests data-directory-tests.md simple-assembly.exe
88 ./gen-md-tests data-directory-tests.md
89 touch data-directory-tests.ok
91 resources-tests.ok: gen-md-tests resources-tests.md assembly-with-resource.exe
92 ./gen-md-tests resources-tests.md
93 touch resources-tests.ok
95 cli-header-tests.ok: gen-md-tests cli-header-tests.md simple-assembly.exe
96 ./gen-md-tests cli-header-tests.md
97 touch cli-header-tests.ok
99 cli-metadata-tests.ok: gen-md-tests cli-metadata-tests.md simple-assembly.exe
100 ./gen-md-tests cli-metadata-tests.md
101 touch cli-metadata-tests.ok
103 cli-tables-tests.ok: gen-md-tests cli-tables-tests.md $(TEST_BINARIES)
104 ./gen-md-tests cli-tables-tests.md
105 touch cli-tables-tests.ok
107 cli-blob-tests.ok: gen-md-tests cli-blob-tests.md $(TEST_BINARIES)
108 ./gen-md-tests cli-blob-tests.md
109 touch cli-blob-tests.ok
111 cli-cattr-tests.ok: gen-md-tests cli-cattr-tests.md $(TEST_BINARIES)
112 ./gen-md-tests cli-cattr-tests.md
113 touch cli-cattr-tests.ok
115 cli-global-props-tests.ok: gen-md-tests cli-global-props-tests.md $(TEST_BINARIES)
116 ./gen-md-tests cli-global-props-tests.md
117 touch cli-global-props-tests.ok
119 generate-stamp: header-tests.ok section-table-tests.ok data-directory-tests.ok resources-tests.ok cli-header-tests.ok cli-metadata-tests.ok cli-tables-tests.ok cli-blob-tests.ok cli-cattr-tests.ok cli-global-props-tests.ok
120 touch generate-stamp
122 clean-stamps:
123 rm -f *.ok
124 rm -f generate-stamp
126 run-test: generate-stamp
127 @for i in *.exe; do \
128 RES=99; \
129 PEDUMP_ARG="metadata" \
130 FIRST=`echo $$i | cut -d '-' -f 1`; \
131 if [ "$$FIRST" == "invalid" ]; then \
132 RES=1; \
133 fi; \
134 if [ "$$FIRST" == "badrt" ]; then \
135 PEDUMP_ARG="metadata,code" \
136 RES=1; \
137 fi; \
138 if [ "$$FIRST" == "valid" ]; then \
139 RES=0; \
140 fi; \
141 if [ $$RES != 99 ]; then \
142 ../../metadata/pedump --verify $$PEDUMP_ARG $$i >/dev/null 2>/dev/null; \
143 R=$$?; \
144 if [ $$R != $$RES ]; then \
145 echo "$$i failed expected $$RES but got $$R"; \
146 fi; \
147 fi; \
148 done
152 check_with_peverify: generate-stamp
153 @for i in *.exe; do \
154 RES=99; \
155 FIRST=`echo $$i | cut -d '-' -f 1`; \
156 if [ "$$FIRST" == "invalid" ]; then \
157 RES=1; \
158 fi; \
159 if [ "$$FIRST" == "badrt" ]; then \
160 RES=1; \
161 fi; \
162 if [ "$$FIRST" == "valid" ]; then \
163 RES=0; \
164 fi; \
165 if [ $$RES != 99 ]; then \
166 peverify $$i >/dev/null 2>/dev/null; \
167 R=$$?; \
168 if [ $$R != $$RES ]; then \
169 echo "$$i failed expected $$RES but got $$R"; \
170 fi; \
171 fi; \
172 done