diff --git a/.travis.yml b/.travis.yml index 15677891b..654ab5ba5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,18 +1,27 @@ language: c -cache: ccache +cache: + ccache: true + directories: + - $HOME/Library/Caches/Homebrew branches: except: - /appveyor.*/ +os: osx +osx_image: xcode9.2 + matrix: include: - - os: osx - osx_image: xcode9.2 - env: DISTRO=xcode9.2 + - env: TOOL=meson + - env: TOOL=autotools install: - - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache + - brew update + - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache meson script: - - ./test/scripts/build-travis-osx.sh + - ./test/scripts/build-travis-osx.sh $TOOL - ccache -s + +before_cache: + - brew cleanup diff --git a/test/scripts/build-travis-osx.sh b/test/scripts/build-travis-osx.sh index 193a8851d..800fafcb2 100755 --- a/test/scripts/build-travis-osx.sh +++ b/test/scripts/build-travis-osx.sh @@ -30,14 +30,29 @@ export PATH="/usr/local/opt/ccache/libexec:$PATH" pushd $HOME git clone git://anongit.freedesktop.org/git/xorg/proto/xorgproto cd xorgproto -autoreconf -fvi -./configure --prefix=/opt/X11 -sudo make install +if [[ "$1" == "autotools" ]]; then + autoreconf -fvi + ./configure --prefix=/opt/X11 + sudo make install +elif [[ "$1" == "meson" ]]; then + meson _build/ -Dprefix=/opt/X11 + ninja -C _build/ + sudo ninja -C _build/ install +else + echo "Unknown build tool $1" + exit 1 +fi popd # build -autoreconf -fvi -./configure --prefix=/opt/X11 --disable-dependency-tracking --with-apple-application-name=XQuartz --with-bundle-id-prefix=org.macosforge.xquartz -make -make check -make install DESTDIR=$(pwd)/staging +if [[ "$1" == "autotools" ]]; then + autoreconf -fvi + ./configure --prefix=/opt/X11 --disable-dependency-tracking --with-apple-application-name=XQuartz --with-bundle-id-prefix=org.macosforge.xquartz + make + make check + make install DESTDIR=$(pwd)/staging +elif [[ "$1" == "meson" ]]; then + meson _build/ -Dprefix=/opt/X11 -Dsecure-rpc=false + DESTDIR=$(pwd)/staging ninja -C _build/ install + ninja -C _build/ test +fi