Explorar el Código

Use cppcheck 1.73

This removes all the "pass by reference" warnings
Stefan Profanter hace 8 años
padre
commit
25d4d52499
Se han modificado 2 ficheros con 26 adiciones y 3 borrados
  1. 0 1
      .travis.yml
  2. 26 2
      tools/travis/travis_linux_before_install.sh

+ 0 - 1
.travis.yml

@@ -42,7 +42,6 @@ addons:
       - build-essential
       - clang
       - cmake
-      - cppcheck
       - gcc-4.8
       - gcc-mingw-w64-i686
       - gcc-multilib

+ 26 - 2
tools/travis/travis_linux_before_install.sh

@@ -2,8 +2,32 @@
 set -ev
 
 if [ $ANALYZE = "true" ]; then
-  	g++ --version
-  	cppcheck --version
+
+	cd $LOCAL_PKG
+	# travis caches the $LOCAL_PKG dir. If it is loaded, we don't need to reinstall the packages
+	if [ "$CC" = "clang" ]; then
+		clang --version
+	else
+
+		if [ ! -f $LOCAL_PKG/.cached_analyze ]; then
+
+			# Install newer cppcheck
+			wget https://github.com/danmar/cppcheck/archive/1.73.tar.gz -O cppcheck-1.73.tar.gz
+			tar xf cppcheck-1.73.tar.gz
+			cd $LOCAL_PKG/cppcheck-1.73
+			make SRCDIR=build CFGDIR="$LOCAL_PKG/cppcheck-1.73/cfg" HAVE_RULES=yes CXXFLAGS="-O2 -DNDEBUG -Wall -Wno-sign-compare -Wno-unused-function" -j8
+			ln -s $LOCAL_PKG/cppcheck-1.73/cppcheck $LOCAL_PKG/cppcheck
+
+			# create cached flag
+			touch $LOCAL_PKG/.cached_analyze
+		else
+			echo "\n## Using local packages from cache\n"
+		fi
+
+		g++ --version
+		cppcheck --version
+	fi
+
 else
 	cd $LOCAL_PKG