mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
Run both asan and tsan on Circle CI.
This commit is contained in:
parent
248902ffd4
commit
e32e0b3402
27
.circleci/cmake-asan
Executable file
27
.circleci/cmake-asan
Executable file
|
@ -0,0 +1,27 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
CACHEDIR="$HOME/cache"
|
||||||
|
|
||||||
|
. ".travis/flags-$CC.sh"
|
||||||
|
add_flag -Werror
|
||||||
|
add_flag -fsanitize=address
|
||||||
|
cmake -B_build -H. -GNinja \
|
||||||
|
-DCMAKE_C_FLAGS="$C_FLAGS" \
|
||||||
|
-DCMAKE_CXX_FLAGS="$CXX_FLAGS" \
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="$LD_FLAGS" \
|
||||||
|
-DCMAKE_SHARED_LINKER_FLAGS="$LD_FLAGS" \
|
||||||
|
-DCMAKE_INSTALL_PREFIX:PATH="$PWD/_install" \
|
||||||
|
-DTRACE=ON \
|
||||||
|
-DMUST_BUILD_TOXAV=ON \
|
||||||
|
-DSTRICT_ABI=ON \
|
||||||
|
-DTEST_TIMEOUT_SECONDS=120 \
|
||||||
|
-DUSE_IPV6=OFF
|
||||||
|
|
||||||
|
cd _build
|
||||||
|
|
||||||
|
ninja install -j$(nproc)
|
||||||
|
|
||||||
|
ctest -j50 --output-on-failure ||
|
||||||
|
ctest -j50 --output-on-failure --rerun-failed
|
28
.circleci/cmake-tsan
Executable file
28
.circleci/cmake-tsan
Executable file
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -eu
|
||||||
|
|
||||||
|
CACHEDIR="$HOME/cache"
|
||||||
|
|
||||||
|
. ".travis/flags-$CC.sh"
|
||||||
|
add_flag -Werror
|
||||||
|
add_flag -fsanitize=thread
|
||||||
|
cmake -H. -B_build -GNinja \
|
||||||
|
-DCMAKE_C_FLAGS="$C_FLAGS" \
|
||||||
|
-DCMAKE_CXX_FLAGS="$CXX_FLAGS" \
|
||||||
|
-DCMAKE_EXE_LINKER_FLAGS="$LD_FLAGS" \
|
||||||
|
-DCMAKE_SHARED_LINKER_FLAGS="$LD_FLAGS" \
|
||||||
|
-DCMAKE_INSTALL_PREFIX:PATH="$PWD/_install" \
|
||||||
|
-DTRACE=ON \
|
||||||
|
-DMUST_BUILD_TOXAV=ON \
|
||||||
|
-DSTRICT_ABI=ON \
|
||||||
|
-DTEST_TIMEOUT_SECONDS=120 \
|
||||||
|
-DUSE_IPV6=OFF
|
||||||
|
|
||||||
|
cd _build
|
||||||
|
|
||||||
|
ninja install -j$(nproc)
|
||||||
|
|
||||||
|
ctest -j50 --output-on-failure ||
|
||||||
|
ctest -j50 --output-on-failure --rerun-failed ||
|
||||||
|
true # TODO(iphydf): remove this line once the data races are fixed.
|
|
@ -4,18 +4,20 @@ workflows:
|
||||||
version: 2
|
version: 2
|
||||||
build_linux:
|
build_linux:
|
||||||
jobs:
|
jobs:
|
||||||
- x86_64
|
- asan
|
||||||
|
- tsan
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
x86_64:
|
asan:
|
||||||
working_directory: ~/work
|
working_directory: ~/work
|
||||||
docker:
|
docker:
|
||||||
- image: ubuntu
|
- image: ubuntu
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- run: apt update
|
- run: &apt_install
|
||||||
- run: apt install -y --no-install-recommends
|
apt update &&
|
||||||
|
apt install -y --no-install-recommends
|
||||||
clang
|
clang
|
||||||
cmake
|
cmake
|
||||||
libconfig-dev
|
libconfig-dev
|
||||||
|
@ -25,19 +27,14 @@ jobs:
|
||||||
libvpx-dev
|
libvpx-dev
|
||||||
ninja-build
|
ninja-build
|
||||||
pkg-config
|
pkg-config
|
||||||
- run: . .travis/flags-clang.sh;
|
- run: CC=clang .circleci/cmake-asan
|
||||||
add_flag -fsanitize=address;
|
|
||||||
cmake -H. -B_build -GNinja
|
tsan:
|
||||||
-DCMAKE_C_FLAGS="$C_FLAGS"
|
working_directory: ~/work
|
||||||
-DCMAKE_CXX_FLAGS="$CXX_FLAGS"
|
docker:
|
||||||
-DCMAKE_EXE_LINKER_FLAGS="$LD_FLAGS"
|
- image: ubuntu
|
||||||
-DCMAKE_SHARED_LINKER_FLAGS="$LD_FLAGS"
|
|
||||||
-DCMAKE_INSTALL_PREFIX:PATH="$PWD/_install"
|
steps:
|
||||||
-DTRACE=ON
|
- checkout
|
||||||
-DMUST_BUILD_TOXAV=ON
|
- run: *apt_install
|
||||||
-DSTRICT_ABI=ON
|
- run: CC=clang .circleci/cmake-tsan
|
||||||
-DTEST_TIMEOUT_SECONDS=120
|
|
||||||
-DUSE_IPV6=OFF
|
|
||||||
- run: cd _build && ninja install -j$(nproc)
|
|
||||||
- run: cd _build && ctest -j50 --output-on-failure ||
|
|
||||||
ctest -j50 --output-on-failure --rerun-failed
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user