1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#!/bin/bash
DIR=$(dirname `readlink -f $0`)
. $DIR/../testing.conf
. $DIR/function.sh
echo "Building guest kernel version $KERNELVERSION"
[ -f "$KERNELCONFIG" ] || die "Kernel config $KERNELCONFIG not found"
check_commands bunzip2 bzcat make wget
cd $BUILDDIR
if [ ! -f "$KERNELTARBALL" ]
then
url=https://cdn.kernel.org/pub/linux/kernel/v${KERNELVERSION:0:1}.x/$KERNELTARBALL
log_action "Downloading $url"
execute "wget -q $url"
fi
if [[ $KERNELPATCH && ! -f "$KERNELPATCH" ]]
then
url=https://download.strongswan.org/testing/$KERNELPATCH
log_action "Downloading $url"
execute "wget -q $url"
fi
KERNELDIR=$BUILDDIR/$KERNEL
if [ ! -d "$KERNELDIR" ]
then
log_action "Unpacking kernel"
execute "tar xJf $KERNELTARBALL"
if [ $KERNELPATCH ]
then
log_action "Applying kernel patch"
bzcat $KERNELPATCH | patch -d $KERNELDIR -p1 >>$LOGFILE 2>&1
status=$?
log_status $status
[ $status -eq 0 ] || exit 1
fi
fi
cd $KERNELDIR
if [ ! -f .config ]
then
execute "cp $KERNELCONFIG .config" 0
fi
echo "Creating kernel configuration, you might get prompted for new parameters"
make oldconfig 2>&1 | tee -a $LOGFILE
log_action "Compiling the kernel"
execute "make -j5"
|