blob: 349ee88ed558db0c09857dc4e689d3d9524d163f [file] [log] [blame] [raw]
#! /bin/sh
#
# kinstall/minstall - install patches to kernel sources
#
# WARNING: This script should be run exactly once on a virgin system
#
PATH=/sbin:/usr/sbin:/bin:/usr/bin; export PATH
# try to bomb out fast if anything fails....
set -e
argv0=`basename $0`
dir=`pwd`
karch=`uname -m`
archdir="/sys/arch/$karch"
confdir="$archdir/conf"
case "$dir" in
*/NetBSD )
cd ..
;;
esac
echo -n "Removing "
for i in ip_fil.[ch] ip_nat.[ch] ip_frag.[ch] ip_state.[ch] fil.c ip_compat.h ip_proxy.[ch] ip_ftp_pxy.c ip_auth.[ch] ip_log.c
do
echo -n "/sys/netinet/$i "
/bin/rm -f /sys/netinet/$i
done
echo
echo "Unpatching ip_input.c and ip_output.c ..."
cat NetBSD/ip*.c.diffs | (cd /sys/netinet; patch -R)
if [ -f /sys/conf/files.newconf ]; then
echo "Unpatching in_proto.c ..."
cat NetBSD/in_proto.c.old.diffs | (cd /sys/netinet; patch -R)
echo "Unpatching $archdir/$karch/conf.c"
cat NetBSD/conf.c.old.diffs | (cd $archdir/$karch; patch -R)
echo "Unpatching /sys/conf/files.newconf ..."
cat NetBSD/files.newconf.diffs | (cd /sys/conf; patch -R)
echo "Unpatching /sys/conf/files ..."
cat NetBSD/files.diffs | (cd /sys/conf; patch -R)
fi
if [ -f /sys/conf/files.oldconf ]; then
echo "Unpatching in_proto.c ..."
cat NetBSD/in_proto.c.diffs | (cd /sys/netinet; patch -R)
echo "Unpatching $archdir/$karch/conf.c"
cat NetBSD/conf.c.diffs | (cd $archdir/$karch; patch -R)
echo "Unpatching /sys/conf/files.oldconf ..."
cat NetBSD/files.oldconf.diffs | (cd /sys/conf; patch -R)
echo "Unpatching /sys/conf/files ..."
cat NetBSD/filez.diffs | (cd /sys/conf; patch -R)
fi
echo -n "Kernel configuration to update [GENERIC] "
read newconfig junk
if [ -n "$newconfig" ] ; then
config="$confdir/$newconfig"
else
newconfig="$confdir/GENERIC"
fi
mv $archdir/compile/$newconfig $archdir/compile/$newconfig.bak
egrep -v 'IPFILTER' $confdir/$newconfig.bak > $confdir/$newconfig
echo 'You will now need to run "config" and build a new kernel.'
exit 0