summaryrefslogtreecommitdiff
path: root/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Don't touch CFLAGS in configure.acNick Wellnhofer2017-11-141-1/+1
| | | | | | | | | CFLAGS shouldn't be touched by configure.ac. The variable is supplied by the user and must come after other flags, so flags like warning options can be overridden. Rename CFLAGS to EXTRA_CFLAGS and add the value to AM_CFLAGS. This also makes it possible to override flags for each Automake program or library.
* Revert "Compile testapi with -Wno-unused-function"Nick Wellnhofer2017-11-141-1/+0
| | | | | | This reverts commit f404c4f500a0ec18b04463581d5d1b3aae7f7730. The change broke non-GCC compilers.
* Compile testapi with -Wno-unused-functionNick Wellnhofer2017-11-041-0/+1
|
* Adding README.zOS to list of extra files for the releaseDaniel Veillard2017-08-281-0/+1
|
* Build test programs only when neededNick Wellnhofer2017-06-171-5/+6
| | | | | | Add test programs to 'check_PROGRAMS' instead of 'noinst_PROGRAMS'. Fixes bug 760457.
* Test SAX2 callbacks with entity substitutionNick Wellnhofer2017-06-161-0/+15
| | | | This detects regressions like bug 760367.
* Misc fixes for 'make tests'Nick Wellnhofer2017-06-121-8/+8
| | | | | | | | | | | | - Silence test output. - Clean up after doc/examples tests. - Adjust expected output for script tests. - Add missing results for relaxng/pattern3 There are still two test failures I can't comment on: - regexp/bug316338 - schemas/any4_0
* Fix handling of parameter-entity referencesNick Wellnhofer2017-06-051-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were two bugs where parameter-entity references could lead to an unexpected change of the input buffer in xmlParseNameComplex and xmlDictLookup being called with an invalid pointer. Percent sign in DTD Names ========================= The NEXTL macro used to call xmlParserHandlePEReference. When parsing "complex" names inside the DTD, this could result in entity expansion which created a new input buffer. The fix is to simply remove the call to xmlParserHandlePEReference from the NEXTL macro. This is safe because no users of the macro require expansion of parameter entities. - xmlParseNameComplex - xmlParseNCNameComplex - xmlParseNmtoken The percent sign is not allowed in names, which are grammatical tokens. - xmlParseEntityValue Parameter-entity references in entity values are expanded but this happens in a separate step in this function. - xmlParseSystemLiteral Parameter-entity references are ignored in the system literal. - xmlParseAttValueComplex - xmlParseCharDataComplex - xmlParseCommentComplex - xmlParsePI - xmlParseCDSect Parameter-entity references are ignored outside the DTD. - xmlLoadEntityContent This function is only called from xmlStringLenDecodeEntities and entities are replaced in a separate step immediately after the function call. This bug could also be triggered with an internal subset and double entity expansion. This fixes bug 766956 initially reported by Wei Lei and independently by Chromium's ClusterFuzz, Hanno Böck, and Marco Grassi. Thanks to everyone involved. xmlParseNameComplex with XML_PARSE_OLD10 ======================================== When parsing Names inside an expanded parameter entity with the XML_PARSE_OLD10 option, xmlParseNameComplex would call xmlGROW via the GROW macro if the input buffer was exhausted. At the end of the parameter entity's replacement text, this function would then call xmlPopInput which invalidated the input buffer. There should be no need to invoke GROW in this situation because the buffer is grown periodically every XML_PARSER_CHUNK_SIZE characters and, at least for UTF-8, in xmlCurrentChar. This also matches the code path executed when XML_PARSE_OLD10 is not set. This fixes bugs 781205 (CVE-2017-9049) and 781361 (CVE-2017-9050). Thanks to Marcel Böhme and Thuan Pham for the report. Additional hardening ==================== A separate check was added in xmlParseNameComplex to validate the buffer size.
* Disable LeakSanitizer when running API testsNick Wellnhofer2017-06-011-2/+7
| | | | The autogenerated API tests leak memory.
* Fix white space in test outputNick Wellnhofer2017-05-311-42/+42
| | | | Quote echoed variable to avoid newlines being converted to space.
* Add a make rule to rebuild for ASANDaniel Veillard2016-05-041-0/+4
|
* Add autogen.sh to distriborzen2016-02-091-1/+1
| | | | | | | | For https://bugzilla.gnome.org/show_bug.cgi?id=761782 autogen.sh was not included in the tarball releases which complicates situations when users have to make changes to e.g. configure.ac andi have to re-generate configure.
* Provide cmake moduleSamuel Martin2014-10-131-0/+4
| | | | | | | | * add libxml2-config.cmake.in template * configure.ac: add libxml2-config.cmake.in to the configured file list * Makefile.am: install libxml2-config.cmake under ${libdir}/cmake/libxml2 Signed-off-by: Samuel Martin <s.martin49@gmail.com>
* OS400: include in distribution tarball.Patrick Monnerat2014-10-041-1/+1
|
* Keep libxml2.syms when running "make distclean"Daniel Veillard2012-09-111-1/+1
|
* Handle ICU_LIBS as LIBADD, not LDFLAGS to prevent linking errorsArfrever Frehtes Taifersar Arahesis2012-08-281-1/+1
| | | | | | | | | | | | | | | | | | For https://bugzilla.gnome.org/show_bug.cgi?id=677606 For https://bugs.gentoo.org/show_bug.cgi?id=417539 If libxml2-2.8.0 is built with --with-icu --with-python on a system that has an older version of libxml2 installed, then during "make install", libxml2mod.so gets relinked to the systemwide version of libxml2.so.2 instead of libxml2.so.2 from the build tree, and fails at runtime if symbol versions from the older libxml2.so.2 are not available. This effectively makes it impossible to build a libxml2-2.8.0 binary package on a system that does not already have libxml2-2.8.0 installed. Investigation by Rafał Mużyło and Arfrever Frehtes Taifersar Arahesis revealed the cause of the problem to be that libxml2's configure was adding ICU_LIBS to LDFLAGS instead of to LIBADD. This resulted in GNU libtool using the wrong argument order in its relinking command that gets run during "make install".
* Bug 676544 - fails to build with --without-sax1Akira TAGOH2012-08-281-11/+13
| | | | | Added some ifdef'd LIBXML_SAX1_ENABLED to make it buildable with --without-sax1 configure option.
* Switching XPath node sorting to TimsortVojtech Fried2012-08-241-1/+1
| | | | | | | | | | | | | | | I use libxml xpath engine on quite large (and mostly "flat") xml files. It seems that Shellsort, that is used in xmlXPathNodeSetSort is a performance bottleneck for my case. I have read some posts about sorting in libxml in the libxml archive, but I agree that qsort was not the way to go. I experimented with Timsort instead and my results were good for me. For about 10000 nodes, my test was about 5x faster with Timsort, for 1000 nodes about 10% faster, for small data files, the difference was not measurable. * timsort.h: the algorithm, kept in a separate header * xpath.c: plug in the new algorithm in xmlXPathNodeSetSort * Makefile.am: add the header to the EXTRA_DIST * doc/apibuild.py: avoid indexing the new header
* Small cleanup for valgrind targetDaniel Veillard2012-08-241-7/+2
|
* More updates and cleanups on autotools and MakefilesDaniel Richard G2012-08-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefile.am, example/Makefile.am: * Replaced the obsolete INCLUDES variable with AM_CPPFLAGS/AM_CFLAGS acinclude.m4: * autoupdate replaced AC_FD_CC with AS_MESSAGE_LOG_FD autogen.sh: * Added -Wall to the autoreconf invocation, which turned up a whole slew of warnings that are fixed by this patch configure.in: * Most of the changes are due to autoupdate, with subsequent manual tidying * Note that autoupdate bumped the AC_PREREQ version from 2.59 to 2.68. If you normally use an older version of Autoconf, and everything works fine if you comment out that directive, feel free to bump down the version accordingly. * Ensure that #include directives in C fragments always have no whitespace to the left of the '#' mark, as some preprocessors need that to be in the first column example/Makefile.am: * Don't need DEPS * Use plain LDADD instead of LDADDS; if all programs in this file need to link against the same set of libraries, then this is all you need
* Various "make distcheck" and portability fixupsDaniel Richard G2012-08-061-35/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makefile.am: * Don't use @VAR@, use $(VAR). Autoconf's AC_SUBST provides us the Make variable, it allows overriding the value at the command line, and (notably) it avoids a Make parse error in the libxml2_la_LDFLAGS assignment when @MODULE_PLATFORM_LIBS@ is empty * Changed how the THREADS_W32 mechanism switches the build between testThreads.c and testThreadsWin32.c as appropriate; using AM_CONDITIONAL allows this to work cleanly and plays well with dependencies * testapi.c should be specified as BUILT_SOURCES * Create symlinks to the test/ and result/ subdirs so that the runtests target is usable in out-of-source-tree builds * Don't do MAKEFLAGS+=--silent as this is not portable to non-GNU Makes * Fixed incorrect find(1) syntax in the "cleanup" rule, and doing "rm -f" instead of just "rm" is good form * (DIST)CLEANFILES needed a bit more coverage to allow "make distcheck" to pass configure.in: * Need AC_PROG_LN_S to create test/ and result/ symlinks in Makefile.am * AC_LIBTOOL_WIN32_DLL and AM_PROG_LIBTOOL are obsolete; these have been superceded by LT_INIT * Don't rebuild docs by default, as this requires GNU Make (as implemented) * Check for uint32_t as some platforms don't provide it * Check for some more functions, and undefine HAVE_MMAP if we don't also HAVE_MUNMAP (one system I tested on actually needed this) * Changed THREADS_W32 from a filename insert into an Automake conditional * The "Copyright" file will not be in the current directory if builddir != srcdir doc/Makefile.am: * EXTRA_DIST cannot use wildcards when they refer to generated files; this breaks dependencies. What I did was define EXTRA_DIST_wc, which uses GNU Make $(wildcard) directives to build up a list of files, and EXTRA_DIST, as a literal expansion of EXTRA_DIST_wc. I also added a new rule, "check-extra-dist", to simplify checking that the two variables are equivalent. (Note that this works only when builddir == srcdir) (I can implement this differently if desired; this is just one way of doing it) * Don't define an "all" target; this steps on Automake's toes * Fixed up the "libxml2-api.xml ..." rule by using $(wildcard) for dependencies (as Make doesn't process the wildcards otherwise) and qualifying appropriate files with $(srcdir) (Note that $(srcdir) is not needed in the dependencies, thanks to VPATH, which we can count on as this is GNU-Make-only code anyway) doc/devhelp/Makefile.am: * Qualified appropriate files with $(srcdir) * Added an "uninstall-local" rule so that "make distcheck" passes doc/examples/Makefile.am: * Rather than use a wildcard that doesn't work, use a substitution that most Make programs can handle doc/examples/index.py: * Do the same here include/libxml/nanoftp.h: * Some platforms (e.g. MSVC 6) already #define INVALID_SOCKET: user@host:/cygdrive/c/Program Files/Microsoft Visual Studio/VC98/\ Include$ grep -R INVALID_SOCKET . ./WINSOCK.H:#define INVALID_SOCKET (SOCKET)(~0) ./WINSOCK2.H:#define INVALID_SOCKET (SOCKET)(~0) include/libxml/xmlversion.h.in: * Support ancient GCCs (I was actually able to build the library with 2.5 but for this bit) python/Makefile.am: * Expanded CLEANFILES to allow "make distcheck" to pass python/tests/Makefile.am: * Define CLEANFILES instead of a "clean" rule, and added tmp.xml to allow "make distcheck" to pass testRelax.c: * Use HAVE_MMAP instead of the less explicit HAVE_SYS_MMAN_H (as some systems have the header but not the function) testSchemas.c: * Use HAVE_MMAP instead of the less explicit HAVE_SYS_MMAN_H testapi.c: * Don't use putenv() if it's not available threads.c: * This fixes the following build error on Solaris 8: libtool: compile: cc -DHAVE_CONFIG_H -I. -I./include -I./include \ -D_REENTRANT -D__EXTENSIONS__ -D_REENTRANT -Dsparc -Xa -mt -v \ -xarch=v9 -xcrossfile -xO5 -c threads.c -KPIC -DPIC -o threads.o "threads.c", line 442: controlling expressions must have scalar type "threads.c", line 512: controlling expressions must have scalar type cc: acomp failed for threads.c *** Error code 1 trio.c: * Define isascii() if the system doesn't provide it trio.h: * The trio library's HAVE_CONFIG_H header is not the same as LibXML2's HAVE_CONFIG_H header; this change is needed to avoid a double-inclusion win32/configure.js: * Added support for the LZMA compression option win32/Makefile.{bcb,mingw,msvc}: * Added appropriate bits to support WITH_LZMA=1 * Install the header files under $(INCPREFIX)\libxml2\libxml instead of $(INCPREFIX)\libxml, to mirror the install location on Unix+Autotools xml2-config.in: * @MODULE_PLATFORM_LIBS@ (usually "-ldl") needs to be in there in order for `xml2-config --libs` to provide a complete set of dependencies xmllint.c: * Use HAVE_MMAP instead of the less-explicit HAVE_SYS_MMAN_H
* Fix make dist to include new private header filesDaniel Veillard2012-08-061-1/+1
|
* first version of testlimits new testDaniel Veillard2012-07-231-1/+6
| | | | Used to check behaviour on various parsing limits
* Adding a new buf module for buffersDaniel Veillard2012-07-231-3/+3
| | | | | | | | | | This also add converter functions between xmlBuf and xmlBuffer * buf.c buf.h: the old xmlBuffer routines but modified for size_t and using xmlBuf instead of xmlBuffer * Makefile.am: add the 2 new files * include/libxml/xmlerror.h: add an entry for the new module * include/libxml/tree.h: expose the xmlBufPtr type but not the structure which stay private
* Release of libxml2-2.8.0v2.8.0Daniel Veillard2012-05-231-2/+2
| | | | | | | - Makefile.am: don't package .git - configure.in : update to new release - doc/xml.html: added the new release - doc/* testapi.c: regenerated
* Fix "make tst" to grab lzma lib tooDaniel Veillard2012-05-081-1/+1
|
* Cleanups of lzma supportDaniel Veillard2012-01-271-3/+3
| | | | | | | | - fix inclusion of the separated file - use namespaced name for the 4 non-static routines - add padding after external structures included in-situ - add new requirement to spec file - general cleanup of code
* included xzlib in distAnders F Bjorklund2012-01-271-1/+1
|
* add lzma compression supportAnders F Bjorklund2012-01-271-3/+3
|
* Switch from the obsolete mkinstalldirs to AC_PROG_MKDIR_PAdrian Bunk2010-11-041-2/+2
| | | | | This was obsoleted in 2005 so we should be safe. But keep AC_PREREQ to 2.59 as it's still widely deployed.
* Fix build with mingwRoumen Petrov2010-03-101-1/+1
| | | | | | | | - include/libxml/xmlexports.h: restore export decoration otherwise xsltproc and xmlsec crash - libxml.h: define LIBXML_STATIC for static build - configure.in: enable modules support for mingw* builds - Makefile.am: flags for testdso if modules support enabled
* Upgrade some of the configure and autogenDaniel Veillard2010-03-091-0/+2
| | | | Based on Roumen Petrov suggestions
* 558452 fight with reg test and error reportDaniel Veillard2009-08-261-1/+1
| | | | | | | | * relaxng.c: tiny fix and provide more context on some errors * result/relaxng/558452_0* test/relaxng/558452*: add some regression tests for the bugs * Makefile.am runtest.c: fight with the fact streaming error messages can differ due to missing node context
* 555833 always use rm -f in uninstall-localDaniel Veillard2009-08-241-5/+5
| | | | * Makefile.am: so that make clean doesn't fail in some circumstances
* 584605 package VxWorks folder in the distributionDaniel Veillard2009-08-241-1/+1
| | | | | * Makefile.am: as Igor Novoseltsev pointed out this is missing from the distro
* Add symbol versioning to libxml2 shared libsDaniel Veillard2009-08-201-2/+11
| | | | | | | * libxml2.syms: the symbols with history, going back to 2.4.30 * Makefile.am configure.in: linking flags detection and use * parser.c tree.c valid.c xpointer.c: various cleanup of functions which could be made static or simply discarded, not that many
* Aleksey Sanin support for c14n 1.1Aleksey Sanin2009-07-091-1/+1
| | | | | | | | | * c14n.c include/libxml/c14n.h: adds support for C14N 1.1, new flags at the API level * runtest.c Makefile.am testC14N.c xmllint.c: add support in CLI tools and test binaries * result/c14n/1-1-without-comments/* test/c14n/1-1-without-comments/*: add a new batch of tests
* Borland C fix from Moritz Both regenerate, workaround a problem for bufferDaniel Veillard2008-09-011-1/+3
| | | | | | | | | | | | | | | | | | | * trionan.c: Borland C fix from Moritz Both * testapi.c: regenerate, workaround a problem for buffer testing * xmlIO.c HTMLtree.c: new internal entry point to hide even better xmlAllocOutputBufferInternal * tree.c: harden the code around buffer allocation schemes * parser.c: restore the warning when namespace names are not absolute URIs * runxmlconf.c: continue regression tests if we get the expected number of errors * Makefile.am: run the python tests on make check * xmlsave.c: handle the HTML documents and trees * python/libxml.c: convert python serialization to the xmlSave APIs and avoid some horrible hacks Daniel svn path=/trunk/; revision=3790
* patch from Robert Schwebel , allows to compile the example if configuredDaniel Veillard2008-08-291-1/+1
| | | | | | | | | | | | * doc/examples/reader3.c: patch from Robert Schwebel , allows to compile the example if configured without output support fixes #545582 * Makefile.am: add testrecurse to the make check tests * HTMLparser.c: if the parser got a encoding argument it should be used over what the meta specifies, patch fixing #536346 Daniel svn path=/trunk/; revision=3785
* completely different fix for the recursion detection based on entityDaniel Veillard2008-08-281-1/+6
| | | | | | | | | | | | | | | * parser.c include/libxml/parser.h: completely different fix for the recursion detection based on entity density, big cleanups in the entity parsing code too * result/*.sax*: the parser should not ask for used defined versions of the predefined entities * testrecurse.c: automatic test for entity recursion checks * Makefile.am: added testrecurse * test/recurse/lol* test/recurse/good*: a first set of tests for the recursion Daniel svn path=/trunk/; revision=3783
* add an --with-coverage configure option and a 'make cov' target based onDaniel Veillard2008-08-271-1/+27
| | | | | | | | | | | * configure.in Makefile.am: add an --with-coverage configure option and a 'make cov' target based on gcc profiling and the lcov tool. Currently at 68.9% coverage out of 'make check' and runsuite executions. * xmlreader.c: remove warnings due to C++ comments Daniel svn path=/trunk/; revision=3780
* add the testchar to 'make check' Volker Grabsch pointed out a typoDaniel Veillard2008-08-261-1/+1
| | | | | | | | | | | | | | | * Makefile.am: add the testchar to 'make check' * xmlschemas.c: Volker Grabsch pointed out a typo * xmlregexp.c: production [19] from XML Schemas regexps were a mistake removed in version REC-xmlschema-2-20041028, Volker Grabsch provided a patch to remove it * test/schemas/regexp-char-ref_0.xml test/schemas/regexp-char-ref_0.xsd test/schemas/regexp-char-ref_1.xsd result/schemas/regexp-char-ref_0_0 result/schemas/regexp-char-ref_1_0: Volker Grabsch also provided regession tests for this Daniel svn path=/trunk/; revision=3776
* adding a check-valgrind target DanielDaniel Veillard2008-08-081-1/+6
| | | | | | | * makefile.am: adding a check-valgrind target Daniel svn path=/trunk/; revision=3770
* add the new test in 'make check' and update it to check subdictionariesDaniel Veillard2008-08-081-2/+7
| | | | | | | | * Makefile.am testdict.c: add the new test in 'make check' and update it to check subdictionaries processing. Daniel svn path=/trunk/; revision=3769
* rewrite the URI parser to update to rfc3986 (from 2396) removed the errorDaniel Veillard2008-08-041-1/+1
| | | | | | | | | | | * uri.c include/libxml/uri.h: rewrite the URI parser to update to rfc3986 (from 2396) * test/errors/webdav.xml result/errors/webdav.xml*: removed the error test, 'DAV:' is a correct URI under 3986 * Makefile.am: small cleanup in make check Daniel svn path=/trunk/; revision=3763
* added a skipped list, insert rmt-ns10-035 improve 'make check' clean upDaniel Veillard2008-07-311-1/+1
| | | | | | | | | | | | | | * runxmlconf.c: added a skipped list, insert rmt-ns10-035 * Makefile.am: improve 'make check' * include/libxml/xmlerror.h parser.c: clean up namespace errors checking and reporting, errors when a document is labelled as UTF-16 while it is parsed as UTF-8 and no encoding was given explicitely. * result/errors/webdav.xml.*: some warnings are no recategorized as Namespace errors Daniel svn path=/trunk/; revision=3761
* fix a bug not detecting cross entity comments probably when commentDaniel Veillard2008-07-291-1/+4
| | | | | | | | | | * parser.c: fix a bug not detecting cross entity comments probably when comment parsing got optimized. * Makefile.am: add make check * runxmlconf.c: fix the log file name Daniel svn path=/trunk/; revision=3758
* add a C program to run the W3C test suite, work in progress add a newDaniel Veillard2008-07-291-1/+7
| | | | | | | | | | | * runxmlconf.c Makefile.am: add a C program to run the W3C test suite, work in progress * xmllint.c: add a new option --oldxml10 to use the old parser * parser.c: fix the XML_PARSE_OLD10 processing of the new option and a bug in version parsing Daniel svn path=/trunk/; revision=3757
* implement XML-1.0 5th edition, add parser option XML_PARSE_OLD10 to stickDaniel Veillard2008-07-291-1/+6
| | | | | | | | | | | * include/libxml/parser.h include/libxml/xmlerror.h parser.c: implement XML-1.0 5th edition, add parser option XML_PARSE_OLD10 to stick to old behaviour * testapi.c gentest.py: modified slightly and regenerated * Makefile.am: add testchar Daniel svn path=/trunk/; revision=3755
* extend the cleanup rule space cleanup DanielDaniel Veillard2008-04-101-0/+1
| | | | | | | | * Makefile.am: extend the cleanup rule * xmlschemas.c: space cleanup Daniel svn path=/trunk/; revision=3737