mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-28 05:24:47 +08:00
0f8e2d62fa
The attached patch causes the various arch specific install.sh scripts to look for ${CROSS_COMPILE}installkernel rather than just installkernel (in both /sbin/ and ~/bin/ where the script already did this). This allows you to have e.g. arm-linux-installkernel as a handy way to install on your cross target. It also prevents the script picking up on the host /sbin/installkernel which causes the script to fall through and do the install itself (which is what I actually use myself, with $INSTALL_PATH set). I don't believe it causes back-compatibility problems since calling the host installkernel was never likely to work or be what you wanted when cross compiling anyway. If $CROSS_COMPILE isn't set then nothing changes. I only use ARM and i386 myself but I figured it couldn't hurt to do the whole lot. I've cc'd those who I hope are the arch maintainers for files that I've touched. Signed-off-by: Ian Campbell <icampbell@arcom.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
53 lines
1.3 KiB
Bash
53 lines
1.3 KiB
Bash
#!/bin/sh
|
|
#
|
|
# arch/arm/boot/install.sh
|
|
#
|
|
# This file is subject to the terms and conditions of the GNU General Public
|
|
# License. See the file "COPYING" in the main directory of this archive
|
|
# for more details.
|
|
#
|
|
# Copyright (C) 1995 by Linus Torvalds
|
|
#
|
|
# Adapted from code in arch/i386/boot/Makefile by H. Peter Anvin
|
|
# Adapted from code in arch/i386/boot/install.sh by Russell King
|
|
#
|
|
# "make install" script for arm architecture
|
|
#
|
|
# Arguments:
|
|
# $1 - kernel version
|
|
# $2 - kernel image file
|
|
# $3 - kernel map file
|
|
# $4 - default install path (blank if root directory)
|
|
#
|
|
|
|
# User may have a custom install script
|
|
if [ -x ~/bin/${CROSS_COMPILE}installkernel ]; then exec ~/bin/${CROSS_COMPILE}installkernel "$@"; fi
|
|
if [ -x /sbin/${CROSS_COMPILE}installkernel ]; then exec /sbin/${CROSS_COMPILE}installkernel "$@"; fi
|
|
|
|
if [ "$(basename $2)" = "zImage" ]; then
|
|
# Compressed install
|
|
echo "Installing compressed kernel"
|
|
base=vmlinuz
|
|
else
|
|
# Normal install
|
|
echo "Installing normal kernel"
|
|
base=vmlinux
|
|
fi
|
|
|
|
if [ -f $4/$base-$1 ]; then
|
|
mv $4/$base-$1 $4/$base-$1.old
|
|
fi
|
|
cat $2 > $4/$base-$1
|
|
|
|
# Install system map file
|
|
if [ -f $4/System.map-$1 ]; then
|
|
mv $4/System.map-$1 $4/System.map-$1.old
|
|
fi
|
|
cp $3 $4/System.map-$1
|
|
|
|
if [ -x /sbin/loadmap ]; then
|
|
/sbin/loadmap
|
|
else
|
|
echo "You have to install it yourself"
|
|
fi
|