/**
 * @file
 *
 * @brief compile-time version information
 *
 * compile-time version information for the XML library
 *
 * @copyright See Copyright for the status of this software.
 *
 * @author Daniel Veillard
 */

#ifndef __XML_VERSION_H__
#define __XML_VERSION_H__

/**
 * the version string like "1.2.3"
 */
#define LIBXML_DOTTED_VERSION "@VERSION@"

/**
 * the version number: 1.2.3 value is 10203
 */
#define LIBXML_VERSION @LIBXML_VERSION_NUMBER@

/**
 * the version number string, 1.2.3 value is "10203"
 */
#define LIBXML_VERSION_STRING "@LIBXML_VERSION_NUMBER@"

/**
 * extra version information, used to show a git commit description
 */
#define LIBXML_VERSION_EXTRA "@LIBXML_VERSION_EXTRA@"

/**
 * Macro to check that the libxml version in use is compatible with
 * the version the software has been compiled against
 */
#define LIBXML_TEST_VERSION xmlCheckVersion(@LIBXML_VERSION_NUMBER@);

#if @WITH_THREADS@
/**
 * Whether the thread support is configured in
 */
#define LIBXML_THREAD_ENABLED
#endif

#if @WITH_THREAD_ALLOC@
/**
 * Whether the allocation hooks are per-thread
 */
#define LIBXML_THREAD_ALLOC_ENABLED
#endif

/**
 * Always enabled since 2.14.0
 */
#define LIBXML_TREE_ENABLED

#if @WITH_OUTPUT@
/**
 * Whether the serialization/saving support is configured in
 */
#define LIBXML_OUTPUT_ENABLED
#endif

#if @WITH_PUSH@
/**
 * Whether the push parsing interfaces are configured in
 */
#define LIBXML_PUSH_ENABLED
#endif

#if @WITH_READER@
/**
 * Whether the xmlReader parsing interface is configured in
 */
#define LIBXML_READER_ENABLED
#endif

#if @WITH_PATTERN@
/**
 * Whether the xmlPattern node selection interface is configured in
 */
#define LIBXML_PATTERN_ENABLED
#endif

#if @WITH_WRITER@
/**
 * Whether the xmlWriter saving interface is configured in
 */
#define LIBXML_WRITER_ENABLED
#endif

#if @WITH_SAX1@
/**
 * Whether the older SAX1 interface is configured in
 */
#define LIBXML_SAX1_ENABLED
#endif

#if @WITH_HTTP@
/**
 * HTTP support was removed in 2.15
 */
#define LIBXML_HTTP_STUBS_ENABLED
#endif

#if @WITH_VALID@
/**
 * Whether the DTD validation support is configured in
 */
#define LIBXML_VALID_ENABLED
#endif

#if @WITH_HTML@
/**
 * Whether the HTML support is configured in
 */
#define LIBXML_HTML_ENABLED
#endif

/*
 * Removed in 2.14
 */
#undef LIBXML_LEGACY_ENABLED

#if @WITH_C14N@
/**
 * Whether the Canonicalization support is configured in
 */
#define LIBXML_C14N_ENABLED
#endif

#if @WITH_CATALOG@
/**
 * Whether the Catalog support is configured in
 */
#define LIBXML_CATALOG_ENABLED
#endif

#if @WITH_XPATH@
/**
 * Whether XPath is configured in
 */
#define LIBXML_XPATH_ENABLED
#endif

#if @WITH_XPTR@
/**
 * Whether XPointer is configured in
 */
#define LIBXML_XPTR_ENABLED
#endif

#if @WITH_XINCLUDE@
/**
 * Whether XInclude is configured in
 */
#define LIBXML_XINCLUDE_ENABLED
#endif

#if @WITH_ICONV@
/**
 * Whether iconv support is available
 */
#define LIBXML_ICONV_ENABLED
#endif

#if @WITH_ICU@
/**
 * Whether icu support is available
 */
#define LIBXML_ICU_ENABLED
#endif

#if @WITH_ISO8859X@
/**
 * Whether ISO-8859-* support is made available in case iconv is not
 */
#define LIBXML_ISO8859X_ENABLED
#endif

#if @WITH_DEBUG@
/**
 * Whether Debugging module is configured in
 */
#define LIBXML_DEBUG_ENABLED
#endif

/*
 * Removed in 2.14
 */
#undef LIBXML_UNICODE_ENABLED

#if @WITH_REGEXPS@
/**
 * Whether the regular expressions interfaces are compiled in
 */
#define LIBXML_REGEXP_ENABLED
#endif

#if @WITH_REGEXPS@
/**
 * Whether the automata interfaces are compiled in
 */
#define LIBXML_AUTOMATA_ENABLED
#endif

#if @WITH_RELAXNG@
/**
 * Whether the RelaxNG validation interfaces are compiled in
 */
#define LIBXML_RELAXNG_ENABLED
#endif

#if @WITH_SCHEMAS@
/**
 * Whether the Schemas validation interfaces are compiled in
 */
#define LIBXML_SCHEMAS_ENABLED
#endif

#if @WITH_SCHEMATRON@
/**
 * Whether the Schematron validation interfaces are compiled in
 */
#define LIBXML_SCHEMATRON_ENABLED
#endif

#if @WITH_MODULES@
/**
 * Whether the module interfaces are compiled in
 */
#define LIBXML_MODULES_ENABLED
/**
 * the string suffix used by dynamic modules (usually shared libraries)
 */
#define LIBXML_MODULE_EXTENSION "@MODULE_EXTENSION@" 
#endif

#if @WITH_ZLIB@
/**
 * Whether the Zlib support is compiled in
 */
#define LIBXML_ZLIB_ENABLED
#endif

#if @WITH_LZMA@
/**
 * Whether the Lzma support is compiled in
 */
#define LIBXML_LZMA_ENABLED
#endif

#include <libxml/xmlexports.h>

#endif


