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

#
# Swupdate Settings
#

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

#
# Socket Paths
#
CONFIG_SOCKET_CTRL_PATH="/tmp/sockinstctrl"
CONFIG_SOCKET_PROGRESS_PATH="/tmp/swupdateprog"
CONFIG_SOCKET_REMOTE_HANDLER_DIRECTORY="/tmp/"

#
# MTD support needs libmtd
#

#
# Lua support needs a Lua interpreter
#
# 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

#
# U-Boot support needs libubootenv, libz
#
CONFIG_BOOTLOADER_NONE=y
# CONFIG_BOOTLOADER_GRUB is not set

#
# Image downloading support needs libcurl
#

#
# Hash verification needs libssl
#

#
# Image verification (signed images) needs libssl
#

#
# Image encryption needs libssl
#
# CONFIG_SURICATTA is not set
CONFIG_WEBSERVER=y

#
# Webserver Features
#
CONFIG_MONGOOSE=y

#
# Mongoose Feature
#
CONFIG_MONGOOSEIPV6=y

#
# SSL support needs libcrypto, libssl
#

#
# Archival Features
#

#
# gunzip support needs libz
#

#
# Parser Features
#
CONFIG_LIBCONFIG=y
CONFIG_PARSERROOT=""

#
# JSON config parser support needs json-c
#
# CONFIG_SETSWDESCRIPTION is not set

#
# Image Handlers
#

#
# ubivol support needs libubi
#
CONFIG_RAW=y
# CONFIG_SHELLSCRIPTHANDLER is not set

#
# archive support needs libarchive
#

#
# remote handler needs zeromq
#

#
# SWU forwarder requires libcurl
#
# CONFIG_BOOTLOADERHANDLER is not set
