1 # Makefile for Microsoft Visual C++ 7.0 (or compatible)
2 # Originally by Ulrik Petersen
3 # Modified by Charlie Hull, Lemur Consulting Ltd.
4 # www.lemurconsulting.com
7 # Will build and run tests
9 !INCLUDE ..\win32\config.mak
11 OUTLIBDIR
= ..\win32\
$(XAPIAN_DEBUG_OR_RELEASE
)\libs
16 PROGRAM_APITEST
= "$(OUTDIR)\apitest.exe"
17 PROGRAM_INTERNALTEST
= "$(OUTDIR)\internaltest.exe"
18 PROGRAM_QUERYPARSERTEST
= "$(OUTDIR)\queryparsertest.exe"
19 PROGRAM_STEMTEST
= "$(OUTDIR)\stemtest.exe"
20 PROGRAM_TERMGENTEST
= "$(OUTDIR)\termgentest.exe"
21 PROGRAM_UNITTEST
= "$(OUTDIR)\unittest.exe"
23 ALL
: $(CLEAN_COLLATED_HEADERS
) $(PROGRAM_APITEST
) $(PROGRAM_INTERNALTEST
) \
24 $(PROGRAM_QUERYPARSERTEST
) $(PROGRAM_STEMTEST
) $(PROGRAM_TERMGENTEST
) $(PROGRAM_UNITTEST
)
27 APITEST
: $(PROGRAM_APITEST
)
28 STEMTEST
: $(PROGRAM_STEMTEST
)
29 INTERNALTEST
: $(PROGRAM_INTERNALTEST
)
30 QUERYPARSERTEST
: $(PROGRAM_QUERYPARSERTEST
)
31 TERMGENTEST
: $(PROGRAM_TERMGENTEST
)
32 UNITTEST
: $(PROGRAM_UNITTEST
)
37 copy
"$(ZLIB_BIN_DIR)\zlib1.dll"
47 # $(PROGRAM_REMOTETEST) not built
48 # REMOTETEST : $(PROGRAM_REMOTETEST)
49 #PROGRAM_REMOTETEST= "$(OUTDIR)\remotetest.exe"
53 STEMTEST_OBJS
= "$(OUTDIR)\stemtest.obj"
56 "$(OUTDIR)\apitest.obj" \
57 "$(OUTDIR)\api_anydb.obj" \
58 "$(OUTDIR)\api_backend.obj" \
59 "$(OUTDIR)\api_closedb.obj" \
60 "$(OUTDIR)\api_collapse.obj" \
61 "$(OUTDIR)\api_compact.obj" \
62 "$(OUTDIR)\api_db.obj" \
63 "$(OUTDIR)\api_generated.obj" \
64 "$(OUTDIR)\api_matchspy.obj" \
65 "$(OUTDIR)\api_metadata.obj" \
66 "$(OUTDIR)\api_nodb.obj" \
67 "$(OUTDIR)\api_none.obj" \
68 "$(OUTDIR)\api_opsynonym.obj" \
69 "$(OUTDIR)\api_opvalue.obj" \
70 "$(OUTDIR)\api_percentages.obj" \
71 "$(OUTDIR)\api_posdb.obj" \
72 "$(OUTDIR)\api_postingsource.obj" \
73 "$(OUTDIR)\api_qpbackend.obj" \
74 "$(OUTDIR)\api_query.obj" \
75 "$(OUTDIR)\api_replacedoc.obj" \
76 "$(OUTDIR)\api_replicate.obj" \
77 "$(OUTDIR)\api_scalability.obj" \
78 "$(OUTDIR)\api_serialise.obj" \
79 "$(OUTDIR)\api_sorting.obj" \
80 "$(OUTDIR)\api_sortingold.obj" \
81 "$(OUTDIR)\api_spelling.obj" \
82 "$(OUTDIR)\api_stem.obj" \
83 "$(OUTDIR)\api_transdb.obj" \
84 "$(OUTDIR)\api_unicode.obj" \
85 "$(OUTDIR)\api_valuestats.obj" \
86 "$(OUTDIR)\api_valuestream.obj" \
87 "$(OUTDIR)\api_wrdb.obj" \
88 "$(OUTDIR)\dbcheck.obj"
90 INTERNALTEST_OBJS
= "$(OUTDIR)\internaltest.obj"
92 QUARTZTEST_OBJS
= "$(OUTDIR)\quartztest.obj"
94 QUERYPARSERTEST_OBJS
= "$(OUTDIR)\queryparsertest.obj"
96 REMOTETEST_OBJS
= "$(OUTDIR)\remotetest.obj"
98 TERMGENTEST_OBJS
= "$(OUTDIR)\termgentest.obj"
100 UNITTEST_OBJS
= "$(OUTDIR)\unittest.obj"
103 "$(INTDIR)\apitest.cc" \
104 "$(INTDIR)\dbcheck.cc" \
105 "$(INTDIR)\internaltest.cc" \
106 "$(INTDIR)\queryparsertest.cc" \
107 "$(INTDIR)\stemtest.cc" \
108 "$(INTDIR)\termgentest.cc" \
109 "$(INTDIR)\unittest.cc"
111 COLLATED_APITEST_SOURCES
= \
112 "$(INTDIR)\api_anydb.cc" \
113 "$(INTDIR)\api_backend.cc" \
114 "$(INTDIR)\api_closedb.cc" \
115 "$(INTDIR)\api_collapse.cc" \
116 "$(INTDIR)\api_compact.cc" \
117 "$(INTDIR)\api_db.cc" \
118 "$(INTDIR)\api_generated.cc" \
119 "$(INTDIR)\api_matchspy.cc" \
120 "$(INTDIR)\api_metadata.cc" \
121 "$(INTDIR)\api_nodb.cc" \
122 "$(INTDIR)\api_none.cc" \
123 "$(INTDIR)\api_opsynonym.cc" \
124 "$(INTDIR)\api_opvalue.cc" \
125 "$(INTDIR)\api_percentages.cc" \
126 "$(INTDIR)\api_posdb.cc" \
127 "$(INTDIR)\api_postingsource.cc" \
128 "$(INTDIR)\api_qpbackend.cc" \
129 "$(INTDIR)\api_query.cc" \
130 "$(INTDIR)\api_replacedoc.cc" \
131 "$(INTDIR)\api_replicate.cc" \
132 "$(INTDIR)\api_scalability.cc" \
133 "$(INTDIR)\api_serialise.cc" \
134 "$(INTDIR)\api_sorting.cc" \
135 "$(INTDIR)\api_sortingold.cc" \
136 "$(INTDIR)\api_spelling.cc" \
137 "$(INTDIR)\api_stem.cc" \
138 "$(INTDIR)\api_transdb.cc" \
139 "$(INTDIR)\api_unicode.cc" \
140 "$(INTDIR)\api_valuestats.cc" \
141 "$(INTDIR)\api_valuestream.cc" \
142 "$(INTDIR)\api_wrdb.cc"
144 COLLATED_APITEST_HEADERS
=\
145 "$(INTDIR)\api_anydb.h" \
146 "$(INTDIR)\api_backend.h" \
147 "$(INTDIR)\api_closedb.h" \
148 "$(INTDIR)\api_collapse.h" \
149 "$(INTDIR)\api_compact.h" \
150 "$(INTDIR)\api_db.h" \
151 "$(INTDIR)\api_generated.h" \
152 "$(INTDIR)\api_matchspy.h" \
153 "$(INTDIR)\api_metadata.h" \
154 "$(INTDIR)\api_nodb.h" \
155 "$(INTDIR)\api_none.h" \
156 "$(INTDIR)\api_opsynonym.h" \
157 "$(INTDIR)\api_percentages.h" \
158 "$(INTDIR)\api_posdb.h" \
159 "$(INTDIR)\api_postingsource.h" \
160 "$(INTDIR)\api_qpbackend.h" \
161 "$(INTDIR)\api_query.h" \
162 "$(INTDIR)\api_replacedoc.h" \
163 "$(INTDIR)\api_replicate.h" \
164 "$(INTDIR)\api_scalability.h" \
165 "$(INTDIR)\api_serialise.h" \
166 "$(INTDIR)\api_sorting.h" \
167 "$(INTDIR)\api_sortingold.h" \
168 "$(INTDIR)\api_opsynonym.h" \
169 "$(INTDIR)\api_spelling.h" \
170 "$(INTDIR)\api_transdb.h" \
171 "$(INTDIR)\api_unicode.h" \
172 "$(INTDIR)\api_valuestats.h" \
173 "$(INTDIR)\api_valuestream.h" \
174 "$(INTDIR)\api_wrdb.h"
176 CLEAN_COLLATED_HEADERS
:
177 -@erase api_collated.h
178 -@erase
$(COLLATED_APITEST_HEADERS
)
181 -@erase
$(PROGRAM_APITEST
)
182 -@erase
$(PROGRAM_INTERNALTEST
)
183 -@erase
$(PROGRAM_QUERYPARSERTEST
)
184 -@erase
$(PROGRAM_REMOTETEST
)
185 -@erase
$(PROGRAM_STEMTEST
)
186 -@erase
$(PROGRAM_TERMGENTEST
)
187 -@erase
$(APITEST_OBJS
)
188 -@erase
$(INTERNALTEST_OBJS
)
189 -@erase
$(QUERYPARSERTEST_OBJS
)
190 -@erase
$(STEMTEST_OBJS
)
191 -@erase
$(TERMGENTEST_OBJS
)
192 -@erase
"$(INTDIR)\*.obj"
193 -@erase
"$(INTDIR)\*.pdb"
194 -@erase
"$(INTDIR)\*.ilk"
195 -@erase
"$(INTDIR)\*.exp"
196 -@erase
"$(INTDIR)\*.lib"
197 -@erase
"$(INTDIR)\*.manifest"
198 -@erase api_collated.h
199 -@erase api_generated.
cc
201 -@erase
$(COLLATED_APITEST_HEADERS
)
202 if exist
".btreetmp" rmdir
".btreetmp" /s
/q
203 if exist
".stub" rmdir
".stub" /s
/q
204 if exist
".quartz" rmdir
".quartz" /s
/q
205 if exist
".flint" rmdir
".flint" /s
/q
206 if exist
".chert" rmdir
".chert" /s
/q
207 if exist
".brass" rmdir
".brass" /s
/q
208 if exist
".multiflint" rmdir
".multiflint" /s
/q
209 if exist
".multichert" rmdir
".multichert" /s
/q
210 if exist
".multibrass" rmdir
".multibrass" /s
/q
211 if exist
".quartztmp" rmdir
".quartztmp" /s
/q
215 CPP_PROJ
=$(CPPFLAGS_EXTRA
) \
216 -I
".." -I
"..\tests" -I
"harness" -I
"..\backends\quartz" \
217 -Fo
"$(INTDIR)\\" -Fd
"$(INTDIR)\\" -Tp
$(INPUTNAME
)
219 CPP_OBJS
=..\win32\Tests
$(XAPIAN_DEBUG_OR_RELEASE
)
223 api_collated.h api_all.h
: collate-test
$(COLLATED_APITEST_SOURCES
)
224 $(PERL_EXE
) "$(INTDIR)/collate-test" "$(INTDIR)" api_collated.h api_all.h
$(COLLATED_APITEST_SOURCES
)
226 "$(INTDIR)/api_generated.cc": generate-api_generated
227 $(PERL_EXE
) "$(INTDIR)/generate-api_generated" > api_generated.
cc
230 ALL_LINK32_FLAGS
=$(LINK32_FLAGS
) $(XAPIAN_LIBS
) "$(OUTLIBDIR)\libtest.lib"
232 PROGRAM_DEPENDENCIES
= $(XAPIAN_LIBS
) "$(OUTLIBDIR)\libtest.lib"
235 "$(OUTDIR)\termgentest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(TERMGENTEST_OBJS
) \
236 $(PROGRAM_DEPENDENCIES
)
238 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\termgentest.exe" $(DEF_FLAGS
) $(TERMGENTEST_OBJS
)
241 "$(OUTDIR)\stemtest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(STEMTEST_OBJS
) \
242 $(PROGRAM_DEPENDENCIES
)
244 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\stemtest.exe" $(DEF_FLAGS
) $(STEMTEST_OBJS
)
246 "$(OUTDIR)\internaltest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(INTERNALTEST_OBJS
) \
247 $(PROGRAM_DEPENDENCIES
)
249 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\internaltest.exe" $(DEF_FLAGS
) $(INTERNALTEST_OBJS
)
253 "$(OUTDIR)\queryparsertest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(QUERYPARSERTEST_OBJS
) \
254 $(PROGRAM_DEPENDENCIES
)
256 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\queryparsertest.exe" $(DEF_FLAGS
) $(QUERYPARSERTEST_OBJS
)
259 "$(OUTDIR)\apitest.exe" : api_collated.h
"$(OUTDIR)" $(DEF_FILE
) $(APITEST_OBJS
) \
260 $(PROGRAM_DEPENDENCIES
)
262 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\apitest.exe" $(DEF_FLAGS
) $(APITEST_OBJS
)
265 "$(OUTDIR)\remotetest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(REMOTETEST_OBJS
) \
266 $(PROGRAM_DEPENDENCIES
)
268 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\remotetest.exe" $(DEF_FLAGS
) $(REMOTETEST_OBJS
)
271 "$(OUTDIR)\unittest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(UNITTEST_OBJS
) \
272 $(PROGRAM_DEPENDENCIES
)
274 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\unittest.exe" $(DEF_FLAGS
) $(UNITTEST_OBJS
)
277 # inference rules, showing how to create one type of file from another with the same root name
278 {.
}.
cc{$(INTDIR
)}.obj
::
283 {.
}.
cc{$(CPP_SBRS
)}.sbr
::
288 # Calculate any header dependencies and automatically insert them into this file
289 HEADERS
: api_collated.h
291 $(CPP
) -showIncludes
$(CPP_PROJ
) $(SRC
) >>deps.d
292 $(CPP
) -showIncludes
$(CPP_PROJ
) $(COLLATED_APITEST_SOURCES
) >>deps.d
293 if exist
"..\win32\$(DEPEND)" ..\win32\
$(DEPEND
)
294 # DO NOT DELETE THIS LINE -- xapdep depends on it.