1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# arch/arm/boot/install.sh 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun# This file is subject to the terms and conditions of the GNU General Public 6*4882a593Smuzhiyun# License. See the file "COPYING" in the main directory of this archive 7*4882a593Smuzhiyun# for more details. 8*4882a593Smuzhiyun# 9*4882a593Smuzhiyun# Copyright (C) 1995 by Linus Torvalds 10*4882a593Smuzhiyun# 11*4882a593Smuzhiyun# Adapted from code in arch/i386/boot/Makefile by H. Peter Anvin 12*4882a593Smuzhiyun# Adapted from code in arch/i386/boot/install.sh by Russell King 13*4882a593Smuzhiyun# 14*4882a593Smuzhiyun# "make install" script for arm architecture 15*4882a593Smuzhiyun# 16*4882a593Smuzhiyun# Arguments: 17*4882a593Smuzhiyun# $1 - kernel version 18*4882a593Smuzhiyun# $2 - kernel image file 19*4882a593Smuzhiyun# $3 - kernel map file 20*4882a593Smuzhiyun# $4 - default install path (blank if root directory) 21*4882a593Smuzhiyun# 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunverify () { 24*4882a593Smuzhiyun if [ ! -f "$1" ]; then 25*4882a593Smuzhiyun echo "" 1>&2 26*4882a593Smuzhiyun echo " *** Missing file: $1" 1>&2 27*4882a593Smuzhiyun echo ' *** You need to run "make" before "make install".' 1>&2 28*4882a593Smuzhiyun echo "" 1>&2 29*4882a593Smuzhiyun exit 1 30*4882a593Smuzhiyun fi 31*4882a593Smuzhiyun} 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun# Make sure the files actually exist 34*4882a593Smuzhiyunverify "$2" 35*4882a593Smuzhiyunverify "$3" 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun# User may have a custom install script 38*4882a593Smuzhiyunif [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi 39*4882a593Smuzhiyunif [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi 40*4882a593Smuzhiyun 41*4882a593Smuzhiyunif [ "$(basename $2)" = "zImage" ]; then 42*4882a593Smuzhiyun# Compressed install 43*4882a593Smuzhiyun echo "Installing compressed kernel" 44*4882a593Smuzhiyun base=vmlinuz 45*4882a593Smuzhiyunelse 46*4882a593Smuzhiyun# Normal install 47*4882a593Smuzhiyun echo "Installing normal kernel" 48*4882a593Smuzhiyun base=vmlinux 49*4882a593Smuzhiyunfi 50*4882a593Smuzhiyun 51*4882a593Smuzhiyunif [ -f $4/$base-$1 ]; then 52*4882a593Smuzhiyun mv $4/$base-$1 $4/$base-$1.old 53*4882a593Smuzhiyunfi 54*4882a593Smuzhiyuncat $2 > $4/$base-$1 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun# Install system map file 57*4882a593Smuzhiyunif [ -f $4/System.map-$1 ]; then 58*4882a593Smuzhiyun mv $4/System.map-$1 $4/System.map-$1.old 59*4882a593Smuzhiyunfi 60*4882a593Smuzhiyuncp $3 $4/System.map-$1 61*4882a593Smuzhiyun 62*4882a593Smuzhiyunif [ -x /sbin/loadmap ]; then 63*4882a593Smuzhiyun /sbin/loadmap 64*4882a593Smuzhiyunelse 65*4882a593Smuzhiyun echo "You have to install it yourself" 66*4882a593Smuzhiyunfi 67