Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.36 KiB
Newer Older
  • Learn to ignore specific revisions
  • image: "flowdalic/debian-dev:1.11"
    
    before_script:
      - apt-get update && apt-get install -y nasm
      - apt-get install -y -t testing valgrind
      - |
        TOOLS="cc c++ clang clang++ gcc g++ clang-tidy clang meson nasm include-what-you-use valgrind"
        for tool in $TOOLS; do
          echo "$tool version"
          $tool --version
        done
    
    stages:
      - smoke-test
    
    
    smoke-test:
      stage: smoke-test
      script: make smoke-test
    
    
    variables:
      BUILDDTYPE: debugoptmized
      CC: gcc
      CXX: g++
      EXTRA_NINJA_ARGS: -v
    
    .test:
      stage: test
      script:
        - make test
    
    .gcc:
      variables:
        CC: gcc
        CXX: g++
    
    .clang:
      variables:
        CC: clang
        CXX: clang++
    
    .emper-worker-no-sleep:
      variables:
        EMPER_WORKER_SLEEP: 'false'
    
    .emper-worker-stats:
      variables:
        EMPER_WORKER_STATS: 'true'
    
    .release-build:
      variables:
        BUILDTYPE: release
    
    .debug-build:
      variables:
        BUILDTYPE: debug
    
    test-gcc:
      extends:
        - .test
        - .gcc
    
    test-gcc-release:
      extends:
        - test-gcc
        - .release-build
    
    test-gcc-debug:
      extends:
        - test-gcc
        - .debug-build
    
    test-clang:
      extends:
        - .test
        - .clang
    
    test-clang-release:
      extends:
        - test-clang
        - .release-build
    
    test-clang-debug:
      extends:
        - test-clang
        - .debug-build
    
    test-worker-no-sleep:
      extends:
        - .test
        - .emper-worker-no-sleep
    
    test-with-stats:
      extends:
        - .test
        - .emper-worker-stats