PPC uImage build not reporting correctly

Sam Ravnborg sam at ravnborg.org
Sat May 7 07:45:13 EST 2005


> Sam,
>
> Tom pointed me at you to look at a makefile issue with
> arch/ppc/boot/images/Makefile.  When I do the following:
>
> $ make uImage
>    CHK     include/linux/version.h
> make[1]: `arch/ppc/kernel/asm-offsets.s' is up to date.
>    CHK     include/linux/compile.h
>    CHK     usr/initramfs_list
>    UIMAGE  arch/ppc/boot/images/uImage
> Image Name:   Linux-2.6.12-rc3
> Created:      Fri May  6 10:19:28 2005
> Image Type:   PowerPC Linux Kernel Image (gzip compressed)
> Data Size:    993322 Bytes = 970.04 kB = 0.95 MB
> Load Address: 0x00000000
> Entry Point:  0x00000000
>    Image: arch/ppc/boot/images/uImage not made
>
> The issue is that the file arch/ppc/boot/images/uImage does exit (the
> 'not made' is not correct).
>
> $(obj)/uImage: $(obj)/vmlinux.gz
>          $(Q)rm -f $@
>          $(call if_changed,uimage)
>          @echo '  Image: $@' $(if $(wildcard $@),'is ready','not made')
>
> It seems the $(wildcard $@) expands at the start of the rule.  Any
> ideas?

It probarly uses the build-in cache in make - and I see no easy way to
tell make not to use the cache in this case.
Could you try to replace "$(wildcard $@)" with something like:
$(shell if -f $@ echo Y; fi)

Untested - I'm not on a Linux box right now.

   Sam





More information about the Linuxppc-embedded mailing list