| env: |
| CIRRUS_CLONE_DEPTH: 3 # The internal git client reads CIRRUS_CLONE_DEPTH. |
| LIBPCAP_GIT: https://github.com/the-tcpdump-group/libpcap.git |
| |
| freebsd_task: |
| name: freebsd-amd64 |
| only_if: $CIRRUS_BRANCH != 'coverity_scan' |
| freebsd_instance: |
| # FreeBSD fails to start with 1 GB. 8 CPUs max concurrency. |
| # The number of CPU cores must be either 1 or a multiple of 2. |
| matrix: |
| - image_family: freebsd-12-3 |
| cpu: 2 |
| memory: 2G |
| - image_family: freebsd-13-1 |
| cpu: 2 |
| memory: 2G |
| env: |
| IGNORE_OSVERSION: yes |
| MAKEFLAGS: -j 3 |
| MATRIX_CC: clang14 gcc12 |
| script: |
| - pkg install -qy git autoconf gcc12 llvm14 |
| - pkg install -qy cmake # for build_matrix.sh and build.sh |
| - pkg install -qy pkgconf # for cmake, replaces pkg-config |
| - pkg install -qy sudo # for some tcpdump commands |
| - echo '$ git clone [...] libpcap.git' |
| - git -C .. clone --depth ${CIRRUS_CLONE_DEPTH} --branch=master --quiet ${LIBPCAP_GIT} |
| - ./build_matrix.sh |
| |
| linux_task: |
| name: linux-amd64 |
| only_if: $CIRRUS_BRANCH != 'coverity_scan' |
| container: |
| # Linux works just fine with 1 GB. 16 CPUs max concurrency. |
| # The number of CPU cores must be either 1 or a multiple of 2. |
| cpu: 4 |
| memory: 1G |
| image: ubuntu:22.04 |
| env: |
| DEBIAN_FRONTEND: noninteractive |
| MAKEFLAGS: -j 5 |
| script: |
| - apt-get -qy update >/dev/null |
| - apt-get -qy install git autoconf make cmake clang gcc bc >/dev/null |
| - apt-get -qy install flex bison libdbus-1-dev libbluetooth-dev libnl-genl-3-dev libibverbs-dev >/dev/null # for libpcap |
| - apt-get -qy install libssl-dev libsmi2-dev libcap-ng-dev libpcap-dev >/dev/null |
| - apt-get -qy install sudo >/dev/null # for some tcpdump commands |
| - apt list --installed 'lib*-dev' |
| - echo '$ git clone [...] libpcap.git' |
| - git -C .. clone --depth ${CIRRUS_CLONE_DEPTH} --branch=master --quiet ${LIBPCAP_GIT} |
| - ./configure --quiet # build the Makefile |
| - make releasecheck |
| - make whitespacecheck |
| - ./build_matrix.sh |
| |
| macos_task: |
| name: macos-aarch64 |
| only_if: $CIRRUS_BRANCH != 'coverity_scan' |
| macos_instance: |
| image: ghcr.io/cirruslabs/macos-ventura-xcode:14.1 # macOS 13 with Xcode 14.1 |
| env: |
| MAKEFLAGS: '-j 4' |
| script: |
| - brew update >/dev/null |
| - brew install libsmi | grep -v '%' |
| - echo '$ git clone [...] libpcap.git' |
| - git -C .. clone --depth ${CIRRUS_CLONE_DEPTH} --branch=master --quiet ${LIBPCAP_GIT} |
| - ./build_matrix.sh |
| |
| coverity_task: |
| name: Coverity Scan |
| only_if: $CIRRUS_BRANCH == 'coverity_scan' |
| container: |
| cpu: 4 |
| memory: 2G |
| image: ubuntu:22.04 |
| env: |
| DEBIAN_FRONTEND: noninteractive |
| MAKEFLAGS: -j 5 |
| COVERITY_SCAN_PROJECT_NAME: $CIRRUS_REPO_FULL_NAME |
| COVERITY_SCAN_TOKEN: ENCRYPTED[1b6f994cabfe74267ce2dce81fd9e49f694e9cfe69fb99f7d1580907bec1266efd7b38df3a47ccab53d5af98636f8e9c] |
| COVERITY_SCAN_BUILD_COMMAND_PREPEND: ./configure |
| COVERITY_SCAN_BUILD_COMMAND: make |
| script: |
| - apt-get -qy update >/dev/null |
| - apt-get -qy install autoconf make gcc >/dev/null |
| - apt-get -qy install libssl-dev libsmi2-dev libcap-ng-dev libpcap-dev >/dev/null |
| - apt-get -qy install git curl wget ruby rubygems ruby-json >/dev/null # for the coverity script |
| - apt list --installed 'lib*-dev' |
| - ./.ci-coverity-scan-build.sh |