Skip to content

Commit

Permalink
Add macOS and clang builds to the travis config.
Browse files Browse the repository at this point in the history
Improve coverage by building more variants in integration
testing.

There's no equivalent of the apt addon for macOS builds, so
we put dependencies in Brewfile and call `brew bundle` to
install them. This works better than calling `brew install`
directly since the later will error if a package is already
installed, and even if the error is ignored it won't update
to the latest version available, resulting in binaried built
against e.g. vulnerable versions of openssl.

To avoid conflicts with Apple's deprecated openssl package,
homebrew doesn't install its openssl package in the default
search path, so we need to manually append the its location
to PKG_CONFIG_PATH. We cannot build against Apple's package
because while it provides libraries and an openssl.pc file,
no headers are available.

Signed-off-by: Ralph Giles <[email protected]>
  • Loading branch information
stephengroat authored and rillian committed Nov 1, 2017
1 parent 440e26f commit c286c60
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,23 @@
language: c

compiler:
- gcc
- clang

os:
- linux
- osx

addons:
apt:
packages:
- libogg-dev
- libopus-dev

env: PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opt/openssl/lib/pkgconfig

install: if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update && brew bundle; fi

script:
- ./autogen.sh
- ./configure
Expand Down
7 changes: 7 additions & 0 deletions Brewfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
brew 'opus'
brew 'libogg'
brew 'openssl'
brew 'autoconf'
brew 'automake'
brew 'libtool'
brew 'pkg-config'

0 comments on commit c286c60

Please sign in to comment.