.gitlab-ci.yml 1.29 KB
Newer Older
1 2 3
stages:
  - build

4 5 6 7 8
before_script:
  - apt-get -y update
  - apt-get -y install build-essential libgtk-3-doc lcov
  - apt-get -y build-dep .

9
build-debian-gcc:
10 11 12 13 14 15
  image: debian:buster
  tags:
    - librem5
  stage: build
  script:
    - export LC_ALL=C.UTF-8
16
    - meson . _build -Dgtk_doc=true -Db_coverage=true --werror
17
    - ninja -C _build
Guido Gunther's avatar
Guido Gunther committed
18
    - ninja -C _build meson-libhandy-doc 2>&1 | tee _build/doc/buildlog
19
    - if grep -qs 'warning' _build/doc/buildlog; then exit 1; fi
20
    - xvfb-run ninja -C _build test
21 22 23 24 25 26
    - ninja -C _build coverage
  coverage: '/^\s+lines\.+:\s+([\d.]+\%)\s+/'
  artifacts:
    when: always
    paths:
      - _build
27

28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
build-debian-clang:
  image: debian:buster
  before_script:
    - apt-get -y update
    - apt-get -y install build-essential clang-3.9
    - apt-get -y build-dep .
  tags:
    - librem5
  stage: build
  script:
    - export LC_ALL=C.UTF-8
    - meson . _build
    # With meson 0.49 we can do
    # SCANBUILD="scan-build --status-bugs" ninja scan-build
    # https://github.com/mesonbuild/meson/commit/1e7aea65e68a43b0319a4a28908daddfec621548
    - ninja -C _build scan-build
  artifacts:
    when: always
    paths:
      - _build/meson-logs/scanbuild

49 50 51 52 53 54 55
build-debian-package:
  image: debian:buster
  tags:
    - librem5
  stage: build
  script:
    - dpkg-buildpackage -uc -us