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