diff --git a/devicemodel/Makefile b/devicemodel/Makefile index 9aa229e58..f955ab292 100644 --- a/devicemodel/Makefile +++ b/devicemodel/Makefile @@ -136,6 +136,7 @@ SRCS += arch/x86/pm.c OBJS := $(patsubst %.c,$(DM_OBJDIR)/%.o,$(SRCS)) HEADERS := $(shell find $(BASEDIR) -name '*.h') +HEADERS += $(BASEDIR)/include/vmcfg_config.h DISTCLEAN_OBJS := $(shell find $(BASEDIR) -name '*.o') PROGRAM := acrn-dm @@ -145,9 +146,12 @@ SAMPLES_MRB := $(wildcard samples/apl-mrb/*) BIOS_BIN := $(wildcard bios/*) -all: include/version.h $(PROGRAM) +all: include/version.h vmcfg_header $(PROGRAM) @echo -n "" +vmcfg_header: + make -C $(BASEDIR)/vmcfg $(BASEDIR)/include/vmcfg_config.h BASEDIR=$(BASEDIR) + $(PROGRAM): $(OBJS) $(CC) -o $(DM_OBJDIR)/$@ $(CFLAGS) $(LDFLAGS) $^ $(LIBS) diff --git a/devicemodel/vmcfg/Kconfig b/devicemodel/vmcfg/Kconfig new file mode 100644 index 000000000..c18dbce14 --- /dev/null +++ b/devicemodel/vmcfg/Kconfig @@ -0,0 +1,5 @@ +mainmenu "VM Configuration" + +config VM_CFG + bool "Enable build-in VM configuration" + default n diff --git a/devicemodel/vmcfg/Makefile b/devicemodel/vmcfg/Makefile new file mode 100644 index 000000000..097f9fa69 --- /dev/null +++ b/devicemodel/vmcfg/Makefile @@ -0,0 +1,3 @@ +BASEDIR ?= .. + +include $(BASEDIR)/vmcfg/scripts/kconfig/kconfig.mk diff --git a/devicemodel/vmcfg/scripts/kconfig/kconfig.mk b/devicemodel/vmcfg/scripts/kconfig/kconfig.mk new file mode 100644 index 000000000..9a3f6b789 --- /dev/null +++ b/devicemodel/vmcfg/scripts/kconfig/kconfig.mk @@ -0,0 +1,20 @@ +$(eval $(call check_dep_exec,menuconfig,MENUCONFIG_DEPS)) + +export KCONFIG_CONFIG := $(BASEDIR)/vmcfg/.config + +.PHONY: oldconfig +oldconfig: + @python3 $(BASEDIR)/../scripts/kconfig/silentoldconfig.py Kconfig $(KCONFIG_CONFIG) + +%_defconfig: + @python3 $(BASEDIR)/../scripts/kconfig/defconfig.py Kconfig $(BASEDIR)/vmcfg/config/$@ $(KCONFIG_CONFIG) + +$(KCONFIG_CONFIG): oldconfig + +$(BASEDIR)/include/vmcfg_config.h: $(KCONFIG_CONFIG) + echo @mkdir -p $(dir $@) + @mkdir -p $(dir $@) + @python3 $(BASEDIR)/../scripts/kconfig/generate_header.py Kconfig $< $@ + +menuconfig: $(MENUCONFIG_DEPS) $(HV_OBJDIR)/$(HV_CONFIG) + @python3 $(shell which menuconfig) Kconfig