| #!/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" |