config BR2_PACKAGE_PUGIXML
	bool "pugixml"
	depends on BR2_INSTALL_LIBSTDCPP
	help
	  Light-weight, simple and fast XML parser for C++ with XPath
	  support

	  Features:
	  * DOM-like interface with rich traversal/modification
	    capabilities
	  * Extremely fast non-validating XML parser which constructs
	    the DOM tree from an XML file/buffer
	  * XPath 1.0 implementation for complex data-driven tree
	    queries
	  * Full Unicode support with Unicode interface variants and
	    automatic encoding conversions

	  http://pugixml.org/
	  https://github.com/zeux/pugixml

if BR2_PACKAGE_PUGIXML

config BR2_PACKAGE_PUGIXML_XPATH_SUPPORT
	bool "Enable XPath support"
	default y
	help
	  When disabled, both XPath interfaces and XPath implementation
	  are excluded from compilation. This option is provided in case
	  you do not need XPath functionality and need to save code
	  space.

config BR2_PACKAGE_PUGIXML_COMPACT
	bool "Enable compact mode"
	help
	  Activates a different internal representation of document
	  storage that is much more memory efficient for documents with
	  a lot of markup (i.e.  nodes and attributes), but is slightly
	  slower to parse and access.

	  http://pugixml.org/docs/manual.html#dom.memory.compact

config BR2_PACKAGE_PUGIXML_HEADER_ONLY
	bool "Enable header-only version"
	help
	  All source code for pugixml will be included in every
	  translation unit that includes pugixml.hpp. This is how most
	  of Boost and STL libraries work.

	  http://pugixml.org/docs/manual.html#install.building.header

endif

comment "pugixml needs a toolchain w/ C++"
	depends on !BR2_INSTALL_LIBSTDCPP
