1 # Makefile for Microsoft Visual C++ 7.0 (or compatible)
2 # Originally by Ulrik Petersen
3 # Modified by Charlie Hull, Lemur Consulting Ltd.
6 # Will build and run tests
8 !INCLUDE ..\win32\config.mak
10 OUTLIBDIR
= ..\win32\
$(XAPIAN_DEBUG_OR_RELEASE
)\libs
15 PROGRAM_APITEST
= "$(OUTDIR)\apitest.exe"
16 PROGRAM_INTERNALTEST
= "$(OUTDIR)\internaltest.exe"
17 PROGRAM_QUERYPARSERTEST
= "$(OUTDIR)\queryparsertest.exe"
18 PROGRAM_STEMTEST
= "$(OUTDIR)\stemtest.exe"
19 PROGRAM_TERMGENTEST
= "$(OUTDIR)\termgentest.exe"
20 PROGRAM_UNITTEST
= "$(OUTDIR)\unittest.exe"
22 ALL
: $(CLEAN_COLLATED_HEADERS
) $(PROGRAM_APITEST
) $(PROGRAM_INTERNALTEST
) \
23 $(PROGRAM_QUERYPARSERTEST
) $(PROGRAM_STEMTEST
) $(PROGRAM_TERMGENTEST
) $(PROGRAM_UNITTEST
)
26 APITEST
: $(PROGRAM_APITEST
)
27 STEMTEST
: $(PROGRAM_STEMTEST
)
28 INTERNALTEST
: $(PROGRAM_INTERNALTEST
)
29 QUERYPARSERTEST
: $(PROGRAM_QUERYPARSERTEST
)
30 TERMGENTEST
: $(PROGRAM_TERMGENTEST
)
31 UNITTEST
: $(PROGRAM_UNITTEST
)
36 copy
"$(ZLIB_BIN_DIR)\zlib1.dll"
46 # $(PROGRAM_REMOTETEST) not built
47 # REMOTETEST : $(PROGRAM_REMOTETEST)
48 #PROGRAM_REMOTETEST= "$(OUTDIR)\remotetest.exe"
52 STEMTEST_OBJS
= "$(OUTDIR)\stemtest.obj"
55 "$(OUTDIR)\apitest.obj" \
56 "$(OUTDIR)\api_anydb.obj" \
57 "$(OUTDIR)\api_backend.obj" \
58 "$(OUTDIR)\api_closedb.obj" \
59 "$(OUTDIR)\api_collapse.obj" \
60 "$(OUTDIR)\api_compact.obj" \
61 "$(OUTDIR)\api_db.obj" \
62 "$(OUTDIR)\api_generated.obj" \
63 "$(OUTDIR)\api_matchspy.obj" \
64 "$(OUTDIR)\api_metadata.obj" \
65 "$(OUTDIR)\api_nodb.obj" \
66 "$(OUTDIR)\api_none.obj" \
67 "$(OUTDIR)\api_opsynonym.obj" \
68 "$(OUTDIR)\api_opvalue.obj" \
69 "$(OUTDIR)\api_percentages.obj" \
70 "$(OUTDIR)\api_posdb.obj" \
71 "$(OUTDIR)\api_postingsource.obj" \
72 "$(OUTDIR)\api_qpbackend.obj" \
73 "$(OUTDIR)\api_query.obj" \
74 "$(OUTDIR)\api_replacedoc.obj" \
75 "$(OUTDIR)\api_replicate.obj" \
76 "$(OUTDIR)\api_scalability.obj" \
77 "$(OUTDIR)\api_serialise.obj" \
78 "$(OUTDIR)\api_sorting.obj" \
79 "$(OUTDIR)\api_spelling.obj" \
80 "$(OUTDIR)\api_stem.obj" \
81 "$(OUTDIR)\api_transdb.obj" \
82 "$(OUTDIR)\api_unicode.obj" \
83 "$(OUTDIR)\api_valuestats.obj" \
84 "$(OUTDIR)\api_valuestream.obj" \
85 "$(OUTDIR)\api_wrdb.obj" \
86 "$(OUTDIR)\dbcheck.obj"
88 INTERNALTEST_OBJS
= "$(OUTDIR)\internaltest.obj"
90 QUERYPARSERTEST_OBJS
= "$(OUTDIR)\queryparsertest.obj"
92 REMOTETEST_OBJS
= "$(OUTDIR)\remotetest.obj"
94 TERMGENTEST_OBJS
= "$(OUTDIR)\termgentest.obj"
96 UNITTEST_OBJS
= "$(OUTDIR)\unittest.obj"
99 "$(INTDIR)\apitest.cc" \
100 "$(INTDIR)\dbcheck.cc" \
101 "$(INTDIR)\internaltest.cc" \
102 "$(INTDIR)\queryparsertest.cc" \
103 "$(INTDIR)\stemtest.cc" \
104 "$(INTDIR)\termgentest.cc" \
105 "$(INTDIR)\unittest.cc"
107 COLLATED_APITEST_SOURCES
= \
108 "$(INTDIR)\api_anydb.cc" \
109 "$(INTDIR)\api_backend.cc" \
110 "$(INTDIR)\api_closedb.cc" \
111 "$(INTDIR)\api_collapse.cc" \
112 "$(INTDIR)\api_compact.cc" \
113 "$(INTDIR)\api_db.cc" \
114 "$(INTDIR)\api_generated.cc" \
115 "$(INTDIR)\api_matchspy.cc" \
116 "$(INTDIR)\api_metadata.cc" \
117 "$(INTDIR)\api_nodb.cc" \
118 "$(INTDIR)\api_none.cc" \
119 "$(INTDIR)\api_opsynonym.cc" \
120 "$(INTDIR)\api_opvalue.cc" \
121 "$(INTDIR)\api_percentages.cc" \
122 "$(INTDIR)\api_posdb.cc" \
123 "$(INTDIR)\api_postingsource.cc" \
124 "$(INTDIR)\api_qpbackend.cc" \
125 "$(INTDIR)\api_query.cc" \
126 "$(INTDIR)\api_replacedoc.cc" \
127 "$(INTDIR)\api_replicate.cc" \
128 "$(INTDIR)\api_scalability.cc" \
129 "$(INTDIR)\api_serialise.cc" \
130 "$(INTDIR)\api_sorting.cc" \
131 "$(INTDIR)\api_spelling.cc" \
132 "$(INTDIR)\api_stem.cc" \
133 "$(INTDIR)\api_transdb.cc" \
134 "$(INTDIR)\api_unicode.cc" \
135 "$(INTDIR)\api_valuestats.cc" \
136 "$(INTDIR)\api_valuestream.cc" \
137 "$(INTDIR)\api_wrdb.cc"
139 COLLATED_APITEST_HEADERS
=\
140 "$(INTDIR)\api_anydb.h" \
141 "$(INTDIR)\api_backend.h" \
142 "$(INTDIR)\api_closedb.h" \
143 "$(INTDIR)\api_collapse.h" \
144 "$(INTDIR)\api_compact.h" \
145 "$(INTDIR)\api_db.h" \
146 "$(INTDIR)\api_generated.h" \
147 "$(INTDIR)\api_matchspy.h" \
148 "$(INTDIR)\api_metadata.h" \
149 "$(INTDIR)\api_nodb.h" \
150 "$(INTDIR)\api_none.h" \
151 "$(INTDIR)\api_opsynonym.h" \
152 "$(INTDIR)\api_percentages.h" \
153 "$(INTDIR)\api_posdb.h" \
154 "$(INTDIR)\api_postingsource.h" \
155 "$(INTDIR)\api_qpbackend.h" \
156 "$(INTDIR)\api_query.h" \
157 "$(INTDIR)\api_replacedoc.h" \
158 "$(INTDIR)\api_replicate.h" \
159 "$(INTDIR)\api_scalability.h" \
160 "$(INTDIR)\api_serialise.h" \
161 "$(INTDIR)\api_sorting.h" \
162 "$(INTDIR)\api_opsynonym.h" \
163 "$(INTDIR)\api_spelling.h" \
164 "$(INTDIR)\api_transdb.h" \
165 "$(INTDIR)\api_unicode.h" \
166 "$(INTDIR)\api_valuestats.h" \
167 "$(INTDIR)\api_valuestream.h" \
168 "$(INTDIR)\api_wrdb.h"
170 CLEAN_COLLATED_HEADERS
:
171 -@erase api_collated.h
172 -@erase
$(COLLATED_APITEST_HEADERS
)
175 -@erase
$(PROGRAM_APITEST
)
176 -@erase
$(PROGRAM_INTERNALTEST
)
177 -@erase
$(PROGRAM_QUERYPARSERTEST
)
178 -@erase
$(PROGRAM_REMOTETEST
)
179 -@erase
$(PROGRAM_STEMTEST
)
180 -@erase
$(PROGRAM_TERMGENTEST
)
181 -@erase
$(APITEST_OBJS
)
182 -@erase
$(INTERNALTEST_OBJS
)
183 -@erase
$(QUERYPARSERTEST_OBJS
)
184 -@erase
$(STEMTEST_OBJS
)
185 -@erase
$(TERMGENTEST_OBJS
)
186 -@erase
"$(INTDIR)\*.obj"
187 -@erase
"$(INTDIR)\*.pdb"
188 -@erase
"$(INTDIR)\*.ilk"
189 -@erase
"$(INTDIR)\*.exp"
190 -@erase
"$(INTDIR)\*.lib"
191 -@erase
"$(INTDIR)\*.manifest"
192 -@erase api_collated.h
193 -@erase api_generated.
cc
195 -@erase
$(COLLATED_APITEST_HEADERS
)
196 if exist
".btreetmp" rmdir
".btreetmp" /s
/q
197 if exist
".stub" rmdir
".stub" /s
/q
198 if exist
".chert" rmdir
".chert" /s
/q
199 if exist
".brass" rmdir
".brass" /s
/q
200 if exist
".multichert" rmdir
".multichert" /s
/q
201 if exist
".multibrass" rmdir
".multibrass" /s
/q
205 CPP_PROJ
=$(CPPFLAGS_EXTRA
) \
206 -I
".." -I
"..\tests" -I
"harness" \
207 -Fo
"$(INTDIR)\\" -Fd
"$(INTDIR)\\" -Tp
$(INPUTNAME
)
209 CPP_OBJS
=..\win32\Tests
$(XAPIAN_DEBUG_OR_RELEASE
)
213 api_collated.h api_all.h
: collate-test
$(COLLATED_APITEST_SOURCES
)
214 $(PERL_EXE
) "$(INTDIR)/collate-test" "$(INTDIR)" api_collated.h api_all.h
$(COLLATED_APITEST_SOURCES
)
216 "$(INTDIR)/api_generated.cc": generate-api_generated
217 $(PERL_EXE
) "$(INTDIR)/generate-api_generated" > api_generated.
cc
220 ALL_LINK32_FLAGS
=$(LINK32_FLAGS
) $(XAPIAN_LIBS
) "$(OUTLIBDIR)\libtest.lib"
222 PROGRAM_DEPENDENCIES
= $(XAPIAN_LIBS
) "$(OUTLIBDIR)\libtest.lib"
225 "$(OUTDIR)\termgentest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(TERMGENTEST_OBJS
) \
226 $(PROGRAM_DEPENDENCIES
)
228 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\termgentest.exe" $(DEF_FLAGS
) $(TERMGENTEST_OBJS
)
231 "$(OUTDIR)\stemtest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(STEMTEST_OBJS
) \
232 $(PROGRAM_DEPENDENCIES
)
234 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\stemtest.exe" $(DEF_FLAGS
) $(STEMTEST_OBJS
)
236 "$(OUTDIR)\internaltest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(INTERNALTEST_OBJS
) \
237 $(PROGRAM_DEPENDENCIES
)
239 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\internaltest.exe" $(DEF_FLAGS
) $(INTERNALTEST_OBJS
)
243 "$(OUTDIR)\queryparsertest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(QUERYPARSERTEST_OBJS
) \
244 $(PROGRAM_DEPENDENCIES
)
246 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\queryparsertest.exe" $(DEF_FLAGS
) $(QUERYPARSERTEST_OBJS
)
249 "$(OUTDIR)\apitest.exe" : api_collated.h
"$(OUTDIR)" $(DEF_FILE
) $(APITEST_OBJS
) \
250 $(PROGRAM_DEPENDENCIES
)
252 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\apitest.exe" $(DEF_FLAGS
) $(APITEST_OBJS
)
255 "$(OUTDIR)\remotetest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(REMOTETEST_OBJS
) \
256 $(PROGRAM_DEPENDENCIES
)
258 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\remotetest.exe" $(DEF_FLAGS
) $(REMOTETEST_OBJS
)
261 "$(OUTDIR)\unittest.exe" : "$(OUTDIR)" $(DEF_FILE
) $(UNITTEST_OBJS
) \
262 $(PROGRAM_DEPENDENCIES
)
264 $(ALL_LINK32_FLAGS
) /out
:"$(OUTDIR)\unittest.exe" $(DEF_FLAGS
) $(UNITTEST_OBJS
)
267 # inference rules, showing how to create one type of file from another with the same root name
268 {.
}.
cc{$(INTDIR
)}.obj
::
273 {.
}.
cc{$(CPP_SBRS
)}.sbr
::
278 # Calculate any header dependencies and automatically insert them into this file
279 HEADERS
: api_collated.h
281 $(CPP
) -showIncludes
$(CPP_PROJ
) $(SRC
) >>deps.d
282 $(CPP
) -showIncludes
$(CPP_PROJ
) $(COLLATED_APITEST_SOURCES
) >>deps.d
283 if exist
"..\win32\$(DEPEND)" ..\win32\
$(DEPEND
)
284 # DO NOT DELETE THIS LINE -- xapdep depends on it.