summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLance Richardson <lrichard@redhat.com>2016-03-23 16:04:47 -0400
committerBen Pfaff <blp@ovn.org>2016-03-23 13:17:58 -0700
commit40a75bbf9e8237ddf0bfc9d3320bfc39e389c7eb (patch)
tree39de76c4f2c68309b0fe81355e7e6d74ea3cffe5
parent837351e6f99098d63628bd06afe908b6d4af755d (diff)
downloadopenvswitch-40a75bbf9e8237ddf0bfc9d3320bfc39e389c7eb.tar.gz
travis: support OS X builds
Add support for travis-ci OS X builds: - Add linux- prefix to existing build/prepare scripts - Create new OS X flavored build/prepare scripts - Update .travis.yml for OS X At this time only one build job included in the matrix for OS X. Signed-off-by: Lance Richardson <lrichard@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
-rw-r--r--.travis.yml13
-rwxr-xr-x.travis/linux-build.sh (renamed from .travis/build.sh)0
-rwxr-xr-x.travis/linux-prepare.sh (renamed from .travis/prepare.sh)0
-rwxr-xr-x.travis/osx-build.sh28
-rwxr-xr-x.travis/osx-prepare.sh3
-rw-r--r--Makefile.am6
6 files changed, 46 insertions, 4 deletions
diff --git a/.travis.yml b/.travis.yml
index 66180731e..ee2cf213a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,6 +3,9 @@ compiler:
- gcc
- clang
+os:
+ - linux
+
addons:
apt:
packages:
@@ -13,7 +16,7 @@ addons:
- libjemalloc1
- libjemalloc-dev
-before_install: ./.travis/prepare.sh
+before_install: ./.travis/${TRAVIS_OS_NAME}-prepare.sh
before_script: export PATH=$PATH:$HOME/bin
@@ -34,7 +37,13 @@ env:
- KERNEL=3.10.96
- TESTSUITE=1 LIBS=-ljemalloc
-script: ./.travis/build.sh $OPTS
+matrix:
+ include:
+ - os: osx
+ compiler: clang
+ env: OPTS="--disable-ssl"
+
+script: ./.travis/${TRAVIS_OS_NAME}-build.sh $OPTS
notifications:
email:
diff --git a/.travis/build.sh b/.travis/linux-build.sh
index ef712d0bd..ef712d0bd 100755
--- a/.travis/build.sh
+++ b/.travis/linux-build.sh
diff --git a/.travis/prepare.sh b/.travis/linux-prepare.sh
index 752be9fa3..752be9fa3 100755
--- a/.travis/prepare.sh
+++ b/.travis/linux-prepare.sh
diff --git a/.travis/osx-build.sh b/.travis/osx-build.sh
new file mode 100755
index 000000000..4db9c8d04
--- /dev/null
+++ b/.travis/osx-build.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+set -o errexit
+
+CFLAGS="-Werror -Wno-error=format $CFLAGS"
+EXTRA_OPTS=""
+
+function configure_ovs()
+{
+ ./boot.sh && ./configure $*
+}
+
+configure_ovs $EXTRA_OPTS $*
+
+if [ "$CC" = "clang" ]; then
+ make CFLAGS="$CFLAGS -Wno-error=unused-command-line-argument"
+else
+ make CFLAGS="$CFLAGS $BUILD_ENV"
+fi
+if [ "$TESTSUITE" ] && [ "$CC" != "clang" ]; then
+ if ! make distcheck RECHECK=yes; then
+ # testsuite.log is necessary for debugging.
+ cat */_build/tests/testsuite.log
+ exit 1
+ fi
+fi
+
+exit 0
diff --git a/.travis/osx-prepare.sh b/.travis/osx-prepare.sh
new file mode 100755
index 000000000..cf46d872e
--- /dev/null
+++ b/.travis/osx-prepare.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+set -ev
+pip install --user six
diff --git a/Makefile.am b/Makefile.am
index 8c3ffd6df..bd9ee005e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -99,8 +99,10 @@ EXTRA_DIST = \
$(docs) \
NOTICE \
.travis.yml \
- .travis/build.sh \
- .travis/prepare.sh \
+ .travis/linux-build.sh \
+ .travis/linux-prepare.sh \
+ .travis/osx-build.sh \
+ .travis/osx-prepare.sh \
appveyor.yml \
boot.sh \
build-aux/cccl \