config BR2_PACKAGE_LIBMDBX
	bool "libmdbx"
	depends on BR2_USE_MMU
	depends on BR2_TOOLCHAIN_HAS_SYNC_4
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
	help
	  One of the fastest compact key-value ACID database
	  without WAL. libmdbx has a specific set of properties
	  and capabilities, focused on creating unique lightweight
	  solutions.

	  libmdbx surpasses the legendary LMDB in terms of
	  reliability, features and performance.

	  https://github.com/erthink/libmdbx

if BR2_PACKAGE_LIBMDBX

config BR2_PACKAGE_LIBMDBX_TOOLS
	bool "install tools"
	help
	  Install libmdbx tools for checking, dump, restore
	  and show statistics of databases.

config BR2_PACKAGE_LIBMDBX_CXX
	bool "C++ API"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_64735
	help
	  Enable modern C++11/14/17/20 API for libmdbx.

comment "libmdbx C++ support needs a toolchain w/ C++11, gcc >= 4.8 w/o bug#64735"
	depends on !BR2_INSTALL_LIBSTDCPP || \
		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
		BR2_TOOLCHAIN_HAS_GCC_BUG_64735

endif

comment "libmdbx needs MMU, a toolchain w/ threads, gcc >= 4.4 w/ 4-byte atomics"
	depends on BR2_USE_MMU
	depends on !BR2_TOOLCHAIN_HAS_THREADS || \
		!BR2_TOOLCHAIN_HAS_SYNC_4 || \
		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
