Merge pull request #1393 from psgreco/master-fixci

CI: Fix Win64 native build, TSAN and CentOS 8 test
This commit is contained in:
Byron Hambly 2025-02-09 11:22:34 +02:00 committed by GitHub
commit bd551ad186
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 62 additions and 19 deletions

View file

@ -186,10 +186,10 @@ task:
FILE_ENV: "./ci/test/00_setup_env_win64.sh"
task:
name: '32-bit + dash [gui] [CentOS 8]'
name: '32-bit + dash [gui] [Rocky 8]'
<< : *GLOBAL_TASK_TEMPLATE
container:
image: quay.io/centos/centos:stream8
image: quay.io/rockylinux/rockylinux:8
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
PACKAGE_MANAGER_INSTALL: "yum install -y"
@ -206,10 +206,10 @@ task:
FILE_ENV: "./ci/test/00_setup_env_native_qt5.sh"
task:
name: '[TSan, depends, gui] [jammy]'
name: '[TSan, depends, gui] [2404]'
<< : *GLOBAL_TASK_TEMPLATE
container:
image: ubuntu:jammy
image: ubuntu:24.04
cpu: 6 # Increase CPU and Memory to avoid timeout
memory: 24G
env:

View file

@ -9,22 +9,40 @@
</PropertyGroup>
<ItemGroup>
<ClCompile Include="..\..\src\asset.cpp" />
<ClCompile Include="..\..\src\blockfilter.cpp" />
<ClCompile Include="..\..\src\chain.cpp" />
<ClCompile Include="..\..\src\confidential_validation.cpp" />
<ClCompile Include="..\..\src\consensus/tx_verify.cpp" />
<ClCompile Include="..\..\src\dbwrapper.cpp" />
<ClCompile Include="..\..\src\deploymentstatus.cpp" />
<ClCompile Include="..\..\src\dynafed.cpp" />
<ClCompile Include="..\..\src\flatfile.cpp" />
<ClCompile Include="..\..\src\index/base.cpp" />
<ClCompile Include="..\..\src\index/blockfilterindex.cpp" />
<ClCompile Include="..\..\src\index/coinstatsindex.cpp" />
<ClCompile Include="..\..\src\mainchainrpc.cpp" />
<ClCompile Include="..\..\src\node\blockstorage.cpp" />
<ClCompile Include="..\..\src\node\coinstats.cpp" />
<ClCompile Include="..\..\src\node\interfaces.cpp" />
<ClCompile Include="..\..\src\node\ui_interface.cpp" />
<ClCompile Include="..\..\src\pegins.cpp" />
<ClCompile Include="..\..\src\pow.cpp" />
<ClCompile Include="..\..\src\policy/fees.cpp" />
<ClCompile Include="..\..\src\policy/packages.cpp" />
<ClCompile Include="..\..\src\policy/rbf.cpp" />
<ClCompile Include="..\..\src\policy/settings.cpp" />
<ClCompile Include="..\..\src\primitives\bitcoin\transaction.cpp" />
<ClCompile Include="..\..\src\primitives\pak.cpp" />
<ClCompile Include="..\..\src\rpc\server.cpp" />
<ClCompile Include="..\..\src\script\sigcache.cpp" />
<ClCompile Include="..\..\src\shutdown.cpp" />
<ClCompile Include="..\..\src\signet.cpp" />
<ClCompile Include="..\..\src\sync.cpp" />
<ClCompile Include="..\..\src\timedata.cpp" />
<ClCompile Include="..\..\src\txdb.cpp" />
<ClCompile Include="..\..\src\txmempool.cpp" />
<ClCompile Include="..\..\src\validation.cpp" />
<ClCompile Include="..\..\src\validationinterface.cpp" />
<ClCompile Include="..\..\src\versionbits.cpp" />
<ClCompile Include="..\..\src\wallet\bdb.cpp" />
<ClCompile Include="..\..\src\wallet\rpc\elements.cpp" />
@ -36,6 +54,12 @@
<ProjectReference Include="..\libsecp256k1\libsecp256k1.vcxproj">
<Project>{bb493552-3b8c-4a8c-bf69-a6e7a51d2ea6}</Project>
</ProjectReference>
<ProjectReference Include="..\libleveldb\libleveldb.vcxproj">
<Project>{18430fef-6b61-4c53-b396-718e02850f1b}</Project>
</ProjectReference>
<ProjectReference Include="..\libelementssimplicity\libelementssimplicity.vcxproj">
<Project>{abae25f0-d700-46e1-9ef6-5d6ddfcf8b26}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />

View file

@ -34,6 +34,11 @@
<ClCompile Include="..\..\src\uint256.cpp" />
<ClCompile Include="..\..\src\util\strencodings.cpp" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\libelementssimplicity\libelementssimplicity.vcxproj">
<Project>{abae25f0-d700-46e1-9ef6-5d6ddfcf8b26}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<Import Project="..\common.vcxproj" />

View file

