Revision f8a7d6c933c4f84d39c07083de531b541c948137 authored by Tamas Nepusz on 07 August 2022, 21:11:11 UTC, committed by Tamas Nepusz on 07 August 2022, 21:11:11 UTC
1 parent 26498e6
Raw File
.travis.yml
language: c
cache: ccache
os: linux
dist: xenial

env:
  global:
    - CMAKE_BUILD_TYPE=Release  # use release build
    - CMAKE_GENERATOR=Ninja     # build with ninja instead of make
    - CTEST_PARALLEL_LEVEL=2    # run tests in parallel
    - PATH="/snap/bin:$PATH"    # needed in order to run the cmake installed with snap

addons:
  apt:
    packages:
      - ninja-build
      - git
      - colordiff
  snaps:
    - name: cmake
      confinement: classic

# configuration (running cmake) is in before_script
# if this phase fails, the build stops immediately
before_script:
  - mkdir build && cd build
  - cmake .. -DBUILD_SHARED_LIBS=ON -DUSE_SANITIZER=Address\;Undefined

# building and testing is in script
# use && to ensure that ctest is not run if the build failed
script:
  - cmake --build . && ctest --output-on-failure

jobs:
  include:
    - name: "Linux arm64"
      os: linux
      arch: arm64-graviton2 # faster than arm64

    - name: "Linux ppc64"
      os: linux
      arch: ppc64le
      # Do not enable ASAN; segfaults on this platform with an empty stack.
      before_script:
         - mkdir build && cd build
         - cmake .. -DBUILD_SHARED_LIBS=ON

    - name: "Linux s390x"
      os: linux
      arch: s390x
      # Do not enable ASAN; not supported on this platform.
      before_script:
         - mkdir build && cd build
         - cmake .. -DBUILD_SHARED_LIBS=ON

notifications:
  email:
    on_success: change
    on_failure: always
back to top