xref: /linux/arch/x86/boot/install.sh (revision bd628c1bed7902ec1f24ba0fe70758949146abbe)
1#!/bin/sh
2#
3# This file is subject to the terms and conditions of the GNU General Public
4# License.  See the file "COPYING" in the main directory of this archive
5# for more details.
6#
7# Copyright (C) 1995 by Linus Torvalds
8#
9# Adapted from code in arch/i386/boot/Makefile by H. Peter Anvin
10#
11# "make install" script for i386 architecture
12#
13# Arguments:
14#   $1 - kernel version
15#   $2 - kernel image file
16#   $3 - kernel map file
17#   $4 - default install path (blank if root directory)
18#
19
20verify () {
21	if [ ! -f "$1" ]; then
22		echo ""                                                   1>&2
23		echo " *** Missing file: $1"                              1>&2
24		echo ' *** You need to run "make" before "make install".' 1>&2
25		echo ""                                                   1>&2
26		exit 1
27 	fi
28}
29
30# Make sure the files actually exist
31verify "$2"
32verify "$3"
33
34# User may have a custom install script
35
36if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi
37if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi
38
39# Default install - same as make zlilo
40
41if [ -f $4/vmlinuz ]; then
42	mv $4/vmlinuz $4/vmlinuz.old
43fi
44
45if [ -f $4/System.map ]; then
46	mv $4/System.map $4/System.old
47fi
48
49cat $2 > $4/vmlinuz
50cp $3 $4/System.map
51
52if [ -x /sbin/lilo ]; then
53       /sbin/lilo
54elif [ -x /etc/lilo/install ]; then
55       /etc/lilo/install
56else
57       sync
58       echo "Cannot find LILO."
59fi
60