Files
xen/buildconfigs/mk.linux-2.6-xen
T
cl349@firebug.cl.cam.ac.uk 471759d839 Update to Linux 2.6.16-rc4.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>


--HG--
rename : patches/linux-2.6.16-rc3/i386-mach-io-check-nmi.patch => patches/linux-2.6.16-rc4/i386-mach-io-check-nmi.patch
rename : patches/linux-2.6.16-rc3/net-csum.patch => patches/linux-2.6.16-rc4/net-csum.patch
rename : patches/linux-2.6.16-rc3/pmd-shared.patch => patches/linux-2.6.16-rc4/pmd-shared.patch
rename : patches/linux-2.6.16-rc3/smp-alts.patch => patches/linux-2.6.16-rc4/smp-alts.patch
2006-02-21 11:19:13 +00:00

71 lines
2.6 KiB
Plaintext

OS = linux
LINUX_SERIES = 2.6
LINUX_VER = 2.6.16-rc4
LINUX_SRCS = linux-2.6.15.tar.bz2 patch-2.6.16-rc4.bz2
LINUX_PDIR = linux-$(LINUX_VER)
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=$(LINUX_ARCH) modules ; \
$(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_MOD_PATH=$(DESTDIR) modules_install ; \
fi
$(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_PATH=$(DESTDIR) vmlinuz
$(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) INSTALL_PATH=$(DESTDIR) install
pristine-$(LINUX_PDIR)/.valid-srcs: $(LINUX_SRCS)
rm -rf tmp-pristine-$(LINUX_PDIR) $(@D)
mkdir -p tmp-pristine-$(LINUX_PDIR)
tar -C tmp-pristine-$(LINUX_PDIR) -jxf $<
-@rm tmp-pristine-$(LINUX_PDIR)/pax_global_header
mv tmp-pristine-$(LINUX_PDIR)/* $(@D)
@rm -rf tmp-pristine-$(LINUX_PDIR)
bzcat $(wordlist 2,$(words $^),$^) | patch -d $(@D) -p1
touch $(@D)/.hgskip
touch $@
pristine-linux-%.16-rc4/.valid-pristine: pristine-$(LINUX_PDIR)/.valid-srcs
touch $@ # update timestamp to avoid rebuild
$(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_SERIES)-xen-sparse ; \
LINUX_ARCH=$(LINUX_ARCH) ./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 buildconfigs/linux-defconfig_$(EXTRAVERSION)_$(XEN_TARGET_ARCH)$(XEN_SYSTYPE) \
$(LINUX_DIR)/.config
# See if we need to munge config to enable PAE
$(MAKE) CONFIG_FILE=$(LINUX_DIR)/.config -f buildconfigs/Rules.mk config-update-pae
# 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=$(LINUX_ARCH) oldconfig
prep: $(LINUX_DIR)/include/linux/autoconf.h
config: CONFIGMODE = menuconfig
config: $(LINUX_DIR)/include/linux/autoconf.h
$(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) $(CONFIGMODE)
clean::
$(MAKE) -C $(LINUX_DIR) ARCH=$(LINUX_ARCH) clean
delete:
rm -rf tmp-$(OS)-$(LINUX_VER) $(LINUX_DIR)