X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=blobdiff_plain;f=.travis.yml;h=14f812423385804765044babf7eb821435012df7;hp=3d6ef2959c1b42f67db643688049675e08a892ba;hb=7194e9ee66d6f229862e9293fed358061fb93daf;hpb=7632da0b875f0e2ca9b5c1bc03e8a43bc25c9f9e diff --git a/.travis.yml b/.travis.yml index 3d6ef2959c..14f8124233 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,110 +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 + - env: DEF_LIB="shared" ABI_CHECKS=1 + arch: arm64 + compiler: gcc addons: apt: packages: - - *extra_packages - - env: DEF_LIB="shared" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1 + - *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 - addons: - apt: - packages: - - *extra_packages - - -script: ./.ci/${TRAVIS_OS_NAME}-build.sh