config BR2_PACKAGE_LUVI
	bool "luvi"
	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
	depends on BR2_USE_MMU # libuv
	depends on !BR2_STATIC_LIBS # libuv
	depends on BR2_PACKAGE_LUAJIT
	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv
	select BR2_PACKAGE_LIBUV
	select BR2_PACKAGE_LUV
	select BR2_PACKAGE_LIBOPENSSL_ENABLE_DES if BR2_PACKAGE_LIBOPENSSL
	select BR2_PACKAGE_LIBOPENSSL_ENGINES if BR2_PACKAGE_LIBOPENSSL
	help
	  A project in-between luv and luvit. The goal of this is to
	  make building luvit and derivatives much easier.

	  luvi extends LuaJIT with asynchronous I/O and several optional
	  modules to run Lua applications and build self-contained
	  binaries on systems that don't have a compiler.

	  The luvi core can be extended with several Lua modules by
	  adding its bundled Lua binding libraries.
	  To get the Lua module...
	    * 'rex' select PCRE2 (BR2_PACKAGE_PCRE2)
	    * 'ssl' select OpenSSL (BR2_PACKAGE_OPENSSL)
	    * 'zlib' select zlib (BR2_PACKAGE_ZLIB)

	  https://github.com/luvit/luvi

comment "luvi needs a toolchain w/ NPTL, dynamic library, gcc >= 4.9"
	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS \
		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
	depends on BR2_USE_MMU
	depends on BR2_TOOLCHAIN_HAS_SYNC_4

comment "luvi needs LuaJIT"
	depends on !BR2_PACKAGE_LUAJIT
