61 строка
1.5 KiB
Bash
61 строка
1.5 KiB
Bash
#!/bin/sh
|
|
#
|
|
# arch/arm64/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 the AArch64 Linux port
|
|
#
|
|
# Arguments:
|
|
# $1 - kernel version
|
|
# $2 - kernel image file
|
|
# $3 - kernel map file
|
|
# $4 - default install path (blank if root directory)
|
|
#
|
|
|
|
verify () {
|
|
if [ ! -f "$1" ]; then
|
|
echo "" 1>&2
|
|
echo " *** Missing file: $1" 1>&2
|
|
echo ' *** You need to run "make" before "make install".' 1>&2
|
|
echo "" 1>&2
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
# Make sure the files actually exist
|
|
verify "$2"
|
|
verify "$3"
|
|
|
|
# User may have a custom install script
|
|
if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi
|
|
if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi
|
|
|
|
if [ "$(basename $2)" = "Image.gz" ]; 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
|