aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc/install.sh
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2013-10-18 15:18:46 -0400
committerHelge Deller <deller@gmx.de>2013-11-07 16:28:06 -0500
commitb0756b5adefcb51eaa84810a0b7abd4df8c19eb9 (patch)
treeb836c519c48921084474950bf9e33c4cbdfad33f /arch/parisc/install.sh
parent527973c84077eb9273d0b2408655620de2e30136 (diff)
parisc: make "make install" not depend on vmlinux
Install targets (install, zinstall, uinstall) on parisc have a dependency to vmlinux. This may cause parts of the kernel to be rebuilt during installation. We must avoid this since this may run as root. Install targets "ABSOLUTELY MUST NOT MODIFY THE SOURCE TREE." as Linus emphasized this in: http://lkml.org/lkml/2013/7/10/600 So on parisc and maybe other archs we need the same as for x86: 1648e4f8 x86, kbuild: make "make install" not depend on vmlinux This parisc patch was inspired by: 19514fc6 arm, kbuild: make "make install" not depend on vmlinux Signed-off-by: Helge Deller <deller@gmx.de>
Diffstat (limited to 'arch/parisc/install.sh')
-rw-r--r--arch/parisc/install.sh44
1 files changed, 36 insertions, 8 deletions
diff --git a/arch/parisc/install.sh b/arch/parisc/install.sh
index 4da682b466d0..6f68784fea25 100644
--- a/arch/parisc/install.sh
+++ b/arch/parisc/install.sh
@@ -19,20 +19,48 @@
19# $4 - default install path (blank if root directory) 19# $4 - default install path (blank if root directory)
20# 20#
21 21
22verify () {
23 if [ ! -f "$1" ]; then
24 echo "" 1>&2
25 echo " *** Missing file: $1" 1>&2
26 echo ' *** You need to run "make" before "make install".' 1>&2
27 echo "" 1>&2
28 exit 1
29 fi
30}
31
32# Make sure the files actually exist
33
34verify "$2"
35verify "$3"
36
22# User may have a custom install script 37# User may have a custom install script
23 38
24if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi 39if [ -n "${INSTALLKERNEL}" ]; then
25if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi 40 if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi
41 if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi
42fi
26 43
27# Default install 44# Default install
28 45
29if [ -f $4/vmlinuz ]; then 46if [ "$(basename $2)" = "zImage" ]; then
30 mv $4/vmlinuz $4/vmlinuz.old 47# Compressed install
48 echo "Installing compressed kernel"
49 base=vmlinuz
50else
51# Normal install
52 echo "Installing normal kernel"
53 base=vmlinux
54fi
55
56if [ -f $4/$base-$1 ]; then
57 mv $4/$base-$1 $4/$base-$1.old
31fi 58fi
59cat $2 > $4/$base-$1
32 60
33if [ -f $4/System.map ]; then 61# Install system map file
34 mv $4/System.map $4/System.old 62if [ -f $4/System.map-$1 ]; then
63 mv $4/System.map-$1 $4/System.map-$1.old
35fi 64fi
65cp $3 $4/System.map-$1
36 66
37cat $2 > $4/vmlinuz
38cp $3 $4/System.map