arch/riscv/boot/install.sh

Source file repositories/reference/linux-study-clean/arch/riscv/boot/install.sh

File Facts

System
Linux kernel
Corpus path
arch/riscv/boot/install.sh
Extension
.sh
Size
976 bytes
Lines
45
Domain
Architecture Layer
Bucket
arch/riscv
Inferred role
Architecture Layer: arch/riscv
Status
atlas-only

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

#!/bin/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
# Adapted from code in arch/i386/boot/install.sh by Russell King
#
# "make install" script for the RISC-V Linux port
#
# Arguments:
#   $1 - kernel version
#   $2 - kernel image file
#   $3 - kernel map file
#   $4 - default install path (blank if root directory)

set -e

case "${2##*/}" in
# Compressed install
Image.*|vmlinuz.efi)
  echo "Installing compressed kernel"
  base=vmlinuz
  ;;
# Normal install
*)
  echo "Installing normal kernel"
  base=vmlinux
  ;;
esac

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

Annotation

Implementation Notes