mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Restructure the makefiles used to drive builds of linux 2.6 kernels.
A common file eliminates duplication across makefiles. Signed-off-by: Michal Ostrowski <mostrows@watson.ibm.com>
This commit is contained in:
1 parent
df150a9cb5
commit
ee256fbc40
3 files changed
+3
-101
No files matched your search
@@ -4,7 +4,7 @@ OS = linux
|
||||
LINUX_SERIES = 2.6
|
||||
LINUX_VER = 2.6.12
|
||||
|
||||
EXTRAVERSION = xen
|
||||
EXTRAVERSION ?= xen
|
||||
|
||||
LINUX_DIR = $(OS)-$(LINUX_VER)-$(EXTRAVERSION)
|
||||
|
||||
|
||||
@@ -1,51 +1,2 @@
|
||||
|
||||
OS = linux
|
||||
|
||||
LINUX_SERIES = 2.6
|
||||
LINUX_VER = 2.6.12
|
||||
|
||||
EXTRAVERSION = xen0
|
||||
|
||||
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) 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_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 $(LINUX_DIR)/arch/xen/configs/$(EXTRAVERSION)_defconfig_$(XEN_TARGET_ARCH) \
|
||||
$(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
|
||||
|
||||
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)
|
||||
include buildconfigs/mk.linux-2.6-xen
|
||||
@@ -1,51 +1,2 @@
|
||||
|
||||
OS = linux
|
||||
|
||||
LINUX_SERIES = 2.6
|
||||
LINUX_VER = 2.6.12
|
||||
|
||||
EXTRAVERSION = xenU
|
||||
|
||||
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) 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_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 $(LINUX_DIR)/arch/xen/configs/$(EXTRAVERSION)_defconfig_$(XEN_TARGET_ARCH) \
|
||||
$(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
|
||||
|
||||
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)
|
||||
include buildconfigs/mk.linux-2.6-xen
|
||||