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