Fix out of source tree build bugs:
- add (srctree)/include/asm-xen to include list
- fix include2/asm link to reference asm-XENARCH
- fix install target for public headeres
This fix enables the complication of several configurations from the
same (read-only) source tree.
Signed-off-by: Shahar Frank <shaharf@qumranet.com>
Index: arch/xen/Makefile
==================================================================---
arch/xen/Makefile (revision 112)
+++ arch/xen/Makefile (working copy)
@@ -16,12 +16,22 @@
# pick up headers from include/asm-xen/asm in preference over
include/asm
NOSTDINC_FLAGS = -nostdinc -iwithprefix include/asm-xen
-Iinclude/asm-xen -iwithprefix include
+ifneq ($(KBUILD_SRC),)
+NOSTDINC_FLAGS += -I$(srctree)/include/asm-xen
+endif
# make uname return the processor arch
UTS_MACHINE := $(XENARCH)
core-y += arch/xen/kernel/
+.PHONY: include2/asm
+include2/asm:
+ifneq ($(KBUILD_SRC),)
+ @echo '' SYMLINK ../include/asm-$(XENARCH) ->
include2/asm''
+ $(Q)ln -fsn ../include/asm-$(XENARCH) include2/asm
+endif
+
include/.asm-ignore: include/asm
@rm -f include/.asm-ignore
@mv include/asm include/.asm-ignore
@@ -40,7 +50,7 @@
@ln -fsn $(srctree)/arch/xen/$(XENARCH) $@
prepare: include/.asm-ignore include/asm-xen/asm \
- arch/xen/arch ;
+ arch/xen/arch include2/asm
all: vmlinuz
@@ -58,7 +68,7 @@
install -m0664 .config
$(INSTALL_PATH)/boot/config-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
install -m0664 System.map
$(INSTALL_PATH)/boot/System.map-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
mkdir -p $(INSTALL_PATH)/usr/include/xen/linux
- install -m0644 include/asm-xen/linux-public/*.h
$(INSTALL_PATH)/usr/include/xen/linux
+ install -m0644 $(srctree)/include/asm-xen/linux-public/*.h
$(INSTALL_PATH)/usr/include/xen/linux
archclean:
@if [ -e arch/xen/arch ]; then $(MAKE) $(clean)=arch/xen/arch;
fi;
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel