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