13d0407baSopenharmony_ci#!/bin/sh 23d0407baSopenharmony_ci# 33d0407baSopenharmony_ci# arch/arm64/boot/install.sh 43d0407baSopenharmony_ci# 53d0407baSopenharmony_ci# This file is subject to the terms and conditions of the GNU General Public 63d0407baSopenharmony_ci# License. See the file "COPYING" in the main directory of this archive 73d0407baSopenharmony_ci# for more details. 83d0407baSopenharmony_ci# 93d0407baSopenharmony_ci# Copyright (C) 1995 by Linus Torvalds 103d0407baSopenharmony_ci# 113d0407baSopenharmony_ci# Adapted from code in arch/i386/boot/Makefile by H. Peter Anvin 123d0407baSopenharmony_ci# Adapted from code in arch/i386/boot/install.sh by Russell King 133d0407baSopenharmony_ci# 143d0407baSopenharmony_ci# "make install" script for the AArch64 Linux port 153d0407baSopenharmony_ci# 163d0407baSopenharmony_ci# Arguments: 173d0407baSopenharmony_ci# $1 - kernel version 183d0407baSopenharmony_ci# $2 - kernel image file 193d0407baSopenharmony_ci# $3 - kernel map file 203d0407baSopenharmony_ci# $4 - default install path (blank if root directory) 213d0407baSopenharmony_ci# 223d0407baSopenharmony_ci 233d0407baSopenharmony_civerify () { 243d0407baSopenharmony_ci if [ ! -f "$1" ]; then 253d0407baSopenharmony_ci echo "" 1>&2 263d0407baSopenharmony_ci echo " *** Missing file: $1" 1>&2 273d0407baSopenharmony_ci echo ' *** You need to run "make" before "make install".' 1>&2 283d0407baSopenharmony_ci echo "" 1>&2 293d0407baSopenharmony_ci exit 1 303d0407baSopenharmony_ci fi 313d0407baSopenharmony_ci} 323d0407baSopenharmony_ci 333d0407baSopenharmony_ci# Make sure the files actually exist 343d0407baSopenharmony_civerify "$2" 353d0407baSopenharmony_civerify "$3" 363d0407baSopenharmony_ci 373d0407baSopenharmony_ci# User may have a custom install script 383d0407baSopenharmony_ciif [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi 393d0407baSopenharmony_ciif [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi 403d0407baSopenharmony_ci 413d0407baSopenharmony_ciif [ "$(basename $2)" = "Image.gz" ]; then 423d0407baSopenharmony_ci# Compressed install 433d0407baSopenharmony_ci echo "Installing compressed kernel" 443d0407baSopenharmony_ci base=vmlinuz 453d0407baSopenharmony_cielse 463d0407baSopenharmony_ci# Normal install 473d0407baSopenharmony_ci echo "Installing normal kernel" 483d0407baSopenharmony_ci base=vmlinux 493d0407baSopenharmony_cifi 503d0407baSopenharmony_ci 513d0407baSopenharmony_ciif [ -f $4/$base-$1 ]; then 523d0407baSopenharmony_ci mv $4/$base-$1 $4/$base-$1.old 533d0407baSopenharmony_cifi 543d0407baSopenharmony_cicat $2 > $4/$base-$1 553d0407baSopenharmony_ci 563d0407baSopenharmony_ci# Install system map file 573d0407baSopenharmony_ciif [ -f $4/System.map-$1 ]; then 583d0407baSopenharmony_ci mv $4/System.map-$1 $4/System.map-$1.old 593d0407baSopenharmony_cifi 603d0407baSopenharmony_cicp $3 $4/System.map-$1 61