Add a new Linux kernel config file -xen [NB: no 0 or U suffix] that builds a wide selection of modules, more in keeping with distro kernels.

It can be used as both a dom0 and domU domain kernel. It is not built by default as it takes ages, but should be in install tar balls and the demo CD.
Signed-off-by: ian.pratt@cl.cam.ac.uk
This commit is contained in:
iap10@freefall.cl.cam.ac.uk committed 2005-07-06 14:23:39 +00:00
1 parent b7d34829a3
commit a80eaa26fb
3 files changed
+2985

No files matched your search

+1
View File
@@ -51,6 +51,7 @@ extras/mini-os/mini-os\..*
install/.*
linux-.*-xen0/.*
linux-.*-xenU/.*
linux-.*-xen/.*
linux-.*\.patch
linux-2\.6\.10-xen-sparse/include/asm-xen/hypervisor\.h\.smh
linux-xen-sparse
+48
View File
@@ -0,0 +1,48 @@
OS = linux
LINUX_SERIES = 2.6
EXTRAVERSION = xen
LINUX_DIR = $(OS)-$(LINUX_VER)-$(EXTRAVERSION)
include buildconfigs/Rules.mk
.PHONY: build clean delete
# The real action starts here!
build: $(LINUX_DIR)/include/linux/autoconf.h
if grep "^CONFIG_MODULES=" $(LINUX_DIR)/.config ; then \
$(MAKE) -C $(LINUX_DIR) ARCH=xen modules ; \
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
fi
$(MAKE) -C $(LINUX_DIR) ARCH=xen INSTALL_PATH=$(DESTDIR) install
$(LINUX_DIR)/include/linux/autoconf.h: ref-$(OS)-$(LINUX_VER)/.valid-ref
rm -rf $(LINUX_DIR)
cp -al $(<D) $(LINUX_DIR)
# Apply arch-xen patches
( cd linux-$(LINUX_VER)-xen-sparse ; \
./mkbuildtree ../$(LINUX_DIR) )
# Re-use config from install dir if one exits else use default config
CONFIG_VERSION=$$(sed -ne 's/^EXTRAVERSION = //p' $(LINUX_DIR)/Makefile); \
[ -r $(DESTDIR)/boot/config-$(LINUX_VER)$$CONFIG_VERSION-$(EXTRAVERSION) ] && \
cp $(DESTDIR)/boot/config-$(LINUX_VER)$$CONFIG_VERSION-$(EXTRAVERSION) $(LINUX_DIR)/.config \
|| cp $(LINUX_DIR)/arch/xen/configs/$(EXTRAVERSION)_defconfig_$(XEN_TARGET_ARCH) \
$(LINUX_DIR)/.config
# Patch kernel Makefile to set EXTRAVERSION
( cd $(LINUX_DIR) ; \
sed -e 's/^EXTRAVERSION.*/&$$(XENGUEST)\nXENGUEST = -$(EXTRAVERSION)/' Makefile >Mk.tmp ; \
rm -f Makefile ; mv Mk.tmp Makefile )
$(MAKE) -C $(LINUX_DIR) ARCH=xen oldconfig
config: CONFIGMODE = menuconfig
config: $(LINUX_DIR)/include/linux/autoconf.h
$(MAKE) -C $(LINUX_DIR) ARCH=xen $(CONFIGMODE)
clean::
$(MAKE) -C $(LINUX_DIR) ARCH=xen clean
delete:
rm -rf tmp-$(OS)-$(LINUX_VER) $(LINUX_DIR)
File diff suppressed because it is too large. Load diff
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.