1## Process this file with automake to produce Makefile.in 2 3ACLOCAL_AMFLAGS = -I m4 4 5SUBDIRS = include . xstc @PYTHON_SUBDIR@ 6 7DIST_SUBDIRS = include . doc example python xstc 8 9INCLUDES = -I$(top_builddir)/include -I@srcdir@/include @THREAD_CFLAGS@ @Z_CFLAGS@ 10 11noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \ 12 testThreads testC14N testAutomata testRegexp \ 13 testReader testapi testModule runtest runsuite testchar \ 14 testdict runxmlconf testrecurse 15 16bin_PROGRAMS = xmllint xmlcatalog 17 18bin_SCRIPTS=xml2-config 19 20lib_LTLIBRARIES = libxml2.la 21libxml2_la_LIBADD = @THREAD_LIBS@ @Z_LIBS@ $(ICONV_LIBS) @M_LIBS@ @WIN32_EXTRA_LIBADD@ 22 23if USE_VERSION_SCRIPT 24LIBXML2_VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/libxml2.syms 25else 26LIBXML2_VERSION_SCRIPT = 27endif 28 29libxml2_la_LDFLAGS = @CYGWIN_EXTRA_LDFLAGS@ @WIN32_EXTRA_LDFLAGS@ \ 30 $(LIBXML2_VERSION_SCRIPT) \ 31 -version-info @LIBXML_VERSION_INFO@ \ 32 @MODULE_PLATFORM_LIBS@ 33 34if WITH_TRIO_SOURCES 35libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \ 36 parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \ 37 valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \ 38 xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \ 39 catalog.c globals.c threads.c c14n.c xmlstring.c \ 40 xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \ 41 triostr.c trio.c xmlreader.c relaxng.c dict.c SAX2.c \ 42 xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c \ 43 xmlmodule.c schematron.c 44else 45libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \ 46 parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \ 47 valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \ 48 xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \ 49 catalog.c globals.c threads.c c14n.c xmlstring.c \ 50 xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \ 51 xmlreader.c relaxng.c dict.c SAX2.c \ 52 xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c \ 53 xmlmodule.c schematron.c 54endif 55 56DEPS = $(top_builddir)/libxml2.la 57LDADDS = @STATIC_BINARIES@ $(top_builddir)/libxml2.la @THREAD_LIBS@ @Z_LIBS@ $(ICONV_LIBS) @M_LIBS@ @WIN32_EXTRA_LIBADD@ 58 59 60man_MANS = xml2-config.1 libxml.3 61 62m4datadir = $(datadir)/aclocal 63m4data_DATA = libxml.m4 64 65runtest_SOURCES=runtest.c 66runtest_LDFLAGS = 67runtest_DEPENDENCIES = $(DEPS) 68runtest_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS) 69 70testrecurse_SOURCES=testrecurse.c 71testrecurse_LDFLAGS = 72testrecurse_DEPENDENCIES = $(DEPS) 73testrecurse_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS) 74 75testchar_SOURCES=testchar.c 76testchar_LDFLAGS = 77testchar_DEPENDENCIES = $(DEPS) 78testchar_LDADD= @RDL_LIBS@ $(LDADDS) 79 80testdict_SOURCES=testdict.c 81testdict_LDFLAGS = 82testdict_DEPENDENCIES = $(DEPS) 83testdict_LDADD= @RDL_LIBS@ $(LDADDS) 84 85runsuite_SOURCES=runsuite.c 86runsuite_LDFLAGS = 87runsuite_DEPENDENCIES = $(DEPS) 88runsuite_LDADD= @RDL_LIBS@ $(LDADDS) 89 90xmllint_SOURCES=xmllint.c 91xmllint_LDFLAGS = 92xmllint_DEPENDENCIES = $(DEPS) 93xmllint_LDADD= @RDL_LIBS@ $(LDADDS) 94 95testSAX_SOURCES=testSAX.c 96testSAX_LDFLAGS = 97testSAX_DEPENDENCIES = $(DEPS) 98testSAX_LDADD= $(LDADDS) 99 100testHTML_SOURCES=testHTML.c 101testHTML_LDFLAGS = 102testHTML_DEPENDENCIES = $(DEPS) 103testHTML_LDADD= $(LDADDS) 104 105xmlcatalog_SOURCES=xmlcatalog.c 106xmlcatalog_LDFLAGS = 107xmlcatalog_DEPENDENCIES = $(DEPS) 108xmlcatalog_LDADD= @RDL_LIBS@ $(LDADDS) 109 110testXPath_SOURCES=testXPath.c 111testXPath_LDFLAGS = 112testXPath_DEPENDENCIES = $(DEPS) 113testXPath_LDADD= $(LDADDS) 114 115testC14N_SOURCES=testC14N.c 116testC14N_LDFLAGS = 117testC14N_DEPENDENCIES = $(DEPS) 118testC14N_LDADD= $(LDADDS) 119 120testThreads_SOURCES=testThreads@THREADS_W32@.c 121testThreads_LDFLAGS = 122testThreads_DEPENDENCIES = $(DEPS) 123testThreads_LDADD= @BASE_THREAD_LIBS@ $(LDADDS) 124 125testURI_SOURCES=testURI.c 126testURI_LDFLAGS = 127testURI_DEPENDENCIES = $(DEPS) 128testURI_LDADD= $(LDADDS) 129 130testRegexp_SOURCES=testRegexp.c 131testRegexp_LDFLAGS = 132testRegexp_DEPENDENCIES = $(DEPS) 133testRegexp_LDADD= $(LDADDS) 134 135testAutomata_SOURCES=testAutomata.c 136testAutomata_LDFLAGS = 137testAutomata_DEPENDENCIES = $(DEPS) 138testAutomata_LDADD= $(LDADDS) 139 140testSchemas_SOURCES=testSchemas.c 141testSchemas_LDFLAGS = 142testSchemas_DEPENDENCIES = $(DEPS) 143testSchemas_LDADD= $(LDADDS) 144 145testRelax_SOURCES=testRelax.c 146testRelax_LDFLAGS = 147testRelax_DEPENDENCIES = $(DEPS) 148testRelax_LDADD= $(LDADDS) 149 150testReader_SOURCES=testReader.c 151testReader_LDFLAGS = 152testReader_DEPENDENCIES = $(DEPS) 153testReader_LDADD= $(LDADDS) 154 155testModule_SOURCES=testModule.c 156testModule_LDFLAGS = 157testModule_DEPENDENCIES = $(DEPS) 158testModule_LDADD= $(LDADDS) 159 160noinst_LTLIBRARIES = testdso.la 161testdso_la_SOURCES = testdso.c 162testdso_la_LDFLAGS = -module -no-undefined -avoid-version -rpath $(libdir) 163 164# that one forces the rebuild when "make rebuild" is run on doc/ 165rebuild_testapi: 166 -@(if [ "$(PYTHON)" != "" ] ; then \ 167 $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi ) 168 169# that one is just to make sure it is rebuilt if missing 170# but adding the dependances generate mess 171testapi.c: $(srcdir)/gentest.py 172 -@(if [ "$(PYTHON)" != "" ] ; then \ 173 $(PYTHON) $(srcdir)/gentest.py $(srcdir) ; fi ) 174 175testapi_SOURCES=testapi.c 176testapi_LDFLAGS = 177testapi_DEPENDENCIES = $(DEPS) 178testapi_LDADD= $(LDADDS) 179 180runxmlconf_SOURCES=runxmlconf.c 181runxmlconf_LDFLAGS = 182runxmlconf_DEPENDENCIES = $(DEPS) 183runxmlconf_LDADD= $(LDADDS) 184 185#testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c 186#testOOM_LDFLAGS = 187#testOOM_DEPENDENCIES = $(DEPS) 188#testOOM_LDADD= $(LDADDS) 189 190runtests: 191 $(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) ./testapi$(EXEEXT) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT) 192 @(if [ "@PYTHON_SUBDIR@" != "" ] ; then cd python ; \ 193 $(MAKE) MAKEFLAGS+=--silent tests ; fi) 194 195check: all runtests 196 197check-valgrind: all 198 @echo '## Running the regression tests under Valgrind' 199 @echo '## Go get a cup of coffee it is gonna take a while ...' 200 $(MAKE) CHECKER='valgrind -q' check 201 202testall : tests SVGtests SAXtests 203 204tests: XMLtests XMLenttests NStests IDtests Errtests APItests @READER_TEST@ @TEST_SAX@ @TEST_PUSH@ @TEST_HTML@ @TEST_PHTML@ @TEST_VALID@ URItests @TEST_PATTERN@ @TEST_XPATH@ @TEST_XPTR@ @TEST_XINCLUDE@ @TEST_C14N@ @TEST_DEBUG@ @TEST_CATALOG@ @TEST_REGEXPS@ @TEST_SCHEMAS@ @TEST_SCHEMATRON@ @TEST_THREADS@ Timingtests @TEST_VTIME@ @PYTHON_TESTS@ @TEST_MODULES@ 205 @(if [ "@PYTHON_SUBDIR@" != "" ] ; then cd python ; \ 206 $(MAKE) MAKEFLAGS+=--silent tests ; fi) 207 @(cd doc/examples ; $(MAKE) MAKEFLAGS+=--silent tests) 208 209valgrind: 210 @echo '## Running the regression tests under Valgrind' 211 @echo '## Go get a cup of coffee it is gonna take a while ...' 212 $(MAKE) CHECKER='valgrind -q' tests 213 214APItests: testapi$(EXEEXT) 215 @echo "## Running the API regression tests this may take a little while" 216 -@($(CHECKER) $(top_builddir)/testapi -q) 217 218HTMLtests : testHTML$(EXEEXT) 219 @(echo > .memdump) 220 @echo "## HTML regression tests" 221 -@(for i in $(srcdir)/test/HTML/* ; do \ 222 name=`basename $$i`; \ 223 if [ ! -d $$i ] ; then \ 224 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 225 echo New test file $$name ; \ 226 $(CHECKER) $(top_builddir)/testHTML $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \ 227 else \ 228 log=`$(CHECKER) $(top_builddir)/testHTML $$i > result.$$name 2> error.$$name ; \ 229 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 230 diff $(srcdir)/result/HTML/$$name result.$$name ; \ 231 diff -b $(srcdir)/result/HTML/$$name.err error.$$name ; \ 232 $(CHECKER) $(top_builddir)/testHTML result.$$name > result2.$$name 2>error.$$name ; \ 233 diff result.$$name result2.$$name` ; \ 234 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 235 rm result.$$name result2.$$name error.$$name ; \ 236 fi ; fi ; done) 237 238HTMLPushtests : testHTML$(EXEEXT) 239 @echo "## Push HTML regression tests" 240 -@(for i in $(srcdir)/test/HTML/* ; do \ 241 name=`basename $$i`; \ 242 if [ ! -d $$i ] ; then \ 243 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 244 echo New test file $$name ; \ 245 $(CHECKER) $(top_builddir)/testHTML --push $$i > $(srcdir)/result/HTML/$$name 2>$(srcdir)/result/HTML/$$name.err ; \ 246 else \ 247 log=`$(CHECKER) $(top_builddir)/testHTML --push $$i > result.$$name 2> error.$$name ; \ 248 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 249 diff $(srcdir)/result/HTML/$$name result.$$name ; \ 250 cut -b 1-15 $(srcdir)/result/HTML/$$name.err > errorcut.$$name; \ 251 cut -b 1-15 error.$$name > errorcut2.$$name; \ 252 diff -b errorcut.$$name errorcut2.$$name ; \ 253 $(CHECKER) $(top_builddir)/testHTML --push result.$$name > result2.$$name 2>error.$$name ; \ 254 diff result.$$name result2.$$name` ; \ 255 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 256 rm result.$$name result2.$$name error.$$name errorcut.$$name errorcut2.$$name ; \ 257 fi ; fi ; done) 258 @echo "## HTML SAX regression tests" 259 -@(for i in $(srcdir)/test/HTML/* ; do \ 260 name=`basename $$i`; \ 261 if [ ! -d $$i ] ; then \ 262 if [ ! -f $(srcdir)/result/HTML/$$name.sax ] ; then \ 263 echo New test file $$name ; \ 264 $(CHECKER) $(top_builddir)/testHTML --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \ 265 else \ 266 log=`$(CHECKER) $(top_builddir)/testHTML --sax $$i > result.$$name.sax ; \ 267 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 268 diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \ 269 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 270 rm result.$$name.sax ; \ 271 fi ; fi ; done) 272 @echo "## Push HTML SAX regression tests" 273 -@(for i in $(srcdir)/test/HTML/* ; do \ 274 name=`basename $$i`; \ 275 if [ ! -d $$i ] ; then \ 276 if [ ! -f $(srcdir)/result/HTML/$$name ] ; then \ 277 echo New test file $$name ; \ 278 $(CHECKER) $(top_builddir)/testHTML --push --sax $$i > $(srcdir)/result/HTML/$$name.sax ; \ 279 else \ 280 log=`$(CHECKER) $(top_builddir)/testHTML --push --sax $$i 2>&1 > result.$$name.sax ; \ 281 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 282 diff $(srcdir)/result/HTML/$$name.sax result.$$name.sax` ; \ 283 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 284 rm result.$$name.sax ; \ 285 fi ; fi ; done) 286 287XMLtests : xmllint$(EXEEXT) 288 @(echo > .memdump) 289 @echo "## XML regression tests" 290 -@(for i in $(srcdir)/test/* ; do \ 291 name=`basename $$i`; \ 292 if [ ! -d $$i ] ; then \ 293 if [ ! -f $(srcdir)/result/$$name ] ; then \ 294 echo New test file $$name ; \ 295 $(CHECKER) $(top_builddir)/xmllint $$i > $(srcdir)/result/$$name ; \ 296 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 297 else \ 298 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2>&1 > result.$$name ; \ 299 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 300 diff $(srcdir)/result/$$name result.$$name ; \ 301 $(CHECKER) $(top_builddir)/xmllint result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 302 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 303 diff result.$$name result2.$$name` ;\ 304 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 305 rm result.$$name result2.$$name ; \ 306 fi ; fi ; done) 307 @echo "## XML regression tests on memory" 308 -@(for i in $(srcdir)/test/* ; do \ 309 name=`basename $$i`; \ 310 if [ ! -d $$i ] ; then \ 311 if [ ! -f $(srcdir)/result/$$name ] ; then \ 312 echo New test file $$name ; \ 313 $(CHECKER) $(top_builddir)/xmllint --memory $$i > $(srcdir)/result/$$name ; \ 314 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 315 else \ 316 log=`$(CHECKER) $(top_builddir)/xmllint --memory $$i 2>&1 > result.$$name ; \ 317 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 318 diff $(srcdir)/result/$$name result.$$name ; \ 319 $(CHECKER) $(top_builddir)/xmllint --memory result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 320 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`; \ 321 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 322 diff result.$$name result2.$$name ; \ 323 rm result.$$name result2.$$name ; \ 324 fi ; fi ; done) 325 326XMLPushtests: xmllint$(EXEEXT) 327 @(echo > .memdump) 328 @echo "## XML push regression tests" 329 -@(for i in $(srcdir)/test/* ; do \ 330 name=`basename $$i`; \ 331 if [ ! -d $$i ] ; then \ 332 if [ ! -f $(srcdir)/result/$$name ] ; then \ 333 echo New test file $$name ; \ 334 $(CHECKER) $(top_builddir)/xmllint --push $$i > $(srcdir)/result/$$name ; \ 335 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 336 else \ 337 log=`$(CHECKER) $(top_builddir)/xmllint --push $$i 2>&1 > result.$$name ; \ 338 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 339 diff $(srcdir)/result/$$name result.$$name ; \ 340 $(CHECKER) $(top_builddir)/xmllint --push result.$$name 2>&1 > result2.$$name | grep -v 'failed to load external entity' ; \ 341 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 342 diff result.$$name result2.$$name` ; \ 343 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 344 rm result.$$name result2.$$name ; \ 345 fi ; fi ; done) 346 347NStests : xmllint$(EXEEXT) 348 @(echo > .memdump) 349 @echo "## XML Namespaces regression tests" 350 -@(for i in $(srcdir)/test/namespaces/* ; do \ 351 name=`basename $$i`; \ 352 if [ ! -d $$i ] ; then \ 353 if [ ! -f $(srcdir)/result/namespaces/$$name ] ; then \ 354 echo New test file $$name ; \ 355 $(CHECKER) $(top_builddir)/xmllint $$i \ 356 2> $(srcdir)/result/namespaces/$$name.err \ 357 > $(srcdir)/result/namespaces/$$name ; \ 358 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 359 else \ 360 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2> error.$$name > result.$$name ; \ 361 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 362 diff $(srcdir)/result/namespaces/$$name result.$$name ; \ 363 diff $(srcdir)/result/namespaces/$$name.err error.$$name`; \ 364 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 365 rm result.$$name error.$$name ; \ 366 fi ; fi ; done) 367 368IDtests : xmllint$(EXEEXT) testXPath$(EXEEXT) 369 @(echo > .memdump) 370 @echo "## xml:id regression tests" 371 -@(for i in $(srcdir)/test/xmlid/id_*.xml ; do \ 372 name=`basename $$i`; \ 373 if [ ! -d $$i ] ; then \ 374 if [ ! -f $(srcdir)/result/xmlid/$$name ] ; then \ 375 echo New test file $$name ; \ 376 $(CHECKER) $(top_builddir)/testXPath -i $$i "id('bar')" \ 377 2> $(srcdir)/result/xmlid/$$name.err \ 378 > $(srcdir)/result/xmlid/$$name ; \ 379 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 380 else \ 381 log=`$(CHECKER) $(top_builddir)/testXPath -i $$i "id('bar')" 2> error.$$name > result.$$name ; \ 382 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 383 diff $(srcdir)/result/xmlid/$$name result.$$name ; \ 384 diff $(srcdir)/result/xmlid/$$name.err error.$$name` ; \ 385 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 386 rm result.$$name error.$$name ; \ 387 fi ; fi ; done) 388 389Errtests : xmllint$(EXEEXT) 390 @(echo > .memdump) 391 @echo "## Error cases regression tests" 392 -@(for i in $(srcdir)/test/errors/*.xml ; do \ 393 name=`basename $$i`; \ 394 if [ ! -d $$i ] ; then \ 395 if [ ! -f $(srcdir)/result/errors/$$name ] ; then \ 396 echo New test file $$name ; \ 397 $(CHECKER) $(top_builddir)/xmllint $$i \ 398 2> $(srcdir)/result/errors/$$name.err \ 399 > $(srcdir)/result/errors/$$name ; \ 400 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 401 else \ 402 log=`$(CHECKER) $(top_builddir)/xmllint $$i 2> error.$$name > result.$$name ; \ 403 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 404 diff $(srcdir)/result/errors/$$name result.$$name ; \ 405 diff $(srcdir)/result/errors/$$name.err error.$$name` ; \ 406 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 407 rm result.$$name error.$$name ; \ 408 fi ; fi ; done) 409 @echo "## Error cases stream regression tests" 410 -@(for i in $(srcdir)/test/errors/*.xml ; do \ 411 name=`basename $$i`; \ 412 if [ ! -d $$i ] ; then \ 413 if [ ! -f $(srcdir)/result/errors/$$name.str ] ; then \ 414 echo New test file $$name ; \ 415 $(CHECKER) $(top_builddir)/xmllint --stream $$i \ 416 2> $(srcdir)/result/errors/$$name.str \ 417 > /dev/null ; \ 418 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 419 else \ 420 log=`$(CHECKER) $(top_builddir)/xmllint --stream $$i 2> error.$$name > /dev/null ; \ 421 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 422 diff $(srcdir)/result/errors/$$name.str error.$$name` ; \ 423 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 424 rm error.$$name ; \ 425 fi ; fi ; done) 426 427Docbtests : xmllint$(EXEEXT) 428 429XMLenttests : xmllint$(EXEEXT) 430 @(echo > .memdump) 431 @echo "## XML entity subst regression tests" 432 -@(for i in $(srcdir)/test/* ; do \ 433 name=`basename $$i`; \ 434 if [ ! -d $$i ] ; then \ 435 if [ ! -f $(srcdir)/result/noent/$$name ] ; then \ 436 echo New test file $$name ; \ 437 $(CHECKER) $(top_builddir)/xmllint --noent $$i > $(srcdir)/result/noent/$$name ; \ 438 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 439 else \ 440 log=`$(CHECKER) $(top_builddir)/xmllint --noent $$i 2>&1 > result.$$name ; \ 441 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 442 diff $(srcdir)/result/noent/$$name result.$$name ; \ 443 $(CHECKER) $(top_builddir)/xmllint --noent result.$$name 2>&1 > result2.$$name ; \ 444 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 445 diff result.$$name result2.$$name` ; \ 446 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 447 rm result.$$name result2.$$name ; \ 448 fi ; fi ; done) 449 450URItests : testURI$(EXEEXT) 451 @(echo > .memdump) 452 @echo "## URI module regression tests" 453 -@(for i in $(srcdir)/test/URI/*.data ; do \ 454 name=`basename $$i`; \ 455 if [ ! -d $$i ] ; then \ 456 if [ ! -f $(srcdir)/result/URI/$$name ] ; then \ 457 echo New test file $$name ; \ 458 $(CHECKER) $(top_builddir)/testURI -base 'http://foo.com/path/to/index.html?orig#help' < $$i > $(srcdir)/result/URI/$$name ; \ 459 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 460 else \ 461 log=`$(CHECKER) $(top_builddir)/testURI -base 'http://foo.com/path/to/index.html?orig#help' < $$i 2>&1 > result.$$name ; \ 462 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 463 diff $(srcdir)/result/URI/$$name result.$$name` ; \ 464 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 465 rm result.$$name ; \ 466 fi ; fi ; done) 467 -@(for i in $(srcdir)/test/URI/*.uri ; do \ 468 name=`basename $$i`; \ 469 if [ ! -d $$i ] ; then \ 470 if [ ! -f $(srcdir)/result/URI/$$name ] ; then \ 471 echo New test file $$name ; \ 472 $(CHECKER) $(top_builddir)/testURI < $$i > $(srcdir)/result/URI/$$name ; \ 473 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 474 else \ 475 log=`$(CHECKER) $(top_builddir)/testURI < $$i 2>&1 > result.$$name ; \ 476 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 477 diff $(srcdir)/result/URI/$$name result.$$name` ; \ 478 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 479 rm result.$$name ; \ 480 fi ; fi ; done) 481 482XPathtests : testXPath$(EXEEXT) 483 @(echo > .memdump) 484 @echo "## XPath regression tests" 485 -@(if [ "`$(top_builddir)/testXPath | grep 'support not compiled in'`" != "" ] ; \ 486 then echo Skipping debug not compiled in ; exit 0 ; fi ; \ 487 for i in $(srcdir)/test/XPath/expr/* ; do \ 488 name=`basename $$i`; \ 489 if [ ! -d $$i ] ; then \ 490 if [ ! -f $(srcdir)/result/XPath/expr/$$name ] ; then \ 491 echo New test file $$name ; \ 492 $(CHECKER) $(top_builddir)/testXPath -f --expr $$i > $(srcdir)/result/XPath/expr/$$name ; \ 493 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 494 else \ 495 log=`$(CHECKER) $(top_builddir)/testXPath -f --expr $$i 2>&1 > result.$$name ; \ 496 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 497 diff $(srcdir)/result/XPath/expr/$$name result.$$name` ; \ 498 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 499 rm result.$$name ; \ 500 fi ; fi ; done ; \ 501 for i in $(srcdir)/test/XPath/docs/* ; do \ 502 if [ ! -d $$i ] ; then \ 503 doc=`basename $$i`; \ 504 for j in $(srcdir)/test/XPath/tests/$$doc* ; do \ 505 if [ ! -f $$j ] ; then continue ; fi ; \ 506 name=`basename $$j`; \ 507 if [ ! -d $$j ] ; then \ 508 if [ ! -f $(srcdir)/result/XPath/tests/$$name ] ; then \ 509 echo New test file $$name ; \ 510 $(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j > $(srcdir)/result/XPath/tests/$$name ; \ 511 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 512 else \ 513 log=`$(CHECKER) $(top_builddir)/testXPath -f -i $$i $$j 2>&1 > result.$$name ; \ 514 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 515 diff $(srcdir)/result/XPath/tests/$$name result.$$name` ; \ 516 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 517 rm result.$$name ; \ 518 fi ; fi ; done ; fi ; done) 519 520XPtrtests : testXPath$(EXEEXT) 521 @(echo > .memdump) 522 @echo "## XPointer regression tests" 523 -@(if [ "`$(top_builddir)/testXPath | grep 'support not compiled in'`" != "" ] ; \ 524 then echo Skipping debug not compiled in ; exit 0 ; fi ; \ 525 for i in $(srcdir)/test/XPath/docs/* ; do \ 526 if [ ! -d $$i ] ; then \ 527 doc=`basename $$i`; \ 528 for j in $(srcdir)/test/XPath/xptr/$$doc* ; do \ 529 if [ ! -f $$j ] ; then continue ; fi ; \ 530 name=`basename $$j`; \ 531 if [ ! -d $$j ] ; then \ 532 if [ ! -f $(srcdir)/result/XPath/xptr/$$name ] ; then \ 533 echo New test file $$name ; \ 534 $(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j > $(srcdir)/result/XPath/xptr/$$name ; \ 535 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 536 else \ 537 log=`$(CHECKER) $(top_builddir)/testXPath -xptr -f -i $$i $$j 2>&1 > result.$$name ; \ 538 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 539 diff $(srcdir)/result/XPath/xptr/$$name result.$$name` ; \ 540 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 541 rm result.$$name ; \ 542 fi ; fi ; done ; fi ; done) 543 544XIncludetests : xmllint$(EXEEXT) 545 @(echo > .memdump) 546 @echo "## XInclude regression tests" 547 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 548 name=`basename $$i`; \ 549 if [ ! -d $$i ] ; then \ 550 if [ ! -f $(srcdir)/result/XInclude/$$name ] ; then \ 551 echo New test file $$name ; \ 552 $(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude $$i > $(srcdir)/result/XInclude/$$name 2> $(srcdir)/result/XInclude/$$name.err ; \ 553 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 554 else \ 555 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude $$i > result.$$name 2>error.$$name ; \ 556 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 557 diff $(srcdir)/result/XInclude/$$name result.$$name ; \ 558 diff $(srcdir)/result/XInclude/$$name.err error.$$name` ; \ 559 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 560 rm result.$$name error.$$name ; \ 561 fi ; fi ; done) 562 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 563 name=`basename $$i`; \ 564 if [ ! -d $$i ] ; then \ 565 if [ ! -f $(srcdir)/result/XInclude/$$name ] ; then \ 566 echo New test file $$name ; \ 567 $(CHECKER) $(top_builddir)/xmllint --nowarning --noxincludenode $$i > $(srcdir)/result/XInclude/$$name 2> $(srcdir)/result/XInclude/$$name.err ; \ 568 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 569 else \ 570 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --noxincludenode $$i > result.$$name 2>error.$$name ; \ 571 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 572 diff $(srcdir)/result/XInclude/$$name result.$$name ; \ 573 diff $(srcdir)/result/XInclude/$$name.err error.$$name` ; \ 574 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 575 rm result.$$name error.$$name ; \ 576 fi ; fi ; done) 577 @(echo > .memdump) 578 @echo "## XInclude xmlReader regression tests" 579 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 580 name=`basename $$i`; \ 581 if [ ! -d $$i ] ; then \ 582 if [ ! -f $(srcdir)/result/XInclude/$$name.rdr ] ; then \ 583 echo New test file $$name ; \ 584 $(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude --stream --debug $$i > $(srcdir)/result/XInclude/$$name.rdr ; \ 585 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 586 else \ 587 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude --stream --debug $$i > result.$$name 2>error.$$name ; \ 588 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 589 diff $(srcdir)/result/XInclude/$$name.err error.$$name ; \ 590 diff $(srcdir)/result/XInclude/$$name.rdr result.$$name` ; \ 591 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 592 rm result.$$name error.$$name ; \ 593 fi ; fi ; done) 594 -@(for i in $(srcdir)/test/XInclude/docs/* ; do \ 595 name=`basename $$i`; \ 596 if [ ! -d $$i ] ; then \ 597 if [ ! -f $(srcdir)/result/XInclude/$$name.rdr ] ; then \ 598 echo New test file $$name ; \ 599 $(CHECKER) $(top_builddir)/xmllint --nowarning --noxincludenode --stream --debug $$i > $(srcdir)/result/XInclude/$$name.rdr ; \ 600 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 601 else \ 602 log=`$(CHECKER) $(top_builddir)/xmllint --nowarning --xinclude --stream --debug $$i > result.$$name 2>error.$$name ; \ 603 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 604 diff $(srcdir)/result/XInclude/$$name.err error.$$name ; \ 605 diff $(srcdir)/result/XInclude/$$name.rdr result.$$name` ; \ 606 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 607 rm result.$$name error.$$name ; \ 608 fi ; fi ; done) 609 610Scripttests : xmllint$(EXEEXT) 611 @(echo > .memdump) 612 @echo "## Scripts regression tests" 613 @echo "## Some of the base computations may be different if srcdir != ." 614 -@(for i in $(srcdir)/test/scripts/*.script ; do \ 615 name=`basename $$i .script`; \ 616 xml=$(srcdir)/test/scripts/`basename $$i .script`.xml; \ 617 if [ -f $$xml ] ; then \ 618 if [ ! -f $(srcdir)/result/scripts/$$name ] ; then \ 619 echo New test file $$name ; \ 620 $(CHECKER) $(top_builddir)/xmllint --shell $$xml < $$i > $(srcdir)/result/scripts/$$name 2> $(srcdir)/result/scripts/$$name.err ; \ 621 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 622 else \ 623 log=`$(CHECKER) $(top_builddir)/xmllint --shell $$xml < $$i > result.$$name 2> result.$$name.err ; \ 624 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 625 diff $(srcdir)/result/scripts/$$name result.$$name ; \ 626 diff $(srcdir)/result/scripts/$$name.err result.$$name.err` ; \ 627 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 628 rm result.$$name result.$$name.err ; \ 629 fi ; fi ; done) 630 631Catatests : xmlcatalog$(EXEEXT) 632 @(echo > .memdump) 633 @echo "## Catalog regression tests" 634 -@(for i in $(srcdir)/test/catalogs/*.script ; do \ 635 name=`basename $$i .script`; \ 636 xml=$(srcdir)/test/catalogs/`basename $$i .script`.xml; \ 637 if [ -f $$xml ] ; then \ 638 if [ ! -f $(srcdir)/result/catalogs/$$name ] ; then \ 639 echo New test file $$name ; \ 640 $(CHECKER) $(top_builddir)/xmlcatalog --shell $$xml < $$i 2>&1 > $(srcdir)/result/catalogs/$$name ; \ 641 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 642 else \ 643 log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$xml < $$i 2>&1 > result.$$name ; \ 644 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 645 diff $(srcdir)/result/catalogs/$$name result.$$name` ; \ 646 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 647 rm result.$$name ; \ 648 fi ; fi ; done) 649 -@(for i in $(srcdir)/test/catalogs/*.script ; do \ 650 name=`basename $$i .script`; \ 651 sgml=$(srcdir)/test/catalogs/`basename $$i .script`.sgml; \ 652 if [ -f $$sgml ] ; then \ 653 if [ ! -f $(srcdir)/result/catalogs/$$name ] ; then \ 654 echo New test file $$name ; \ 655 $(CHECKER) $(top_builddir)/xmlcatalog --shell $$sgml < $$i > $(srcdir)/result/catalogs/$$name ; \ 656 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 657 else \ 658 log=`$(CHECKER) $(top_builddir)/xmlcatalog --shell $$sgml < $$i > result.$$name ; \ 659 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 660 diff $(srcdir)/result/catalogs/$$name result.$$name` ; \ 661 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 662 rm result.$$name ; \ 663 fi ; fi ; done) 664 @echo "## Add and del operations on XML Catalogs" 665 -@($(CHECKER) $(top_builddir)/xmlcatalog --create --noout $(srcdir)/result/catalogs/mycatalog; \ 666 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 667 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid sysid $(srcdir)/result/catalogs/mycatalog; \ 668 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 669 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid2 sysid2 $(srcdir)/result/catalogs/mycatalog; \ 670 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 671 $(CHECKER) $(top_builddir)/xmlcatalog --noout --add public Pubid3 sysid3 $(srcdir)/result/catalogs/mycatalog; \ 672 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 673 diff result/catalogs/mycatalog.full $(srcdir)/result/catalogs/mycatalog; \ 674 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 675 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid $(srcdir)/result/catalogs/mycatalog; \ 676 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 677 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid3 $(srcdir)/result/catalogs/mycatalog; \ 678 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 679 $(CHECKER) $(top_builddir)/xmlcatalog --noout --del sysid2 $(srcdir)/result/catalogs/mycatalog; \ 680 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 681 diff result/catalogs/mycatalog.empty $(srcdir)/result/catalogs/mycatalog; \ 682 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 683 rm -f $(srcdir)/result/catalogs/mycatalog) 684 685SVGtests : xmllint$(EXEEXT) 686 @echo "## SVG parsing regression tests" 687 -@(for i in $(srcdir)/test/SVG/* ; do \ 688 name=`basename $$i`; \ 689 if [ ! -d $$i ] ; then \ 690 if [ ! -f $(srcdir)/result/SVG/$$name ] ; then \ 691 echo New test file $$name ; \ 692 $(CHECKER) $(top_builddir)/xmllint $$i > $(srcdir)/result/SVG/$$name ; \ 693 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 694 else \ 695 echo Testing $$name ; \ 696 $(CHECKER) $(top_builddir)/xmllint $$i > result.$$name ; \ 697 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 698 diff $(srcdir)/result/SVG/$$name result.$$name ; \ 699 $(CHECKER) $(top_builddir)/xmllint result.$$name > result2.$$name ; \ 700 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 701 diff result.$$name result2.$$name ; \ 702 rm result.$$name result2.$$name ; \ 703 fi ; fi ; done) 704 705Threadtests : testThreads$(EXEEXT) 706 @echo "## Threaded regression tests" 707 -@($(CHECKER) $(top_builddir)/testThreads ; \ 708 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"; \ 709 exit 0) 710 711Readertests : xmllint$(EXEEXT) 712 @(echo > .memdump) 713 @echo "## Reader regression tests" 714 -@(for i in $(srcdir)/test/* ; do \ 715 name=`basename $$i`; \ 716 if [ ! -d $$i ] ; then \ 717 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 718 echo New test file $$name ; \ 719 $(CHECKER) $(top_builddir)/xmllint --nonet --debug --stream $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 720 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 721 else \ 722 log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \ 723 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 724 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 725 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 726 rm result.$$name ; \ 727 fi ; fi ; done) 728 @echo "## Reader on memory regression tests" 729 -@(for i in $(srcdir)/test/* ; do \ 730 name=`basename $$i`; \ 731 if [ ! -d $$i ] ; then \ 732 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 733 echo New test file $$name ; \ 734 $(CHECKER) $(top_builddir)/xmllint --memory --nonet --debug --stream $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 735 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 736 else \ 737 log=`$(CHECKER) $(top_builddir)/xmllint --memory --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \ 738 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 739 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 740 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 741 rm result.$$name ; \ 742 fi ; fi ; done) 743 @(echo > .memdump) 744 @echo "## Walker regression tests" 745 -@(for i in $(srcdir)/test/* ; do \ 746 name=`basename $$i`; \ 747 if [ ! -d $$i ] ; then \ 748 if [ ! -f $(srcdir)/result/$$name.rdr ] ; then \ 749 echo New test file $$name ; \ 750 $(CHECKER) $(top_builddir)/xmllint --nonet --debug --walker $$i > $(srcdir)/result/$$name.rdr 2>/dev/null ; \ 751 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 752 else \ 753 log=`$(CHECKER) $(top_builddir)/xmllint --nonet --debug --walker $$i > result.$$name 2>/dev/null ; \ 754 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 755 diff $(srcdir)/result/$$name.rdr result.$$name` ; \ 756 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 757 rm result.$$name ; \ 758 fi ; fi ; done) 759 @echo "## Reader entities substitution regression tests" 760 -@(for i in $(srcdir)/test/* ; do \ 761 name=`basename $$i`; \ 762 if [ ! -d $$i ] ; then \ 763 if [ ! -f $(srcdir)/result/$$name.rde ] ; then \ 764 echo New test file $$name ; \ 765 $(CHECKER) $(top_builddir)/xmllint --noent --nonet --debug --stream $$i > $(srcdir)/result/$$name.rde 2>/dev/null ; \ 766 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 767 else \ 768 log=`$(CHECKER) $(top_builddir)/xmllint --noent --nonet --debug --stream $$i > result.$$name 2>/dev/null ; \ 769 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 770 diff $(srcdir)/result/$$name.rde result.$$name` ; \ 771 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 772 rm result.$$name ; \ 773 fi ; fi ; done) 774 775SAXtests : testSAX$(EXEEXT) 776 @(echo > .memdump) 777 @echo "## SAX1 callbacks regression tests" 778 -@(for i in $(srcdir)/test/* ; do \ 779 name=`basename $$i`; \ 780 if [ ! -d $$i ] ; then \ 781 if [ ! -f $(srcdir)/result/$$name.sax ] ; then \ 782 echo New test file $$name ; \ 783 $(CHECKER) $(top_builddir)/testSAX $$i > $(srcdir)/result/$$name.sax 2> /dev/null ; \ 784 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 785 else \ 786 log=`$(CHECKER) $(top_builddir)/testSAX $$i > result.$$name 2> /dev/null ; \ 787 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 788 diff $(srcdir)/result/$$name.sax result.$$name` ; \ 789 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 790 rm result.$$name ; \ 791 fi ; fi ; done) 792 @echo "## SAX2 callbacks regression tests" 793 -@(for i in $(srcdir)/test/* ; do \ 794 name=`basename $$i`; \ 795 if [ ! -d $$i ] ; then \ 796 if [ ! -f $(srcdir)/result/$$name.sax2 ] ; then \ 797 echo New test file $$name ; \ 798 $(CHECKER) $(top_builddir)/testSAX --sax2 $$i > $(srcdir)/result/$$name.sax2 2> /dev/null ; \ 799 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 800 else \ 801 log=`$(CHECKER) $(top_builddir)/testSAX --sax2 $$i > result.$$name 2> /dev/null ; \ 802 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 803 diff $(srcdir)/result/$$name.sax2 result.$$name` ; \ 804 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 805 rm result.$$name ; \ 806 fi ; fi ; done) 807 808Validtests : xmllint$(EXEEXT) 809 @(echo > .memdump) 810 @echo "## Valid documents regression tests" 811 -@(for i in $(srcdir)/test/VCM/* ; do \ 812 name=`basename $$i`; \ 813 if [ ! -d $$i ] ; then \ 814 log=`$(CHECKER) $(top_builddir)/xmllint --valid --noout --nowarning $$i ; \ 815 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0"`;\ 816 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 817 fi ; done ; exit 0) 818 @echo "## Validity checking regression tests" 819 -@(for i in $(srcdir)/test/VC/* ; do \ 820 name=`basename $$i`; \ 821 if [ ! -d $$i ] ; then \ 822 if [ ! -f $(srcdir)/result/VC/$$name ] ; then \ 823 echo New test file $$name ; \ 824 $(CHECKER) $(top_builddir)/xmllint --noout --valid $$i 2> $(srcdir)/result/VC/$$name ; \ 825 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 826 else \ 827 log=`$(CHECKER) $(top_builddir)/xmllint --noout --valid $$i 2> result.$$name ; \ 828 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 829 diff $(srcdir)/result/VC/$$name result.$$name` ; \ 830 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 831 rm result.$$name ; \ 832 fi ; fi ; done) 833 @echo "## General documents valid regression tests" 834 -@(for i in $(srcdir)/test/valid/* ; do \ 835 name=`basename $$i`; \ 836 if [ ! -d $$i ] ; then \ 837 if [ ! -f $(srcdir)/result/valid/$$name ] ; then \ 838 echo New test file $$name ; \ 839 $(CHECKER) $(top_builddir)/xmllint --valid $$i > $(srcdir)/result/valid/$$name 2>$(srcdir)/result/valid/$$name.err ; \ 840 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 841 else \ 842 log=`$(CHECKER) $(top_builddir)/xmllint --valid $$i > result.$$name 2>error.$$name ; \ 843 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 844 diff $(srcdir)/result/valid/$$name result.$$name ; \ 845 diff $(srcdir)/result/valid/$$name.err error.$$name` ; \ 846 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 847 rm result.$$name error.$$name ; \ 848 fi ; fi ; done) 849 850Regexptests: testRegexp$(EXEEXT) 851 @(echo > .memdump) 852 @echo "## Regexp regression tests" 853 -@(for i in $(srcdir)/test/regexp/* ; do \ 854 name=`basename $$i`; \ 855 if [ ! -d $$i ] ; then \ 856 if [ ! -f $(srcdir)/result/regexp/$$name ] ; then \ 857 echo New test file $$name ; \ 858 $(CHECKER) $(top_builddir)/testRegexp -i $$i > $(srcdir)/result/regexp/$$name; \ 859 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 860 else \ 861 log=`$(CHECKER) $(top_builddir)/testRegexp -i $$i 2>&1 > result.$$name ; \ 862 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 863 diff $(srcdir)/result/regexp/$$name result.$$name` ; \ 864 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 865 rm result.$$name ; \ 866 fi ; fi ; done) 867 @echo "## Formal expresssions regression tests" 868 -@(for i in $(srcdir)/test/expr/* ; do \ 869 name=`basename $$i`; \ 870 if [ ! -d $$i ] ; then \ 871 if [ ! -f $(srcdir)/result/expr/$$name ] ; then \ 872 echo New test file $$name ; \ 873 $(CHECKER) $(top_builddir)/testRegexp --expr -i $$i > $(srcdir)/result/expr/$$name; \ 874 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 875 else \ 876 log=`$(CHECKER) $(top_builddir)/testRegexp --expr -i $$i 2>&1 > result.$$name ; \ 877 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 878 diff $(srcdir)/result/expr/$$name result.$$name` ; \ 879 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 880 rm result.$$name ; \ 881 fi ; fi ; done) 882 883Automatatests: testAutomata$(EXEEXT) 884 @(echo > .memdump) 885 @echo "## Automata regression tests" 886 -@(for i in $(srcdir)/test/automata/* ; do \ 887 name=`basename $$i`; \ 888 if [ ! -d $$i ] ; then \ 889 if [ ! -f $(srcdir)/result/automata/$$name ] ; then \ 890 echo New test file $$name ; \ 891 $(CHECKER) $(top_builddir)/testAutomata $$i > $(srcdir)/result/automata/$$name; \ 892 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 893 else \ 894 log=`$(CHECKER) $(top_builddir)/testAutomata $$i 2>&1 > result.$$name ; \ 895 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 896 diff $(srcdir)/result/automata/$$name result.$$name` ; \ 897 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 898 rm result.$$name ; \ 899 fi ; fi ; done) 900 901dba100000.xml: dbgenattr.pl 902 @echo "## generating dba100000.xml" 903 @($(PERL) $(top_srcdir)/dbgenattr.pl 100000 > dba100000.xml) 904 905Timingtests: xmllint$(EXEEXT) dba100000.xml 906 @echo "## Timing tests to try to detect performance" 907 @echo "## as well a memory usage breakage when streaming" 908 @echo "## 1/ using the file interface" 909 @echo "## 2/ using the memory interface" 910 @echo "## 3/ repeated DOM parsing" 911 @echo "## 4/ repeated DOM validation" 912 -@($(top_builddir)/xmllint --stream --timing dba100000.xml; \ 913 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 914 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 915 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 916 exit 0) 917 -@($(top_builddir)/xmllint --stream --timing --memory dba100000.xml; \ 918 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 919 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 920 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 921 exit 0) 922 -@($(top_builddir)/xmllint --noout --timing --repeat $(srcdir)/test/valid/REC-xml-19980210.xml; \ 923 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 924 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 925 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 926 exit 0) 927 928VTimingtests: xmllint$(EXEEXT) 929 -@($(top_builddir)/xmllint --noout --timing --valid --repeat $(srcdir)/test/valid/REC-xml-19980210.xml; \ 930 MEM=`cat .memdump | grep "MEMORY ALLOCATED" | awk '{ print $$7}'`;\ 931 if [ "$$MEM" != "" ] ; then echo Using $$MEM bytes ; fi ; \ 932 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 933 exit 0) 934 935C14Ntests : testC14N$(EXEEXT) 936 @echo "## C14N and XPath regression tests" 937 -@(for m in with-comments without-comments 1-1-without-comments exc-without-comments ; do \ 938 for i in $(srcdir)/test/c14n/$$m/*.xml ; do \ 939 if [ ! -d $$i ] ; then \ 940 name=`basename $$i .xml`; \ 941 cmdline="$(CHECKER) $(top_builddir)/testC14N --$$m $$i"; \ 942 if [ -f $(srcdir)/test/c14n/$$m/$$name.xpath ] ; then \ 943 cmdline="$$cmdline $(srcdir)/test/c14n/$$m/$$name.xpath"; \ 944 if [ -f $(srcdir)/test/c14n/$$m/$$name.ns ] ; then \ 945 cmdline="$$cmdline '`cat $(srcdir)/test/c14n/$$m/$$name.ns`'"; \ 946 fi; \ 947 fi; \ 948 $$cmdline > $(srcdir)/test/c14n/test.tmp; \ 949 if [ $$? -eq 0 ]; then \ 950 diff $(srcdir)/result/c14n/$$m/$$name $(srcdir)/test/c14n/test.tmp; \ 951 if [ $$? -ne 0 ]; then \ 952 echo "Test $$m/$$name failed"; \ 953 cat $(srcdir)/test/c14n/test.tmp; \ 954 fi; \ 955 else \ 956 echo "C14N failed"; \ 957 fi; \ 958 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 959 fi; \ 960 rm -f $(srcdir)/test/c14n/test.tmp; \ 961 done; \ 962 done) 963 964Schemastests: testSchemas$(EXEEXT) 965 @(echo > .memdump) 966 @echo "## Schemas regression tests" 967 -@(for i in $(srcdir)/test/schemas/*_*.xsd ; do \ 968 name=`basename $$i | sed 's+_.*++'`; \ 969 sno=`basename $$i | sed 's+.*_\(.*\).xsd+\1+'`; \ 970 for j in $(srcdir)/test/schemas/"$$name"_*.xml ; do \ 971 if [ -f $$j ] ; then \ 972 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 973 if [ ! -f $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" ]; \ 974 then \ 975 echo New test file "$$name"_"$$sno"_"$$xno" ; \ 976 $(CHECKER) $(top_builddir)/testSchemas $$i $$j \ 977 > $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" \ 978 2> $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno".err; \ 979 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 980 else \ 981 log=`$(CHECKER) $(top_builddir)/testSchemas $$i $$j \ 982 > res.$$name 2> err.$$name;\ 983 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 984 diff $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno" \ 985 res.$$name;\ 986 diff $(srcdir)/result/schemas/"$$name"_"$$sno"_"$$xno".err \ 987 err.$$name;\ 988 grep Unimplemented err.$$name`; \ 989 if [ -n "$$log" ] ; then echo "$$name"_"$$sno"_"$$xno" result ; echo $$log ; fi ; \ 990 rm res.$$name err.$$name ; \ 991 fi ; fi ;\ 992 done; done) 993 994Relaxtests: xmllint$(EXEEXT) 995 @(echo > .memdump) 996 @echo "## Relax-NG regression tests" 997 -@(for i in $(srcdir)/test/relaxng/*.rng ; do \ 998 name=`basename $$i | sed 's+\.rng++'`; \ 999 if [ ! -f $(srcdir)/result/relaxng/"$$name"_valid ] ; then \ 1000 echo New schemas $$name ; \ 1001 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $(srcdir)/test/relaxng/tutorA.rng $$i \ 1002 > $(srcdir)/result/relaxng/"$$name"_valid \ 1003 2> $(srcdir)/result/relaxng/"$$name"_err; \ 1004 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1005 else \ 1006 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $(srcdir)/test/relaxng/tutorA.rng $$i \ 1007 > res.$$name 2> err.$$name;\ 1008 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1009 diff $(srcdir)/result/relaxng/"$$name"_valid \ 1010 res.$$name;\ 1011 diff $(srcdir)/result/relaxng/"$$name"_err \ 1012 err.$$name | grep -v "error detected at";\ 1013 grep Unimplemented err.$$name`; \ 1014 if [ -n "$$log" ] ; then echo schemas $$name result ; echo $$log ; fi ; \ 1015 rm res.$$name err.$$name ; \ 1016 fi; \ 1017 for j in $(srcdir)/test/relaxng/"$$name"_*.xml ; do \ 1018 if [ -f $$j ] ; then \ 1019 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 1020 if [ ! -f $(srcdir)/result/relaxng/"$$name"_"$$xno" ]; \ 1021 then \ 1022 echo New test file "$$name"_"$$xno" ; \ 1023 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 1024 > $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 1025 2> $(srcdir)/result/relaxng/"$$name"_"$$xno".err; \ 1026 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1027 else \ 1028 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 1029 > res.$$name 2> err.$$name;\ 1030 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1031 diff $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 1032 res.$$name;\ 1033 diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \ 1034 err.$$name | grep -v "error detected at";\ 1035 grep Unimplemented err.$$name`; \ 1036 if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \ 1037 rm res.$$name err.$$name ; \ 1038 fi ; fi ; \ 1039 done; done) 1040 @echo "## Relax-NG streaming regression tests" 1041 -@(for i in $(srcdir)/test/relaxng/*.rng ; do \ 1042 name=`basename $$i | sed 's+\.rng++'`; \ 1043 for j in $(srcdir)/test/relaxng/"$$name"_*.xml ; do \ 1044 if [ -f $$j ] ; then \ 1045 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 1046 if [ ! -f $(srcdir)/result/relaxng/"$$name"_"$$xno" ]; \ 1047 then \ 1048 echo New test file "$$name"_"$$xno" ; \ 1049 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --relaxng $$i $$j \ 1050 > $(srcdir)/result/relaxng/"$$name"_"$$xno" \ 1051 2> $(srcdir)/result/relaxng/"$$name"_"$$xno".err; \ 1052 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1053 else \ 1054 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --noout --stream --relaxng $$i $$j \ 1055 > res.$$name 2> err.$$name;\ 1056 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1057 diff $(srcdir)/result/relaxng/"$$name"_"$$xno" res.$$name;\ 1058 if [ "$$name" != "tutor10_1" -a "$$name" != "tutor10_2" -a "$$name" != "tutor3_2" -a "$$name" != "307377" -a "$$name" != "tutor8_2" ] ; then \ 1059 diff $(srcdir)/result/relaxng/"$$name"_"$$xno".err \ 1060 err.$$name | grep -v "error detected at";\ 1061 fi ; grep Unimplemented err.$$name`; \ 1062 if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \ 1063 rm res.$$name err.$$name ; \ 1064 fi ; fi ; \ 1065 done; done) 1066 1067Schematrontests: xmllint$(EXEEXT) 1068 @(echo > .memdump) 1069 @echo "## Schematron regression tests" 1070 -@(for i in $(srcdir)/test/schematron/*.sct ; do \ 1071 name=`basename $$i | sed 's+\.sct++'`; \ 1072 for j in $(srcdir)/test/schematron/"$$name"_*.xml ; do \ 1073 if [ -f $$j ] ; then \ 1074 xno=`basename $$j | sed 's+.*_\(.*\).xml+\1+'`; \ 1075 if [ ! -f $(srcdir)/result/schematron/"$$name"_"$$xno" ]; \ 1076 then \ 1077 echo New test file "$$name"_"$$xno" ; \ 1078 $(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --schematron $$i $$j \ 1079 > $(srcdir)/result/schematron/"$$name"_"$$xno" \ 1080 2> $(srcdir)/result/schematron/"$$name"_"$$xno".err; \ 1081 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1082 else \ 1083 log=`$(CHECKER) $(top_builddir)/xmllint$(EXEEXT) --schematron $$i $$j \ 1084 > res.$$name 2> err.$$name;\ 1085 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1086 diff $(srcdir)/result/schematron/"$$name"_"$$xno" \ 1087 res.$$name;\ 1088 diff $(srcdir)/result/schematron/"$$name"_"$$xno".err \ 1089 err.$$name | grep -v "error detected at";\ 1090 grep Unimplemented err.$$name`; \ 1091 if [ -n "$$log" ] ; then echo "$$name"_"$$xno" result ; echo $$log ; fi ; \ 1092 rm res.$$name err.$$name ; \ 1093 fi ; fi ; \ 1094 done; done) 1095 1096RelaxNGPythonTests: 1097 @(if [ -x $(PYTHON) ] ; then \ 1098 PYTHONPATH=$(top_builddir)/python:$(top_builddir)/python/.libs:$$PYTHONPATH ; \ 1099 export PYTHONPATH; \ 1100 LD_LIBRARY_PATH="$(top_builddir)/.libs:$$LD_LIBRARY_PATH" ; \ 1101 export LD_LIBRARY_PATH; \ 1102 echo "## Relax-NG Python based test suite 1" ; \ 1103 $(CHECKER) $(PYTHON) $(srcdir)/check-relaxng-test-suite.py ; \ 1104 echo "## Relax-NG Python based test suite 2" ; \ 1105 $(CHECKER) $(PYTHON) $(srcdir)/check-relaxng-test-suite2.py ; \ 1106 fi) 1107 1108SchemasPythonTests: 1109 @(if [ -x $(PYTHON) ] ; then \ 1110 PYTHONPATH=$(top_builddir)/python:$(top_builddir)/python/.libs:$$PYTHONPATH; \ 1111 export PYTHONPATH; \ 1112 LD_LIBRARY_PATH="$(top_builddir)/.libs:$$LD_LIBRARY_PATH" ; \ 1113 export LD_LIBRARY_PATH; \ 1114 echo "## XML Schemas datatypes Python based test suite" ; \ 1115 echo "## It is normal to see 11 errors reported" ; \ 1116 $(CHECKER) $(PYTHON) $(srcdir)/check-xsddata-test-suite.py ; \ 1117 fi) 1118 @(if [ -x $(PYTHON) -a -d xstc ] ; then cd xstc ; $(MAKE) CHECKER="$(CHECKER)" MAKEFLAGS+=--silent pytests ; fi) 1119 1120Patterntests: xmllint$(EXEEXT) 1121 @(echo > .memdump) 1122 @echo "## Pattern regression tests" 1123 -@(for i in $(srcdir)/test/pattern/*.pat ; do \ 1124 name=`basename $$i .pat`; \ 1125 if [ -f $(srcdir)/test/pattern/$$name.xml ] ; then \ 1126 if [ ! -f $(srcdir)/result/pattern/$$name ] ; then \ 1127 rm -f result.$$name ; \ 1128 echo New test file $$name ; \ 1129 for pat in `cat $$i` ; do \ 1130 $(CHECKER) $(top_builddir)/xmllint --walker --pattern $$pat $(srcdir)/test/pattern/$$name.xml >> $(srcdir)/result/pattern/$$name ; \ 1131 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1132 done ;\ 1133 else \ 1134 rm -f result.$$name ; \ 1135 lst=`cat $$i` ; \ 1136 log=`for pat in $$lst ; do $(CHECKER) $(top_builddir)/xmllint --walker --pattern $$pat $(srcdir)/test/pattern/$$name.xml 2>&1 >> result.$$name ; \ 1137 grep "MORY ALLO" .memdump | grep -v "MEMORY ALLOCATED : 0";\ 1138 done ;\ 1139 diff $(srcdir)/result/pattern/$$name result.$$name` ; \ 1140 if [ -n "$$log" ] ; then echo $$name result ; echo $$log ; fi ; \ 1141 rm result.$$name ; \ 1142 fi ; fi ; done ;) 1143 1144ModuleTests: testModule$(EXEEXT) testdso.la 1145 @echo "## Module tests" 1146 @(./testModule$(EXEEXT)) 1147 1148cleanup: 1149 -@(find . -name .\#\* -exec rm {} \;) 1150 -@(find . -name \*.gcda -o *.gcno -exec rm {} \;) 1151 -@(find . -name \*.orig -o -name \*.rej -o -name \*.old -exec rm {} \;) 1152 1153dist-hook: cleanup libxml2.spec 1154 -cp libxml2.spec $(distdir) 1155 (cd $(srcdir) ; tar -cf - --exclude CVS --exclude .svn win32 macos vms VxWorks bakefile test result) | (cd $(distdir); tar xf -) 1156 1157dist-source: distdir 1158 $(AMTAR) -chof - --exclude Tests --exclude test --exclude result $(distdir) | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-sources+"`.tar.gz 1159 1160dist-test: distdir 1161 (mkdir -p $(distdir)) 1162 (cd $(srcdir) ; tar -cf - --exclude CVS --exclude .svn xstc/Tests) | (cd $(distdir); tar xf -) 1163 tar -cf - $(distdir)/test $(distdir)/result $(distdir)/xstc/Tests $(distdir)/Makefile.tests $(distdir)/README $(distdir)/README.tests $(distdir)/AUTHORS $(distdir)/testapi.c $(distdir)/runtest.c $(distdir)/runsuite.c | GZIP=$(GZIP_ENV) gzip -c >`echo "$(distdir)" | sed "s+libxml2+libxml2-tests+"`.tar.gz 1164 @(rm -rf $(distdir)/xstc/Test) 1165 1166cleantar: 1167 @(rm -f libxml*.tar.gz COPYING.LIB) 1168 1169rpm: cleanup cleantar 1170 @(unset CDPATH ; $(MAKE) dist-source dist && rpmbuild -ta $(distdir).tar.gz) 1171 1172## We create xml2Conf.sh here and not from configure because we want 1173## to get the paths expanded correctly. Macros like srcdir are given 1174## the value NONE in configure if the user doesn't specify them (this 1175## is an autoconf feature, not a bug). 1176 1177xml2Conf.sh: xml2Conf.sh.in Makefile 1178## Use sed and then mv to avoid problems if the user interrupts. 1179 sed -e 's?\@XML_LIBDIR\@?$(XML_LIBDIR)?g' \ 1180 -e 's?\@XML_INCLUDEDIR\@?$(XML_INCLUDEDIR)?g' \ 1181 -e 's?\@VERSION\@?$(VERSION)?g' \ 1182 -e 's?\@XML_LIBS\@?$(XML_LIBS)?g' \ 1183 < $(srcdir)/xml2Conf.sh.in > xml2Conf.tmp \ 1184 && mv xml2Conf.tmp xml2Conf.sh 1185 1186CLEANFILES=xml2Conf.sh *.gcda *.gcno 1187 1188confexecdir=$(libdir) 1189confexec_DATA = xml2Conf.sh 1190CVS_EXTRA_DIST= 1191EXTRA_DIST = xml2-config.in xml2Conf.sh.in libxml.spec.in libxml2.spec \ 1192 libxml.m4 Copyright check-xml-test-suite.py gentest.py \ 1193 check-relaxng-test-suite.py check-relaxng-test-suite2.py \ 1194 check-xsddata-test-suite.py check-xinclude-test-suite.py \ 1195 example/Makefile.am example/gjobread.c example/gjobs.xml \ 1196 $(man_MANS) libxml-2.0.pc.in libxml-2.0-uninstalled.pc.in \ 1197 trionan.c trionan.h triostr.c triostr.h trio.c trio.h \ 1198 triop.h triodef.h libxml.h elfgcchack.h \ 1199 testThreadsWin32.c genUnicode.py TODO_SCHEMAS \ 1200 dbgen.pl dbgenattr.pl regressions.py regressions.xml \ 1201 README.tests Makefile.tests libxml2.syms \ 1202 $(CVS_EXTRA_DIST) 1203 1204 1205pkgconfigdir = $(libdir)/pkgconfig 1206pkgconfig_DATA = libxml-2.0.pc 1207 1208# 1209# Install the tests program sources as examples 1210# 1211BASE_DIR=$(datadir)/doc 1212DOC_MODULE=libxml2-$(VERSION) 1213EXAMPLES_DIR=$(BASE_DIR)/$(DOC_MODULE)/examples 1214 1215install-data-local: 1216 $(mkinstalldirs) $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) 1217 -@INSTALL@ -m 0644 $(srcdir)/Copyright $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) 1218 $(mkinstalldirs) $(DESTDIR)$(EXAMPLES_DIR) 1219 -@INSTALL@ -m 0644 $(srcdir)/xmllint.c $(DESTDIR)$(EXAMPLES_DIR) 1220 -@INSTALL@ -m 0644 $(srcdir)/testSAX.c $(DESTDIR)$(EXAMPLES_DIR) 1221 -@INSTALL@ -m 0644 $(srcdir)/testHTML.c $(DESTDIR)$(EXAMPLES_DIR) 1222 -@INSTALL@ -m 0644 $(srcdir)/testXPath.c $(DESTDIR)$(EXAMPLES_DIR) 1223 1224uninstall-local: 1225 rm -f $(DESTDIR)$(EXAMPLES_DIR)/testXPath.c 1226 rm -f $(DESTDIR)$(EXAMPLES_DIR)/testHTML.c 1227 rm -f $(DESTDIR)$(EXAMPLES_DIR)/testSAX.c 1228 rm -f $(DESTDIR)$(EXAMPLES_DIR)/xmllint.c 1229 rm -rf $(DESTDIR)$(EXAMPLES_DIR) 1230 rm -f $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE)/Copyright 1231 rm -rf $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) 1232 1233tst: tst.c 1234 $(CC) $(CFLAGS) -Iinclude -o tst tst.c .libs/libxml2.a -lpthread -lm -lz 1235 1236sparse: clean 1237 $(MAKE) CC=cgcc 1238 1239# 1240# Coverage support, largely borrowed from libvirt 1241# Both binaries comes from the lcov package in Fedora 1242# 1243LCOV = /usr/bin/lcov 1244GENHTML = /usr/bin/genhtml 1245 1246cov: clean-cov 1247 if [ "`echo $(LDFLAGS) | grep coverage`" = "" ] ; then \ 1248 echo not configured with coverage; exit 1 ; fi 1249 if [ ! -x $(LCOV) -o ! -x $(GENHTML) ] ; then \ 1250 echo Need $(LCOV) and $(GENHTML) excecutables; exit 1 ; fi 1251 -@($(MAKE) check) 1252 -@(./runsuite$(EXEEXT)) 1253 mkdir $(top_builddir)/coverage 1254 $(LCOV) -c -o $(top_builddir)/coverage/libxml2.info.tmp -d $(top_srcdir) 1255 $(LCOV) -r $(top_builddir)/coverage/libxml2.info.tmp -o $(top_builddir)/coverage/libxml2.info *usr* 1256 rm $(top_builddir)/coverage/libxml2.info.tmp 1257 $(GENHTML) -s -t "libxml2" -o $(top_builddir)/coverage --legend $(top_builddir)/coverage/libxml2.info 1258 echo "Coverage report is in $(top_builddir)/coverage/index.html" 1259 1260clean-cov: 1261 rm -rf $(top_builddir)/coverage 1262 1263