friendly backtraces in actions (#2591)

* symlink to backtrace.h in dockerfile
Add defines for BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE
update testing scripts to handle clang linking to gcc backtrace.h
symlinked location
Continue on Error in ps1 scripts

* use boost 1.70 for clang to allow for

`BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE` definition
revert win actions guards in assert_internal
This commit is contained in:
Russel Waters 2020-02-24 10:21:28 -05:00 committed by GitHub
commit b81da489f5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 26 additions and 6 deletions

View file

@ -53,6 +53,9 @@ set (NANO_FUZZER_TEST OFF CACHE BOOL "")
option (NANO_STACKTRACE_BACKTRACE "Use BOOST_STACKTRACE_USE_BACKTRACE in stacktraces, for POSIX" OFF)
if (NANO_STACKTRACE_BACKTRACE)
add_definitions(-DNANO_STACKTRACE_BACKTRACE=1)
if (BACKTRACE_INCLUDE)
add_definitions(-DBOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE=${BACKTRACE_INCLUDE})
endif()
endif ()
if (${NANO_TIMED_LOCKS} GREATER 0)

View file

@ -1,5 +1,4 @@
# Stop immediately if any error happens
$ErrorActionPreference = "Stop"
$ErrorActionPreference = "Continue"
if (${env:artifact} -eq 1) {
if ( ${env:BETA} -eq 1 ) {

View file

@ -1,5 +1,4 @@
# Stop immediately if any error happens
$ErrorActionPreference = "Stop"
$ErrorActionPreference = "Continue"
if ( ${env:BETA} -eq 1 ) {
$network_cfg="beta"

View file

@ -1,3 +1,5 @@
$ErrorActionPreference = "Continue"
Set-MpPreference -DisableArchiveScanning $true
Set-MpPreference -DisableRealtimeMonitoring $true
Set-MpPreference -DisableBehaviorMonitoring $true

View file

@ -1,3 +1,5 @@
$ErrorActionPreference = "Continue"
function Get-RedirectedUri {
<#
.SYNOPSIS

View file

@ -1,3 +1,5 @@
$ErrorActionPreference = "Continue"
if (Test-Path env:CSC_LINK) {
$path = Join-Path -Path "$env:TMP" -ChildPath csc.p12
[IO.File]::WriteAllBytes($path, [Convert]::FromBase64String($env:CSC_LINK))

View file

@ -44,8 +44,15 @@ ulimit -S -n 8192
if [[ "$OS" == 'Linux' ]]; then
ROCKSDB="-DROCKSDB_LIBRARIES=/tmp/rocksdb/lib/librocksdb.a \
-DROCKSDB_INCLUDE_DIRS=/tmp/rocksdb/include"
if clang --version; then
BACKTRACE="-DNANO_STACKTRACE_BACKTRACE=ON \
-DBACKTRACE_INCLUDE=</tmp/backtrace.h>"
else
BACKTRACE="-DNANO_STACKTRACE_BACKTRACE=ON"
fi
else
ROCKSDB=""
BACKTRACE=""
fi
cmake \
@ -61,6 +68,7 @@ cmake \
-DBOOST_ROOT=/tmp/boost/ \
-DQt5_DIR=${qt_dir} \
-DCI_TEST="1" \
${BACKTRACE} \
${SANITIZERS} \
..

View file

@ -14,6 +14,11 @@ RUN update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
RUN update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
ENV BOOST_ROOT=/tmp/boost
ADD util/build_prep/fetch_boost.sh fetch_boost.sh
ADD util/build_prep/bootstrap_boost.sh bootstrap_boost.sh
RUN ./bootstrap_boost.sh -m -c -B 1.70
RUN ./fetch_boost.sh
# workaround to get a path that can be easily passed into cmake for
# BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE
# see https://www.boost.org/doc/libs/1_70_0/doc/html/stacktrace/configuration_and_build.html#stacktrace.configuration_and_build.f3
RUN ln -s /usr/lib/gcc/x86_64-linux-gnu/5/include/backtrace.h /tmp/backtrace.h