summaryrefslogtreecommitdiff
path: root/testing/scripts/build-umlkernel
diff options
context:
space:
mode:
authorRene Mayrhofer <rene@mayrhofer.eu.org>2006-05-22 05:12:18 +0000
committerRene Mayrhofer <rene@mayrhofer.eu.org>2006-05-22 05:12:18 +0000
commitaa0f5b38aec14428b4b80e06f90ff781f8bca5f1 (patch)
tree95f3d0c8cb0d59d88900dbbd72110d7ab6e15b2a /testing/scripts/build-umlkernel
parent7c383bc22113b23718be89fe18eeb251942d7356 (diff)
downloadvyos-strongswan-aa0f5b38aec14428b4b80e06f90ff781f8bca5f1.tar.gz
vyos-strongswan-aa0f5b38aec14428b4b80e06f90ff781f8bca5f1.zip
Import initial strongswan 2.7.0 version into SVN.
Diffstat (limited to 'testing/scripts/build-umlkernel')
-rwxr-xr-xtesting/scripts/build-umlkernel134
1 files changed, 134 insertions, 0 deletions
diff --git a/testing/scripts/build-umlkernel b/testing/scripts/build-umlkernel
new file mode 100755
index 000000000..074d7847a
--- /dev/null
+++ b/testing/scripts/build-umlkernel
@@ -0,0 +1,134 @@
+#!/bin/bash
+# build an UML kernel based on a vanilla kernel and UML patch
+#
+# Copyright (C) 2004 Eric Marchionni, Patrik Rayo
+# Zuercher Hochschule Winterthur
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+# RCSID $Id: build-umlkernel,v 1.2 2005/01/09 21:54:25 as Exp $
+
+DIR=`dirname $0`
+
+source $DIR/function.sh
+
+[ -f $DIR/../testing.conf ] || die "configuration file 'testing.conf' not found"
+
+source $DIR/../testing.conf
+
+cecho-n " * Looking for kernel at '$KERNEL'.."
+if [ -f "${KERNEL}" ]
+then
+ cecho "found it"
+ KERNELVERSION=`basename $KERNEL .tar.bz2 | sed -e 's/linux-//'`
+ cecho " * Kernel version is $KERNELVERSION"
+else
+ cecho "none"
+ exit
+fi
+
+if [ ${UMLPATCH} ]
+then
+ cecho-n " * Looking for uml patch at '$UMLPATCH'.."
+ if [ -f "${UMLPATCH}" ]
+ then
+ cecho "found it"
+ else
+ cecho "none"
+ exit
+ fi
+fi
+
+cecho-n " * Looking for kernel config at '$KERNELCONFIG'.."
+if [ -f "${KERNEL}" ]
+then
+ cecho "found it"
+else
+ cecho "none"
+ exit
+fi
+
+#######################################################
+# unpack kernel and create symlink
+#
+
+if [ ! -d $BUILDDIR ]
+then
+ cecho " * Creating directory '$BUILDDIR'"
+ mkdir $BUILDDIR
+fi
+
+cecho " * Changing to directory '$BUILDDIR'"
+cd $BUILDDIR
+
+LOGFILE=${BUILDDIR}/testing.log
+
+if [ ! -f $LOGFILE ]
+then
+ cecho-n " * Logfile '$LOGFILE' does not exist..creating.."
+ touch $LOGFILE
+ cecho "done"
+fi
+
+cecho-n " * Unpacking kernel.."
+tar xjf $KERNEL >> $LOGFILE 2>&1
+cecho "done"
+
+KERNELDIR=${BUILDDIR}/linux-${KERNELVERSION}
+
+if [ -d $KERNELDIR ]
+then
+ cecho " * Kernel directory is '$KERNELDIR'"
+ cecho " * Creating symlink 'linux'"
+ if [ -d linux ]
+ then
+ rm linux
+ fi
+ ln -s linux-${KERNELVERSION} linux
+else
+ cecho "!! Kernel directory '$KERNELDIR' can not be found"
+ exit
+fi
+
+#######################################################
+# patch kernel
+#
+
+cecho " * Changing to directory '$KERNELDIR'"
+cd $KERNELDIR
+
+if [ $UMLPATCH ]
+then
+ cecho-n " * Applying uml patch.."
+ bzcat $UMLPATCH | patch -p1 >> $LOGFILE 2>&1
+ cecho "done"
+fi
+
+#######################################################
+# copy our default .config to linux and build kernel
+#
+
+cp $KERNELCONFIG .config
+
+cecho "!!"
+cecho "!! Making .config for kernel. You might be prompted for new parameters!"
+cecho "!!"
+make oldconfig ARCH=um >> $LOGFILE 2>&1
+
+cecho-n " * Now compiling uml kernel.."
+make linux ARCH=um >> $LOGFILE 2>&1
+cecho "done"
+
+cecho-n " * Copying uml kernel to '${BUILDDIR}/linux-uml-${KERNELVERSION}'.."
+mv linux ${BUILDDIR}/linux-uml-${KERNELVERSION}
+cecho "done"
+
+