Commit d03a853b authored by Mike Hommey's avatar Mike Hommey

Import upstream version 2.7.0

parent 88f9c7ca
This diff is collapsed.
...@@ -2143,6 +2143,7 @@ htmlNewDocNoDtD(const xmlChar *URI, const xmlChar *ExternalID) { ...@@ -2143,6 +2143,7 @@ htmlNewDocNoDtD(const xmlChar *URI, const xmlChar *ExternalID) {
cur->refs = NULL; cur->refs = NULL;
cur->_private = NULL; cur->_private = NULL;
cur->charset = XML_CHAR_ENCODING_UTF8; cur->charset = XML_CHAR_ENCODING_UTF8;
cur->properties = XML_DOC_HTML | XML_DOC_USERBUILT;
if ((ExternalID != NULL) || if ((ExternalID != NULL) ||
(URI != NULL)) (URI != NULL))
xmlCreateIntSubset(cur, BAD_CAST "html", ExternalID, URI); xmlCreateIntSubset(cur, BAD_CAST "html", ExternalID, URI);
...@@ -3482,6 +3483,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) { ...@@ -3482,6 +3483,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) {
"htmlParseStartTag: misplaced <html> tag\n", "htmlParseStartTag: misplaced <html> tag\n",
name, NULL); name, NULL);
discardtag = 1; discardtag = 1;
ctxt->depth++;
} }
if ((ctxt->nameNr != 1) && if ((ctxt->nameNr != 1) &&
(xmlStrEqual(name, BAD_CAST"head"))) { (xmlStrEqual(name, BAD_CAST"head"))) {
...@@ -3489,6 +3491,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) { ...@@ -3489,6 +3491,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) {
"htmlParseStartTag: misplaced <head> tag\n", "htmlParseStartTag: misplaced <head> tag\n",
name, NULL); name, NULL);
discardtag = 1; discardtag = 1;
ctxt->depth++;
} }
if (xmlStrEqual(name, BAD_CAST"body")) { if (xmlStrEqual(name, BAD_CAST"body")) {
int indx; int indx;
...@@ -3498,6 +3501,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) { ...@@ -3498,6 +3501,7 @@ htmlParseStartTag(htmlParserCtxtPtr ctxt) {
"htmlParseStartTag: misplaced <body> tag\n", "htmlParseStartTag: misplaced <body> tag\n",
name, NULL); name, NULL);
discardtag = 1; discardtag = 1;
ctxt->depth++;
} }
} }
} }
...@@ -3648,7 +3652,6 @@ htmlParseEndTag(htmlParserCtxtPtr ctxt) ...@@ -3648,7 +3652,6 @@ htmlParseEndTag(htmlParserCtxtPtr ctxt)
name = htmlParseHTMLName(ctxt); name = htmlParseHTMLName(ctxt);
if (name == NULL) if (name == NULL)
return (0); return (0);
/* /*
* We should definitely be at the ending "S? '>'" part * We should definitely be at the ending "S? '>'" part
*/ */
...@@ -3668,6 +3671,18 @@ htmlParseEndTag(htmlParserCtxtPtr ctxt) ...@@ -3668,6 +3671,18 @@ htmlParseEndTag(htmlParserCtxtPtr ctxt)
} else } else
NEXT; NEXT;
/*
* if we ignored misplaced tags in htmlParseStartTag don't pop them
* out now.
*/
if ((ctxt->depth > 0) &&
(xmlStrEqual(name, BAD_CAST "html") ||
xmlStrEqual(name, BAD_CAST "body") ||
xmlStrEqual(name, BAD_CAST "head"))) {
ctxt->depth--;
return (0);
}
/* /*
* If the name read is not one of the element in the parsing stack * If the name read is not one of the element in the parsing stack
* then return, it's just an error. * then return, it's just an error.
...@@ -5958,8 +5973,12 @@ htmlDoRead(htmlParserCtxtPtr ctxt, const char *URL, const char *encoding, ...@@ -5958,8 +5973,12 @@ htmlDoRead(htmlParserCtxtPtr ctxt, const char *URL, const char *encoding,
xmlCharEncodingHandlerPtr hdlr; xmlCharEncodingHandlerPtr hdlr;
hdlr = xmlFindCharEncodingHandler(encoding); hdlr = xmlFindCharEncodingHandler(encoding);
if (hdlr != NULL) if (hdlr != NULL) {
xmlSwitchToEncoding(ctxt, hdlr); xmlSwitchToEncoding(ctxt, hdlr);
if (ctxt->input->encoding != NULL)
xmlFree((xmlChar *) ctxt->input->encoding);
ctxt->input->encoding = xmlStrdup((xmlChar *)encoding);
}
} }
if ((URL != NULL) && (ctxt->input != NULL) && if ((URL != NULL) && (ctxt->input != NULL) &&
(ctxt->input->filename == NULL)) (ctxt->input->filename == NULL))
......
...@@ -8,7 +8,8 @@ INCLUDES = -I$(top_builddir)/include -I@srcdir@/include @THREAD_CFLAGS@ @Z_CFLAG ...@@ -8,7 +8,8 @@ INCLUDES = -I$(top_builddir)/include -I@srcdir@/include @THREAD_CFLAGS@ @Z_CFLAG
noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \ noinst_PROGRAMS=testSchemas testRelax testSAX testHTML testXPath testURI \
testThreads testC14N testAutomata testRegexp \ testThreads testC14N testAutomata testRegexp \
testReader testapi testModule runtest runsuite testReader testapi testModule runtest runsuite testchar \
testdict runxmlconf testrecurse
bin_PROGRAMS = xmllint xmlcatalog bin_PROGRAMS = xmllint xmlcatalog
...@@ -55,6 +56,21 @@ runtest_LDFLAGS = ...@@ -55,6 +56,21 @@ runtest_LDFLAGS =
runtest_DEPENDENCIES = $(DEPS) runtest_DEPENDENCIES = $(DEPS)
runtest_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS) runtest_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS)
testrecurse_SOURCES=testrecurse.c
testrecurse_LDFLAGS =
testrecurse_DEPENDENCIES = $(DEPS)
testrecurse_LDADD= @BASE_THREAD_LIBS@ @RDL_LIBS@ $(LDADDS)
testchar_SOURCES=testchar.c
testchar_LDFLAGS =
testchar_DEPENDENCIES = $(DEPS)
testchar_LDADD= @RDL_LIBS@ $(LDADDS)
testdict_SOURCES=testdict.c
testdict_LDFLAGS =
testdict_DEPENDENCIES = $(DEPS)
testdict_LDADD= @RDL_LIBS@ $(LDADDS)
runsuite_SOURCES=runsuite.c runsuite_SOURCES=runsuite.c
runsuite_LDFLAGS = runsuite_LDFLAGS =
runsuite_DEPENDENCIES = $(DEPS) runsuite_DEPENDENCIES = $(DEPS)
...@@ -150,12 +166,25 @@ testapi_LDFLAGS = ...@@ -150,12 +166,25 @@ testapi_LDFLAGS =
testapi_DEPENDENCIES = $(DEPS) testapi_DEPENDENCIES = $(DEPS)
testapi_LDADD= $(LDADDS) testapi_LDADD= $(LDADDS)
runxmlconf_SOURCES=runxmlconf.c
runxmlconf_LDFLAGS =
runxmlconf_DEPENDENCIES = $(DEPS)
runxmlconf_LDADD= $(LDADDS)
#testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c #testOOM_SOURCES=testOOM.c testOOMlib.h testOOMlib.c
#testOOM_LDFLAGS = #testOOM_LDFLAGS =
#testOOM_DEPENDENCIES = $(DEPS) #testOOM_DEPENDENCIES = $(DEPS)
#testOOM_LDADD= $(LDADDS) #testOOM_LDADD= $(LDADDS)
check-local: all tests runtests:
$(CHECKER) ./runtest$(EXEEXT) && $(CHECKER) ./testrecurse$(EXEEXT) &&$(CHECKER) ./testapi$(EXEEXT) && $(CHECKER) ./testchar$(EXEEXT)&& $(CHECKER) ./testdict$(EXEEXT) && $(CHECKER) ./runxmlconf$(EXEEXT)
check: all runtests
check-valgrind: all
@echo '## Running the regression tests under Valgrind'
@echo '## Go get a cup of coffee it is gonna take a while ...'
$(MAKE) CHECKER='valgrind -q' check
testall : tests SVGtests SAXtests testall : tests SVGtests SAXtests
...@@ -1105,6 +1134,8 @@ ModuleTests: testModule$(EXEEXT) testdso.la ...@@ -1105,6 +1134,8 @@ ModuleTests: testModule$(EXEEXT) testdso.la
cleanup: cleanup:
-@(find . -name .\#\* -exec rm {} \;) -@(find . -name .\#\* -exec rm {} \;)
-@(find . -name \*.gcda -o *.gcno -exec rm {} \;)
-@(find . -name \*.orig -o -name \*.rej -o -name \*.old -exec rm {} \;)
dist-hook: cleanup libxml2.spec dist-hook: cleanup libxml2.spec
-cp libxml2.spec $(distdir) -cp libxml2.spec $(distdir)
...@@ -1139,7 +1170,7 @@ xml2Conf.sh: xml2Conf.sh.in Makefile ...@@ -1139,7 +1170,7 @@ xml2Conf.sh: xml2Conf.sh.in Makefile
< $(srcdir)/xml2Conf.sh.in > xml2Conf.tmp \ < $(srcdir)/xml2Conf.sh.in > xml2Conf.tmp \
&& mv xml2Conf.tmp xml2Conf.sh && mv xml2Conf.tmp xml2Conf.sh
CLEANFILES=xml2Conf.sh CLEANFILES=xml2Conf.sh *.gcda *.gcno
confexecdir=$(libdir) confexecdir=$(libdir)
confexec_DATA = xml2Conf.sh confexec_DATA = xml2Conf.sh
...@@ -1191,3 +1222,28 @@ tst: tst.c ...@@ -1191,3 +1222,28 @@ tst: tst.c
sparse: clean sparse: clean
$(MAKE) CC=cgcc $(MAKE) CC=cgcc
#
# Coverage support, largely borrowed from libvirt
# Both binaries comes from the lcov package in Fedora
#
LCOV = /usr/bin/lcov
GENHTML = /usr/bin/genhtml
cov: clean-cov
if [ "`echo $(LDFLAGS) | grep coverage`" = "" ] ; then \
echo not configured with coverage; exit 1 ; fi
if [ ! -x $(LCOV) -o ! -x $(GENHTML) ] ; then \
echo Need $(LCOV) and $(GENHTML) excecutables; exit 1 ; fi
-@($(MAKE) check)
-@(./runsuite$(EXEEXT))
mkdir $(top_builddir)/coverage
$(LCOV) -c -o $(top_builddir)/coverage/libxml2.info.tmp -d $(top_srcdir)
$(LCOV) -r $(top_builddir)/coverage/libxml2.info.tmp -o $(top_builddir)/coverage/libxml2.info *usr*
rm $(top_builddir)/coverage/libxml2.info.tmp
$(GENHTML) -s -t "libxml2" -o $(top_builddir)/coverage --legend $(top_builddir)/coverage/libxml2.info
echo "Coverage report is in $(top_builddir)/coverage/index.html"
clean-cov:
rm -rf $(top_builddir)/coverage
This diff is collapsed.
...@@ -8,12 +8,12 @@ LIBS=`xml2-config --libs` ...@@ -8,12 +8,12 @@ LIBS=`xml2-config --libs`
THREADLIB= -lpthread THREADLIB= -lpthread
EXEEXT= EXEEXT=
all: runtest$(EXEEXT) runsuite$(EXEEXT) testapi$(EXEEXT) all: runtest$(EXEEXT) runsuite$(EXEEXT) testapi$(EXEEXT) testchar$(EXEEXT)
clean: clean:
$(RM) runtest$(EXEEXT) runsuite$(EXEEXT) testapi$(EXEEXT) $(RM) runtest$(EXEEXT) runsuite$(EXEEXT) testapi$(EXEEXT)
check: do_runtest do_runsuite do_testapi check: do_runtest do_testchar do_testapi do_runsuite
runtest$(EXEEXT): runtest.c runtest$(EXEEXT): runtest.c
$(CC) -o runtest$(EXEEXT) $(CFLAGS) runtest.c $(LIBS) $(THREADLIB) $(CC) -o runtest$(EXEEXT) $(CFLAGS) runtest.c $(LIBS) $(THREADLIB)
...@@ -33,3 +33,9 @@ testapi$(EXEEXT): testapi.c ...@@ -33,3 +33,9 @@ testapi$(EXEEXT): testapi.c
do_testapi: testapi$(EXEEXT) do_testapi: testapi$(EXEEXT)
./testapi ./testapi
testchar$(EXEEXT): testchar.c
$(CC) -o testchar$(EXEEXT) $(CFLAGS) testchar.c $(LIBS)
do_testchar: testchar$(EXEEXT)
./testchar
This diff is collapsed.
...@@ -10,13 +10,14 @@ program has a different testing purpose: ...@@ -10,13 +10,14 @@ program has a different testing purpose:
runtest.c : runs libxml2 basic internal regression tests runtest.c : runs libxml2 basic internal regression tests
runsuite.c: runs libxml2 against external regression tests runsuite.c: runs libxml2 against external regression tests
testapi.c : exercises the library public entry points testapi.c : exercises the library public entry points
testchar.c: exercise the check of character ranges and UTF-8 validation
The command: The command:
make -f Makefile.tests make -f Makefile.tests check
should be sufficient on an Unix system to build and exercise the tests should be sufficient on an Unix system to build and exercise the tests
for the version of the library installed on the system. Note however for the version of the library installed on the system. Note however
that there isn't backward compatibility provided so if the installed that there isn't backward compatibility provided so if the installed
version is older to the testsuite one, failing to compile or run the tests version is older to the testsuite one, failing to compile or run the tests
is likely. In any event this won't work with an installed libxml2 older is likely. In any event this won't work with an installed libxml2 older
...@@ -26,4 +27,4 @@ like any other program using libxml2, running the test should be done ...@@ -26,4 +27,4 @@ like any other program using libxml2, running the test should be done
simply by launching the resulting executables. simply by launching the resulting executables.
Daniel Veillard Daniel Veillard
Sun Jul 10 2005 Thu Jul 24 2008
...@@ -580,7 +580,8 @@ xmlSAX2GetEntity(void *ctx, const xmlChar *name) ...@@ -580,7 +580,8 @@ xmlSAX2GetEntity(void *ctx, const xmlChar *name)
return(NULL); return(NULL);
} }
ret->owner = 1; ret->owner = 1;
ret->checked = 1; if (ret->checked == 0)
ret->checked = 1;
} }
return(ret); return(ret);
} }
...@@ -957,6 +958,8 @@ xmlSAX2StartDocument(void *ctx) ...@@ -957,6 +958,8 @@ xmlSAX2StartDocument(void *ctx)
#ifdef LIBXML_HTML_ENABLED #ifdef LIBXML_HTML_ENABLED
if (ctxt->myDoc == NULL) if (ctxt->myDoc == NULL)
ctxt->myDoc = htmlNewDocNoDtD(NULL, NULL); ctxt->myDoc = htmlNewDocNoDtD(NULL, NULL);
ctxt->myDoc->properties = XML_DOC_HTML;
ctxt->myDoc->parseFlags = ctxt->options;
if (ctxt->myDoc == NULL) { if (ctxt->myDoc == NULL) {
xmlSAX2ErrMemory(ctxt, "xmlSAX2StartDocument"); xmlSAX2ErrMemory(ctxt, "xmlSAX2StartDocument");
return; return;
...@@ -972,6 +975,10 @@ xmlSAX2StartDocument(void *ctx) ...@@ -972,6 +975,10 @@ xmlSAX2StartDocument(void *ctx)
} else { } else {
doc = ctxt->myDoc = xmlNewDoc(ctxt->version); doc = ctxt->myDoc = xmlNewDoc(ctxt->version);
if (doc != NULL) { if (doc != NULL) {
doc->properties = 0;
if (ctxt->options & XML_PARSE_OLD10)
doc->properties |= XML_DOC_OLD10;
doc->parseFlags = ctxt->options;
if (ctxt->encoding != NULL) if (ctxt->encoding != NULL)
doc->encoding = xmlStrdup(ctxt->encoding); doc->encoding = xmlStrdup(ctxt->encoding);
else else
...@@ -1837,6 +1844,9 @@ skip: ...@@ -1837,6 +1844,9 @@ skip:
} else } else
ret->content = (xmlChar *) intern; ret->content = (xmlChar *) intern;
if (ctxt->input != NULL)
ret->line = ctxt->input->line;
if ((__xmlRegisterCallbacks) && (xmlRegisterNodeDefaultValue)) if ((__xmlRegisterCallbacks) && (xmlRegisterNodeDefaultValue))
xmlRegisterNodeDefaultValue(ret); xmlRegisterNodeDefaultValue(ret);
return(ret); return(ret);
......
# generated automatically by aclocal 1.10 -*- Autoconf -*- # generated automatically by aclocal 1.10.1 -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
# 2005, 2006 Free Software Foundation, Inc. # 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
...@@ -11,10 +11,13 @@ ...@@ -11,10 +11,13 @@
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE. # PARTICULAR PURPOSE.
m4_if(m4_PACKAGE_VERSION, [2.61],, m4_ifndef([AC_AUTOCONF_VERSION],
[m4_fatal([this file was generated for autoconf 2.61. [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
You have another version of autoconf. If you want to use that, m4_if(AC_AUTOCONF_VERSION, [2.61],,
you should regenerate the build system entirely.], [63])]) [m4_warning([this file was generated for autoconf 2.61.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically `autoreconf'.])])
# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
...@@ -6584,7 +6587,7 @@ AC_SUBST([SED]) ...@@ -6584,7 +6587,7 @@ AC_SUBST([SED])
AC_MSG_RESULT([$SED]) AC_MSG_RESULT([$SED])
]) ])
# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
# #
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
...@@ -6599,7 +6602,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], ...@@ -6599,7 +6602,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.10' [am__api_version='1.10'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro. dnl require some minimum version. Point them to the right macro.
m4_if([$1], [1.10], [], m4_if([$1], [1.10.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
]) ])
...@@ -6615,8 +6618,10 @@ m4_define([_AM_AUTOCONF_VERSION], []) ...@@ -6615,8 +6618,10 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.10])dnl [AM_AUTOMAKE_VERSION([1.10.1])dnl
_AM_AUTOCONF_VERSION(m4_PACKAGE_VERSION)]) m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)])
# AM_AUX_DIR_EXPAND -*- Autoconf -*- # AM_AUX_DIR_EXPAND -*- Autoconf -*-
...@@ -6888,7 +6893,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], ...@@ -6888,7 +6893,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
# each Makefile.in and add a new line on top of each file to say so. # each Makefile.in and add a new line on top of each file to say so.
# Grep'ing the whole file is not good either: AIX grep has a line # Grep'ing the whole file is not good either: AIX grep has a line
# limit of 2048, but all sed's we know have understand at least 4000. # limit of 2048, but all sed's we know have understand at least 4000.
if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
dirpart=`AS_DIRNAME("$mf")` dirpart=`AS_DIRNAME("$mf")`
else else
continue continue
...@@ -6948,13 +6953,13 @@ AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) ...@@ -6948,13 +6953,13 @@ AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
# Do all the work for Automake. -*- Autoconf -*- # Do all the work for Automake. -*- Autoconf -*-
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
# 2005, 2006 Free Software Foundation, Inc. # 2005, 2006, 2008 Free Software Foundation, Inc.
# #
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved. # with or without modifications, as long as this notice is preserved.
# serial 12 # serial 13
# This macro actually does too much. Some checks are only needed if # This macro actually does too much. Some checks are only needed if
# your package does certain things. But this isn't really a big deal. # your package does certain things. But this isn't really a big deal.
...@@ -7059,16 +7064,17 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC], ...@@ -7059,16 +7064,17 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
# our stamp files there. # our stamp files there.
AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
[# Compute $1's index in $config_headers. [# Compute $1's index in $config_headers.
_am_arg=$1
_am_stamp_count=1 _am_stamp_count=1
for _am_header in $config_headers :; do for _am_header in $config_headers :; do
case $_am_header in case $_am_header in
$1 | $1:* ) $_am_arg | $_am_arg:* )
break ;; break ;;
* ) * )
_am_stamp_count=`expr $_am_stamp_count + 1` ;; _am_stamp_count=`expr $_am_stamp_count + 1` ;;
esac esac
done done
echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
# #
...@@ -7366,7 +7372,7 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) ...@@ -7366,7 +7372,7 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])])
# _AM_SUBST_NOTMAKE(VARIABLE) # _AM_SUBST_NOTMAKE(VARIABLE)
# --------------------------- # ---------------------------
# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in. # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
# This macro is traced by Automake. # This macro is traced by Automake.
AC_DEFUN([_AM_SUBST_NOTMAKE]) AC_DEFUN([_AM_SUBST_NOTMAKE])
......
...@@ -2616,6 +2616,8 @@ xmlCatalogSGMLResolve(xmlCatalogPtr catal, const xmlChar *pubID, ...@@ -2616,6 +2616,8 @@ xmlCatalogSGMLResolve(xmlCatalogPtr catal, const xmlChar *pubID,
return(ret); return(ret);
if (sysID != NULL) if (sysID != NULL)
ret = xmlCatalogGetSGMLSystem(catal->sgml, sysID); ret = xmlCatalogGetSGMLSystem(catal->sgml, sysID);
if (ret != NULL)
return(ret);
return(NULL); return(NULL);
} }
...@@ -2912,7 +2914,7 @@ xmlACatalogResolveURI(xmlCatalogPtr catal, const xmlChar *URI) { ...@@ -2912,7 +2914,7 @@ xmlACatalogResolveURI(xmlCatalogPtr catal, const xmlChar *URI) {
sgml = xmlCatalogSGMLResolve(catal, NULL, URI); sgml = xmlCatalogSGMLResolve(catal, NULL, URI);
if (sgml != NULL) if (sgml != NULL)
sgml = xmlStrdup(sgml); ret = xmlStrdup(sgml);
} }
return(ret); return(ret);
} }
......
This diff is collapsed.
...@@ -4,8 +4,8 @@ AM_CONFIG_HEADER(config.h) ...@@ -4,8 +4,8 @@ AM_CONFIG_HEADER(config.h)
AC_CANONICAL_HOST AC_CANONICAL_HOST
LIBXML_MAJOR_VERSION=2 LIBXML_MAJOR_VERSION=2
LIBXML_MINOR_VERSION=6 LIBXML_MINOR_VERSION=7
LIBXML_MICRO_VERSION=32 LIBXML_MICRO_VERSION=0
LIBXML_MICRO_VERSION_SUFFIX= LIBXML_MICRO_VERSION_SUFFIX=
LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX LIBXML_VERSION=$LIBXML_MAJOR_VERSION.$LIBXML_MINOR_VERSION.$LIBXML_MICRO_VERSION$LIBXML_MICRO_VERSION_SUFFIX
LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION LIBXML_VERSION_INFO=`expr $LIBXML_MAJOR_VERSION + $LIBXML_MINOR_VERSION`:$LIBXML_MICRO_VERSION:$LIBXML_MINOR_VERSION
...@@ -163,6 +163,8 @@ AC_ARG_WITH(zlib, ...@@ -163,6 +163,8 @@ AC_ARG_WITH(zlib,
LDFLAGS="${LDFLAGS} -L$withval/lib" LDFLAGS="${LDFLAGS} -L$withval/lib"
fi fi
]) ])
AC_ARG_WITH(coverage,
[ --with-coverage build for code coverage with GCC (off)])
dnl dnl
dnl hard dependancies on options dnl hard dependancies on options
...@@ -1371,8 +1373,18 @@ AC_SUBST(WIN32_EXTRA_LDFLAGS) ...@@ -1371,8 +1373,18 @@ AC_SUBST(WIN32_EXTRA_LDFLAGS)
AC_SUBST(CYGWIN_EXTRA_LDFLAGS) AC_SUBST(CYGWIN_EXTRA_LDFLAGS)
AC_SUBST(CYGWIN_EXTRA_PYTHON_LIBADD) AC_SUBST(CYGWIN_EXTRA_PYTHON_LIBADD)
if test "$with_coverage" = "yes" -a "${GCC}" = "yes"
then
echo Enabling code coverage for GCC
CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
LDFLAGS="$LDFLAGS -fprofile-arcs -ftest-coverage"
else
echo Disabling code coverage for GCC
fi
AC_SUBST(CPPFLAGS) AC_SUBST(CPPFLAGS)
AC_SUBST(CFLAGS) AC_SUBST(CFLAGS)
AC_SUBST(LDFLAGS)
AC_SUBST(XML_CFLAGS) AC_SUBST(XML_CFLAGS)
AC_SUBST(XML_LIBDIR) AC_SUBST(XML_LIBDIR)
......
#! /bin/sh #! /bin/sh
# depcomp - compile a program generating dependencies as side-effects # depcomp - compile a program generating dependencies as side-effects
scriptversion=2006-10-15.18 scriptversion=2007-03-29.01
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006 Free Software # Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
# Foundation, Inc. # Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
...@@ -215,34 +215,39 @@ aix) ...@@ -215,34 +215,39 @@ aix)
# current directory. Also, the AIX compiler puts `$object:' at the # current directory. Also, the AIX compiler puts `$object:' at the
# start of each line; $object doesn't have directory information. # start of each line; $object doesn't have directory information.
# Version 6 uses the directory in both cases. # Version 6 uses the directory in both cases.
stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
tmpdepfile="$stripped.u" test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then if test "$libtool" = yes; then
tmpdepfile1=$dir$base.u
tmpdepfile2=$base.u
tmpdepfile3=$dir.libs/$base.u
"$@" -Wc,-M "$@" -Wc,-M
else else
tmpdepfile1=$dir$base.u
tmpdepfile2=$dir$base.u
tmpdepfile3=$dir$base.u
"$@" -M "$@" -M
fi fi
stat=$? stat=$?
if test -f "$tmpdepfile"; then :
else
stripped=`echo "$stripped" | sed 's,^.*/,,'`
tmpdepfile="$stripped.u"
fi
if test $stat -eq 0; then : if test $stat -eq 0; then :
else else
rm -f "$tmpdepfile" rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat exit $stat
fi fi
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
do
test -f "$tmpdepfile" && break
done
if test -f "$tmpdepfile"; then if test -f "$tmpdepfile"; then
outname="$stripped.o"
# Each line is of the form `foo.o: dependent.h'. # Each line is of the form `foo.o: dependent.h'.
# Do two passes, one to just change these to # Do two passes, one to just change these to
# `$object: dependent.h' and one to simply `dependent.h:'. # `$object: dependent.h' and one to simply `dependent.h:'.
sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" # That's a tab and a space in the [].
sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
else else
# The sourcefile does not contain any dependencies, so just # The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile # store a dummy comment line, to avoid errors with the Makefile
......
This diff is collapsed.
...@@ -39,6 +39,7 @@ A:link, A:visited, A:active { text-decoration: underline } ...@@ -39,6 +39,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="APIchunk29.html">y-z</a> <a href="APIchunk29.html">y-z</a>
</h2><h2>Letter C:</h2><dl><dt>C14N</dt><dd><a href="html/libxml-c14n.html#xmlC14NDocSaveTo">xmlC14NDocSaveTo</a><br /> </h2><h2>Letter C:</h2><dl><dt>C14N</dt><dd><a href="html/libxml-c14n.html#xmlC14NDocSaveTo">xmlC14NDocSaveTo</a><br />
<a href="html/libxml-c14n.html#xmlC14NExecute">xmlC14NExecute</a><br /> <a href="html/libxml-c14n.html#xmlC14NExecute">xmlC14NExecute</a><br />
<a href="html/libxml-c14n.html#xmlC14NIsVisibleCallback">xmlC14NIsVisibleCallback</a><br />
</dd><dt>CATALOG</dt><dd><a href="html/libxml-catalog.html#xmlLoadACatalog">xmlLoadACatalog</a><br /> </dd><dt>CATALOG</dt><dd><a href="html/libxml-catalog.html#xmlLoadACatalog">xmlLoadACatalog</a><br />
<a href="html/libxml-catalog.html#xmlLoadCatalog">xmlLoadCatalog</a><br /> <a href="html/libxml-catalog.html#xmlLoadCatalog">xmlLoadCatalog</a><br />
<a href="html/libxml-catalog.html#xmlLoadSGMLSuperCatalog">xmlLoadSGMLSuperCatalog</a><br /> <a href="html/libxml-catalog.html#xmlLoadSGMLSuperCatalog">xmlLoadSGMLSuperCatalog</a><br />
...@@ -108,6 +109,7 @@ A:link, A:visited, A:active { text-decoration: underline } ...@@ -108,6 +109,7 @@ A:link, A:visited, A:active { text-decoration: underline }
<a href="html/libxml-xmlIO.html#xmlOutputOpenCallback">xmlOutputOpenCallback</a><br />