Add scan-build support using llvm-8 to racket and racketcs build

This commit is contained in:
Paulo Matos 2018-12-21 09:35:09 +01:00 committed by Sam Tobin-Hochstadt
parent 948dc49e90
commit dba2bee713

View File

@ -7,6 +7,16 @@ image: ubuntu:18.04
- update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8
- export PATH=$PWD/racket/bin:$PATH
.prepare:llvm:
- apt-get update && apt-get install -y git lsb-release make libfontconfig1-dev libcairo2-dev openssl libpango1.0-dev libjpeg-turbo8-dev libncurses5-dev wget gnupg
- echo 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main' >> /etc/apt/sources.list
- echo 'deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic main' >> /etc/apt/sources.list
- wget -O /tmp/llvm.key https://apt.llvm.org/llvm-snapshot.gpg.key
- apt-key add /tmp/llvm.key
- apt-get update
- apt-get install -y clang-8 clang-tools-8 clang-8-doc libclang-common-8-dev libclang-8-dev libclang1-8 clang-format-8 python-clang-8 libz3-dev
- export PATH=$PWD/racket/bin:$PATH
envinfo:
extends: .prepare
script:
@ -15,6 +25,38 @@ envinfo:
- gcc -v
- export
scan-build:racket:
extends: .prepare:llvm
script:
- scan-build-8 -o scan-report make PKGS="" CPUS=2 CONFIGURE_ARGS_qq='CFLAGS="-O0 -g" --disable-strip' in-place
artifacts:
paths:
- scan-report/
scan-build:racket:crosscheck:
extends: .prepare:llvm
script:
- scan-build-8 -o scan-report_cc -analyzer-config 'crosscheck-with-z3=true' make PKGS="" CPUS=2 CONFIGURE_ARGS_qq='CFLAGS="-O0 -g" --disable-strip' in-place
artifacts:
paths:
- scan-report_cc/
scan-build:racketcs:
extends: .prepare:llvm
script:
- scan-build-8 -o scan-report-cs make PKGS="" CPUS=2 CONFIGURE_ARGS_qq='CFLAGS="-O0 -g" --disable-strip' cs
artifacts:
paths:
- scan-report-cs/
scan-build:racketcs:crosscheck:
extends: .prepare:llvm
script:
- scan-build-8 -o scan-report-cs_cc -analyzer-config 'crosscheck-with-z3=true' make PKGS="" CPUS=2 CONFIGURE_ARGS_qq='CFLAGS="-O0 -g" --disable-strip' cs
artifacts:
paths:
- scan-report-cs_cc/
test:ubsan:
extends: .prepare
script: