diff --git a/contrib/teamcity/build-configurations.sh b/contrib/teamcity/build-configurations.sh --- a/contrib/teamcity/build-configurations.sh +++ b/contrib/teamcity/build-configurations.sh @@ -354,14 +354,21 @@ # Build all the targets that are not built as part of the default target ninja test_bitcoin test_bitcoin-qt - # Print the wine version, might be useful for debugging - wine --version + ninja package + + # Running the tests with wine and jemalloc is causing deadlocks, so disable + # jemalloc prior running the tests. + # FIXME figure out what is causing the deadlock. Example output: + # 01fe:err:ntdll:RtlpWaitForCriticalSection section 0x39e081b0 "?" wait + # timed out in thread 01fe, blocked by 01cd, retrying (60 sec) + CMAKE_FLAGS+=( + "-DUSE_JEMALLOC=OFF" + ) + CMAKE_FLAGS="${CMAKE_FLAGS[*]}" "${DEVTOOLS_DIR}"/build_cmake.sh test_bitcoin # Run the tests. Not all will run with wine, so exclude them find src -name "libbitcoinconsensus*.dll" -exec cp {} src/test/ \; wine ./src/test/test_bitcoin.exe --run_test=\!radix_tests,rcu_tests - - ninja package ;; build-osx) diff --git a/contrib/teamcity/setup-debian-buster.sh b/contrib/teamcity/setup-debian-buster.sh --- a/contrib/teamcity/setup-debian-buster.sh +++ b/contrib/teamcity/setup-debian-buster.sh @@ -66,6 +66,7 @@ software-properties-common tar wget + wine ) function join_by() { @@ -106,13 +107,3 @@ # Use the mingw posix variant update-alternatives --set x86_64-w64-mingw32-g++ $(command -v x86_64-w64-mingw32-g++-posix) update-alternatives --set x86_64-w64-mingw32-gcc $(command -v x86_64-w64-mingw32-gcc-posix) - -# Install wine from the winehq repo to get the latest version -wget -qO - https://dl.winehq.org/wine-builds/winehq.key | apt-key add - -apt-add-repository https://dl.winehq.org/wine-builds/debian/ -# This is needed to get libfaudio0 which is not packaged for debian 10 -wget -O- -q https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/Release.key | apt-key add - -echo "deb http://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/ ./" | tee /etc/apt/sources.list.d/wine-obs.list - -apt-get update -DEBIAN_FRONTEND=noninteractive apt install -y --install-recommends winehq-devel