From dba2bee71341165b19358231edbf8f2537a93462 Mon Sep 17 00:00:00 2001 From: Paulo Matos Date: Fri, 21 Dec 2018 09:35:09 +0100 Subject: [PATCH] Add scan-build support using llvm-8 to racket and racketcs build --- .gitlab-ci.yml | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a652ba10af..da0a6a580f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -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: