aboutsummaryrefslogtreecommitdiff
path: root/arch/parisc/boot/install.sh
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2017-08-20 10:52:22 +0200
committerHelge Deller <deller@gmx.de>2017-08-22 16:34:35 +0200
commit2f3c7b8137ef6a3f90850d7cb5dbd05d8940403a (patch)
treea299bacc7cd759cb2ab46cc280260f043d35d3d9 /arch/parisc/boot/install.sh
parente35a2ce692821563583fa8b11ddf4acb24e54580 (diff)
download96b-common-2f3c7b8137ef6a3f90850d7cb5dbd05d8940403a.tar.gz
parisc: Add core code for self-extracting kernel
Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/boot/install.sh')
-rw-r--r--arch/parisc/boot/install.sh65
1 files changed, 65 insertions, 0 deletions
diff --git a/arch/parisc/boot/install.sh b/arch/parisc/boot/install.sh
new file mode 100644
index 000000000000..8f7c365fad83
--- /dev/null
+++ b/arch/parisc/boot/install.sh
@@ -0,0 +1,65 @@
+#!/bin/sh
+#
+# arch/parisc/install.sh, derived from arch/i386/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
+#
+# "make install" script for i386 architecture
+#
+# 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 [ -n "${INSTALLKERNEL}" ]; then
+ if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi
+ if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi
+fi
+
+# Default install
+
+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