You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
2.3 KiB
55 lines
2.3 KiB
variables: |
|
DEBIAN_FRONTEND: "noninteractive" |
|
|
|
include: |
|
- https://invent.kde.org/sysadmin/ci-tooling/raw/master/invent/ci-before.yml |
|
- https://invent.kde.org/sysadmin/ci-tooling/raw/master/invent/ci-applications-linux.yml |
|
|
|
build_ubuntu_20_04: |
|
stage: build |
|
image: ubuntu:focal |
|
only: |
|
- merge_requests |
|
before_script: |
|
- sed -i -e 's/# deb-src/deb-src/g' /etc/apt/sources.list |
|
- apt-get update |
|
- apt-get install --yes eatmydata |
|
- eatmydata apt-get build-dep --yes --no-install-recommends okular |
|
- eatmydata apt-get install --yes --no-install-recommends ninja-build |
|
script: |
|
- mkdir -p build && cd build |
|
- cmake -DOKULAR_UI=desktop -G Ninja .. |
|
- ninja |
|
- rm -rf * |
|
- cmake -DOKULAR_UI=mobile -G Ninja .. |
|
- ninja |
|
|
|
build_clazy_clang_tidy: |
|
stage: build |
|
image: debian:testing |
|
only: |
|
- merge_requests |
|
before_script: |
|
- echo 'deb-src http://deb.debian.org/debian unstable main' >> /etc/apt/sources.list |
|
- apt-get update |
|
- apt-get install --yes eatmydata |
|
- eatmydata apt-get build-dep --yes --no-install-recommends okular |
|
- eatmydata apt-get install --yes --no-install-recommends ninja-build clazy clang clang-tidy libkf5crash-dev libkf5purpose-dev libegl-dev jq |
|
|
|
script: |
|
- srcdir=`pwd` && mkdir -p /tmp/okular_build && cd /tmp/okular_build && CC=clang CXX=clazy CXXFLAGS="-Werror -Wno-deprecated-declarations" cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G Ninja $srcdir && cat compile_commands.json | jq '[.[] | select(.file | contains("'"$srcdir"'"))]' > compile_commands.aux.json && cat compile_commands.aux.json | jq '[.[] | select(.file | contains("/synctex/")| not)]' > compile_commands.json && cp "$srcdir/.clang-tidy" . |
|
- CLAZY_IGNORE_DIRS="settings_core.[cpp|h]|settings.[cpp.h]|pdfsettings.h|gssettings.h" CLAZY_CHECKS="level0,level1,level2,no-ctor-missing-parent-argument,isempty-vs-count,qhash-with-char-pointer-key,raw-environment-function,qproperty-type-mismatch" ninja |
|
- run-clang-tidy |
|
|
|
clang_format: |
|
stage: build |
|
image: debian:testing |
|
only: |
|
- merge_requests |
|
- master |
|
before_script: |
|
- apt-get update |
|
- apt-get install --yes --no-install-recommends git clang-format-11 |
|
script: |
|
- find . \( -name "*.cpp" -or -name "*.h" -or -name "*.c" -or -name "*.cc" \) -exec clang-format-11 -i {} \; |
|
- git diff --exit-code
|
|
|