2018-06-25 06:56:07 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
ACTION="$1"
|
|
|
|
|
|
|
|
set -eu
|
|
|
|
|
|
|
|
CACHEDIR="$HOME/cache"
|
|
|
|
NPROC=`sysctl -n hw.physicalcpu`
|
|
|
|
|
|
|
|
travis_install() {
|
|
|
|
# Workaround for bug in Homebrew where it only finds an old Ruby version.
|
|
|
|
brew update
|
|
|
|
|
|
|
|
brew install libsodium libvpx opus libconfig
|
|
|
|
}
|
|
|
|
|
|
|
|
travis_script() {
|
|
|
|
. ".travis/flags-$CC.sh"
|
|
|
|
|
|
|
|
add_ld_flag -undefined error
|
|
|
|
|
|
|
|
# Make compilation error on a warning
|
|
|
|
add_flag -Werror
|
|
|
|
|
|
|
|
cmake -B_build -H. \
|
|
|
|
-DCMAKE_C_FLAGS="$C_FLAGS" \
|
|
|
|
-DCMAKE_CXX_FLAGS="$CXX_FLAGS" \
|
|
|
|
-DCMAKE_EXE_LINKER_FLAGS="$LD_FLAGS" \
|
|
|
|
-DCMAKE_SHARED_LINKER_FLAGS="$LD_FLAGS" \
|
|
|
|
-DCMAKE_INSTALL_PREFIX:PATH="$PWD/_install" \
|
|
|
|
-DTRACE=ON \
|
|
|
|
-DMUST_BUILD_TOXAV=ON \
|
|
|
|
-DTEST_TIMEOUT_SECONDS=120 \
|
|
|
|
-DUSE_IPV6=OFF
|
|
|
|
|
|
|
|
cd _build # pushd
|
|
|
|
make "-j$NPROC" -k install
|
2018-07-04 22:42:02 +08:00
|
|
|
make "-j$NPROC" test ARGS="-j50" || \
|
|
|
|
make "-j$NPROC" test ARGS="-j50 --rerun-failed" CTEST_OUTPUT_ON_FAILURE=1
|
2018-06-25 06:56:07 +08:00
|
|
|
cd - # popd
|
|
|
|
}
|
|
|
|
|
|
|
|
if [ "-z" "$ACTION" ]; then
|
|
|
|
"travis_script"
|
|
|
|
else
|
|
|
|
"travis_$ACTION"
|
|
|
|
fi
|