shithub: opusfile

Download patch

ref: c286c605e473c0721c34f192600461f8c48a06d2
parent: 440e26f6ceb4ce402a75191c970a464d7d5d797a
author: Stephen <stephengroat@users.noreply.github.com>
date: Mon Oct 30 10:53:25 EDT 2017

Add macOS and clang builds to the travis config.

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 <giles@thaumas.net>

--- a/.travis.yml
+++ b/.travis.yml
@@ -1,10 +1,22 @@
 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
--- /dev/null
+++ b/Brewfile
@@ -1,0 +1,7 @@
+brew 'opus'
+brew 'libogg'
+brew 'openssl'
+brew 'autoconf'
+brew 'automake'
+brew 'libtool'
+brew 'pkg-config'