[ci] Enable Clang Static Analyzer
parent
2a46f460b5
commit
48ed97624d
65
.travis.yml
65
.travis.yml
|
@ -5,9 +5,14 @@ language: bash
|
||||||
services:
|
services:
|
||||||
- docker
|
- docker
|
||||||
|
|
||||||
|
branches:
|
||||||
|
except:
|
||||||
|
- gh-pages
|
||||||
|
|
||||||
before_install:
|
before_install:
|
||||||
- curl -Ls -o docker-build https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/docker-build
|
- curl -Ls -o docker-build https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/docker-build
|
||||||
- chmod +x docker-build
|
- curl -Ls -o gen-index https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/gen-index.sh
|
||||||
|
- chmod +x docker-build gen-index
|
||||||
|
|
||||||
install:
|
install:
|
||||||
- sudo apt-get install -y python3-pip python3-setuptools
|
- sudo apt-get install -y python3-pip python3-setuptools
|
||||||
|
@ -16,9 +21,19 @@ install:
|
||||||
- ./docker-build --name ${DISTRO} --config .travis.yml --install
|
- ./docker-build --name ${DISTRO} --config .travis.yml --install
|
||||||
|
|
||||||
script:
|
script:
|
||||||
- ./docker-build --name ${DISTRO} --verbose --config .travis.yml --build autotools
|
- ./docker-build --name ${DISTRO} --verbose --config .travis.yml --build scripts
|
||||||
|
|
||||||
deploy:
|
deploy:
|
||||||
|
- provider: pages
|
||||||
|
github-token: $GITHUB_TOKEN
|
||||||
|
#keep-history: true
|
||||||
|
skip_cleanup: true
|
||||||
|
committer-from-gh: true
|
||||||
|
target-branch: gh-pages
|
||||||
|
local-dir: html-report
|
||||||
|
on:
|
||||||
|
all_branches: true
|
||||||
|
condition: ${DISTRO} =~ ^fedora.*$
|
||||||
- provider: script
|
- provider: script
|
||||||
script: ./docker-build --verbose --config .travis.yml --release github
|
script: ./docker-build --verbose --config .travis.yml --release github
|
||||||
skip_cleanup: true
|
skip_cleanup: true
|
||||||
|
@ -26,6 +41,17 @@ deploy:
|
||||||
tags: true
|
tags: true
|
||||||
condition: "${TRAVIS_TAG} =~ ^v.*$ && ${DISTRO} =~ ^fedora.*$"
|
condition: "${TRAVIS_TAG} =~ ^v.*$ && ${DISTRO} =~ ^fedora.*$"
|
||||||
|
|
||||||
|
after_success:
|
||||||
|
- 'if [[ "$TRAVIS_SECURE_ENV_VARS" == "true" && "$TRAVIS_PULL_REQUEST" != "false" && ${DISTRO} =~ ^fedora.*$ ]]; then
|
||||||
|
REPO_SLUG_ARRAY=(${TRAVIS_REPO_SLUG//\// });
|
||||||
|
REPO_NAME=${REPO_SLUG_ARRAY[1]};
|
||||||
|
URL="https://${REPO_NAME}.mate-desktop.dev";
|
||||||
|
COMMENT="Code analysis completed";
|
||||||
|
curl -H "Authorization: token $GITHUB_TOKEN" -X POST
|
||||||
|
-d "{\"state\": \"success\", \"description\": \"$COMMENT\", \"context\":\"scan-build\", \"target_url\": \"$URL\"}"
|
||||||
|
https://api.github.com/repos/${TRAVIS_REPO_SLUG}/statuses/${TRAVIS_PULL_REQUEST_SHA};
|
||||||
|
fi'
|
||||||
|
|
||||||
env:
|
env:
|
||||||
- DISTRO="archlinux/base"
|
- DISTRO="archlinux/base"
|
||||||
- DISTRO="debian:sid"
|
- DISTRO="debian:sid"
|
||||||
|
@ -38,6 +64,7 @@ env:
|
||||||
requires:
|
requires:
|
||||||
archlinux:
|
archlinux:
|
||||||
# Useful URL: https://git.archlinux.org/svntogit/community.git/tree/mate-terminal
|
# Useful URL: https://git.archlinux.org/svntogit/community.git/tree/mate-terminal
|
||||||
|
- clang
|
||||||
- gcc
|
- gcc
|
||||||
- git
|
- git
|
||||||
- intltool
|
- intltool
|
||||||
|
@ -52,6 +79,9 @@ requires:
|
||||||
debian:
|
debian:
|
||||||
# Useful URL: https://github.com/mate-desktop/debian-packages
|
# Useful URL: https://github.com/mate-desktop/debian-packages
|
||||||
# Useful URL: https://salsa.debian.org/debian-mate-team/mate-terminal
|
# Useful URL: https://salsa.debian.org/debian-mate-team/mate-terminal
|
||||||
|
- clang
|
||||||
|
- clang-tools
|
||||||
|
- gcc
|
||||||
- git
|
- git
|
||||||
- intltool
|
- intltool
|
||||||
- intltool
|
- intltool
|
||||||
|
@ -67,6 +97,8 @@ requires:
|
||||||
|
|
||||||
fedora:
|
fedora:
|
||||||
# Useful URL: https://src.fedoraproject.org/cgit/rpms/mate-terminal.git
|
# Useful URL: https://src.fedoraproject.org/cgit/rpms/mate-terminal.git
|
||||||
|
- clang
|
||||||
|
- clang-analyzer
|
||||||
- gcc
|
- gcc
|
||||||
- dconf-devel
|
- dconf-devel
|
||||||
- desktop-file-utils
|
- desktop-file-utils
|
||||||
|
@ -79,6 +111,8 @@ requires:
|
||||||
- vte291-devel
|
- vte291-devel
|
||||||
|
|
||||||
ubuntu:
|
ubuntu:
|
||||||
|
- clang
|
||||||
|
- clang-tools
|
||||||
- git
|
- git
|
||||||
- intltool
|
- intltool
|
||||||
- intltool
|
- intltool
|
||||||
|
@ -94,6 +128,21 @@ requires:
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
- CFLAGS="-Wall -Werror=format-security"
|
- CFLAGS="-Wall -Werror=format-security"
|
||||||
|
- 'CHECKERS="
|
||||||
|
-enable-checker deadcode.DeadStores
|
||||||
|
-enable-checker alpha.core.CastSize
|
||||||
|
-enable-checker alpha.core.CastToStruct
|
||||||
|
-enable-checker alpha.core.IdenticalExpr
|
||||||
|
-enable-checker alpha.core.SizeofPtr
|
||||||
|
-enable-checker alpha.security.ArrayBoundV2
|
||||||
|
-enable-checker alpha.security.MallocOverflow
|
||||||
|
-enable-checker alpha.security.ReturnPtrRange
|
||||||
|
-enable-checker alpha.unix.SimpleStream
|
||||||
|
-enable-checker alpha.unix.cstring.BufferOverlap
|
||||||
|
-enable-checker alpha.unix.cstring.NotNullTerminated
|
||||||
|
-enable-checker alpha.unix.cstring.OutOfBounds
|
||||||
|
-enable-checker alpha.core.FixedAddr
|
||||||
|
-enable-checker security.insecureAPI.strcpy"'
|
||||||
|
|
||||||
before_scripts:
|
before_scripts:
|
||||||
- if [ ${DISTRO_NAME} == "debian" ];then
|
- if [ ${DISTRO_NAME} == "debian" ];then
|
||||||
|
@ -101,7 +150,19 @@ before_scripts:
|
||||||
- bash ./debian.sh
|
- bash ./debian.sh
|
||||||
- fi
|
- fi
|
||||||
|
|
||||||
|
build_scripts:
|
||||||
|
- ./autogen.sh
|
||||||
|
- scan-build $CHECKERS ./configure
|
||||||
|
- if [ $CPU_COUNT -gt 1 ]; then
|
||||||
|
- scan-build $CHECKERS --keep-cc -o html-report make -j $CPU_COUNT
|
||||||
|
- else
|
||||||
|
- scan-build $CHECKERS --keep-cc -o html-report make
|
||||||
|
- fi
|
||||||
|
|
||||||
after_scripts:
|
after_scripts:
|
||||||
|
- if [ ${DISTRO_NAME} == "fedora" ];then
|
||||||
|
- ./gen-index -i https://github.com/${OWNER_NAME}/mate-icon-theme/raw/master/mate/16x16/apps/utilities-terminal.png
|
||||||
|
- fi
|
||||||
- make distcheck
|
- make distcheck
|
||||||
|
|
||||||
releases:
|
releases:
|
||||||
|
|
Loading…
Reference in New Issue