@ -15,7 +15,18 @@
<ClCompile Include="..\..\src\test\main.cpp" />
<ClCompile Include="..\..\src\test\util\*.cpp" />
<ClCompile Include="..\..\src\wallet\test\*_fixture.cpp" />
<ClCompile Include="..\..\src\wallet\test\*_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\coinselector_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\db_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\init_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\ismine_tests.cpp" />
<!-- Exclude psbt_wallet_tests.cpp from the build -->
<!-- <ClCompile Include="..\..\src\wallet\test\psbt_wallet_tests.cpp" /> -->
<ClCompile Include="..\..\src\wallet\test\scriptpubkeyman_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\spend_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\wallet_crypto_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\walletdb_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\wallet_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\wallet_transaction_tests.cpp" />
<ClCompile Include="..\..\src\wallet\test\util.cpp" />
<ClCompile Include="..\..\src\primitives\bitcoin\transaction.cpp" />
</ItemGroup>

View file

@ -8,7 +8,7 @@ export LC_ALL=C.UTF-8
export HOST=i686-pc-linux-gnu
export CONTAINER_NAME=ci_i686_centos
export DOCKER_NAME_TAG=quay.io/centos/centos:stream8
export DOCKER_NAME_TAG=quay.io/rockylinux/rockylinux:8
export DOCKER_PACKAGES="gcc-c++ glibc-devel.x86_64 libstdc++-devel.x86_64 glibc-devel.i686 libstdc++-devel.i686 ccache libtool make git python3 python3-zmq which patch lbzip2 xz procps-ng dash rsync coreutils bison"
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq --with-gui=qt5 --enable-reduce-exports"

View file

@ -7,8 +7,8 @@
export LC_ALL=C.UTF-8
export CONTAINER_NAME=ci_native_tsan
export DOCKER_NAME_TAG=ubuntu:22.04
export PACKAGES="clang llvm libc++abi-dev libc++-dev python3-zmq"
export DEP_OPTS="CC=clang CXX='clang++ -stdlib=libc++'"
export DOCKER_NAME_TAG="docker.io/ubuntu:24.04"
export PACKAGES="clang-18 llvm-18 libclang-rt-18-dev libc++abi-18-dev libc++-18-dev python3-zmq"
export DEP_OPTS="CC=clang-18 CXX='clang++-18 -stdlib=libc++'"
export GOAL="install"
export BITCOIN_CONFIG="--enable-zmq CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' CXXFLAGS='-g' --with-sanitizers=thread CC=clang CXX='clang++ -stdlib=libc++'"
export BITCOIN_CONFIG="--enable-zmq CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' CXXFLAGS='-g' --with-sanitizers=thread"

View file

@ -64,7 +64,7 @@ if [ -n "$DPKG_ADD_ARCH" ]; then
CI_EXEC dpkg --add-architecture "$DPKG_ADD_ARCH"
fi
if [[ $DOCKER_NAME_TAG == *centos* ]]; then
if [[ $DOCKER_NAME_TAG == *centos* ]] || [[ $DOCKER_NAME_TAG == *rocky* ]]; then
${CI_RETRY_EXE} CI_EXEC dnf -y install epel-release
${CI_RETRY_EXE} CI_EXEC dnf -y --allowerasing install "$DOCKER_PACKAGES" "$PACKAGES"
elif [ "$CI_USE_APT_INSTALL" != "no" ]; then

View file

@ -44,7 +44,7 @@ if [[ ${USE_MEMORY_SANITIZER} == "true" ]]; then
fi
if [ -z "$NO_DEPENDS" ]; then
if [[ $DOCKER_NAME_TAG == *centos* ]]; then
if [[ $DOCKER_NAME_TAG == *centos* ]] || [[ $DOCKER_NAME_TAG == *rocky* ]]; then
# CentOS has problems building the depends if the config shell is not explicitly set
# (i.e. for libevent a Makefile with an empty SHELL variable is generated, leading to
# an error as the first command is executed)

View file

@ -1,8 +1,8 @@
package=boost
$(package)_version=1.77.0
$(package)_download_path=https://boostorg.jfrog.io/artifactory/main/release/$($(package)_version)/source/
$(package)_file_name=boost_$(subst .,_,$($(package)_version)).tar.bz2
$(package)_sha256_hash=fc9f85fc030e233142908241af7a846e60630aa7388de9a5fafb1f3a26840854
$(package)_version=1.81.0
$(package)_download_path=https://archives.boost.io/release/$($(package)_version)/source/
$(package)_file_name=boost_$(subst .,_,$($(package)_version)).tar.gz
$(package)_sha256_hash=205666dea9f6a7cfed87c7a6dfbeb52a2c1b9de55712c9c1a87735d7181452b6
define $(package)_stage_cmds
mkdir -p $($(package)_staging_prefix_dir)/include && \

View file

@ -1,8 +1,8 @@
package=xcb_proto
$(package)_version=1.14.1
$(package)_version=1.15.2
$(package)_download_path=https://xorg.freedesktop.org/archive/individual/proto
$(package)_file_name=xcb-proto-$($(package)_version).tar.xz
$(package)_sha256_hash=f04add9a972ac334ea11d9d7eb4fc7f8883835da3e4859c9afa971efdf57fcc3
$(package)_sha256_hash=7072beb1f680a2fe3f9e535b797c146d22528990c72f63ddb49d2f350a3653ed
define $(package)_config_cmds
$($(package)_autoconf)

View file

@ -168,8 +168,11 @@ static bool ProcessUpnp()
struct UPNPUrls urls;
struct IGDdatas data;
int r;
#if MINIUPNPC_API_VERSION <= 17
r = UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr));
#else
r = UPNP_GetValidIGD(devlist, &urls, &data, lanaddr, sizeof(lanaddr), nullptr, 0);
#endif
if (r == 1)
{
if (fDiscover) {