Annotation of embedaddon/libxml2/Makefile.am, revision 1.1.1.3

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>