[libxml2] Bug 676544 - fails to build with --without-sax1
- From: Daniel Veillard <veillard src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libxml2] Bug 676544 - fails to build with --without-sax1
- Date: Tue, 28 Aug 2012 14:06:21 +0000 (UTC)
commit 961b535c10c7d07d7919c58c1d0c6762b35503a1
Author: Akira TAGOH <akira tagoh org>
Date: Tue Jul 3 14:13:59 2012 +0900
Bug 676544 - fails to build with --without-sax1
Added some ifdef'd LIBXML_SAX1_ENABLED to make it buildable with
--without-sax1 configure option.
Makefile.am | 24 +++++++++++++-----------
configure.in | 1 +
globals.c | 2 +-
python/libxml.c | 2 ++
testXPath.c | 2 ++
5 files changed, 19 insertions(+), 12 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index ea9d950..1cca080 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -33,27 +33,29 @@ libxml2_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) \
-version-info $(LIBXML_VERSION_INFO) \
$(MODULE_PLATFORM_LIBS)
+if WITH_SAX1_SOURCES
+docb_sources = DOCBparser.c
+else
+docb_sources =
+endif
+
if WITH_TRIO_SOURCES
-libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \
- parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \
- valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \
- xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \
- catalog.c globals.c threads.c c14n.c xmlstring.c buf.c \
- xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \
- triostr.c trio.c xmlreader.c relaxng.c dict.c SAX2.c \
- xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c \
- xmlmodule.c schematron.c xzlib.c
+trio_sources = triostr.c trio.c
else
+trio_sources =
+endif
+
libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \
parser.c tree.c hash.c list.c xmlIO.c xmlmemory.c uri.c \
valid.c xlink.c HTMLparser.c HTMLtree.c debugXML.c xpath.c \
- xpointer.c xinclude.c nanohttp.c nanoftp.c DOCBparser.c \
+ xpointer.c xinclude.c nanohttp.c nanoftp.c \
+ $(docb_sources) \
catalog.c globals.c threads.c c14n.c xmlstring.c buf.c \
xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c \
+ $(trio_sources) \
xmlreader.c relaxng.c dict.c SAX2.c \
xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c \
xmlmodule.c schematron.c xzlib.c
-endif
DEPS = $(top_builddir)/libxml2.la
LDADDS = $(STATIC_BINARIES) $(top_builddir)/libxml2.la $(THREAD_LIBS) $(Z_LIBS) $(LZMA_LIBS) $(ICONV_LIBS) $(M_LIBS) $(WIN32_EXTRA_LIBADD)
diff --git a/configure.in b/configure.in
index 3ff8a3e..7256224 100644
--- a/configure.in
+++ b/configure.in
@@ -1146,6 +1146,7 @@ else
TEST_SAX=SAXtests
fi
AC_SUBST(WITH_SAX1)
+AM_CONDITIONAL(WITH_SAX1_SOURCES, test "${WITH_TRIO}" = "1")
AC_SUBST(TEST_SAX)
if test "$with_push" = "no" ; then
diff --git a/globals.c b/globals.c
index 69002f0..712f994 100644
--- a/globals.c
+++ b/globals.c
@@ -509,7 +509,7 @@ xmlInitializeGlobalState(xmlGlobalStatePtr gs)
#if defined(LIBXML_DOCB_ENABLED) && defined(LIBXML_LEGACY_ENABLED) && defined(LIBXML_SAX1_ENABLED)
initdocbDefaultSAXHandler(&gs->docbDefaultSAXHandler);
#endif
-#if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_LEGACY_ENABLED)
+#if defined(LIBXML_HTML_ENABLED) && defined(LIBXML_LEGACY_ENABLED) && defined(LIBXML_SAX1_ENABLED)
inithtmlDefaultSAXHandler(&gs->htmlDefaultSAXHandler);
#endif
diff --git a/python/libxml.c b/python/libxml.c
index ea4998b..a556160 100644
--- a/python/libxml.c
+++ b/python/libxml.c
@@ -1365,6 +1365,7 @@ libxml_htmlCreatePushParser(ATTRIBUTE_UNUSED PyObject * self,
PyObject *
libxml_xmlSAXParseFile(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
{
+#ifdef LIBXML_SAX1_ENABLED
int recover;
const char *URI;
PyObject *pyobj_SAX = NULL;
@@ -1386,6 +1387,7 @@ libxml_xmlSAXParseFile(ATTRIBUTE_UNUSED PyObject * self, PyObject * args)
Py_INCREF(pyobj_SAX);
/* The reference is released in pythonEndDocument() */
xmlSAXUserParseFile(SAX, pyobj_SAX, URI);
+#endif /* LIBXML_SAX1_ENABLED */
Py_INCREF(Py_None);
return (Py_None);
}
diff --git a/testXPath.c b/testXPath.c
index 677419a..8b8efd4 100644
--- a/testXPath.c
+++ b/testXPath.c
@@ -172,10 +172,12 @@ int main(int argc, char **argv) {
xmlLoadExtDtdDefaultValue |= XML_DETECT_IDS;
xmlLoadExtDtdDefaultValue |= XML_COMPLETE_ATTRS;
xmlSubstituteEntitiesDefaultValue = 1;
+#ifdef LIBXML_SAX1_ENABLED
if (nocdata != 0) {
xmlDefaultSAXHandlerInit();
xmlDefaultSAXHandler.cdataBlock = NULL;
}
+#endif
if (document == NULL) {
if (filename == NULL)
document = xmlReadDoc(buffer,NULL,NULL,XML_PARSE_COMPACT);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]