diff options
Diffstat (limited to '.circleci/config.yml')
-rw-r--r-- | .circleci/config.yml | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml index de800936..0d204404 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml | |||
@@ -4,18 +4,20 @@ workflows: | |||
4 | version: 2 | 4 | version: 2 |
5 | build_linux: | 5 | build_linux: |
6 | jobs: | 6 | jobs: |
7 | - x86_64 | 7 | - asan |
8 | - tsan | ||
8 | 9 | ||
9 | jobs: | 10 | jobs: |
10 | x86_64: | 11 | asan: |
11 | working_directory: ~/work | 12 | working_directory: ~/work |
12 | docker: | 13 | docker: |
13 | - image: ubuntu | 14 | - image: ubuntu |
14 | 15 | ||
15 | steps: | 16 | steps: |
16 | - checkout | 17 | - checkout |
17 | - run: apt update | 18 | - run: &apt_install |
18 | - run: apt install -y --no-install-recommends | 19 | apt update && |
20 | apt install -y --no-install-recommends | ||
19 | clang | 21 | clang |
20 | cmake | 22 | cmake |
21 | libconfig-dev | 23 | libconfig-dev |
@@ -25,19 +27,14 @@ jobs: | |||
25 | libvpx-dev | 27 | libvpx-dev |
26 | ninja-build | 28 | ninja-build |
27 | pkg-config | 29 | pkg-config |
28 | - run: . .travis/flags-clang.sh; | 30 | - run: CC=clang .circleci/cmake-asan |
29 | add_flag -fsanitize=address; | 31 | |
30 | cmake -H. -B_build -GNinja | 32 | tsan: |
31 | -DCMAKE_C_FLAGS="$C_FLAGS" | 33 | working_directory: ~/work |
32 | -DCMAKE_CXX_FLAGS="$CXX_FLAGS" | 34 | docker: |
33 | -DCMAKE_EXE_LINKER_FLAGS="$LD_FLAGS" | 35 | - image: ubuntu |
34 | -DCMAKE_SHARED_LINKER_FLAGS="$LD_FLAGS" | 36 | |
35 | -DCMAKE_INSTALL_PREFIX:PATH="$PWD/_install" | 37 | steps: |
36 | -DTRACE=ON | 38 | - checkout |
37 | -DMUST_BUILD_TOXAV=ON | 39 | - run: *apt_install |
38 | -DSTRICT_ABI=ON | 40 | - run: CC=clang .circleci/cmake-tsan |
39 | -DTEST_TIMEOUT_SECONDS=120 | ||
40 | -DUSE_IPV6=OFF | ||
41 | - run: cd _build && ninja install -j$(nproc) | ||
42 | - run: cd _build && ctest -j50 --output-on-failure || | ||
43 | ctest -j50 --output-on-failure --rerun-failed | ||