Makefile.am revision 252004df14b680d40c29e2ab479660162e15431e
1## Process this file with automake to produce Makefile.in 2 3SUBDIRS = include . doc example @PYTHON_SUBDIR@ 4 5DIST_SUBDIRS = include . doc example python 6 7INCLUDES = -I$(top_builddir)/include -I@srcdir@/include @THREAD_CFLAGS@ @Z_CFLAGS@ 8 9noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \ 10 testThreads testC14N testAutomata testRegexp \ 11 testReader 12 13bin_PROGRAMS = xmllint xmlcatalog 14 15bin_SCRIPTS=xml2-config 16 17lib_LTLIBRARIES = libxml2.la 18libxml2_la_LIBADD = @THREAD_LIBS@ @Z_LIBS@ $(ICONV_LIBS) @M_LIBS@ @WIN32_EXTRA_LIBADD@ 19 20libxml2_la_LDFLAGS = @WIN32_EXTRA_LDFLAGS@ -version-info @LIBXML_VERSION_INFO@ 21 22if WITH_TRIO_SOURCES 23libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \ 24 parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \ 25 valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \ 26 xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \ 27 catalog.c globals.c threads.c c14n.c xmlstring.c \ 28 xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \ 29 triostr.c trio.c xmlreader.c relaxng.c dict.c SAX2.c \ 30 xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c 31else 32libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \ 33 parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \ 34 valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \ 35 xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \ 36 catalog.c globals.c threads.c c14n.c xmlstring.c \ 37 xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \ 38 xmlreader.c relaxng.c dict.c SAX2.c \ 39 xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c 40endif 41 42DEPS = $(top_builddir)/libxml2.la 43LDADDS = @STATIC_BINARIES@ $(top_builddir)/libxml2.la @THREAD_LIBS@ @Z_LIBS@ $(ICONV_LIBS) @M_LIBS@ @WIN32_EXTRA_LIBADD@ 44 45 46man_MANS = xml2-config.1 libxml.3 47 48m4datadir = $(datadir)/aclocal 49m4data_DATA = libxml.m4 50 51xmllint_SOURCES=xmllint.c 52xmllint_LDFLAGS = 53xmllint_DEPENDENCIES = $(DEPS) 54xmllint_LDADD= @RDL_LIBS@ $(LDADDS) 55 56testSAX_SOURCES=testSAX.c 57testSAX_LDFLAGS = 58testSAX_DEPENDENCIES = $(DEPS) 59testSAX_LDADD= $(LDADDS) 60 61testHTML_SOURCES=testHTML.c 62testHTML_LDFLAGS = 63testHTML_DEPENDENCIES = $(DEPS) 64testHTML_LDADD= $(LDADDS) 65 66xmlcatalog_SOURCES=xmlcatalog.c 67xmlcatalog_LDFLAGS = 68xmlcatalog_DEPENDENCIES = $(DEPS) 69xmlcatalog_LDADD= @RDL_LIBS@ $(LDADDS) 70 71testXPath_SOURCES=testXPath.c 72testXPath_LDFLAGS = 73testXPath_DEPENDENCIES = $(DEPS) 74testXPath_LDADD= $(LDADDS) 75 76testC14N_SOURCES=testC14N.c 77testC14N_LDFLAGS = 78testC14N_DEPENDENCIES = $(DEPS) 79testC14N_LDADD= $(LDADDS) 80 81testThreads_SOURCES=testThreads@THREADS_W32@.c 82testThreads_LDFLAGS = 83testThreads_DEPENDENCIES = $(DEPS) 84testThreads_LDADD= $(LDADDS) 85 86testURI_SOURCES=testURI.c 87testURI_LDFLAGS = 88testURI_DEPENDENCIES = $(DEPS) 89testURI_LDADD= $(LDADDS) 90 91testRegexp_SOURCES=testRegexp.c 92testRegexp_LDFLAGS = 93testRegexp_DEPENDENCIES = $(DEPS) 94testRegexp_LDADD= $(LDADDS) 95 96testAutomata_SOURCES=testAutomata.c 97testAutomata_LDFLAGS = 98testAutomata_DEPENDENCIES = $(DEPS) 99testAutomata_LDADD= $(LDADDS) 100 101testSchemas_SOURCES=testSchemas.c 102testSchemas_LDFLAGS = 103testSchemas_DEPENDENCIES = $(DEPS) 104testSchemas_LDADD= $(LDADDS) 105 106testRelax_SOURCES=testRelax.c 107testRelax_LDFLAGS = 108testRelax_DEPENDENCIES = $(DEPS) 109testRelax_LDADD= $(LDADDS) 110 111testReader_SOURCES=testReader.c 112testReader_LDFLAGS = 113testReader_DEPENDENCIES = $(DEPS) 114testReader_LDADD= $(LDADDS) 115 116#testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c 117#testOOM_LDFLAGS = 118#testOOM_DEPENDENCIES = $(DEPS) 119#testOOM_LDADD= $(LDADDS) 120 121check-local: tests 122 123testall : tests SVGtests SAXtests 124 125tests: XMLtests XMLenttests NStests Errtests @READER_TEST@ @TEST_SAX@ @TEST_PUSH@ @TEST_HTML@ @TEST_PHTML@ @TEST_VALID@ URItests @TEST_XPATH@ @TEST_XPTR@ @TEST_XINCLUDE@ @TEST_C14N@ @TEST_DEBUG@ @TEST_CATALOG@ @TEST_REGEXPS@ @TEST_SCHEMAS@ @TEST_THREADS@ Timingtests @TEST_VTIME@ @PYTHON_TESTS@ 126 @(if [ "@PYTHON_SUBDIR@" != "" ] ; then cd python ; $(MAKE) tests ; fi) 127 @(cd doc/examples ; $(MAKE) tests) 128 129valgrind: 130 @echo '## Running the regression tests under Valgrind' 131 @echo '## Go get a cup of coffee it is gonna take a while ...' 132 $(MAKE) CHECKER='valgrind -q' tests 133 134HTMLtests : testHTML$(EXEEXT) 135 @(echo > .memdump) 136 @echo "## HTML regression tests" 137 -@(for i in $(srcdir)/test/HTML/* ; do \ 138 name=`basename $$i`; \ 139 if [ ! -d $$i ] ; then \ 140 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 141 echo New test file $$name ; \ 142 $(CHECKER) $(top_builddir)/testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \ 143 else \ 144 log=`$(CHECKER) $(top_builddir)/testHTML $$i > result.$$name 2> error.$$name ; \ 145 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 146 diff $(srcdir)/result/HTML/$$name result.$$name ; \ 147 diff -b $(srcdir)/result/HTML/$$name.err error.$$name ; \ 148 $(CHECKER) $(top_builddir)/testHTML result.$$name > result2.$$name 2>error.$$name ; \ 149 diff result.$$name result2.$$name` ; \ 150 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 151 rm result.$$name result2.$$name error.$$name ; \ 152 fi ; fi ; done) 153 154HTMLPushtests : testHTML$(EXEEXT) 155 @echo "## Push HTML regression tests" 156 -@(for i in $(srcdir)/test/HTML/* ; do \ 157 name=`basename $$i`; \ 158 if [ ! -d $$i ] ; then \ 159 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 160 echo New test file $$name ; \ 161 $(CHECKER) $(top_builddir)/testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \ 162 else \ 163 log=`$(CHECKER) $(top_builddir)/testHTML --push $$i > result.$$name 2> error.$$name ; \ 164 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 165 diff $(srcdir)/result/HTML/$$name result.$$name ; \ 166 cut -b 1-15 $(srcdir)/result/HTML/$$name.err > errorcut.$$name; \ 167 cut -b 1-15 error.$$name > errorcut2.$$name; \ 168 diff -b errorcut.$$name errorcut2.$$name ; \ 169 $(CHECKER) $(top_builddir)/testHTML --push result.$$name > result2.$$name 2>error.$$name ; \ 170 diff result.$$name result2.$$name` ; \ 171 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 172 rm result.$$name result2.$$name error.$$name errorcut.$$name errorcut2.$$name ; \ 173 fi ; fi ; done) 174 @echo "## HTML SAX regression tests" 175 -@(for i in $(srcdir)/test/HTML/* ; do \ 176 name=`basename $$i`; \ 177 if [ ! -d $$i ] ; then \ 178 if [ ! -f $(srcdir)/result/HTML/$$name.sax ] ; then \ 179 echo New test file $$name ; \ 180 $(CHECKER) $(top_builddir)/testHTML --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \ 181 else \ 182 log=`$(CHECKER) $(top_builddir)/testHTML --sax $$i > result.$$name.sax ; \ 183 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 184 diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \ 185 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 186 rm result.$$name.sax ; \ 187 fi ; fi ; done) 188 @echo "## Push HTML SAX regression tests" 189 -@(for i in $(srcdir)/test/HTML/* ; do \ 190 name=`basename $$i`; \ 191 if [ ! -d $$i ] ; then \ 192 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 193 echo New test file $$name ; \ 194 $(CHECKER) $(top_builddir)/testHTML --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \ 195 else \ 196 log=`$(CHECKER) $(top_builddir)/testHTML --push --sax $$i 2>&1 > result.$$name.sax ; \ 197 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 198 diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \ 199 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 200 rm result.$$name.sax ; \ 201 fi ; fi ; done) 202 203XMLtests : xmllint$(EXEEXT) 204 @(echo > .memdump) 205 @echo "## XML regression tests" 206 -@(for i in $(srcdir)/test/* ; do \ 207 name=`basename $$i`; \ 208 if [ ! -d $$i ] ; then \ 209 if [ ! -f $(srcdir)/result/$$name ] ; then \ 210 echo New test file $$name ; \ 211 $(CHECKER) $(top_builddir)/xmllint $$i > $(srcdir)/result/$$name ; \ 212 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 213 else \ 214 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2>&1 > result.$$name ; \ 215 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 216 diff $(srcdir)/result/$$name result.$$name ; \ 217 $(CHECKER) $(top_builddir)/xmllint result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 218 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 219 diff result.$$name result2.$$name` ;\ 220 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 221 rm result.$$name result2.$$name ; \ 222 fi ; fi ; done) 223 @echo "## XML regression tests on memory" 224 -@(for i in $(srcdir)/test/* ; do \ 225 name=`basename $$i`; \ 226 if [ ! -d $$i ] ; then \ 227 if [ ! -f $(srcdir)/result/$$name ] ; then \ 228 echo New test file $$name ; \ 229 $(CHECKER) $(top_builddir)/xmllint --memory $$i > $(srcdir)/result/$$name ; \ 230 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 231 else \ 232 log=`$(CHECKER) $(top_builddir)/xmllint --memory $$i 2>&1 > result.$$name ; \ 233 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 234 diff $(srcdir)/result/$$name result.$$name ; \ 235 $(CHECKER) $(top_builddir)/xmllint --memory result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 236 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`; \ 237 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 238 diff result.$$name result2.$$name ; \ 239 rm result.$$name result2.$$name ; \ 240 fi ; fi ; done) 241 242XMLPushtests: xmllint$(EXEEXT) 243 @(echo > .memdump) 244 @echo "## XML push regression tests" 245 -@(for i in $(srcdir)/test/* ; do \ 246 name=`basename $$i`; \ 247 if [ ! -d $$i ] ; then \ 248 if [ ! -f $(srcdir)/result/$$name ] ; then \ 249 echo New test file $$name ; \ 250 $(CHECKER) $(top_builddir)/xmllint --push $$i > $(srcdir)/result/$$name ; \ 251 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 252 else \ 253 log=`$(CHECKER) $(top_builddir)/xmllint --push $$i 2>&1 > result.$$name ; \ 254 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 255 diff $(srcdir)/result/$$name result.$$name ; \ 256 $(CHECKER) $(top_builddir)/xmllint --push result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 257 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 258 diff result.$$name result2.$$name` ; \ 259 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 260 rm result.$$name result2.$$name ; \ 261 fi ; fi ; done) 262 263NStests : xmllint$(EXEEXT) 264 @(echo > .memdump) 265 @echo "## XML Namespaces regression tests" 266 -@(for i in $(srcdir)/test/namespaces/* ; do \ 267 name=`basename $$i`; \ 268 if [ ! -d $$i ] ; then \ 269 if [ ! -f $(srcdir)/result/namespaces/$$name ] ; then \ 270 echo New test file $$name ; \ 271 $(CHECKER) $(top_builddir)/xmllint $$i \ 272 2> $(srcdir)/result/namespaces/$$name.err \ 273 > $(srcdir)/result/namespaces/$$name ; \ 274 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 275 else \ 276 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2> error.$$name > result.$$name ; \ 277 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 278 diff $(srcdir)/result/namespaces/$$name result.$$name ; \ 279 diff $(srcdir)/result/namespaces/$$name.err error.$$name` ; \ 280 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 281 rm result.$$name error.$$name ; \ 282 fi ; fi ; done) 283 284Errtests : xmllint$(EXEEXT) 285 @(echo > .memdump) 286 @echo "## Error cases regression tests" 287 -@(for i in $(srcdir)/test/errors/*.xml ; do \ 288 name=`basename $$i`; \ 289 if [ ! -d $$i ] ; then \ 290 if [ ! -f $(srcdir)/result/errors/$$name ] ; then \ 291 echo New test file $$name ; \ 292 $(CHECKER) $(top_builddir)/xmllint $$i \ 293 2> $(srcdir)/result/errors/$$name.err \ 294 > $(srcdir)/result/errors/$$name ; \ 295 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 296 else \ 297 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2> error.$$name > result.$$name ; \ 298 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 299 diff $(srcdir)/result/errors/$$name result.$$name ; \ 300 diff $(srcdir)/result/errors/$$name.err error.$$name` ; \ 301 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 302 rm result.$$name error.$$name ; \ 303 fi ; fi ; done) 304 @echo "## Error cases stream regression tests" 305 -@(for i in $(srcdir)/test/errors/*.xml ; do \ 306 name=`basename $$i`; \ 307 if [ ! -d $$i ] ; then \ 308 if [ ! -f $(srcdir)/result/errors/$$name.str ] ; then \ 309 echo New test file $$name ; \ 310 $(CHECKER) $(top_builddir)/xmllint $$i \ 311 2> $(srcdir)/result/errors/$$name.str \ 312 > $(srcdir)/result/errors/$$name ; \ 313 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 314 else \ 315 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2> error.$$name > result.$$name ; \ 316 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 317 diff $(srcdir)/result/errors/$$name result.$$name ; \ 318 diff $(srcdir)/result/errors/$$name.str error.$$name` ; \ 319 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 320 rm result.$$name error.$$name ; \ 321 fi ; fi ; done) 322 323Docbtests : xmllint$(EXEEXT) 324 325XMLenttests : xmllint$(EXEEXT) 326 @(echo > .memdump) 327 @echo "## XML entity subst regression tests" 328 -@(for i in $(srcdir)/test/* ; do \ 329 name=`basename $$i`; \ 330 if [ ! -d $$i ] ; then \ 331 if [ ! -f $(srcdir)/result/noent/$$name ] ; then \ 332 echo New test file $$name ; \ 333 $(CHECKER) $(top_builddir)/xmllint --noent $$i > $(srcdir)/result/noent/$$name ; \ 334 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 335 else \ 336 log=`$(CHECKER) $(top_builddir)/xmllint --noent $$i 2>&1 > result.$$name ; \ 337 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 338 diff $(srcdir)/result/noent/$$name result.$$name ; \ 339 $(CHECKER) $(top_builddir)/xmllint --noent result.$$name 2>&1 > result2.$$name ; \ 340 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 341 diff result.$$name result2.$$name` ; \ 342 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 343 rm result.$$name result2.$$name ; \ 344 fi ; fi ; done) 345 346URItests : testURI$(EXEEXT) 347 @(echo > .memdump) 348 @echo "## URI module regression tests" 349 -@(for i in $(srcdir)/test/URI/*.data ; do \ 350 name=`basename $$i`; \ 351 if [ ! -d $$i ] ; then \ 352 if [ ! -f $(srcdir)/result/URI/$$name ] ; then \ 353 echo New test file $$name ; \ 354 $(CHECKER) $(top_builddir)/testURI -base 'http://foo.com/path/to/index.html?orig#help' < $$i > $(srcdir)/result/URI/$$name ; \ 355 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 356 else \ 357 log=`$(CHECKER) $(top_builddir)/testURI -base 'http://foo.com/path/to/index.html?orig#help' < $$i 2>&1 > result.$$name ; \ 358 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 359 diff $(srcdir)/result/URI/$$name result.$$name` ; \ 360 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 361 rm result.$$name ; \ 362 fi ; fi ; done) 363 -@(for i in $(srcdir)/test/URI/*.uri ; do \ 364 name=`basename $$i`; \ 365 if [ ! -d $$i ] ; then \ 366 if [ ! -f $(srcdir)/result/URI/$$name ] ; then \ 367 echo New test file $$name ; \ 368 $(CHECKER) $(top_builddir)/testURI < $$i > $(srcdir)/result/URI/$$name ; \ 369 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 370 else \ 371 log=`$(CHECKER) $(top_builddir)/testURI < $$i 2>&1 > result.$$name ; \ 372 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 373 diff $(srcdir)/result/URI/$$name result.$$name` ; \ 374 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 375 rm result.$$name ; \ 376 fi ; fi ; done) 377 378XPathtests : testXPath$(EXEEXT) 379 @(echo > .memdump) 380 @echo "## XPath regression tests" 381 -@(if [ "`$(top_builddir)/testXPath | grep 'support not compiled in'`" != "" ] ; \ 382 then echo Skipping debug not compiled in ; exit 0 ; fi ; \ 383 for i in $(srcdir)/test/XPath/expr/* ; do \ 384 name=`basename $$i`; \ 385 if [ ! -d $$i ] ; then \ 386 if [ ! -f $(srcdir)/result/XPath/expr/$$name ] ; then \ 387 echo New test file $$name ; \ 388 $(CHECKER) $(top_builddir)/testXPath -f --expr $$i > $(srcdir)/result/XPath/expr/$$name ; \ 389 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 390 else \ 391 log=`$(CHECKER) $(top_builddir)/testXPath -f --expr $$i 2>&1 > result.$$name ; \ 392 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 393 diff $(srcdir)/result/XPath/expr/$$name result.$$name` ; \ 394 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 395 rm result.$$name ; \ 396 fi ; fi ; done ; \ 397 for i in $(srcdir)/test/XPath/docs/* ; do \ 398 if [ ! -d $$i ] ; then \ 399 doc=`basename $$i`; \ 400 for j in $(srcdir)/test/XPath/tests/$$doc* ; do \ 401 if [ ! -f $$j ] ; then continue ; fi ; \ 402 name=`basename $$j`; \ 403 if [ ! -d $$j ] ; then \ 404 if [ ! -f $(srcdir)/result/XPath/tests/$$name ] ; then \ 405 echo New test file $$name ; \ 406 $(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j > $(srcdir)/result/XPath/tests/$$name ; \ 407 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 408 else \ 409 log=`$(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j 2>&1 > result.$$name ; \ 410 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 411 diff $(srcdir)/result/XPath/tests/$$name result.$$name` ; \ 412 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 413 rm result.$$name ; \ 414 fi ; fi ; done ; fi ; done) 415 416XPtrtests : testXPath$(EXEEXT) 417 @(echo > .memdump) 418 @echo "## XPointer regression tests" 419 -@(if [ "`$(top_builddir)/testXPath | grep 'support not compiled in'`" != "" ] ; \ 420 then echo Skipping debug not compiled in ; exit 0 ; fi ; \ 421 for i in $(srcdir)/test/XPath/docs/* ; do \ 422 if [ ! -d $$i ] ; then \ 423 doc=`basename $$i`; \ 424 for j in $(srcdir)/test/XPath/xptr/$$doc* ; do \ 425 if [ ! -f $$j ] ; then continue ; fi ; \ 426 name=`basename $$j`; \ 427 if [ ! -d $$j ] ; then \ 428 if [ ! -f $(srcdir)/result/XPath/xptr/$$name ] ; then \ 429 echo New test file $$name ; \ 430 $(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j > $(srcdir)/result/XPath/xptr/$$name ; \ 431 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 432 else \ 433 log=`$(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j 2>&1 > result.$$name ; \ 434 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 435 diff $(srcdir)/result/XPath/xptr/$$name result.$$name` ; \ 436 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 437 rm result.$$name ; \ 438 fi ; fi ; done ; fi ; done) 439 440XIncludetests : xmllint$(EXEEXT) 441 @(echo > .memdump) 442 @echo "## XInclude regression tests" 443 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 444 name=`basename $$i`; \ 445 if [ ! -d $$i ] ; then \ 446 if [ ! -f $(srcdir)/result/XInclude/$$name ] ; then \ 447 echo New test file $$name ; \ 448 $(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude $$i > $(srcdir)/result/XInclude/$$name 2> $(srcdir)/result/XInclude/$$name.err ; \ 449 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 450 else \ 451 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude $$i > result.$$name 2>error.$$name | grep -v 'failed to load external entity' ; \ 452 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 453 diff $(srcdir)/result/XInclude/$$name result.$$name ; \ 454 diff $(srcdir)/result/XInclude/$$name.err error.$$name` ; \ 455 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 456 rm result.$$name error.$$name ; \ 457 fi ; fi ; done) 458 @(echo > .memdump) 459 @echo "## XInclude xmlReader regression tests" 460 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 461 name=`basename $$i`; \ 462 if [ ! -d $$i ] ; then \ 463 if [ ! -f $(srcdir)/result/XInclude/$$name.rdr ] ; then \ 464 echo New test file $$name ; \ 465 $(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude --walker --debug $$i > $(srcdir)/result/XInclude/$$name.rdr ; \ 466 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 467 else \ 468 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude --stream --debug $$i > result.$$name 2>error.$$name | grep -v 'failed to load external entity' ; \ 469 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 470 diff $(srcdir)/result/XInclude/$$name.err error.$$name ; \ 471 diff $(srcdir)/result/XInclude/$$name.rdr result.$$name` ; \ 472 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 473 rm result.$$name error.$$name ; \ 474 fi ; fi ; done) 475 476Scripttests : xmllint$(EXEEXT) 477 @(echo > .memdump) 478 @echo "## Scripts regression tests" 479 @echo "## Some of the base computations may be different if srcdir != ." 480 -@(for i in $(srcdir)/test/scripts/*.script ; do \ 481 name=`basename $$i .script`; \ 482 xml=$(srcdir)/test/scripts/`basename $$i .script`.xml; \ 483 if [ -f $$xml ] ; then \ 484 if [ ! -f $(srcdir)/result/scripts/$$name ] ; then \ 485 echo New test file $$name ; \ 486 $(CHECKER) $(top_builddir)/xmllint --shell $$xml < $$i > $(srcdir)/result/scripts/$$name ; \ 487 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 488 else \ 489 log=`$(CHECKER) $(top_builddir)/xmllint --shell $$xml < $$i 2>&1 > result.$$name ; \ 490 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 491 diff $(srcdir)/result/scripts/$$name result.$$name` ; \ 492 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 493 rm result.$$name ; \ 494 fi ; fi ; done) 495 496Catatests : xmlcatalog$(EXEEXT) 497 @(echo > .memdump) 498 @echo "## Catalog regression tests" 499 -@(for i in $(srcdir)/test/catalogs/*.script ; do \ 500 name=`basename $$i .script`; \ 501 xml=$(srcdir)/test/catalogs/`basename $$i .script`.xml; \ 502 if [ -f $$xml ] ; then \ 503 if [ ! -f $(srcdir)/result/catalogs/$$name ] ; then \ 504 echo New test file $$name ; \ 505 $(CHECKER) $(top_builddir)/xmlcatalog --shell $$xml < $$i > $(srcdir)/result/catalogs/$$name ; \ 506 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 507 else \ 508 log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$xml < $$i 2>&1 > result.$$name ; \ 509 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 510 diff $(srcdir)/result/catalogs/$$name result.$$name` ; \ 511 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 512 rm result.$$name ; \ 513 fi ; fi ; done) 514 -@(for i in $(srcdir)/test/catalogs/*.script ; do \ 515 name=`basename $$i .script`; \ 516 sgml=$(srcdir)/test/catalogs/`basename $$i .script`.sgml; \ 517 if [ -f $$sgml ] ; then \ 518 if [ ! -f $(srcdir)/result/catalogs/$$name ] ; then \ 519 echo New test file $$name ; \ 520 $(CHECKER) $(top_builddir)/xmlcatalog --shell $$sgml < $$i > $(srcdir)/result/catalogs/$$name ; \ 521 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 522 else \ 523 log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$sgml < $$i > result.$$name ; \ 524 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 525 diff $(srcdir)/result/catalogs/$$name result.$$name` ; \ 526 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 527 rm result.$$name ; \ 528 fi ; fi ; done) 529 @echo "## Add and del operations on XML Catalogs" 530 -@($(CHECKER) $(top_builddir)/xmlcatalog --create --noout $(srcdir)/result/catalogs/mycatalog; \ 531 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 532 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid sysid $(srcdir)/result/catalogs/mycatalog; \ 533 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 534 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid2 sysid2 $(srcdir)/result/catalogs/mycatalog; \ 535 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 536 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid3 sysid3 $(srcdir)/result/catalogs/mycatalog; \ 537 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 538 diff result/catalogs/mycatalog.full $(srcdir)/result/catalogs/mycatalog; \ 539 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 540 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid $(srcdir)/result/catalogs/mycatalog; \ 541 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 542 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid3 $(srcdir)/result/catalogs/mycatalog; \ 543 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 544 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid2 $(srcdir)/result/catalogs/mycatalog; \ 545 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 546 diff result/catalogs/mycatalog.empty $(srcdir)/result/catalogs/mycatalog; \ 547 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 548 rm -f $(srcdir)/result/catalogs/mycatalog) 549 550SVGtests : xmllint$(EXEEXT) 551 @echo "## SVG parsing regression tests" 552 -@(for i in $(srcdir)/test/SVG/* ; do \ 553 name=`basename $$i`; \ 554 if [ ! -d $$i ] ; then \ 555 if [ ! -f $(srcdir)/result/SVG/$$name ] ; then \ 556 echo New test file $$name ; \ 557 $(CHECKER) $(top_builddir)/xmllint $$i > $(srcdir)/result/SVG/$$name ; \ 558 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 559 else \ 560 echo Testing $$name ; \ 561 $(CHECKER) $(top_builddir)/xmllint $$i > result.$$name ; \ 562 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 563 diff $(srcdir)/result/SVG/$$name result.$$name ; \ 564 $(CHECKER) $(top_builddir)/xmllint result.$$name > result2.$$name ; \ 565 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 566 diff result.$$name result2.$$name ; \ 567 rm result.$$name result2.$$name ; \ 568 fi ; fi ; done) 569 570Threadtests : testThreads$(EXEEXT) 571 @echo "## Threaded regression tests" 572 -@($(CHECKER) $(top_builddir)/testThreads ; \ 573 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 574 exit 0) 575 576Readertests : xmllint$(EXEEXT) 577 @(echo > .memdump) 578 @echo "## Reader regression tests" 579 -@(for i in $(srcdir)/test/* ; do \ 580 name=`basename $$i`; \ 581 if [ ! -d $$i ] ; then \ 582 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 583 echo New test file $$name ; \ 584 $(CHECKER) $(top_builddir)/xmllint --nonet --debug --stream $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 585 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 586 else \ 587 log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \ 588 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 589 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 590 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 591 rm result.$$name ; \ 592 fi ; fi ; done) 593 @echo "## Reader on memory regression tests" 594 -@(for i in $(srcdir)/test/* ; do \ 595 name=`basename $$i`; \ 596 if [ ! -d $$i ] ; then \ 597 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 598 echo New test file $$name ; \ 599 $(CHECKER) $(top_builddir)/xmllint --memory --nonet --debug --stream $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 600 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 601 else \ 602 log=`$(CHECKER) $(top_builddir)/xmllint --memory --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \ 603 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 604 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 605 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 606 rm result.$$name ; \ 607 fi ; fi ; done) 608 @(echo > .memdump) 609 @echo "## Walker regression tests" 610 -@(for i in $(srcdir)/test/* ; do \ 611 name=`basename $$i`; \ 612 if [ ! -d $$i ] ; then \ 613 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 614 echo New test file $$name ; \ 615 $(CHECKER) $(top_builddir)/xmllint --nonet --debug --walker $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 616 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 617 else \ 618 log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --walker $$i > result.$$name 2>/dev/null ; \ 619 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 620 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 621 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 622 rm result.$$name ; \ 623 fi ; fi ; done) 624SAXtests : testSAX$(EXEEXT) 625 @(echo > .memdump) 626 @echo "## SAX callbacks regression tests" 627 -@(for i in $(srcdir)/test/* ; do \ 628 name=`basename $$i`; \ 629 if [ ! -d $$i ] ; then \ 630 if [ ! -f $(srcdir)/result/$$name.sax ] ; then \ 631 echo New test file $$name ; \ 632 $(CHECKER) $(top_builddir)/testSAX $$i > $(srcdir)/result/$$name.sax 2> /dev/null ; \ 633 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 634 else \ 635 log=`$(CHECKER) $(top_builddir)/testSAX $$i > result.$$name 2> /dev/null ; \ 636 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 637 diff $(srcdir)/result/$$name.sax result.$$name` ; \ 638 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 639 rm result.$$name ; \ 640 fi ; fi ; done) 641 642Validtests : xmllint$(EXEEXT) 643 @(echo > .memdump) 644 @echo "## Valid documents regression tests" 645 -@(for i in $(srcdir)/test/VCM/* ; do \ 646 name=`basename $$i`; \ 647 if [ ! -d $$i ] ; then \ 648 log=`$(CHECKER) $(top_builddir)/xmllint --valid --noout --nowarning $$i ; \ 649 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`;\ 650 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 651 fi ; done ; exit 0) 652 @echo "## Validity checking regression tests" 653 -@(for i in $(srcdir)/test/VC/* ; do \ 654 name=`basename $$i`; \ 655 if [ ! -d $$i ] ; then \ 656 if [ ! -f $(srcdir)/result/VC/$$name ] ; then \ 657 echo New test file $$name ; \ 658 $(CHECKER) $(top_builddir)/xmllint --noout --valid $$i 2> $(srcdir)/result/VC/$$name ; \ 659 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 660 else \ 661 log=`$(CHECKER) $(top_builddir)/xmllint --noout --valid $$i 2> result.$$name ; \ 662 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 663 diff $(srcdir)/result/VC/$$name result.$$name` ; \ 664 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 665 rm result.$$name ; \ 666 fi ; fi ; done) 667 @echo "## General documents valid regression tests" 668 -@(for i in $(srcdir)/test/valid/* ; do \ 669 name=`basename $$i`; \ 670 if [ ! -d $$i ] ; then \ 671 if [ ! -f $(srcdir)/result/valid/$$name ] ; then \ 672 echo New test file $$name ; \ 673 $(CHECKER) $(top_builddir)/xmllint --valid $$i > $(srcdir)/result/valid/$$name 2>$(srcdir)/result/valid/$$name.err ; \ 674 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 675 else \ 676 log=`$(CHECKER) $(top_builddir)/xmllint --valid $$i > result.$$name 2>error.$$name ; \ 677 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 678 diff $(srcdir)/result/valid/$$name result.$$name ; \ 679 diff $(srcdir)/result/valid/$$name.err error.$$name` ; \ 680 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 681 rm result.$$name error.$$name ; \ 682 fi ; fi ; done) 683 684Regexptests: testRegexp$(EXEEXT) 685 @(echo > .memdump) 686 @echo "## Regexp regression tests" 687 -@(for i in $(srcdir)/test/regexp/* ; do \ 688 name=`basename $$i`; \ 689 if [ ! -d $$i ] ; then \ 690 if [ ! -f $(srcdir)/result/regexp/$$name ] ; then \ 691 echo New test file $$name ; \ 692 $(CHECKER) $(top_builddir)/testRegexp -i $$i > $(srcdir)/result/regexp/$$name; \ 693 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 694 else \ 695 log=`$(CHECKER) $(top_builddir)/testRegexp -i $$i 2>&1 > result.$$name ; \ 696 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 697 diff $(srcdir)/result/regexp/$$name result.$$name` ; \ 698 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 699 rm result.$$name ; \ 700 fi ; fi ; done) 701 702Automatatests: testAutomata$(EXEEXT) 703 @(echo > .memdump) 704 @echo "## Automata regression tests" 705 -@(for i in $(srcdir)/test/automata/* ; do \ 706 name=`basename $$i`; \ 707 if [ ! -d $$i ] ; then \ 708 if [ ! -f $(srcdir)/result/automata/$$name ] ; then \ 709 echo New test file $$name ; \ 710 $(CHECKER) $(top_builddir)/testAutomata $$i > $(srcdir)/result/automata/$$name; \ 711 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 712 else \ 713 log=`$(CHECKER) $(top_builddir)/testAutomata $$i 2>&1 > result.$$name ; \ 714 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 715 diff $(srcdir)/result/automata/$$name result.$$name` ; \ 716 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 717 rm result.$$name ; \ 718 fi ; fi ; done) 719 720$(srcdir)/dba100000.xml: dbgenattr.pl 721 @echo "## generating dba100000.xml" 722 @($(top_srcdir)/dbgenattr.pl 100000 > $(srcdir)/dba100000.xml) 723 724Timingtests: xmllint$(EXEEXT) $(srcdir)/dba100000.xml 725 @echo "## Timing tests to try to detect performance" 726 @echo "## as well a memory usage breakage when streaming" 727 @echo "## 1/ using the file interface" 728 @echo "## 2/ using the memory interface" 729 @echo "## 3/ repeated DOM parsing" 730 @echo "## 4/ repeated DOM validation" 731 -@($(top_builddir)/xmllint --stream --timing $(srcdir)/dba100000.xml; \ 732 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 733 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 734 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 735 exit 0) 736 -@($(top_builddir)/xmllint --stream --timing --memory $(srcdir)/dba100000.xml; \ 737 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 738 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 739 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 740 exit 0) 741 -@($(top_builddir)/xmllint --noout --timing --repeat $(srcdir)/test/valid/REC-xml-19980210.xml; \ 742 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 743 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 744 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 745 exit 0) 746 747VTimingtests: xmllint$(EXEEXT) 748 -@($(top_builddir)/xmllint --noout --timing --valid --repeat $(srcdir)/test/valid/REC-xml-19980210.xml; \ 749 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 750 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 751 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 752 exit 0) 753 754C14Ntests : testC14N$(EXEEXT) 755 @echo "## C14N and XPath regression tests" 756 -@(for m in with-comments without-comments exc-without-comments ; do \ 757 for i in $(srcdir)/test/c14n/$$m/*.xml ; do \ 758 if [ ! -d $$i ] ; then \ 759 name=`basename $$i .xml`; \ 760 cmdline="$(CHECKER) $(top_builddir)/testC14N --$$m $$i"; \ 761 if [ -f $(srcdir)/test/c14n/$$m/$$name.xpath ] ; then \ 762 cmdline="$$cmdline $(srcdir)/test/c14n/$$m/$$name.xpath"; \ 763 if [ -f $(srcdir)/test/c14n/$$m/$$name.ns ] ; then \ 764 cmdline="$$cmdline '`cat $(srcdir)/test/c14n/$$m/$$name.ns`'"; \ 765 fi; \ 766 fi; \ 767 $$cmdline > $(srcdir)/test/c14n/test.tmp; \ 768 if [ $$? -eq 0 ]; then \ 769 diff $(srcdir)/result/c14n/$$m/$$name $(srcdir)/test/c14n/test.tmp; \ 770 if [ $$? -ne 0 ]; then \ 771 echo "Test $$m/$$name failed"; \ 772 cat $(srcdir)/test/c14n/test.tmp; \ 773 fi; \ 774 else \ 775 echo "C14N failed"; \ 776 fi; \ 777 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 778 fi; \ 779 rm -f $(srcdir)/test/c14n/test.tmp; \ 780 done; \ 781 done) 782 783Schemastests: testSchemas$(EXEEXT) 784 @(echo > .memdump) 785 @echo "## Schemas regression tests" 786 -@(for i in $(srcdir)/test/schemas/*_*.xsd ; do \ 787 name=`basename $$i | sed 's+_.*++'`; \ 788 sno=`basename $$i | sed 's+.*_\(.*\).xsd+\1+'`; \ 789 for j in $(srcdir)/test/schemas/"$$name"_*.xml ; do \ 790 if [ -f $$j ] ; then \ 791 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 792 if [ ! -f $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" ]; \ 793 then \ 794 echo New test file "$$name"_"$$sno"_"$$xno" ; \ 795 $(CHECKER) $(top_builddir)/testSchemas $$i $$j \ 796 > $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" \ 797 2> $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno".err; \ 798 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 799 else \ 800 log=`$(CHECKER) $(top_builddir)/testSchemas $$i $$j \ 801 > res.$$name 2> err.$$name;\ 802 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 803 diff $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" \ 804 res.$$name;\ 805 diff $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno".err \ 806 err.$$name;\ 807 grep Unimplemented err.$$name`; \ 808 if [ -n "$$log" ] ; then echo "$$name"_"$$sno"_"$$xno" result ; echo $$log ; fi ; \ 809 rm res.$$name err.$$name ; \ 810 fi ; fi ;\ 811 done; done) 812 813Relaxtests: xmllint$(EXEEXT) 814 @(echo > .memdump) 815 @echo "## Relax-NG regression tests" 816 -@(for i in $(srcdir)/test/relaxng/*.rng ; do \ 817 name=`basename $$i | sed 's+\.rng++'`; \ 818 if [ ! -f $(srcdir)/result/relaxng/"$$name"_valid ] ; then \ 819 echo New schemas $$name ; \ 820 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $(srcdir)/test/relaxng/tutorA.rng $$i \ 821 > $(srcdir)/result/relaxng/"$$name"_valid \ 822 2> $(srcdir)/result/relaxng/"$$name"_err; \ 823 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 824 else \ 825 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $(srcdir)/test/relaxng/tutorA.rng $$i \ 826 > res.$$name 2> err.$$name;\ 827 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 828 diff $(srcdir)/result/relaxng/"$$name"_valid \ 829 res.$$name;\ 830 diff $(srcdir)/result/relaxng/"$$name"_err \ 831 err.$$name | grep -v "error detected at";\ 832 grep Unimplemented err.$$name`; \ 833 if [ -n "$$log" ] ; then echo schemas $$name result ; echo $$log ; fi ; \ 834 rm res.$$name err.$$name ; \ 835 fi; \ 836 for j in $(srcdir)/test/relaxng/"$$name"_*.xml ; do \ 837 if [ -f $$j ] ; then \ 838 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 839 if [ ! -f $(srcdir)/result/relaxng/"$$name"_"$$xno" ]; \ 840 then \ 841 echo New test file "$$name"_"$$xno" ; \ 842 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 843 > $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 844 2> $(srcdir)/result/relaxng/"$$name"_"$$xno".err; \ 845 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 846 else \ 847 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 848 > res.$$name 2> err.$$name;\ 849 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 850 diff $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 851 res.$$name;\ 852 diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \ 853 err.$$name | grep -v "error detected at";\ 854 grep Unimplemented err.$$name`; \ 855 if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \ 856 rm res.$$name err.$$name ; \ 857 fi ; fi ; \ 858 done; done) 859 @echo "## Relax-NG streaming regression tests" 860 -@(for i in $(srcdir)/test/relaxng/*.rng ; do \ 861 name=`basename $$i | sed 's+\.rng++'`; \ 862 for j in $(srcdir)/test/relaxng/"$$name"_*.xml ; do \ 863 if [ -f $$j ] ; then \ 864 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 865 if [ ! -f $(srcdir)/result/relaxng/"$$name"_"$$xno" ]; \ 866 then \ 867 echo New test file "$$name"_"$$xno" ; \ 868 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 869 > $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 870 2> $(srcdir)/result/relaxng/"$$name"_"$$xno".err; \ 871 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 872 else \ 873 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --stream --relaxng $$i $$j \ 874 > res.$$name 2> err.$$name;\ 875 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 876 diff $(srcdir)/result/relaxng/"$$name"_"$$xno" res.$$name;\ 877 if [ "$$name" != "tutor10_1" -a "$$name" != "tutor10_2" -a "$$name" != "tutor3_2" ] ; then \ 878 diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \ 879 err.$$name | grep -v "error detected at";\ 880 fi ; grep Unimplemented err.$$name`; \ 881 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 882 rm res.$$name err.$$name ; \ 883 fi ; fi ; \ 884 done; done) 885 886RelaxNGPythonTests: 887 @(if [ -x $(PYTHON) ] ; then \ 888 echo "## Relax-NG Python based test suite 1" ; \ 889 $(CHECKER) $(PYTHON) $(srcdir)/check-relaxng-test-suite.py ; \ 890 echo "## Relax-NG Python based test suite 2" ; \ 891 $(CHECKER) $(PYTHON) $(srcdir)/check-relaxng-test-suite2.py ; \ 892 fi) 893 894SchemasPythonTests: 895 @(if [ -x $(PYTHON) ] ; then \ 896 echo "## XML Schemas datatypes Python based test suite" ; \ 897 $(CHECKER) $(PYTHON) $(srcdir)/check-xsddata-test-suite.py ; \ 898 fi) 899 900cleanup: 901 -@(find . -name .\#\* -exec rm {} \;) 902 903dist-hook: cleanup libxml2.spec 904 -cp libxml2.spec $(distdir) 905 (cd $(srcdir) ; tar -cf - --exclude CVS win32 macos vms test result SAXresult ) | (cd $(distdir); tar xf -) 906 907cleantar: 908 @(rm -f libxml*.tar.gz COPYING.LIB) 909 910rpm: cleanup cleantar 911 @(unset CDPATH ; $(MAKE) dist && rpmbuild -ta $(distdir).tar.gz) 912 913## We create xml2Conf.sh here and not from configure because we want 914## to get the paths expanded correctly. Macros like srcdir are given 915## the value NONE in configure if the user doesn't specify them (this 916## is an autoconf feature, not a bug). 917 918xml2Conf.sh: xml2Conf.sh.in Makefile 919## Use sed and then mv to avoid problems if the user interrupts. 920 sed -e 's?\@XML_LIBDIR\@?$(XML_LIBDIR)?g' \ 921 -e 's?\@XML_INCLUDEDIR\@?$(XML_INCLUDEDIR)?g' \ 922 -e 's?\@VERSION\@?$(VERSION)?g' \ 923 -e 's?\@XML_LIBS\@?$(XML_LIBS)?g' \ 924 < $(srcdir)/xml2Conf.sh.in > xml2Conf.tmp \ 925 && mv xml2Conf.tmp xml2Conf.sh 926 927CLEANFILES=xml2Conf.sh 928 929confexecdir=$(libdir) 930confexec_DATA = xml2Conf.sh 931EXTRA_DIST = xml2-config.in xml2Conf.sh.in libxml.spec.in libxml2.spec \ 932 libxml.m4 Copyright check-xml-test-suite.py \ 933 check-relaxng-test-suite.py check-relaxng-test-suite2.py \ 934 check-xsddata-test-suite.py check-xinclude-test-suite.py \ 935 example/Makefile.am example/gjobread.c example/gjobs.xml \ 936 $(man_MANS) libxml-2.0.pc.in libxml-2.0-uninstalled.pc.in \ 937 trionan.c trionan.h triostr.c triostr.h trio.c trio.h \ 938 triop.h triodef.h libxml.h \ 939 testThreadsWin32.c genUnicode.py TODO_SCHEMAS \ 940 dbgen.pl dbgenattr.pl 941 942 943pkgconfigdir = $(libdir)/pkgconfig 944pkgconfig_DATA = libxml-2.0.pc 945 946# 947# Instll the tests program sources as examples 948# 949BASE_DIR=$(datadir)/doc 950DOC_MODULE=libxml2-$(VERSION) 951EXAMPLES_DIR=$(BASE_DIR)/$(DOC_MODULE)/examples 952 953install-data-local: 954 $(mkinstalldirs) $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) 955 -@INSTALL@ -m 0644 $(srcdir)/Copyright $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) 956 $(mkinstalldirs) $(DESTDIR)$(EXAMPLES_DIR) 957 -@INSTALL@ -m 0644 $(srcdir)/xmllint.c $(DESTDIR)$(EXAMPLES_DIR) 958 -@INSTALL@ -m 0644 $(srcdir)/testSAX.c $(DESTDIR)$(EXAMPLES_DIR) 959 -@INSTALL@ -m 0644 $(srcdir)/testHTML.c $(DESTDIR)$(EXAMPLES_DIR) 960 -@INSTALL@ -m 0644 $(srcdir)/testXPath.c $(DESTDIR)$(EXAMPLES_DIR) 961