Install version of libxml2 without support for XML catalogs. libxml2.so library is renamed to libxml2-catalogless.so. Versions of global defined symbols are renamed from LIBXML2* to LIBXML2_CATALOGLESS*. xmlcatalog executable is not built. xmllint executable is built, but is not installed. xml2-config script is renamed to xml2-catalogless-config. libxml2 cmake module is renamed to libxml2-catalogless. libxml-2.0.pc pkg-config file is renamed to libxml-2.0-catalogless.pc. xml2Conf.sh file is renamed to xml2CataloglessConf.sh. Location of installed headers is renamed from ${includedir}/libxml2/libxml to ${includedir}/libxml2-catalogless/libxml due to content of xmlversion.h header being dependent on presence of support for XML catalogs. --- /Makefile.am +++ /Makefile.am @@ -15,12 +15,12 @@ testReader testapi testModule runtest runsuite testchar \ testdict runxmlconf testrecurse testlimits -bin_PROGRAMS = xmllint xmlcatalog +noinst_PROGRAMS = xmllint -bin_SCRIPTS=xml2-config +bin_SCRIPTS=xml2-catalogless-config -lib_LTLIBRARIES = libxml2.la -libxml2_la_LIBADD = $(ICU_LIBS) $(THREAD_LIBS) $(Z_LIBS) $(LZMA_LIBS) $(ICONV_LIBS) $(M_LIBS) $(WIN32_EXTRA_LIBADD) +lib_LTLIBRARIES = libxml2-catalogless.la +libxml2_catalogless_la_LIBADD = $(ICU_LIBS) $(THREAD_LIBS) $(Z_LIBS) $(LZMA_LIBS) $(ICONV_LIBS) $(M_LIBS) $(WIN32_EXTRA_LIBADD) if USE_VERSION_SCRIPT LIBXML2_VERSION_SCRIPT = $(VERSION_SCRIPT_FLAGS)$(srcdir)/libxml2.syms @@ -28,7 +28,7 @@ LIBXML2_VERSION_SCRIPT = endif -libxml2_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) \ +libxml2_catalogless_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) \ $(LIBXML2_VERSION_SCRIPT) \ -version-info $(LIBXML_VERSION_INFO) \ $(MODULE_PLATFORM_LIBS) @@ -45,7 +45,7 @@ trio_sources = endif -libxml2_la_SOURCES = SAX.c entities.c encoding.c error.c parserInternals.c \ +libxml2_catalogless_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 \ @@ -57,8 +57,8 @@ xmlwriter.c legacy.c chvalid.c pattern.c xmlsave.c \ xmlmodule.c schematron.c xzlib.c -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) +DEPS = $(top_builddir)/libxml2-catalogless.la +LDADDS = $(STATIC_BINARIES) $(top_builddir)/libxml2-catalogless.la $(THREAD_LIBS) $(Z_LIBS) $(LZMA_LIBS) $(ICONV_LIBS) $(M_LIBS) $(WIN32_EXTRA_LIBADD) man_MANS = xml2-config.1 libxml.3 @@ -111,11 +111,6 @@ testHTML_DEPENDENCIES = $(DEPS) testHTML_LDADD= $(LDADDS) -xmlcatalog_SOURCES=xmlcatalog.c -xmlcatalog_LDFLAGS = -xmlcatalog_DEPENDENCIES = $(DEPS) -xmlcatalog_LDADD = $(RDL_LIBS) $(LDADDS) - testXPath_SOURCES=testXPath.c testXPath_LDFLAGS = testXPath_DEPENDENCIES = $(DEPS) @@ -668,7 +663,9 @@ rm result.$$name result.$$name.err ; \ fi ; fi ; done) -Catatests : xmlcatalog$(EXEEXT) +Catatests : + @echo "## Catalog support disabled" + @false @(echo > .memdump) @echo "## Catalog regression tests" -@(for i in $(srcdir)/test/catalogs/*.script ; do \ @@ -1224,25 +1221,25 @@ rpm: cleanup cleantar @(unset CDPATH ; $(MAKE) dist-source dist && rpmbuild -ta $(distdir).tar.gz) -## We create xml2Conf.sh here and not from configure because we want +## We create xml2CataloglessConf.sh here and not from configure because we want ## to get the paths expanded correctly. Macros like srcdir are given ## the value NONE in configure if the user doesn't specify them (this ## is an autoconf feature, not a bug). -xml2Conf.sh: xml2Conf.sh.in Makefile +xml2CataloglessConf.sh: xml2Conf.sh.in Makefile ## Use sed and then mv to avoid problems if the user interrupts. sed -e 's?\@XML_LIBDIR\@?$(XML_LIBDIR)?g' \ -e 's?\@XML_INCLUDEDIR\@?$(XML_INCLUDEDIR)?g' \ -e 's?\@VERSION\@?$(VERSION)?g' \ -e 's?\@XML_LIBS\@?$(XML_LIBS)?g' \ < $(srcdir)/xml2Conf.sh.in > xml2Conf.tmp \ - && mv xml2Conf.tmp xml2Conf.sh + && mv xml2Conf.tmp xml2CataloglessConf.sh -CLEANFILES = runxmlconf.log test.out xml2Conf.sh *.gcda *.gcno *.res +CLEANFILES = runxmlconf.log test.out xml2CataloglessConf.sh *.gcda *.gcno *.res DISTCLEANFILES = COPYING missing.lst confexecdir=$(libdir) -confexec_DATA = xml2Conf.sh +confexec_DATA = xml2CataloglessConf.sh CVS_EXTRA_DIST= EXTRA_DIST = xml2-config.in xml2Conf.sh.in libxml.spec.in libxml2.spec \ libxml.m4 Copyright check-xml-test-suite.py gentest.py \ @@ -1261,10 +1258,10 @@ pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = libxml-2.0.pc +pkgconfig_DATA = libxml-2.0-catalogless.pc -cmakedir = $(libdir)/cmake/libxml2 -cmake_DATA = libxml2-config.cmake +cmakedir = $(libdir)/cmake/libxml2-catalogless +cmake_DATA = libxml2-catalogless-config.cmake # # Install the tests program sources as examples @@ -1292,7 +1289,7 @@ rm -rf $(DESTDIR)$(BASE_DIR)/$(DOC_MODULE) tst: tst.c - $(CC) $(CFLAGS) -Iinclude -o tst tst.c .libs/libxml2.a -lpthread -lm -lz -llzma + $(CC) $(CFLAGS) -Iinclude -o tst tst.c .libs/libxml2-catalogless.a -lpthread -lm -lz -llzma sparse: clean $(MAKE) CC=cgcc --- /configure.ac +++ /configure.ac @@ -103,8 +103,6 @@ AC_ARG_WITH(c14n, [ --with-c14n add the Canonicalization support (on)]) -AC_ARG_WITH(catalog, -[ --with-catalog add the Catalog support (on)]) AC_ARG_WITH(debug, [ --with-debug add the debugging module (on)]) AC_ARG_WITH(docbook, @@ -248,10 +246,6 @@ then with_c14n=no fi - if test "$with_catalog" = "" - then - with_catalog=no - fi echo So far so good! if test "$with_debug" = "" then @@ -733,7 +727,7 @@ [AC_DEFINE([HAVE_ISINF], [], [Define if isinf is there])])) XML_LIBDIR='-L${libdir}' -XML_INCLUDEDIR='-I${includedir}/libxml2' +XML_INCLUDEDIR='-I${includedir}/libxml2-catalogless' dnl dnl Extra flags @@ -1269,16 +1263,10 @@ AC_SUBST(TEST_VALID) AC_SUBST(TEST_VTIME) -if test "$with_catalog" = "no" ; then - echo Disabling Catalog support - WITH_CATALOG=0 - CATALOG_OBJ= - TEST_CATALOG= -else - WITH_CATALOG=1 - CATALOG_OBJ="catalog.o" - TEST_CATALOG=Catatests -fi +echo Disabling Catalog support +WITH_CATALOG=0 +CATALOG_OBJ= +TEST_CATALOG= AC_SUBST(WITH_CATALOG) AC_SUBST(CATALOG_OBJ) AC_SUBST(TEST_CATALOG) @@ -1533,8 +1521,8 @@ WITH_ICU=1 fi fi -XML_LIBS="-lxml2 $Z_LIBS $LZMA_LIBS $THREAD_LIBS $ICONV_LIBS $ICU_LIBS $M_LIBS $LIBS" -XML_LIBTOOLLIBS="libxml2.la" +XML_LIBS="-lxml2-catalogless $Z_LIBS $LZMA_LIBS $THREAD_LIBS $ICONV_LIBS $ICU_LIBS $M_LIBS $LIBS" +XML_LIBTOOLLIBS="libxml2-catalogless.la" AC_SUBST(WITH_ICU) WITH_ISO8859X=1 @@ -1695,9 +1683,9 @@ ln -s $srcdir/Copyright COPYING # keep on one line for cygwin c.f. #130896 -AC_CONFIG_FILES([libxml2.spec:libxml.spec.in Makefile include/Makefile include/libxml/Makefile doc/Makefile doc/examples/Makefile doc/devhelp/Makefile example/Makefile python/Makefile python/tests/Makefile xstc/Makefile include/libxml/xmlversion.h libxml-2.0.pc libxml-2.0-uninstalled.pc libxml2-config.cmake]) +AC_CONFIG_FILES([libxml2.spec:libxml.spec.in Makefile include/Makefile include/libxml/Makefile doc/Makefile doc/examples/Makefile doc/devhelp/Makefile example/Makefile python/Makefile python/tests/Makefile xstc/Makefile include/libxml/xmlversion.h libxml-2.0-catalogless.pc:libxml-2.0.pc.in libxml-2.0-catalogless-uninstalled.pc:libxml-2.0-uninstalled.pc.in libxml2-catalogless-config.cmake:libxml2-config.cmake.in]) AC_CONFIG_FILES([python/setup.py], [chmod +x python/setup.py]) -AC_CONFIG_FILES([xml2-config], [chmod +x xml2-config]) +AC_CONFIG_FILES([xml2-catalogless-config:xml2-config.in], [chmod +x xml2-catalogless-config]) AC_OUTPUT echo Done configuring --- /doc/examples/Makefile.am +++ /doc/examples/Makefile.am @@ -5,7 +5,7 @@ AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(srcdir)/include AM_CFLAGS = $(THREAD_CFLAGS) $(Z_CFLAGS) -LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) +LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2-catalogless.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) CLEANFILES = *.tmp --- /doc/examples/index.py +++ /doc/examples/index.py @@ -227,7 +227,7 @@ AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(srcdir)/include AM_CFLAGS = $(THREAD_CFLAGS) $(Z_CFLAGS) -LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) +LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2-catalogless.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) CLEANFILES = *.tmp --- /doc/syms.xsl +++ /doc/syms.xsl @@ -8,26 +8,31 @@ # # Officially exported symbols, for which header -# file definitions are installed in /usr/include/libxml2 +# file definitions are installed in /usr/include/libxml2-catalogless # # Automatically generated from symbols.xml and syms.xsl # # Versions here are *fixed* to match the libxml2 version # at which the symbol was introduced. This ensures that # a new client app requiring symbol foo() can't accidentally -# run with old libxml2.so not providing foo() - the global +# run with old libxml2-catalogless.so not providing foo() - the global # soname version info can't enforce this since we never # change the soname # + LIBXML2_CATALOGLESS { + global: + *; +}; + - LIBXML2_ + LIBXML2_CATALOGLESS_ { global: @@ -46,7 +51,7 @@ } - LIBXML2_ + LIBXML2_CATALOGLESS_ ; --- /example/Makefile.am +++ /example/Makefile.am @@ -2,6 +2,6 @@ AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include -I$(srcdir)/include AM_CFLAGS = $(THREAD_CFLAGS) $(Z_CFLAGS) -LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) +LDADD = $(RDL_LIBS) $(STATIC_BINARIES) $(top_builddir)/libxml2-catalogless.la $(THREAD_LIBS) $(Z_LIBS) $(ICONV_LIBS) -lm $(WIN32_EXTRA_LIBADD) gjobread_SOURCES=gjobread.c --- /include/libxml/Makefile.am +++ /include/libxml/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in -xmlincdir = $(includedir)/libxml2/libxml +xmlincdir = $(includedir)/libxml2-catalogless/libxml xmlinc_HEADERS = \ SAX.h \ --- /libxml-2.0-uninstalled.pc.in +++ /libxml-2.0-uninstalled.pc.in @@ -4,9 +4,9 @@ includedir=${pcfiledir}/include -Name: libXML +Name: libXML-catalogless Version: @VERSION@ -Description: libXML library version2. +Description: libXML library version2 without Catalog support. Requires: -Libs: -L${libdir} -lxml2 @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ +Libs: -L${libdir} -lxml2-catalogless @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @LIBS@ Cflags: -I${includedir} @XML_INCLUDEDIR@ @XML_CFLAGS@ --- /libxml-2.0.pc.in +++ /libxml-2.0.pc.in @@ -4,10 +4,10 @@ includedir=@includedir@ modules=@WITH_MODULES@ -Name: libXML +Name: libXML-catalogless Version: @VERSION@ -Description: libXML library version2. +Description: libXML library version2 without Catalog support. Requires: -Libs: -L${libdir} -lxml2 +Libs: -L${libdir} -lxml2-catalogless Libs.private: @ICU_LIBS@ @THREAD_LIBS@ @Z_LIBS@ @LZMA_LIBS@ @ICONV_LIBS@ @M_LIBS@ @WIN32_EXTRA_LIBADD@ @LIBS@ Cflags: @XML_INCLUDEDIR@ @XML_CFLAGS@ --- /libxml2-config.cmake.in +++ /libxml2-config.cmake.in @@ -1,7 +1,7 @@ -# libxml2-config.cmake +# libxml2-catalogless-config.cmake # -------------------- # -# Libxml2 cmake module. +# Libxml2-catalogless cmake module. # THis module sets the following variables: # # :: @@ -21,9 +21,9 @@ set(LIBXML2_VERSION_MICRO @LIBXML_MICRO_VERSION@) set(LIBXML2_VERSION_STRING "@VERSION@") set(LIBXML2_INSTALL_PREFIX ${_libxml2_rootdir}) -set(LIBXML2_INCLUDE_DIRS ${_libxml2_rootdir}/include ${_libxml2_rootdir}/include/libxml2) +set(LIBXML2_INCLUDE_DIRS ${_libxml2_rootdir}/include ${_libxml2_rootdir}/include/libxml2-catalogless) set(LIBXML2_LIBRARY_DIR ${_libxml2_rootdir}/lib) -set(LIBXML2_LIBRARIES -L${LIBXML2_LIBRARY_DIR} -lxml2) +set(LIBXML2_LIBRARIES -L${LIBXML2_LIBRARY_DIR} -lxml2-catalogless) if(@WITH_THREADS@) find_package(Threads REQUIRED) --- /python/Makefile.am +++ /python/Makefile.am @@ -25,7 +25,7 @@ libxml2mod_la_SOURCES = libxml.c libxml_wrap.h libxml2-py.h libxml2-py.c types.c libxml2mod_la_LDFLAGS = $(CYGWIN_EXTRA_LDFLAGS) $(WIN32_EXTRA_LDFLAGS) -module -avoid-version \ - $(top_builddir)/libxml2.la $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS) + $(top_builddir)/libxml2-catalogless.la $(CYGWIN_EXTRA_PYTHON_LIBADD) $(WIN32_EXTRA_PYTHON_LIBADD) $(PYTHON_LIBS) BUILT_SOURCES = libxml2-export.c libxml2-py.h libxml2-py.c --- /xml2-config.in +++ /xml2-config.in @@ -8,7 +8,7 @@ usage() { cat <