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