#
# Automatically generated file; DO NOT EDIT.
# Swupdate Configuration
#
CONFIG_HAVE_DOT_CONFIG=y

#
# Swupdate Settings
#

#
# General Configuration
#
CONFIG_SCRIPTS=y
# CONFIG_HW_COMPATIBILITY is not set
CONFIG_SW_VERSIONS_FILE="/etc/sw-versions"
# CONFIG_FEATURE_SYSLOG is not set

#
# Build Options
#
CONFIG_CROSS_COMPILE=""
CONFIG_SYSROOT=""
CONFIG_EXTRA_CFLAGS=""
CONFIG_EXTRA_LDFLAGS=""
CONFIG_EXTRA_LDLIBS=""

#
# Debugging Options
#
# CONFIG_DEBUG is not set
# CONFIG_WERROR is not set
# CONFIG_NOCLEANUP is not set

#
# Bootloader
#
# CONFIG_BOOTLOADER is not set
CONFIG_BOOTLOADER_NONE=y
# CONFIG_BOOTLOADER_GRUB is not set

#
# Suricatta
#
# CONFIG_SURICATTA is not set
CONFIG_SURICATTA_SERVER_NONE=y

#
# Server
#
CONFIG_WEBSERVER=y

#
# Webserver Features
#
CONFIG_MONGOOSE=y

#
# Mongoose Feature
#
CONFIG_MONGOOSEIPV6=y

#
# Archival Features
#

#
# Parser Features
#
CONFIG_LIBCONFIG=y
CONFIG_PARSERROOT=""
# CONFIG_SETSWDESCRIPTION is not set

#
# Image Handlers
#
CONFIG_RAW=y
# CONFIG_SHELLSCRIPTHANDLER is not set
# CONFIG_BOOTLOADERHANDLER is not set
