ci: reconcile differences between ci setups

This commit is contained in:
Kittywhiskers Van Gogh 2022-04-07 21:33:41 +05:30
parent eb52580c0b
commit c52992aaa4
16 changed files with 93 additions and 139 deletions

View File

@ -179,18 +179,18 @@ i686-pc-linux-gnu:
variables: variables:
HOST: i686-pc-linux-gnu HOST: i686-pc-linux-gnu
x86_64-unknown-linux-gnu-debug: x86_64-pc-linux-gnu-debug:
extends: .build-depends-template extends: .build-depends-template
variables: variables:
HOST: x86_64-unknown-linux-gnu HOST: x86_64-pc-linux-gnu
DEP_OPTS: "DEBUG=1" DEP_OPTS: "DEBUG=1"
x86_64-unknown-linux-gnu-nowallet: x86_64-pc-linux-gnu-nowallet:
extends: extends:
- .build-depends-template - .build-depends-template
- .skip-in-fast-mode-template - .skip-in-fast-mode-template
variables: variables:
HOST: x86_64-unknown-linux-gnu HOST: x86_64-pc-linux-gnu
DEP_OPTS: "NO_WALLET=1" DEP_OPTS: "NO_WALLET=1"
x86_64-apple-darwin19: x86_64-apple-darwin19:
@ -239,21 +239,21 @@ linux32_ubsan-build:
linux64-build: linux64-build:
extends: .build-template extends: .build-template
needs: needs:
- x86_64-unknown-linux-gnu-debug - x86_64-pc-linux-gnu-debug
variables: variables:
BUILD_TARGET: linux64 BUILD_TARGET: linux64
linux64_cxx20-build: linux64_cxx20-build:
extends: .build-template extends: .build-template
needs: needs:
- x86_64-unknown-linux-gnu-debug - x86_64-pc-linux-gnu-debug
variables: variables:
BUILD_TARGET: linux64_cxx20 BUILD_TARGET: linux64_cxx20
linux64_fuzz-build: linux64_fuzz-build:
extends: .build-template extends: .build-template
needs: needs:
- x86_64-unknown-linux-gnu-debug - x86_64-pc-linux-gnu-debug
variables: variables:
BUILD_TARGET: linux64_fuzz BUILD_TARGET: linux64_fuzz
@ -262,7 +262,7 @@ linux64_tsan-build:
- .build-template - .build-template
- .skip-in-fast-mode-template - .skip-in-fast-mode-template
needs: needs:
- x86_64-unknown-linux-gnu-debug - x86_64-pc-linux-gnu-debug
variables: variables:
BUILD_TARGET: linux64_tsan BUILD_TARGET: linux64_tsan
@ -271,7 +271,7 @@ linux64_nowallet-build:
- .build-template - .build-template
- .skip-in-fast-mode-template - .skip-in-fast-mode-template
needs: needs:
- x86_64-unknown-linux-gnu-nowallet - x86_64-pc-linux-gnu-nowallet
variables: variables:
BUILD_TARGET: linux64_nowallet BUILD_TARGET: linux64_nowallet

View File

