# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1190129490 -3600
# Node ID c1f5d027adf7d8d4ae9520143f41d29e493e364f
# Parent 8bf8b3d201a9a9922c17115ddeffe2b3445e0cbc
linux/x86: match native behavior of 'make install'
Placement of the final image and handling of the install process
should match native (whether to implicitly create an initrd is just
one example). This includes there not being a need for a special
boot-xen subdirectory and more unification of arch/*/Makefile pieces.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
arch/i386/Makefile | 15 ++++++---------
arch/i386/boot/Makefile | 10 +++++++++-
arch/x86_64/Makefile | 14 ++++++--------
arch/x86_64/boot/Makefile | 10 +++++++++-
4 files changed, 30 insertions(+), 19 deletions(-)
diff -r 8bf8b3d201a9 -r c1f5d027adf7 arch/i386/Makefile
--- a/arch/i386/Makefile Tue Sep 18 16:21:17 2007 +0100
+++ b/arch/i386/Makefile Tue Sep 18 16:31:30 2007 +0100
@@ -111,20 +111,18 @@ AFLAGS += $(mflags-y)
boot := arch/i386/boot
-PHONY += zImage bzImage compressed zlilo bzlilo \
+PHONY += zImage bzImage vmlinuz compressed zlilo bzlilo \
zdisk bzdisk fdimage fdimage144 fdimage288 isoimage install
ifdef CONFIG_XEN
CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS)
-boot := arch/i386/boot-xen
-.PHONY: vmlinuz
all: vmlinuz
+# KBUILD_IMAGE specifies the target image being built
+KBUILD_IMAGE := $(boot)/vmlinuz
+
vmlinuz: vmlinux
- $(Q)$(MAKE) $(build)=$(boot) $@
-
-install:
- $(Q)$(MAKE) $(build)=$(boot) $@
+ $(Q)$(MAKE) $(build)=$(boot) $(KBUILD_IMAGE)
else
all: bzImage
@@ -145,10 +143,10 @@ zdisk bzdisk: vmlinux
fdimage fdimage144 fdimage288 isoimage: vmlinux
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(KBUILD_IMAGE) $@
+endif
install:
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(KBUILD_IMAGE) install
-endif
archclean:
$(Q)$(MAKE) $(clean)=arch/i386/boot
@@ -167,4 +165,3 @@ CLEAN_FILES += arch/$(ARCH)/boot/fdimage
CLEAN_FILES += arch/$(ARCH)/boot/fdimage \
arch/$(ARCH)/boot/image.iso \
arch/$(ARCH)/boot/mtools.conf
-CLEAN_FILES += vmlinuz vmlinux-stripped
diff -r 8bf8b3d201a9 -r c1f5d027adf7 arch/i386/boot/Makefile
--- a/arch/i386/boot/Makefile Tue Sep 18 16:21:17 2007 +0100
+++ b/arch/i386/boot/Makefile Tue Sep 18 16:31:30 2007 +0100
@@ -26,7 +26,7 @@ SVGA_MODE := -DSVGA_MODE=NORMAL_VGA
#RAMDISK := -DRAMDISK=512
targets := vmlinux.bin bootsect bootsect.o \
- setup setup.o zImage bzImage
+ setup setup.o zImage bzImage vmlinuz vmlinux-stripped
subdir- := compressed
hostprogs-y := tools/build
@@ -133,5 +133,13 @@ zlilo: $(BOOTIMAGE)
cp System.map $(INSTALL_PATH)/
if [ -x /sbin/lilo ]; then /sbin/lilo; else /etc/lilo/install; fi
+$(obj)/vmlinuz: $(obj)/vmlinux-stripped FORCE
+ $(call if_changed,gzip)
+ @echo 'Kernel: $@ is ready' ' (#'`cat .version`')'
+
+$(obj)/vmlinux-stripped: OBJCOPYFLAGS := -g --strip-unneeded
+$(obj)/vmlinux-stripped: vmlinux FORCE
+ $(call if_changed,objcopy)
+
install:
sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(BOOTIMAGE)
System.map "$(INSTALL_PATH)"
diff -r 8bf8b3d201a9 -r c1f5d027adf7 arch/x86_64/Makefile
--- a/arch/x86_64/Makefile Tue Sep 18 16:21:17 2007 +0100
+++ b/arch/x86_64/Makefile Tue Sep 18 16:31:30 2007 +0100
@@ -75,22 +75,20 @@ drivers-$(CONFIG_OPROFILE) += arch/x86_
boot := arch/x86_64/boot
-PHONY += bzImage bzlilo install archmrproper \
+PHONY += bzImage bzlilo vmlinuz install archmrproper \
fdimage fdimage144 fdimage288 isoimage archclean
ifdef CONFIG_XEN
CPPFLAGS := -Iinclude$(if $(KBUILD_SRC),2)/asm/mach-xen $(CPPFLAGS)
LDFLAGS_vmlinux := -e startup_64
-boot := arch/i386/boot-xen
-.PHONY: vmlinuz
#Default target when executing "make"
all: vmlinuz
+BOOTIMAGE := $(boot)/vmlinuz
+KBUILD_IMAGE := $(BOOTIMAGE)
+
vmlinuz: vmlinux
- $(Q)$(MAKE) $(build)=$(boot) $@
-
-install:
- $(Q)$(MAKE) $(build)=$(boot) $@
+ $(Q)$(MAKE) $(build)=$(boot) $(BOOTIMAGE)
else
#Default target when executing "make"
all: bzImage
@@ -109,10 +107,10 @@ bzdisk: vmlinux
fdimage fdimage144 fdimage288 isoimage: vmlinux
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(BOOTIMAGE) $@
+endif
install:
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(BOOTIMAGE) $@
-endif
archclean:
$(Q)$(MAKE) $(clean)=$(boot)
diff -r 8bf8b3d201a9 -r c1f5d027adf7 arch/x86_64/boot/Makefile
--- a/arch/x86_64/boot/Makefile Tue Sep 18 16:21:17 2007 +0100
+++ b/arch/x86_64/boot/Makefile Tue Sep 18 16:31:30 2007 +0100
@@ -26,7 +26,7 @@ SVGA_MODE := -DSVGA_MODE=NORMAL_VGA
#RAMDISK := -DRAMDISK=512
targets := vmlinux.bin bootsect bootsect.o \
- setup setup.o bzImage mtools.conf
+ setup setup.o bzImage mtools.conf vmlinuz vmlinux-stripped
EXTRA_CFLAGS := -m32
@@ -131,5 +131,13 @@ zlilo: $(BOOTIMAGE)
cp System.map $(INSTALL_PATH)/
if [ -x /sbin/lilo ]; then /sbin/lilo; else /etc/lilo/install; fi
+$(obj)/vmlinuz: $(obj)/vmlinux-stripped FORCE
+ $(call if_changed,gzip)
+ @echo 'Kernel: $@ is ready' ' (#'`cat .version`')'
+
+$(obj)/vmlinux-stripped: OBJCOPYFLAGS := -g --strip-unneeded
+$(obj)/vmlinux-stripped: vmlinux FORCE
+ $(call if_changed,objcopy)
+
install:
sh $(srctree)/$(src)/install.sh $(KERNELRELEASE) $(BOOTIMAGE)
System.map "$(INSTALL_PATH)"
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|