#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt.
#

mainmenu "Edge-Home-Orchestration Configuration"

config CONFIGFILE
	string "Configuration file name"
	help
		Configuration file name

config DOCKERFILE
	string "Dockerfile name"
	default "ubuntu"
	depends on CONTAINER
	help
		Configuration file name

choice
	prompt "H/W Platform architecture"
	default X86_64

config X86_64
	bool "x86_64"
	---help---
		"x86_64 architecture"

config ARM
	bool "arm"
	---help---
		"arm architecture (32 bit)"

config ARM64
	bool "arm64"
	---help---
		"arm64 architecture"
endchoice

choice
	prompt "S/W Platform"
	default CONTAINER

config CONTAINER
	bool "Container"
	---help---
		"Docker Container"

config NATIVE
	bool "Native"
	---help---
		"Native"

config ANDROID
	bool "Android"
	---help---
		"Android"

endchoice

comment "Configuring environment variables to run the Edge-Orchestration (make run)"

config MNEDC
	bool "MNEDC"

choice
	depends on MNEDC
	prompt "MNEDC"

config MNEDC_SERVER
	bool "MNEDC server"
	default n
	---help---
		"MNEDC Server"

config MNEDC_CLIENT
	bool "MNEDC client"
	default n
	---help---
		"MNEDC Client"

endchoice

config SECURE_MODE
	bool "Secure Mode is enable"
	default y
	---help---
		"Secure mode is enable"

config WEB_UI
	bool "Web UI is enable"
	default n
	---help---
		"Web UI is enable"

config CLOUD_SYNC
	bool "CloudSync"
	default y

config LOGLEVEL
	bool "LOGLEVEL"

choice
	depends on LOGLEVEL
	prompt "Info"

config LOGLEVEL_TRACE
	bool "LOGLEVEL Trace"
	default n
	---help---
		"LOGLEVEL Trace: Something very low level"

config LOGLEVEL_DEBUG
	bool "LOGLEVEL Debug"
	default n
	---help---
		"LOGLEVEL Debug: Useful debugging information"

config LOGLEVEL_INFO
	bool "LOGLEVEL Info"
	default n
	---help---
		"LOGLEVEL Info: Something noteworthy happened"

config LOGLEVEL_WARN
	bool "LOGLEVEL Warn"
	default n
	---help---
		"LOGLEVEL Warn: You should probably take a look at this"

config LOGLEVEL_ERROR
	bool "LOGLEVEL Error"
	default n
	---help---
		"LOGLEVEL Error: Something failed but I'm not quitting"

config LOGLEVEL_FATAL
	bool "LOGLEVEL Fatal"
	default n
	---help---
		"LOGLEVEL Fatal: os.Exit(1) after logging"

config LOGLEVEL_PANIC
	bool "LOGLEVEL Panic"
	default n
	---help---
		"LOGLEVEL Panic: panic() after logging"

endchoice

config LOGLEVEL_VALUE
	string
	default "Trace"		if LOGLEVEL_TRACE
	default "Debug"		if LOGLEVEL_DEBUG
	default "Info"		if LOGLEVEL_INFO
	default "Warn"		if LOGLEVEL_WARN
	default "Error"		if LOGLEVEL_ERROR
	default "Fatal"		if LOGLEVEL_FATAL
	default "Panic"		if LOGLEVEL_PANIC