mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-23 17:30:02 +00:00
![Masahiro Yamada](/assets/img/avatar_default.png)
Many architectures have similar install.sh scripts. The first half is really generic; it verifies that the kernel image and System.map exist, then executes ~/bin/${INSTALLKERNEL} or /sbin/${INSTALLKERNEL} if available. The second half is kind of arch-specific; it copies the kernel image and System.map to the destination, but the code is slightly different. Factor out the generic part into scripts/install.sh. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nicolas Schier <n.schier@avm.de>
40 lines
986 B
Bash
Executable file
40 lines
986 B
Bash
Executable file
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Copyright (C) 1995 by Linus Torvalds
|
|
#
|
|
# Adapted from code in arch/i386/boot/Makefile by H. Peter Anvin
|
|
# Common code factored out by Masahiro Yamada
|
|
|
|
set -e
|
|
|
|
# Make sure the files actually exist
|
|
for file in "${KBUILD_IMAGE}" System.map
|
|
do
|
|
if [ ! -f "${file}" ]; then
|
|
echo >&2
|
|
echo >&2 " *** Missing file: ${file}"
|
|
echo >&2 ' *** You need to run "make" before "make install".'
|
|
echo >&2
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
# User/arch may have a custom install script
|
|
for file in "${HOME}/bin/${INSTALLKERNEL}" \
|
|
"/sbin/${INSTALLKERNEL}" \
|
|
"${srctree}/arch/${SRCARCH}/install.sh" \
|
|
"${srctree}/arch/${SRCARCH}/boot/install.sh"
|
|
do
|
|
if [ ! -x "${file}" ]; then
|
|
continue
|
|
fi
|
|
|
|
# installkernel(8) says the parameters are like follows:
|
|
#
|
|
# installkernel version zImage System.map [directory]
|
|
exec "${file}" "${KERNELRELEASE}" "${KBUILD_IMAGE}" System.map "${INSTALL_PATH}"
|
|
done
|
|
|
|
echo "No install script found" >&2
|
|
exit 1
|