summaryrefslogtreecommitdiff
path: root/.travis
diff options
context:
space:
mode:
authorThomas Graf <tgraf@noironetworks.com>2014-11-28 13:48:49 +0100
committerBen Pfaff <blp@nicira.com>2014-12-05 12:35:08 -0800
commit517f93116b143d5f16bafe62cf0fe13734db7dd5 (patch)
tree67c1909e599f7e30ef41cbe1cf8d65c1acc10d94 /.travis
parentb6fe204d2da016e7e0c7fc591e9ed95e23067d19 (diff)
downloadopenvswitch-517f93116b143d5f16bafe62cf0fe13734db7dd5.tar.gz
travis: Extended kernel build matrix
When doing test builds, build against the following kernels: - KERNEL=3.17.4 - KERNEL=3.16.7 - KERNEL=3.14.25 - KERNEL=3.12.33 - KERNEL=3.10.61 - KERNEL=3.4.104 - KERNEL=2.6.32.64 When doing pure kernel test builds, skip compilation of user space bits. Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to '.travis')
-rwxr-xr-x.travis/build.sh33
1 files changed, 27 insertions, 6 deletions
diff --git a/.travis/build.sh b/.travis/build.sh
index 7043c40a0..6e99c630c 100755
--- a/.travis/build.sh
+++ b/.travis/build.sh
@@ -4,15 +4,32 @@ set -o errexit
KERNELSRC=""
CFLAGS="-Werror"
+EXTRA_OPTS=""
function install_kernel()
{
- wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.2.tar.gz
- tar xzvf linux-3.16.2.tar.gz > /dev/null
- cd linux-3.16.2
+ if [[ "$1" =~ ^3.* ]]; then
+ PREFIX="v3.x"
+ else
+ PREFIX="v2.6/longterm/v2.6.32"
+ fi
+
+ wget https://www.kernel.org/pub/linux/kernel/${PREFIX}/linux-${1}.tar.gz
+ tar xzvf linux-${1}.tar.gz > /dev/null
+ cd linux-${1}
make allmodconfig
- make net/openvswitch/
+
+ # Older kernels do not include openvswitch
+ if [ -d "net/openvswitch" ]; then
+ make net/openvswitch/
+ else
+ make net/bridge/
+ fi
+
KERNELSRC=$(pwd)
+ if [ ! "$DPDK" ]; then
+ EXTRA_OPTS="--with-linux=$(pwd)"
+ fi
echo "Installed kernel source in $(pwd)"
cd ..
}
@@ -38,7 +55,7 @@ function configure_ovs()
}
if [ "$KERNEL" ] || [ "$DPDK" ]; then
- install_kernel
+ install_kernel $KERNEL
fi
if [ "$DPDK" ]; then
@@ -50,8 +67,12 @@ elif [ $CC != "clang" ]; then
CFLAGS="$CFLAGS -Wsparse-error"
fi
-configure_ovs $*
+configure_ovs $EXTRA_OPTS $*
+# Only build datapath if we are testing kernel w/o running testsuite
+if [ $KERNEL ] && [ ! "$TESTSUITE" ] && [ ! "$DPDK" ]; then
+ cd datapath
+fi
if [ $CC = "clang" ]; then
make CFLAGS="$CFLAGS -Wno-error=unused-command-line-argument"