comment "imx-gpu-viv needs a glibc toolchain with armhf enabled"
	depends on BR2_arm
	depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_ARM_EABIHF

config BR2_PACKAGE_IMX_GPU_VIV
	bool "imx-gpu-viv"
	select BR2_PACKAGE_HAS_LIBEGL
	select BR2_PACKAGE_HAS_LIBGLES
	select BR2_PACKAGE_HAS_LIBOPENVG
	# Pre-built binaries only available for ARM EABIhf
	depends on BR2_ARM_EABIHF
	# Library binaries are linked against libc.so.6
	depends on BR2_TOOLCHAIN_USES_GLIBC
	help
	  Userspace libraries for Vivante GPU on i.MX6 platforms

	  It contains libraries and headers for GLES, OpenCL, and
	  OpenVG. It also contains a DRI plugin for X11. It also
	  contains a plugin for DirectFB-1.4.0, but that doesn't work
	  together with buildroot's DirectFB version.

	  This library is provided by Freescale as-is and doesn't have
	  an upstream.

if BR2_PACKAGE_IMX_GPU_VIV

choice
	prompt "Output option"
	help
	  There are two versions of this library: one for
	  direct framebuffer access, one for X11 rendering.
	  Choose here which version to install.

config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11
	bool "X11"
	depends on BR2_PACKAGE_XORG7
	select BR2_PACKAGE_XLIB_LIBXDAMAGE
	select BR2_PACKAGE_XLIB_LIBXEXT
	select BR2_PACKAGE_XLIB_LIBXFIXES

comment "X11 backend needs Xorg package"
	depends on !BR2_PACKAGE_XORG7

config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_FB
	bool "Framebuffer"

endchoice

config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT
	string
	default "x11" if BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11
	default "fb" if BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_FB

config BR2_PACKAGE_PROVIDES_LIBEGL
	default "imx-gpu-viv"

config BR2_PACKAGE_PROVIDES_LIBGLES
	default "imx-gpu-viv"

config BR2_PACKAGE_PROVIDES_LIBOPENVG
	default "imx-gpu-viv"

config BR2_PACKAGE_IMX_GPU_VIV_APITRACE
	bool "install apitrace tools"
	select BR2_PACKAGE_IMX_GPU_VIV_G2D
	select BR2_PACKAGE_LIBPNG
	help
	  Copy the apitrace tool to the target. Apitrace consists
	  of a set of tools to trace, replay and/or inspect OpenGL,
	  OpenGL ES APIs calls

	  http://apitrace.github.io/

config BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES
	bool "install examples"
	help
	  Copy the Vivante examples to the target.

	  Warning: examples take approximately 150 MB of disk space.

config BR2_PACKAGE_IMX_GPU_VIV_G2D
	bool "install G2D libraries"
	help
	  Copy the GPU2D libraries to the target.

config BR2_PACKAGE_IMX_GPU_VIV_GMEM_INFO
	bool "install gmem_info tool"
	help
	  Copy the gmem_info tool to the target which provides
	  information about GPU memory consumption.

endif
