minetest/util/travis/common.sh
Juozas c8d3d11339 Travis-ci build: fix osx jpeg installation failure, git ambiguous argument error (caused by merging commits) and add a workaround for travis commit range bug (#6227)
* common.sh: fix travis-ci build bugs
install_macosx_deps: check if jpeg is installed, if not - upgrade it.
needs_compile: Check if $TRAVIS_COMMIT_RANGE is valid, if not, rewrite
the range with the correct one, and fix git ambiguous argument error.

* Changed detection method and removed commments
2017-08-20 17:27:26 +02:00

55 lines
1.4 KiB
Bash

#!/bin/bash -e
set_linux_compiler_env() {
if [[ "${COMPILER}" == "gcc-5.1" ]]; then
export CC=gcc-5.1
export CXX=g++-5.1
elif [[ "${COMPILER}" == "gcc-6" ]]; then
export CC=gcc-6
export CXX=g++-6
elif [[ "${COMPILER}" == "gcc-7" ]]; then
export CC=gcc-7
export CXX=g++-7
elif [[ "${COMPILER}" == "clang-3.6" ]]; then
export CC=clang-3.6
export CXX=clang++-3.6
elif [[ "${COMPILER}" == "clang-4.0" ]]; then
export CC=clang-4.0
export CXX=clang++-4.0
fi
}
# Linux build only
install_linux_deps() {
sudo apt-get update
sudo apt-get install libirrlicht-dev cmake libbz2-dev libpng12-dev \
libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev \
libhiredis-dev libogg-dev libgmp-dev libvorbis-dev libopenal-dev \
gettext libpq-dev libleveldb-dev
}
# Mac OSX build only
install_macosx_deps() {
brew update
brew install freetype gettext hiredis irrlicht leveldb libogg libvorbis luajit
if brew ls | grep -q jpeg; then
brew upgrade jpeg
else
brew install jpeg
fi
#brew upgrade postgresql
}
# Relative to git-repository root:
TRIGGER_COMPILE_PATHS="src/.*\.(c|cpp|h)|CMakeLists.txt|cmake/Modules/|util/travis/|util/buildbot/"
needs_compile() {
RANGE="$TRAVIS_COMMIT_RANGE"
if [[ "$(git diff --name-only $RANGE -- 2>/dev/null)" == "" ]]; then
RANGE="$TRAVIS_COMMIT^...$TRAVIS_COMMIT"
echo "Fixed range: $RANGE"
fi
git diff --name-only $RANGE -- | egrep -q "^($TRIGGER_COMPILE_PATHS)"
}