00_setup_env_native_iwyu.sh raw
1 #!/usr/bin/env bash
2 #
3 # Copyright (c) 2023-present The Bitcoin Core developers
4 # Distributed under the MIT software license, see the accompanying
5 # file COPYING or http://www.opensource.org/licenses/mit-license.php.
6
7 export LC_ALL=C.UTF-8
8
9 export CI_IMAGE_NAME_TAG="mirror.gcr.io/ubuntu:26.04" # To build codegen, CMake must be 3.31 or newer.
10 export CONTAINER_NAME=ci_native_iwyu
11 export IWYU_LLVM_V="22"
12 export APT_LLVM_V="${IWYU_LLVM_V}"
13 export PACKAGES="clang-${IWYU_LLVM_V} clang-format-${IWYU_LLVM_V} libclang-${IWYU_LLVM_V}-dev llvm-${IWYU_LLVM_V}-dev jq libboost-dev libzmq3-dev systemtap-sdt-dev qt6-base-dev qt6-tools-dev qt6-l10n-tools libqrencode-dev libsqlite3-dev libcapnp-dev capnproto"
14 export NO_DEPENDS=1
15 export RUN_UNIT_TESTS=false
16 export RUN_FUNCTIONAL_TESTS=false
17 export RUN_FUZZ_TESTS=false
18 export RUN_CHECK_DEPS=false
19 export RUN_IWYU=true
20 export GOAL="codegen"
21 export BITCOIN_CONFIG="\
22 --preset dev-mode -DBUILD_GUI=OFF \
23 -DCMAKE_C_COMPILER=clang-${IWYU_LLVM_V} \
24 -DCMAKE_CXX_COMPILER=clang++-${IWYU_LLVM_V} \
25 "
26