mirror of
https://github.com/torvalds/linux.git
synced 2025-12-01 07:26:02 +07:00
kbuild: factor out the common installation code into scripts/install.sh
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>
This commit is contained in:
40
scripts/install.sh
Executable file
40
scripts/install.sh
Executable file
@@ -0,0 +1,40 @@
|
||||
#!/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
|
||||
Reference in New Issue
Block a user