env:
- OPTS="--disable-ssl"
- - TESTSUITE=1 KERNEL=1 OPTS="--with-linux=./linux-3.16.2"
- - KERNEL=1 DPDK=1 OPTS="--with-dpdk=./dpdk-1.7.1/build"
+ - TESTSUITE=1 KERNEL=3.17.4
+ - KERNEL=3.17.4 DPDK=1 OPTS="--with-dpdk=./dpdk-1.7.1/build"
- TESTSUITE=1 OPTS="--enable-shared"
- - DPDK=1 OPTS="--enable-shared"
+ - KERNEL=3.17.4 DPDK=1 OPTS="--enable-shared"
+ - 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
script: ./.travis/build.sh $OPTS
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 ..
}
}
if [ "$KERNEL" ] || [ "$DPDK" ]; then
- install_kernel
+ install_kernel $KERNEL
fi
if [ "$DPDK" ]; 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"