config BR2_PACKAGE_QT5WEBKIT
	bool "qt5webkit"
	depends on !BR2_STATIC_LIBS
	depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE
	depends on BR2_INSTALL_LIBSTDCPP # leveldb
	depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # icu
	depends on BR2_TOOLCHAIN_HAS_THREADS # leveldb
	depends on !BR2_BINFMT_FLAT # icu
	# assumes a FPU is available on MIPS
	depends on !BR2_MIPS_SOFT_FLOAT
	select BR2_PACKAGE_LEVELDB
	select BR2_PACKAGE_QT5BASE_ICU
	select BR2_PACKAGE_QT5BASE_GUI
	select BR2_PACKAGE_SQLITE
	select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_QT5BASE_XCB
	select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_QT5BASE_XCB
	help
	  Qt is a cross-platform application and UI framework for
	  developers using C++.

	  The Qt WebKit module provides the WebView API, which
	  allows QML applications to render regions of dynamic
	  web content.

	  This package has been removed from the official release
	  packages since Qt5.6.0, but it is still available for users
	  to build it from source. This is useful for platforms
	  without GPU since the successor (QtWebEngine) requires
	  OpenGL support.

	  http://doc.qt.io/archives/qt-5.5/qtwebkit-index.html

comment "qt5webkit needs a toolchain w/ dynamic library, gcc >= 4.9, host gcc >= 4.9"
	depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
		!BR2_HOST_GCC_AT_LEAST_4_9
	depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE
	depends on !BR2_BINFMT_FLAT
	depends on !BR2_MIPS_SOFT_FLOAT
