12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #!/bin/sh
- #
- # This scripts attempts to build the project via cov-build utility, and prepare
- # a package for uploading to the coverity scan service.
- #
- # (See http://scan.coverity.com for more info.)
- set -e
- # Check presence of coverity static analyzer.
- if ! which cov-build; then
- echo "Utility cov-build not found in PATH."
- exit 1
- fi
- # Choose a build system (ninja or GNU make).
- if which ninja; then
- BUILD_TOOL=ninja
- GENERATOR=Ninja
- elif which make; then
- BUILD_TOOL=make
- GENERATOR="MSYS Makefiles"
- else
- echo "No suitable build system found."
- exit 1
- fi
- # Choose a zip tool.
- if which 7za; then
- MKZIP="7za a -r -mx9"
- elif which 7z; then
- MKZIP="7z a -r -mx9"
- elif which zip; then
- MKZIP="zip -r"
- else
- echo "No suitable zip utility found"
- exit 1
- fi
- # Change dir to project root.
- cd `dirname "$0"`/..
- CWD=`pwd`
- ROOT_DIR="$CWD"
- BUILD_DIR="$CWD/coverity"
- OUTPUT="$CWD/cov-int.zip"
- # Sanity checks.
- if [ ! -x "$ROOT_DIR/scripts/coverity.sh" ]; then
- echo "There is some path mismatch."
- exit 1
- fi
- if [ -e "$BUILD_DIR" ]; then
- echo "Path $BUILD_DIR already exists. Delete it and retry."
- exit 1
- fi
- if [ -e "$OUTPUT" ]; then
- echo "Path $OUTPUT already exists. Delete it and retry."
- exit 1
- fi
- # Build the project with the Coverity analyzes enabled.
- mkdir -p "$BUILD_DIR"
- cd "$BUILD_DIR"
- cmake -G "$GENERATOR" "$ROOT_DIR"
- cov-build --dir cov-int "$BUILD_TOOL"
- $MKZIP "$OUTPUT" "cov-int"
- cd "$ROOT_DIR"
- rm -rf "$BUILD_DIR"
|