dpdk/.travis.yml
<<
>>
Prefs
   1# default values for all jobs
   2language: c
   3cache:
   4  ccache: true
   5  directories:
   6    - libabigail
   7    - reference
   8
   9dist: bionic
  10
  11os: linux
  12
  13addons:
  14  apt:
  15    update: true
  16    packages: &required_packages
  17      - [libnuma-dev, python3-setuptools, python3-wheel, python3-pip, python3-pyelftools, ninja-build]
  18      - [libbsd-dev, libpcap-dev, libibverbs-dev, libcrypto++-dev, libfdt-dev, libjansson-dev]
  19
  20_aarch64_packages: &aarch64_packages
  21  - *required_packages
  22  - [gcc-aarch64-linux-gnu, libc6-dev-arm64-cross, pkg-config-aarch64-linux-gnu]
  23
  24_aarch64_clang_packages: &aarch64_clang_packages
  25  - *required_packages
  26  - [libgcc-7-dev-arm64-cross, libatomic1-arm64-cross, libc6-dev-arm64-cross, pkg-config-aarch64-linux-gnu]
  27
  28_libabigail_build_packages: &libabigail_build_packages
  29  - [autoconf, automake, libtool, pkg-config, libxml2-dev, libdw-dev]
  30
  31_build_32b_packages: &build_32b_packages
  32  - *required_packages
  33  - [gcc-multilib]
  34
  35_doc_packages: &doc_packages
  36  - [doxygen, graphviz, python3-sphinx]
  37
  38before_install: ./.ci/${TRAVIS_OS_NAME}-setup.sh
  39script: ./.ci/${TRAVIS_OS_NAME}-build.sh
  40
  41env:
  42  global:
  43    - LIBABIGAIL_VERSION=libabigail-1.8
  44    - REF_GIT_TAG=v21.02
  45
  46jobs:
  47  include:
  48  # x86_64 gcc jobs
  49  - env: DEF_LIB="static"
  50    arch: amd64
  51    compiler: gcc
  52  - env: DEF_LIB="shared" RUN_TESTS=true
  53    arch: amd64
  54    compiler: gcc
  55  - env: DEF_LIB="shared" BUILD_DOCS=true
  56    arch: amd64
  57    compiler: gcc
  58    addons:
  59      apt:
  60        packages:
  61          - *required_packages
  62          - *doc_packages
  63  - env: DEF_LIB="shared" ABI_CHECKS=true
  64    arch: amd64
  65    compiler: gcc
  66    addons:
  67      apt:
  68        packages:
  69          - *required_packages
  70          - *libabigail_build_packages
  71  # x86_64 clang jobs
  72  - env: DEF_LIB="static"
  73    arch: amd64
  74    compiler: clang
  75  - env: DEF_LIB="shared" RUN_TESTS=true
  76    arch: amd64
  77    compiler: clang
  78  - env: DEF_LIB="shared" BUILD_DOCS=true
  79    arch: amd64
  80    compiler: clang
  81    addons:
  82      apt:
  83        packages:
  84          - *required_packages
  85          - *doc_packages
  86  # x86_64 cross-compiling 32-bits jobs
  87  - env: DEF_LIB="static" BUILD_32BIT=true
  88    arch: amd64
  89    compiler: gcc
  90    addons:
  91      apt:
  92        packages:
  93          - *build_32b_packages
  94  # x86_64 cross-compiling aarch64 jobs
  95  - env: DEF_LIB="static" AARCH64=true
  96    arch: amd64
  97    compiler: gcc
  98    addons:
  99      apt:
 100        packages:
 101          - *aarch64_packages
 102  - env: DEF_LIB="shared" AARCH64=true
 103    arch: amd64
 104    compiler: gcc
 105    addons:
 106      apt:
 107        packages:
 108          - *aarch64_packages
 109  - env: DEF_LIB="static" AARCH64=true
 110    arch: amd64
 111    compiler: clang
 112    addons:
 113      apt:
 114        packages:
 115          - *aarch64_clang_packages
 116  - env: DEF_LIB="shared" AARCH64=true
 117    arch: amd64
 118    compiler: clang
 119    addons:
 120      apt:
 121        packages:
 122          - *aarch64_clang_packages
 123  # aarch64 gcc jobs
 124  - env: DEF_LIB="static"
 125    dist: focal
 126    arch: arm64-graviton2
 127    virt: vm
 128    group: edge
 129    compiler: gcc
 130  - env: DEF_LIB="shared" RUN_TESTS=true
 131    dist: focal
 132    arch: arm64-graviton2
 133    virt: vm
 134    group: edge
 135    compiler: gcc
 136  - env: DEF_LIB="shared" BUILD_DOCS=true
 137    dist: focal
 138    arch: arm64-graviton2
 139    virt: vm
 140    group: edge
 141    compiler: gcc
 142    addons:
 143      apt:
 144        packages:
 145          - *required_packages
 146          - *doc_packages
 147  - env: DEF_LIB="shared" ABI_CHECKS=true
 148    dist: focal
 149    arch: arm64-graviton2
 150    virt: vm
 151    group: edge
 152    compiler: gcc
 153    addons:
 154      apt:
 155        packages:
 156          - *required_packages
 157          - *libabigail_build_packages
 158  # aarch64 clang jobs
 159  - env: DEF_LIB="static"
 160    dist: focal
 161    arch: arm64-graviton2
 162    virt: vm
 163    group: edge
 164    compiler: clang
 165  - env: DEF_LIB="shared" RUN_TESTS=true
 166    dist: focal
 167    arch: arm64-graviton2
 168    virt: vm
 169    group: edge
 170    compiler: clang
 171