diff options
author | Lance Richardson <lrichard@redhat.com> | 2016-03-23 16:04:47 -0400 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2016-03-23 13:17:58 -0700 |
commit | 40a75bbf9e8237ddf0bfc9d3320bfc39e389c7eb (patch) | |
tree | 39de76c4f2c68309b0fe81355e7e6d74ea3cffe5 | |
parent | 837351e6f99098d63628bd06afe908b6d4af755d (diff) | |
download | openvswitch-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.yml | 13 | ||||
-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.sh | 28 | ||||
-rwxr-xr-x | .travis/osx-prepare.sh | 3 | ||||
-rw-r--r-- | Makefile.am | 6 |
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 \ |