Browse Source

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
Juozas 6 years ago
parent
commit
c8d3d11339
1 changed files with 12 additions and 2 deletions
  1. 12 2
      util/travis/common.sh

+ 12 - 2
util/travis/common.sh

@@ -31,7 +31,12 @@ install_linux_deps() {
 # Mac OSX build only
 install_macosx_deps() {
 	brew update
-	brew install freetype gettext hiredis irrlicht jpeg leveldb libogg libvorbis luajit
+	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
 }
 
@@ -39,6 +44,11 @@ install_macosx_deps() {
 TRIGGER_COMPILE_PATHS="src/.*\.(c|cpp|h)|CMakeLists.txt|cmake/Modules/|util/travis/|util/buildbot/"
 
 needs_compile() {
-	git diff --name-only $TRAVIS_COMMIT_RANGE | egrep -q "^($TRIGGER_COMPILE_PATHS)"
+	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)"
 }