X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=blobdiff_plain;f=.travis.yml;h=14f812423385804765044babf7eb821435012df7;hp=a1c31d407e7f348d36b5e1954b801826d04d6134;hb=a617494eeb01ff3839e61a6b21259fbb19b1218b;hpb=098cc0fea3be3094a5f0691d1ae501c83fe0d687 diff --git a/.travis.yml b/.travis.yml index a1c31d407e..14f8124233 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,119 +1,133 @@ +# default values for all jobs language: c -cache: ccache -compiler: - - gcc - - clang +cache: + ccache: true + directories: + - libabigail + - reference -dist: xenial +dist: bionic -os: - - linux +os: linux addons: apt: update: true packages: &required_packages - - [libnuma-dev, linux-headers-$(uname -r), python3-setuptools, python3-wheel, python3-pip, ninja-build] + - [libnuma-dev, python3-setuptools, python3-wheel, python3-pip, ninja-build] + - [libbsd-dev, libpcap-dev, libibverbs-dev, libcrypto++-dev, libfdt-dev, libjansson-dev] -aarch64_packages: &aarch64_packages +_aarch64_packages: &aarch64_packages - *required_packages - - [gcc-aarch64-linux-gnu, libc6-dev-arm64-cross] + - [gcc-aarch64-linux-gnu, libc6-dev-arm64-cross, pkg-config-aarch64-linux-gnu] -extra_packages: &extra_packages +_libabigail_build_packages: &libabigail_build_packages + - [autoconf, automake, libtool, pkg-config, libxml2-dev, libdw-dev] + +_build_32b_packages: &build_32b_packages - *required_packages - - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4] + - [gcc-multilib] -doc_packages: &doc_packages +_doc_packages: &doc_packages - [doxygen, graphviz, python3-sphinx] before_install: ./.ci/${TRAVIS_OS_NAME}-setup.sh +script: ./.ci/${TRAVIS_OS_NAME}-build.sh env: - - DEF_LIB="static" - - DEF_LIB="shared" - - DEF_LIB="static" OPTS="-Denable_kmods=false" - - DEF_LIB="shared" OPTS="-Denable_kmods=false" - - DEF_LIB="shared" RUN_TESTS=1 + global: + - REF_GIT_TAG=v20.05 -matrix: +jobs: include: - - env: DEF_LIB="static" OPTS="-Denable_kmods=false" AARCH64=1 + # x86_64 gcc jobs + - env: DEF_LIB="static" + arch: amd64 compiler: gcc - addons: - apt: - packages: - - *aarch64_packages - - env: DEF_LIB="shared" OPTS="-Denable_kmods=false" AARCH64=1 + - env: DEF_LIB="shared" RUN_TESTS=1 + arch: amd64 + compiler: gcc + - env: DEF_LIB="shared" BUILD_DOCS=1 + arch: amd64 compiler: gcc addons: apt: packages: - - *aarch64_packages - - env: DEF_LIB="static" EXTRA_PACKAGES=1 + - *required_packages + - *doc_packages + - env: DEF_LIB="shared" ABI_CHECKS=1 + arch: amd64 compiler: gcc addons: apt: packages: - - *extra_packages - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1 - compiler: gcc + - *required_packages + - *libabigail_build_packages + # x86_64 clang jobs + - env: DEF_LIB="static" + arch: amd64 + compiler: clang + - env: DEF_LIB="shared" RUN_TESTS=1 + arch: amd64 + compiler: clang + - env: DEF_LIB="shared" BUILD_DOCS=1 + arch: amd64 + compiler: clang addons: apt: packages: - - *extra_packages + - *required_packages - *doc_packages - - env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1 + # x86_64 cross-compiling 32-bits jobs + - env: DEF_LIB="static" BUILD_32BIT=1 + arch: amd64 compiler: gcc addons: apt: packages: - - *extra_packages - - env: DEF_LIB="shared" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1 + - *build_32b_packages + # x86_64 cross-compiling aarch64 jobs + - env: DEF_LIB="static" AARCH64=1 + arch: amd64 compiler: gcc addons: apt: packages: - - *extra_packages - - env: DEF_LIB="static" EXTRA_PACKAGES=1 - compiler: clang - addons: - apt: - packages: - - *extra_packages - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 - compiler: clang + - *aarch64_packages + - env: DEF_LIB="shared" AARCH64=1 + arch: amd64 + compiler: gcc addons: apt: packages: - - *extra_packages - - env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1 - compiler: clang + - *aarch64_packages + # aarch64 gcc jobs + - env: DEF_LIB="static" + arch: arm64 + compiler: gcc + - env: DEF_LIB="shared" RUN_TESTS=1 + arch: arm64 + compiler: gcc + - env: DEF_LIB="shared" BUILD_DOCS=1 + arch: arm64 + compiler: gcc addons: apt: packages: - - *extra_packages + - *required_packages - *doc_packages - - env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1 - compiler: clang - addons: - apt: - packages: - - *extra_packages - - env: DEF_LIB="shared" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1 - compiler: clang - addons: - apt: - packages: - - *extra_packages - - env: DEF_LIB="static" OPTS="-Db_lto=true" EXTRA_PACKAGES=1 CC=gcc-7 + - env: DEF_LIB="shared" ABI_CHECKS=1 + arch: arm64 compiler: gcc addons: apt: - sources: - - ubuntu-toolchain-r-test packages: - - *extra_packages - - gcc-7 - - -script: ./.ci/${TRAVIS_OS_NAME}-build.sh + - *required_packages + - *libabigail_build_packages + # aarch64 clang jobs + - env: DEF_LIB="static" + arch: arm64 + compiler: clang + - env: DEF_LIB="shared" RUN_TESTS=1 + arch: arm64 + compiler: clang