]> xenbits.xensource.com Git - people/julieng/xen-unstable.git/commitdiff
build: use generated Kconfig options for Xen
authorDoug Goldstein <cardoe@cardoe.com>
Tue, 15 Dec 2015 13:14:00 +0000 (14:14 +0100)
committerJan Beulich <jbeulich@suse.com>
Wed, 16 Dec 2015 16:40:05 +0000 (17:40 +0100)
Switches the build system to rely on the options and flags generated by
Kconfig to control what gets built and how. Follow on patches will
convert items to be prefixed with CONFIG_. Additionally remove a #define
that resulted in a redefined variable when building for arm.

Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
xen/Makefile
xen/Rules.mk
xen/drivers/passthrough/arm/smmu.c
xen/include/xen/config.h

index fd1665024f1b144ad767fe22ab08682b5a86cd36..9023863f315e4378beb01b0f1fb39251a77936f2 100644 (file)
@@ -33,6 +33,8 @@ default: build
 .PHONY: dist
 dist: install
 
+build install:: include/config/auto.conf
+
 .PHONY: build install uninstall clean distclean cscope TAGS tags MAP gtags
 build install uninstall debug clean distclean cscope TAGS tags MAP gtags::
 ifneq ($(XEN_TARGET_ARCH),x86_32)
@@ -235,9 +237,14 @@ kconfig := silentoldconfig oldconfig config menuconfig defconfig \
 $(kconfig):
        $(MAKE) -f $(BASEDIR)/tools/kconfig/Makefile.kconfig ARCH=$(XEN_TARGET_ARCH) $@
 
-include/config/%.conf: include/config/auto.conf.cmd
+include/config/%.conf: include/config/auto.conf.cmd $(KCONFIG_CONFIG)
        $(Q)$(MAKE) -f $(BASEDIR)/tools/kconfig/Makefile.kconfig ARCH=$(XEN_TARGET_ARCH) silentoldconfig
 
 # Allow people to just run `make` as before and not force them to configure
 $(KCONFIG_CONFIG):
        $(Q)$(MAKE) -f $(BASEDIR)/tools/kconfig/Makefile.kconfig ARCH=$(XEN_TARGET_ARCH) defconfig
+
+# Break the dependency chain for the first run
+include/config/auto.conf.cmd: ;
+
+-include $(BASEDIR)/include/config/auto.conf.cmd
index 02db11032e1eba4a857363493973562989c1541f..d696206fd970e26726e313fef4382813eb9e0550 100644 (file)
@@ -12,6 +12,8 @@ frame_pointer ?= n
 lto           ?= n
 kexec         ?= y
 
+-include $(BASEDIR)/include/config/auto.conf
+
 include $(XEN_ROOT)/Config.mk
 
 # Hardcoded configuration implications and dependencies.
index bb08827b958c65f81ffd33785df0f5b8a921834e..62da0872de78ac887b91d9d4c9c636316adc3398 100644 (file)
@@ -196,10 +196,6 @@ static inline int pci_for_each_dma_alias(struct pci_dev *pdev,
 #define PHYS_MASK_SHIFT                PADDR_BITS
 typedef paddr_t phys_addr_t;
 
-#ifdef CONFIG_ARM_64
-# define CONFIG_64BIT
-#endif
-
 #define VA_BITS                0       /* Only used for configuring stage-1 input size */
 
 /* The macro ACCESS_ONCE start to be replaced in Linux in favor of
index 9b4b6ef2a38d9d8b476c15b6d9793edf1eed929b..75955999a6c9d86fae17322e1c08b8e5cf53b0ef 100644 (file)
@@ -7,6 +7,8 @@
 #ifndef __XEN_CONFIG_H__
 #define __XEN_CONFIG_H__
 
+#include <generated/autoconf.h>
+
 #ifndef __ASSEMBLY__
 #include <xen/compiler.h>
 #endif