@ -5,101 +5,30 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export BUILD_TARGET=${BUILD_TARGET:-linux64} source ./ci/test/00_setup_env.sh
export PULL_REQUEST=${PULL_REQUEST:-false}
export JOB_NUMBER=${JOB_NUMBER:-1}
BASE_ROOT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../ >/dev/null 2>&1 && pwd )
export BASE_ROOT_DIR
export BUILDER_IMAGE_NAME="dash-builder-$BUILD_TARGET-$JOB_NUMBER"
export HOST_CACHE_DIR=${HOST_CACHE_DIR:-$BASE_ROOT_DIR/ci-cache-$BUILD_TARGET}
export BASE_BUILD_DIR=$BASE_ROOT_DIR
export BASE_OUTDIR=$BASE_BUILD_DIR/out
export CACHE_DIR=${CACHE_DIR:-$HOST_CACHE_DIR}
export CCACHE_DIR=$CACHE_DIR/ccache
export DOCKER_RUN_VOLUME_ARGS="-v $BASE_ROOT_DIR:$BASE_ROOT_DIR -v $HOST_CACHE_DIR:$CACHE_DIR"
export DOCKER_RUN_ENV_ARGS="-e BASE_ROOT_DIR=$BASE_ROOT_DIR -e CACHE_DIR=$CACHE_DIR -e PULL_REQUEST=$PULL_REQUEST -e COMMIT_RANGE=$COMMIT_RANGE -e JOB_NUMBER=$JOB_NUMBER -e BUILD_TARGET=$BUILD_TARGET"
export DOCKER_RUN_ARGS="$DOCKER_RUN_VOLUME_ARGS $DOCKER_RUN_ENV_ARGS"
export DOCKER_RUN_IN_BUILDER="docker run -t --rm -w $BASE_ROOT_DIR $DOCKER_RUN_ARGS $BUILDER_IMAGE_NAME"
# Default values for targets
export GOAL="install"
export SDK_URL=${SDK_URL:-https://bitcoincore.org/depends-sources/sdks}
MAKEJOBS="-j$(nproc)"
export MAKEJOBS
export RUN_UNIT_TESTS=true
export RUN_INTEGRATION_TESTS=true
# Configure sanitizers options # Configure sanitizers options
export TSAN_OPTIONS="suppressions=${BASE_ROOT_DIR}/test/sanitizer_suppressions/tsan" export TSAN_OPTIONS="suppressions=${BASE_ROOT_DIR}/test/sanitizer_suppressions/tsan"
export UBSAN_OPTIONS="suppressions=${BASE_ROOT_DIR}/test/sanitizer_suppressions/ubsan" export UBSAN_OPTIONS="suppressions=${BASE_ROOT_DIR}/test/sanitizer_suppressions/ubsan"
if [ "$BUILD_TARGET" = "arm-linux" ]; then if [ "$BUILD_TARGET" = "arm-linux" ]; then
export HOST=arm-linux-gnueabihf source ./ci/test/00_setup_env_arm.sh
export CHECK_DOC=1
# -Wno-psabi is to disable ABI warnings: "note: parameter passing for argument of type ... changed in GCC 7.1"
# This could be removed once the ABI change warning does not show up by default
export BITCOIN_CONFIG="--enable-reduce-exports --enable-suppress-external-warnings --enable-werror CXXFLAGS=-Wno-psabi"
export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=false
elif [ "$BUILD_TARGET" = "win64" ]; then elif [ "$BUILD_TARGET" = "win64" ]; then
export HOST=x86_64-w64-mingw32 source ./ci/test/00_setup_env_win64.sh
export DPKG_ADD_ARCH="i386"
export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --disable-miner"
export DIRECT_WINE_EXEC_TESTS=true
elif [ "$BUILD_TARGET" = "linux32" ]; then elif [ "$BUILD_TARGET" = "linux32" ]; then
export HOST=i686-pc-linux-gnu source ./ci/test/00_setup_env_i686.sh
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks"
export USE_SHELL="/bin/dash"
export PYZMQ=true
elif [ "$BUILD_TARGET" = "linux32_ubsan" ]; then elif [ "$BUILD_TARGET" = "linux32_ubsan" ]; then
export HOST=i686-pc-linux-gnu source ./ci/test/00_setup_env_i686_ubsan.sh
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --with-sanitizers=undefined"
export USE_SHELL="/bin/dash"
export PYZMQ=true
elif [ "$BUILD_TARGET" = "linux64" ]; then elif [ "$BUILD_TARGET" = "linux64" ]; then
export HOST=x86_64-unknown-linux-gnu source ./ci/test/00_setup_env_native_qt5.sh
export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
elif [ "$BUILD_TARGET" = "linux64_tsan" ]; then elif [ "$BUILD_TARGET" = "linux64_tsan" ]; then
export HOST=x86_64-unknown-linux-gnu source ./ci/test/00_setup_env_native_tsan.sh
export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --with-sanitizers=thread"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
elif [ "$BUILD_TARGET" = "linux64_fuzz" ]; then elif [ "$BUILD_TARGET" = "linux64_fuzz" ]; then
export HOST=x86_64-unknown-linux-gnu source ./ci/test/00_setup_env_native_fuzz.sh
export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export BITCOIN_CONFIG="--enable-zmq --disable-ccache --enable-fuzz --with-sanitizers=fuzzer,address,undefined CC=clang CXX=clang++"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=false
elif [ "$BUILD_TARGET" = "linux64_cxx20" ]; then elif [ "$BUILD_TARGET" = "linux64_cxx20" ]; then
export HOST=x86_64-unknown-linux-gnu source ./ci/test/00_setup_env_native_cxx20.sh
export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --enable-c++20 --enable-suppress-external-warnings --enable-werror"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
export RUN_INTEGRATION_TESTS=false
elif [ "$BUILD_TARGET" = "linux64_nowallet" ]; then elif [ "$BUILD_TARGET" = "linux64_nowallet" ]; then
export HOST=x86_64-unknown-linux-gnu source ./ci/test/00_setup_env_native_nowallet.sh
export DEP_OPTS="NO_WALLET=1"
export BITCOIN_CONFIG="--enable-reduce-exports"
elif [ "$BUILD_TARGET" = "mac" ]; then elif [ "$BUILD_TARGET" = "mac" ]; then
export HOST=x86_64-apple-darwin19 source ./ci/test/00_setup_env_mac.sh
export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --disable-miner --enable-werror"
export XCODE_VERSION=11.3.1
export XCODE_BUILD_ID=11C505
export GOAL="all deploy"
export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=false
fi fi

View File

@ -13,12 +13,17 @@ if [ -n "${FILE_ENV}" ]; then
source "${FILE_ENV}" source "${FILE_ENV}"
fi fi
export BUILD_TARGET=${BUILD_TARGET:-linux64}
export PULL_REQUEST=${PULL_REQUEST:-false}
export JOB_NUMBER=${JOB_NUMBER:-1}
BASE_ROOT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../ >/dev/null 2>&1 && pwd ) BASE_ROOT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../ >/dev/null 2>&1 && pwd )
export BASE_ROOT_DIR export BASE_ROOT_DIR
echo "Fallback to default values in env (if not yet set)" echo "Fallback to default values in env (if not yet set)"
# The number of parallel jobs to pass down to make and test_runner.py # The number of parallel jobs to pass down to make and test_runner.py
export MAKEJOBS=${MAKEJOBS:--j4} MAKEJOBS="-j$(nproc)"
export MAKEJOBS
# A folder for the ci system to put temporary files (ccache, datadirs for tests, ...) # A folder for the ci system to put temporary files (ccache, datadirs for tests, ...)
export BASE_SCRATCH_DIR=${BASE_SCRATCH_DIR:-$BASE_ROOT_DIR/ci/scratch/} export BASE_SCRATCH_DIR=${BASE_SCRATCH_DIR:-$BASE_ROOT_DIR/ci/scratch/}
# What host to compile for. See also ./depends/README.md # What host to compile for. See also ./depends/README.md
@ -34,14 +39,16 @@ export DOCKER_NAME_TAG=${DOCKER_NAME_TAG:-ubuntu:18.04}
# Randomize test order. # Randomize test order.
# See https://www.boost.org/doc/libs/1_71_0/libs/test/doc/html/boost_test/utf_reference/rt_param_reference/random.html # See https://www.boost.org/doc/libs/1_71_0/libs/test/doc/html/boost_test/utf_reference/rt_param_reference/random.html
export BOOST_TEST_RANDOM=${BOOST_TEST_RANDOM:-1} export BOOST_TEST_RANDOM=${BOOST_TEST_RANDOM:-1}
export HOST_CACHE_DIR=${HOST_CACHE_DIR:-$BASE_ROOT_DIR/ci-cache-$BUILD_TARGET}
export CACHE_DIR=${CACHE_DIR:-$HOST_CACHE_DIR}
export CCACHE_SIZE=${CCACHE_SIZE:-100M} export CCACHE_SIZE=${CCACHE_SIZE:-100M}
export CCACHE_TEMPDIR=${CCACHE_TEMPDIR:-/tmp/.ccache-temp} export CCACHE_TEMPDIR=${CCACHE_TEMPDIR:-/tmp/.ccache-temp}
export CCACHE_COMPRESS=${CCACHE_COMPRESS:-1} export CCACHE_COMPRESS=${CCACHE_COMPRESS:-1}
export CCACHE_DIR=${CCACHE_DIR:-$BASE_SCRATCH_DIR/.ccache} export CCACHE_DIR=${CCACHE_DIR:-$CACHE_DIR/ccache}
# Folder where the build is done (depends and dist). Can not be changed and is equal to the root of the git repo # Folder where the build is done (depends and dist). Can not be changed and is equal to the root of the git repo
export BASE_BUILD_DIR=${BASE_BUILD_DIR:-$BASE_ROOT_DIR} export BASE_BUILD_DIR=${BASE_BUILD_DIR:-$BASE_ROOT_DIR}
# Folder where the build is done (bin and lib). Can not be changed. # Folder where the build is done (bin and lib). Can not be changed.
export BASE_OUTDIR=${BASE_OUTDIR:-$BASE_BUILD_DIR/out/$HOST} export BASE_OUTDIR=${BASE_OUTDIR:-$BASE_BUILD_DIR/out}
export SDK_URL=${SDK_URL:-https://bitcoincore.org/depends-sources/sdks} export SDK_URL=${SDK_URL:-https://bitcoincore.org/depends-sources/sdks}
export WINEDEBUG=${WINEDEBUG:-fixme-all} export WINEDEBUG=${WINEDEBUG:-fixme-all}
export DOCKER_PACKAGES=${DOCKER_PACKAGES:-build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git} export DOCKER_PACKAGES=${DOCKER_PACKAGES:-build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git}
@ -49,3 +56,9 @@ export GOAL=${GOAL:-install}
export DIR_QA_ASSETS=${DIR_QA_ASSETS:-${BASE_BUILD_DIR}/qa-assets} export DIR_QA_ASSETS=${DIR_QA_ASSETS:-${BASE_BUILD_DIR}/qa-assets}
export PATH=${BASE_ROOT_DIR}/ci/retry:$PATH export PATH=${BASE_ROOT_DIR}/ci/retry:$PATH
export CI_RETRY_EXE=${CI_RETRY_EXE:-"retry --"} export CI_RETRY_EXE=${CI_RETRY_EXE:-"retry --"}
# Dash's Docker-specifics
export BUILDER_IMAGE_NAME="dash-builder-$BUILD_TARGET-$JOB_NUMBER"
export DOCKER_RUN_VOLUME_ARGS="-v $BASE_ROOT_DIR:$BASE_ROOT_DIR -v $HOST_CACHE_DIR:$CACHE_DIR"
export DOCKER_RUN_ENV_ARGS="-e BASE_ROOT_DIR=$BASE_ROOT_DIR -e CACHE_DIR=$CACHE_DIR -e PULL_REQUEST=$PULL_REQUEST -e COMMIT_RANGE=$COMMIT_RANGE -e JOB_NUMBER=$JOB_NUMBER -e BUILD_TARGET=$BUILD_TARGET"
export DOCKER_RUN_ARGS="$DOCKER_RUN_VOLUME_ARGS $DOCKER_RUN_ENV_ARGS"
export DOCKER_RUN_IN_BUILDER="docker run -t --rm -w $BASE_ROOT_DIR $DOCKER_RUN_ARGS $BUILDER_IMAGE_NAME"

7
ci/test/00_setup_env_arm.sh Normal file → Executable file
View File

@ -14,10 +14,11 @@ export QEMU_USER_CMD="${QEMU_USER_CMD:"qemu-arm -L /usr/arm-linux-gnueabihf/"}"
# the target is required, so install both. # the target is required, so install both.
export DPKG_ADD_ARCH="armhf" export DPKG_ADD_ARCH="armhf"
export PACKAGES="python3 g++-arm-linux-gnueabihf busybox qemu-user libc6:armhf libstdc++6:armhf libfontconfig1:armhf libxcb1:armhf" export PACKAGES="python3 g++-arm-linux-gnueabihf busybox qemu-user libc6:armhf libstdc++6:armhf libfontconfig1:armhf libxcb1:armhf"
export CHECK_DOC=1
export USE_BUSY_BOX=true export USE_BUSY_BOX=true
export RUN_UNIT_TESTS=true export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=true export RUN_INTEGRATION_TESTS=false
export GOAL="install" export GOAL="install"
# -Wno-psabi is to disable ABI warnings: "note: parameter passing for argument of type ... changed in GCC 7.1" # -Wno-psabi is to disable ABI warnings: "note: parameter passing for argument of type ... changed in GCC 7.1"
# This could be removed once the ABI change warning does not show up by default # This could be removed once the ABI change warning does not show up by default
export BITCOIN_CONFIG="--enable-glibc-back-compat --enable-reduce-exports CXXFLAGS=-Wno-psabi" export BITCOIN_CONFIG="--enable-reduce-exports --enable-suppress-external-warnings --enable-werror CXXFLAGS=-Wno-psabi"

4
ci/test/00_setup_env_i686.sh Normal file → Executable file
View File

@ -7,7 +7,9 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export HOST=i686-pc-linux-gnu export HOST=i686-pc-linux-gnu
export DEP_OPTS="NO_PROTOBUF=1"
export PACKAGES="g++-multilib python3-zmq" export PACKAGES="g++-multilib python3-zmq"
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++" export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --with-sanitizers=undefined"
export CONFIG_SHELL="/bin/dash" export CONFIG_SHELL="/bin/dash"
export PYZMQ=true

View File

@ -0,0 +1,14 @@
#!/usr/bin/env bash
#
# Copyright (c) 2019 The Bitcoin Core developers
# 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
export HOST=i686-pc-linux-gnu
export PACKAGES="g++-multilib python3-zmq"
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --disable-bip70 --enable-reduce-exports --enable-crash-hooks --with-sanitizers=undefined"
export CONFIG_SHELL="/bin/dash"
export PYZMQ=true

4
ci/test/00_setup_env_mac.sh Normal file → Executable file
View File

@ -12,5 +12,5 @@ export XCODE_VERSION=11.3.1
export XCODE_BUILD_ID=11C505 export XCODE_BUILD_ID=11C505
export RUN_UNIT_TESTS=false export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=false export RUN_INTEGRATION_TESTS=false
export GOAL="deploy" export GOAL="all deploy"
export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --enable-werror" export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --disable-miner --enable-werror"

4
ci/test/00_setup_env_mac_host.sh Normal file → Executable file
View File

@ -6,14 +6,14 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export HOST=x86_64-apple-darwin14 export HOST=x86_64-apple-darwin19
export BREW_PACKAGES="automake berkeley-db4 libtool boost miniupnpc pkg-config protobuf qt qrencode python3 ccache zeromq" export BREW_PACKAGES="automake berkeley-db4 libtool boost miniupnpc pkg-config protobuf qt qrencode python3 ccache zeromq"
export PIP_PACKAGES="zmq" export PIP_PACKAGES="zmq"
export RUN_CI_ON_HOST=true export RUN_CI_ON_HOST=true
export RUN_UNIT_TESTS=true export RUN_UNIT_TESTS=true
export RUN_INTEGRATION_TESTS=false export RUN_INTEGRATION_TESTS=false
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-gui --enable-bip70 --enable-reduce-exports --enable-werror" export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --disable-miner --enable-werror"
# Run without depends # Run without depends
export NO_DEPENDS=1 export NO_DEPENDS=1
export OSX_SDK="" export OSX_SDK=""

View File

@ -1,14 +0,0 @@
#!/usr/bin/env bash
#
# Copyright (c) 2019 The Bitcoin Core developers
# 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
export PACKAGES="clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libqrencode-dev"
export NO_DEPENDS=1
export FUNCTIONAL_TESTS_CONFIG="--exclude wallet_multiwallet.py" # Temporarily suppress ASan heap-use-after-free (see issue #14163)
export RUN_BENCH=true
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER --with-sanitizers=address,integer,undefined CC=clang CXX=clang++"

View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
#
# Copyright (c) 2019 The Bitcoin Core developers
# 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
export PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools protobuf-compiler libdbus-1-dev libharfbuzz-dev libprotobuf-dev"
export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
export RUN_INTEGRATION_TESTS=false
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --enable-c++20 --enable-suppress-external-warnings --enable-werror"

6
ci/test/00_setup_env_native_fuzz.sh Normal file → Executable file
View File

@ -7,9 +7,11 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export PACKAGES="clang llvm python3 libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev" export PACKAGES="clang llvm python3 libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev"
export NO_DEPENDS=1 export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true
export RUN_UNIT_TESTS=false export RUN_UNIT_TESTS=false
export RUN_INTEGRATION_TESTS=false export RUN_INTEGRATION_TESTS=false
export RUN_FUZZ_TESTS=true export RUN_FUZZ_TESTS=true
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-fuzz --with-sanitizers=fuzzer,address CC=clang CXX=clang++" export BITCOIN_CONFIG="--enable-zmq --disable-ccache --enable-fuzz --with-sanitizers=fuzzer,address,undefined CC=clang CXX=clang++"

2
ci/test/00_setup_env_native_nowallet.sh Normal file → Executable file
View File

@ -9,4 +9,4 @@ export LC_ALL=C.UTF-8
export PACKAGES="python3-zmq" export PACKAGES="python3-zmq"
export DEP_OPTS="NO_WALLET=1" export DEP_OPTS="NO_WALLET=1"
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-glibc-back-compat --enable-reduce-exports" export BITCOIN_CONFIG="--enable-reduce-exports"

4
ci/test/00_setup_env_native_qt5.sh Normal file → Executable file
View File

@ -7,7 +7,7 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libdbus-1-dev libharfbuzz-dev" export PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libdbus-1-dev libharfbuzz-dev"
export DEP_OPTS="NO_QT=1 NO_UPNP=1 DEBUG=1 ALLOW_HOST_PACKAGES=1" export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export TEST_RUNNER_EXTRA="--coverage --extended --exclude feature_dbcrash" # Run extended tests so that coverage does not fail, but exclude the very slow dbcrash export TEST_RUNNER_EXTRA="--coverage --extended --exclude feature_dbcrash" # Run extended tests so that coverage does not fail, but exclude the very slow dbcrash
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports --enable-debug CFLAGS=\"-g0 -O2 -funsigned-char\" CXXFLAGS=\"-g0 -O2 -funsigned-char\"" export BITCOIN_CONFIG="--enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++"

View File

@ -1,13 +0,0 @@
#!/usr/bin/env bash
#
# Copyright (c) 2019 The Bitcoin Core developers
# 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
export DOCKER_NAME_TAG=ubuntu:14.04
export PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libicu-dev libpng-dev libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev libdb5.1++-dev libminiupnpc-dev libzmq3-dev libqrencode-dev"
export RUN_INTEGRATION_TESTS=false
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=no"

10
ci/test/00_setup_env_native_tsan.sh Normal file → Executable file
View File

@ -6,9 +6,11 @@
export LC_ALL=C.UTF-8 export LC_ALL=C.UTF-8
export DOCKER_NAME_TAG=ubuntu:16.04
export PACKAGES="clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libqrencode-dev" export PACKAGES="clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-filesystem-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libqrencode-dev"
export NO_DEPENDS=1 export DEP_OPTS="NO_UPNP=1 DEBUG=1"
export RUN_INTEGRATION_TESTS=false # Disabled for now. TODO identify suppressions or exclude specific tests export FUNCTIONAL_TESTS_CONFIG="--exclude wallet_multiwallet.py" # Temporarily suppress ASan heap-use-after-free (see issue #14163)
export RUN_BENCH=true
export GOAL="install" export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER --with-sanitizers=thread --disable-hardening --disable-asm CC=clang CXX=clang++" export BITCOIN_CONFIG="--enable-zmq --enable-reduce-exports --enable-crash-hooks --with-sanitizers=thread"
export CPPFLAGS="-DDEBUG_LOCKORDER -DENABLE_DASH_DEBUG -DARENA_DEBUG"
export PYZMQ=true

4
ci/test/00_setup_env_win64.sh Normal file → Executable file
View File

@ -8,6 +8,8 @@ export LC_ALL=C.UTF-8
export HOST=x86_64-w64-mingw32 export HOST=x86_64-w64-mingw32
export PACKAGES="python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64" export PACKAGES="python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64"
export DPKG_ADD_ARCH="i386"
export RUN_INTEGRATION_TESTS=false export RUN_INTEGRATION_TESTS=false
export GOAL="deploy" export GOAL="deploy"
export BITCOIN_CONFIG="--enable-reduce-exports --disable-gui-tests" export BITCOIN_CONFIG="--enable-gui --enable-reduce-exports --disable-miner"
export DIRECT_WINE_EXEC_TESTS=true