[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mkvmlinuz patches broken



On Fri, May 25, 2007 at 06:32:00PM +0200, Sven Luther wrote:
> This is a problem only in your new kernel-package less build
> infrastructure, or something related to newer upstreams, or something
> which was present previously and not noted ? 

The problem is in upstream. All targets in arch/powerpc/boot depends
against vmlinux which produces this modpost call.

> I guess this is the modpost line which is problematic, right ? 

Yep.

> Bastian, if i understand this right, it worked previously, because the
> mkvmlinuz_support_install call was done *AFTER* all the installation
> happened, while you do it earlier ? 

It did not show up as problem as kpkg always did make modules before
make modules_install, which trashes a lot of io time.

The attached patch seems to fix it by adding a new boot target class
which don't depends against vmlinux.

Bastian

-- 
First study the enemy.  Seek weakness.
		-- Romulan Commander, "Balance of Terror", stardate 1709.2
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index 6238b58..26003cf 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -150,14 +150,19 @@ all: $(KBUILD_IMAGE)
 CPPFLAGS_vmlinux.lds	:= -Upowerpc
 
 BOOT_TARGETS = zImage zImage.initrd zImage.dts zImage.dts_initrd uImage
+BOOT_SPECIAL_TARGETS = mkvmlinuz_support_install
 
 PHONY += $(BOOT_TARGETS)
+PHONY += $(BOOT_SPECIAL_TARGETS)
 
 boot := arch/$(ARCH)/boot
 
 $(BOOT_TARGETS): vmlinux
 	$(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $(patsubst %,$(boot)/%,$@)
 
+$(BOOT_SPECIAL_TARGETS):
+	$(Q)$(MAKE) ARCH=ppc64 $(build)=$(boot) $@
+
 define archhelp
   @echo '* zImage          - Compressed kernel image (arch/$(ARCH)/boot/zImage.*)'
   @echo '  install         - Install kernel using'
diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
index 8378898..b7d8e60 100644
--- a/arch/powerpc/boot/Makefile
+++ b/arch/powerpc/boot/Makefile
@@ -235,3 +235,10 @@ clean-kernel := vmlinux.strip vmlinux.bin
 clean-kernel += $(addsuffix .gz,$(clean-kernel))
 # If not absolute clean-files are relative to $(obj).
 clean-files += $(addprefix $(objtree)/, $(clean-kernel))
+
+quiet_cmd_mkvmlinuz = INSTALL mkvmlinuz support files
+	cmd_mkvmlinuz = cp -f $(filter-out FORCE,$^) $(INSTALL_MKVMLINUZ)
+
+mkvmlinuz_support_install: $(wrapperbits)
+	@mkdir -p $(INSTALL_MKVMLINUZ)
+	$(call cmd,mkvmlinuz)

Attachment: signature.asc
Description: Digital signature


Reply to: