# Copyright (c) 2018-2019 Jan Van Winkel <jan.van_winkel@dxplore.eu>
# Copyright (c) 2020 Teslabs Engineering S.L.
# SPDX-License-Identifier: Apache-2.0

menuconfig LVGL
	bool "LittlevGL GUI library"
	help
	  This option enables the LittlevGL GUI library.

if LVGL

module = LVGL
module-str = lvgl
source "subsys/logging/Kconfig.template.log_config"

config APP_LINK_WITH_LVGL
	bool "Link 'app' with LVGL"
	default y
	help
	  Add LVGL header files to the 'app' include path. It may be
	  disabled if the include paths for LVGL are causing aliasing
	  issues for 'app'.

rsource "Kconfig.graphical"
rsource "Kconfig.memory"
rsource "Kconfig.input"
rsource "Kconfig.feature"
rsource "Kconfig.image"
rsource "Kconfig.debug"
rsource "Kconfig.themes"
rsource "Kconfig.fonts"
rsource "Kconfig.text"
rsource "Kconfig.objects"

endif # LVGL
