[PATCH] powerpc: Copy bootable images in the default install script

Grant Likely grant.likely at secretlab.ca
Sun Jan 4 00:50:27 EST 2009


Ben, Kumar & Josh; any comments on this?

Thanks,
g.

On Fri, Dec 19, 2008 at 5:57 PM, Grant Likely <grant.likely at secretlab.ca> wrote:
> From: Grant Likely <grant.likely at secretlab.ca>
>
> This patch makes the default install script (arch/powerpc/boot/install.sh)
> copy the bootable image files into the install directory.  Before this
> patch only the vmlinux image file was copied.
>
> This patch makes the default 'make install' command useful for embedded
> development when $(INSTALL_PATH) is set in the environment.
>
> As a side effect, this patch changes the calling convention of the
> install.sh script.  Instead of a single 5th parameter, the script is now
> passed a list of all the target images stored in the $(image-y) Makefile
> variable.  This should be backwards compatible with existing install scripts
> since it just adds additional arguments and does not change existing ones.
>
> CC: Kumar Gala <galak at kernel.crashing.org>
> CC: Josh Boyer <jwboyer at linux.vnet.ibm.com>
> CC: Paul Mackerras <paulus at samba.org>
> CC: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> CC: LinuxPPC Mailing List <linuxppc-dev at ozlabs.org>
>
> Signed-off-by: Grant Likely <grant.likely at secretlab.ca>
> ---
>
>  arch/powerpc/boot/Makefile   |    2 +-
>  arch/powerpc/boot/install.sh |   14 +++++++++++++-
>  2 files changed, 14 insertions(+), 2 deletions(-)
>
>
> diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
> index 3d3daa6..b6187ca 100644
> --- a/arch/powerpc/boot/Makefile
> +++ b/arch/powerpc/boot/Makefile
> @@ -355,7 +355,7 @@ $(obj)/zImage.initrd:       $(addprefix $(obj)/, $(initrd-y))
>        @rm -f $@; ln $< $@
>
>  install: $(CONFIGURE) $(addprefix $(obj)/, $(image-y))
> -       sh -x $(srctree)/$(src)/install.sh "$(KERNELRELEASE)" vmlinux System.map "$(INSTALL_PATH)" $<
> +       sh -x $(srctree)/$(src)/install.sh "$(KERNELRELEASE)" vmlinux System.map "$(INSTALL_PATH)" $^
>
>  # anything not in $(targets)
>  clean-files += $(image-) $(initrd-) cuImage.* dtbImage.* treeImage.* \
> diff --git a/arch/powerpc/boot/install.sh b/arch/powerpc/boot/install.sh
> index b002bfd..51b2387 100644
> --- a/arch/powerpc/boot/install.sh
> +++ b/arch/powerpc/boot/install.sh
> @@ -15,7 +15,7 @@
>  #   $2 - kernel image file
>  #   $3 - kernel map file
>  #   $4 - default install path (blank if root directory)
> -#   $5 - kernel boot file, the zImage
> +#   $5 and more - kernel boot files; zImage*, uImage, cuImage.*, etc.
>  #
>
>  # User may have a custom install script
> @@ -38,3 +38,15 @@ fi
>
>  cat $2 > $4/$image_name
>  cp $3 $4/System.map
> +
> +# Copy all the bootable image files
> +path=$4
> +shift 4
> +while [ $# -ne 0 ]; do
> +       image_name=`basename $1`
> +       if [ -f $path/$image_name ]; then
> +               mv $path/$image_name $path/$image_name.old
> +       fi
> +       cat $1 > $path/$image_name
> +       shift
> +done;
>
>



-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.



More information about the Linuxppc-dev mailing list