crash_debug ?= n
frame_pointer ?= n
lto ?= n
-kexec ?= y
-include $(BASEDIR)/include/config/auto.conf
perfc := y
endif
+ifneq ($(origin kexec),undefined)
+$(error "You must use 'make menuconfig' to enable/disable kexec now.")
+endif
+
# Set ARCH/SUBARCH appropriately.
override TARGET_SUBARCH := $(XEN_TARGET_ARCH)
override TARGET_ARCH := $(shell echo $(XEN_TARGET_ARCH) | \
CFLAGS-y += -DMAX_PHYS_IRQS=$(max_phys_irqs)
endif
-CONFIG_KEXEC-$(HAS_KEXEC) := $(kexec)
-CONFIG_KEXEC := $(CONFIG_KEXEC-y)
-
-CFLAGS-$(CONFIG_KEXEC) += -DCONFIG_KEXEC
-
AFLAGS-y += -D__ASSEMBLY__ -include $(BASEDIR)/include/xen/config.h
# Clang's built-in assembler can't handle .code16/.code32/.code64 yet
config HAS_PDX
bool
+# Select HAS_KEXEC if kexec is supported
+config HAS_KEXEC
+ bool
+
# Select HAS_GDBSX if GDBSX is supported
config HAS_GDBSX
bool
config HAS_IOPORTS
bool
+# Enable/Disable kexec support
+config KEXEC
+ bool "kexec support"
+ default y
+ depends on HAS_KEXEC
+ ---help---
+ Allows a running Xen hypervisor to be replaced with another OS
+ without rebooting. This is primarily used to execute a crash
+ environment to collect information on a Xen hypervisor or dom0 crash.
+
+ If unsure, say Y.
+
endmenu