Remove last remnants of the wd(4) driver which was moved to the Attic some
[dragonfly.git] / tools / tools / upgrade / doupgrade.sh
CommitLineData
984263bc
MD
1#!/bin/sh
2
3# Simple helper script for upgrade target.
4
5# Expects MACHINE to be passed in with the environment, the "pass number"
6# as the first argument the name of the file to leave its droppings in
7# as the second. CURDIR is also passed in the environment from ${.CURDIR}
a0716607 8#
365ae791 9# $DragonFly: src/tools/tools/upgrade/Attic/doupgrade.sh,v 1.3 2005/02/26 12:00:55 swildner Exp $
984263bc
MD
10
11PASS=$1
12CONF=$2
13
14cd ${CURDIR}/sys/${MACHINE}/conf
15
16# Create kernel configuration file for pass #1
17if [ $PASS -eq 1 ]; then
18 echo "The following files are in ${CURDIR}/sys/${MACHINE}/conf:"; echo
19 ls -C
20 echo; echo -n "Which config file do you wish to use? [GENERIC] "
21 read answer
22 if [ -z "${answer}" ]; then
23 KERN=GENERIC
24 else
25 KERN="${answer}"
26 fi
27 if [ ! -f ${KERN} ]; then
28 KERN=GENERIC
29 fi
30 if ! grep -q atkbdc0 ${KERN}; then
31 if [ ! -f ${KERN}.bkup ]; then
32 cp ${KERN} ${KERN}.bkup
33 fi
34 sed -e 's/^device.*sc0.*$/ \
35controller atkbdc0 at isa? port IO_KBD tty \
36device atkbd0 at isa? tty irq 1 \
37device vga0 at isa? port ? conflicts \
38device sc0 at isa? tty \
39pseudo-device splash \
40/' -e 's/sd\([0-9]\)/da\1/' -e 's/st\([0-9]\)/sa\1/' < ${KERN}.bkup > ${KERN}
41 fi
42
43 ROOTDEV=`awk '$2~/\/$/{print substr($1, 6, 3)}' /etc/fstab`
365ae791 44 echo -n "What is your boot device (e.g. ad0 or sd0)? [${ROOTDEV}] "
984263bc
MD
45 read answer
46 if [ -n "${answer}" ]; then
47 ROOTDEV="${answer}"
48 fi
49 echo "KERNEL=${KERN}" > ${CONF}
50 echo "ROOTDEV=${ROOTDEV}" >> ${CONF}
51 if ! file /kernel | grep -q ELF; then
52 echo "NEWBOOT=YES" >> ${CONF}
53 fi
54fi
55
56# Build and install kernel as pass #2
57if [ $PASS -eq 2 -a -f ${CONF} ]; then
58 . ${CONF}
59 if [ "x${NEWBOOT}" = "xYES" ]; then
60 echo "--------------------------------------------------------------"
61 echo " Installing new boot blocks"
62 echo "--------------------------------------------------------------"
63 if [ ! -f /boot/loader ]; then
64 (cd ${CURDIR}/lib/libstand; make obj; make -B depend all install)
65 (cd ${CURDIR}/sys/boot; make obj; make -B depend all install)
66 fi
67 if ! disklabel -B ${ROOTDEV}; then
68 echo "Installation of new boot blocks failed! Please correct"
69 echo "this manually BEFORE you reboot your system!"
70 exit 1
71 fi
72 fi
73 if ! file /kernel | grep -q ELF; then
74 echo "--------------------------------------------------------------"
75 echo " Building an elf kernel for ${KERNEL} using the new tools"
76 echo "--------------------------------------------------------------"
77 config -r ${KERNEL}
78 cd ${CURDIR}/sys/compile/${KERNEL} && make -B depend -DFORCE all install
79 fi
80fi