2019-08-15 16:51:31 -04:00
#!/usr/bin/env bash
#
2023-08-23 16:48:44 -04:00
# Copyright (c) 2019-present The Bitcoin Core developers
2019-08-15 16:51:31 -04:00
# Distributed under the MIT software license, see the accompanying
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
export LC_ALL = C.UTF-8
2023-12-04 08:35:04 -03:00
export CI_IMAGE_NAME_TAG = "docker.io/ubuntu:24.04"
2022-11-28 17:26:26 -03:00
# Only install BCC tracing packages in Cirrus CI.
if [ [ " ${ CIRRUS_CI } " = = "true" ] ] ; then
2023-07-26 07:05:29 -04:00
BPFCC_PACKAGE = " bpfcc-tools linux-headers- $( uname --kernel-release) "
export CI_CONTAINER_CAP = "--privileged -v /sys/kernel:/sys/kernel:rw"
2022-11-28 17:26:26 -03:00
else
2023-07-26 07:05:29 -04:00
BPFCC_PACKAGE = ""
export CI_CONTAINER_CAP = "--cap-add SYS_PTRACE" # If run with (ASan + LSan), the container needs access to ptrace (https://github.com/google/sanitizers/issues/764)
2022-11-28 17:26:26 -03:00
fi
2022-07-01 07:49:55 -04:00
2020-02-04 21:43:10 -03:00
export CONTAINER_NAME = ci_native_asan
2023-10-12 06:54:31 -03:00
export PACKAGES = " systemtap-sdt-dev clang-17 llvm-17 libclang-rt-17-dev python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev libboost-dev libdb5.3++-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqrencode-dev libsqlite3-dev ${ BPFCC_PACKAGE } "
2019-08-15 16:51:31 -04:00
export NO_DEPENDS = 1
export GOAL = "install"
2023-05-30 06:04:22 -04:00
export BITCOIN_CONFIG = " --enable-c++20 --enable-usdt --enable-zmq --with-incompatible-bdb --with-gui=qt5 \
CPPFLAGS = '-DARENA_DEBUG -DDEBUG_LOCKORDER' \
2023-08-28 15:32:41 -04:00
--with-sanitizers= address,float-divide-by-zero,integer,undefined \
2023-10-12 06:54:31 -03:00
CC = 'clang-17 -ftrivial-auto-var-init=pattern' CXX = 'clang++-17 -ftrivial-auto-var-init=pattern' "