mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Enable ccache for Cirrus builds
This commit is contained in:
parent
4d1b9f4a08
commit
d48a1b520f
18 changed files with 47 additions and 13 deletions
29
.cirrus.yml
29
.cirrus.yml
|
@ -10,14 +10,14 @@ btest_jobs: &BTEST_JOBS 4
|
|||
btest_retries: &BTEST_RETRIES 2
|
||||
memory: &MEMORY 12GB
|
||||
|
||||
config: &CONFIG --build-type=release --disable-broker-tests --prefix=$CIRRUS_WORKING_DIR/install
|
||||
static_config: &STATIC_CONFIG --build-type=release --disable-broker-tests --enable-static-broker --enable-static-binpac --prefix=$CIRRUS_WORKING_DIR/install
|
||||
asan_sanitizer_config: &ASAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=address --enable-fuzzers --enable-coverage --disable-spicy
|
||||
ubsan_sanitizer_config: &UBSAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=undefined --enable-fuzzers --disable-spicy
|
||||
tsan_sanitizer_config: &TSAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=thread --enable-fuzzers --disable-spicy
|
||||
mobile_ipv6_config: &MOBILE_IPV6_CONFIG --build-type=release --enable-mobile-ipv6 --disable-broker-tests --prefix=$CIRRUS_WORKING_DIR/install
|
||||
openssl30_config: &OPENSSL30_CONFIG --build-type=release --disable-broker-tests --with-openssl=/opt/openssl --prefix=$CIRRUS_WORKING_DIR/install
|
||||
homebrew_flex_bison_config: &HOMEBREW_FLEX_BISON_CONFIG --with-flex=/usr/local/opt/flex/bin/flex --with-bison=/usr/local/opt/bison/bin/bison
|
||||
config: &CONFIG --build-type=release --disable-broker-tests --prefix=$CIRRUS_WORKING_DIR/install --ccache
|
||||
static_config: &STATIC_CONFIG --build-type=release --disable-broker-tests --enable-static-broker --enable-static-binpac --prefix=$CIRRUS_WORKING_DIR/install --ccache
|
||||
asan_sanitizer_config: &ASAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=address --enable-fuzzers --enable-coverage --disable-spicy --ccache
|
||||
ubsan_sanitizer_config: &UBSAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=undefined --enable-fuzzers --disable-spicy --ccache
|
||||
tsan_sanitizer_config: &TSAN_SANITIZER_CONFIG --build-type=debug --disable-broker-tests --sanitizers=thread --enable-fuzzers --disable-spicy --ccache
|
||||
mobile_ipv6_config: &MOBILE_IPV6_CONFIG --build-type=release --enable-mobile-ipv6 --disable-broker-tests --prefix=$CIRRUS_WORKING_DIR/install --ccache
|
||||
openssl30_config: &OPENSSL30_CONFIG --build-type=release --disable-broker-tests --with-openssl=/opt/openssl --prefix=$CIRRUS_WORKING_DIR/install --ccache
|
||||
homebrew_flex_bison_config: &HOMEBREW_FLEX_BISON_CONFIG --with-flex=/usr/local/opt/flex/bin/flex --with-bison=/usr/local/opt/bison/bin/bison --ccache
|
||||
|
||||
resources_template: &RESOURCES_TEMPLATE
|
||||
cpu: *CPUS
|
||||
|
@ -54,6 +54,13 @@ ci_template: &CI_TEMPLATE
|
|||
folder: testing/external/zeek-testing-traces
|
||||
fingerprint_script: echo zeek-testing-traces
|
||||
populate_script: ./ci/init-external-repos.sh
|
||||
|
||||
always:
|
||||
ccache_cache:
|
||||
folder: /tmp/ccache
|
||||
fingerprint_script: echo $CIRRUS_TASK_NAME-$CIRRUS_OS
|
||||
reupload_on_changes: true
|
||||
|
||||
init_external_repos_script: ./ci/init-external-repos.sh
|
||||
|
||||
build_script: ./ci/build.sh
|
||||
|
@ -70,6 +77,8 @@ ci_template: &CI_TEMPLATE
|
|||
upload_btest_html_results_artifacts:
|
||||
path: "testing/**/btest-results.html"
|
||||
type: text/html
|
||||
cache_statistics_script:
|
||||
ccache --show-stats
|
||||
|
||||
env:
|
||||
CIRRUS_WORKING_DIR: /zeek
|
||||
|
@ -94,6 +103,10 @@ env:
|
|||
# The repo token used for uploading data to Coveralls.io
|
||||
ZEEK_COVERALLS_REPO_TOKEN: ENCRYPTED[7ffd1e041f848f02b62f5abc7fda8a5a8a1561fbb2b46d88cefb67c74408ddeef6ea6f3b279c7953ca14ae9b4d050e2d]
|
||||
|
||||
CCACHE_BASEDIR: $CIRRUS_WORKING_DIR
|
||||
CCACHE_DIR: /tmp/ccache
|
||||
CCACHE_COMPRESS: 1
|
||||
|
||||
# Linux EOL timelines: https://linuxlifecycle.com/
|
||||
# Fedora (~13 months): https://fedoraproject.org/wiki/Fedora_Release_Life_Cycle
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
FROM alpine:latest
|
||||
|
||||
RUN apk add --no-cache \
|
||||
ccache \
|
||||
cmake \
|
||||
make \
|
||||
g++ \
|
||||
|
|
|
@ -11,7 +11,7 @@ RUN sed -i 's/enabled=1/enabled=0/' /etc/yum/pluginconf.d/fastestmirror.conf
|
|||
RUN yum -y install \
|
||||
https://repo.ius.io/ius-release-el7.rpm \
|
||||
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm \
|
||||
&& yum -y install git224 \
|
||||
&& yum -y install git224 ccache \
|
||||
&& yum clean all && rm -rf /var/cache/yum
|
||||
|
||||
RUN yum -y install \
|
||||
|
|
|
@ -1,9 +1,11 @@
|
|||
FROM quay.io/centos/centos:stream8
|
||||
|
||||
RUN dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||
RUN dnf config-manager --set-enabled powertools
|
||||
|
||||
RUN dnf -y install \
|
||||
bison \
|
||||
ccache \
|
||||
cmake \
|
||||
diffutils \
|
||||
flex \
|
||||
|
|
|
@ -16,6 +16,7 @@ RUN dnf -y install \
|
|||
# package versioning conflicts around OpenSSL.
|
||||
RUN dnf -y --nobest install \
|
||||
bison \
|
||||
ccache \
|
||||
cmake \
|
||||
diffutils \
|
||||
flex \
|
||||
|
|
|
@ -25,6 +25,7 @@ RUN apt-get update && apt-get -y install \
|
|||
curl \
|
||||
wget \
|
||||
xz-utils \
|
||||
ccache \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
# Install a recent CMake to build Spicy.
|
||||
&& mkdir -p "${CMAKE_DIR}" \
|
||||
|
|
|
@ -3,6 +3,7 @@ FROM debian:11
|
|||
ENV DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles"
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
ccache \
|
||||
git \
|
||||
cmake \
|
||||
make \
|
||||
|
|
|
@ -11,6 +11,7 @@ ENV CMAKE_VERSION "3.19.1"
|
|||
ENV PATH "${CMAKE_DIR}/bin:${PATH}"
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
ccache \
|
||||
git \
|
||||
clang-11 \
|
||||
make \
|
||||
|
@ -39,6 +40,9 @@ RUN apt-get update && apt-get -y install \
|
|||
RUN update-alternatives --install /usr/bin/cc cc /usr/bin/clang-11 100
|
||||
RUN update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-11 100
|
||||
|
||||
RUN pip3 install junit2html
|
||||
# junit2html >= 31.0.0 requires jinj2 >= 3.0 which requires python >= 3.7 which is
|
||||
# a higher version of python3 than debian 9 provides. Fix the version of junit2html
|
||||
# to the last version before they required the newer jinja2.
|
||||
RUN pip3 install junit2html==30.0.6
|
||||
|
||||
ENV CXXFLAGS=-stdlib=libc++
|
||||
|
|
|
@ -11,6 +11,7 @@ ENV CMAKE_VERSION "3.19.1"
|
|||
ENV PATH "${CMAKE_DIR}/bin:${PATH}"
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
ccache \
|
||||
git \
|
||||
clang-11 \
|
||||
make \
|
||||
|
@ -36,7 +37,10 @@ RUN apt-get update && apt-get -y install \
|
|||
&& mkdir -p "${CMAKE_DIR}" \
|
||||
&& curl -sSL "https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-Linux-x86_64.tar.gz" | tar xzf - -C "${CMAKE_DIR}" --strip-components 1
|
||||
|
||||
RUN pip3 install junit2html
|
||||
# junit2html >= 31.0.0 requires jinj2 >= 3.0 which requires python >= 3.7 which is
|
||||
# a higher version of python3 than debian 9 provides. Fix the version of junit2html
|
||||
# to the last version before they required the newer jinja2.
|
||||
RUN pip3 install junit2html==30.0.6
|
||||
|
||||
ENV CC=/usr/bin/clang-11
|
||||
ENV CXX=/usr/bin/clang++-11
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
FROM fedora:34
|
||||
|
||||
RUN dnf -y install \
|
||||
ccache \
|
||||
bison \
|
||||
cmake \
|
||||
diffutils \
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
FROM fedora:35
|
||||
|
||||
RUN dnf -y install \
|
||||
ccache \
|
||||
bison \
|
||||
cmake \
|
||||
diffutils \
|
||||
|
|
|
@ -6,7 +6,7 @@ set -e
|
|||
set -x
|
||||
|
||||
env ASSUME_ALWAYS_YES=YES pkg bootstrap
|
||||
pkg install -y bash git cmake swig bison python3 base64 flex
|
||||
pkg install -y bash git cmake swig bison python3 base64 flex ccache
|
||||
pkg upgrade -y curl
|
||||
pyver=$(python3 -c 'import sys; print(f"py{sys.version_info[0]}{sys.version_info[1]}")')
|
||||
pkg install -y $pyver-sqlite3 $pyver-pip
|
||||
|
|
|
@ -7,4 +7,4 @@ set -x
|
|||
|
||||
brew update
|
||||
brew upgrade cmake openssl@1.1
|
||||
brew install swig bison flex
|
||||
brew install swig bison flex ccache
|
||||
|
|
|
@ -3,6 +3,7 @@ FROM ubuntu:20.04
|
|||
ENV DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles"
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
ccache \
|
||||
git \
|
||||
cmake \
|
||||
make \
|
||||
|
|
|
@ -3,6 +3,7 @@ FROM opensuse/leap:15.3
|
|||
RUN zypper addrepo https://download.opensuse.org/repositories/openSUSE:Leap:15.2:Update/standard/openSUSE:Leap:15.2:Update.repo \
|
||||
&& zypper refresh \
|
||||
&& zypper in -y \
|
||||
ccache \
|
||||
cmake \
|
||||
make \
|
||||
gcc9 \
|
||||
|
|
|
@ -29,6 +29,7 @@ RUN apt-get update && apt-get -y install \
|
|||
ruby \
|
||||
bc \
|
||||
lcov \
|
||||
ccache \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
# Recent CMake.
|
||||
&& mkdir -p "${CMAKE_DIR}" \
|
||||
|
|
|
@ -3,6 +3,7 @@ FROM ubuntu:20.04
|
|||
ENV DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles"
|
||||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
ccache \
|
||||
git \
|
||||
cmake \
|
||||
make \
|
||||
|
|
|
@ -4,6 +4,7 @@ ENV DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles"
|
|||
|
||||
RUN apt-get update && apt-get -y install \
|
||||
git \
|
||||
ccache \
|
||||
cmake \
|
||||
make \
|
||||
gcc \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue