- job: clang:tsan
artifacts: true
-# Jobs for builds with TSAN enabled --disable-atomics
-
-gcc:tsan:noatomics:
- <<: *base_image
- <<: *build_job
- variables:
- CC: gcc
- CFLAGS: "${CFLAGS_COMMON} -fsanitize=thread -DISC_MEM_USE_INTERNAL_MALLOC=0"
- LDFLAGS: "-fsanitize=thread"
- EXTRA_CONFIGURE: "--with-libidn2 --disable-atomic --disable-dnstap"
-
-system:gcc:tsan:noatomics:
- variables:
- TSAN_OPTIONS: ${TSAN_OPTIONS_COMMON}
- <<: *base_image
- <<: *system_test_tsan_job
- needs:
- - job: gcc:tsan:noatomics
- artifacts: true
-
-unit:gcc:tsan:noatomics:
- variables:
- TSAN_OPTIONS: ${TSAN_OPTIONS_COMMON}
- <<: *base_image
- <<: *unit_test_tsan_job
- needs:
- - job: gcc:tsan:noatomics
- artifacts: true
-
-clang:tsan:noatomics:
- <<: *base_image
- <<: *build_job
- variables:
- CC: "${CLANG}"
- CFLAGS: "${CFLAGS_COMMON} -fsanitize=thread -DISC_MEM_USE_INTERNAL_MALLOC=0"
- LDFLAGS: "-fsanitize=thread"
- EXTRA_CONFIGURE: "--with-libidn2 --disable-atomic --disable-dnstap"
-
-system:clang:tsan:noatomics:
- variables:
- TSAN_OPTIONS: ${TSAN_OPTIONS_COMMON}
- <<: *base_image
- <<: *system_test_tsan_job
- needs:
- - job: clang:tsan:noatomics
- artifacts: true
-
-unit:clang:tsan:noatomics:
- variables:
- TSAN_OPTIONS: ${TSAN_OPTIONS_COMMON}
- <<: *base_image
- <<: *unit_test_tsan_job
- needs:
- - job: clang:tsan:noatomics
- artifacts: true
-
-# Jobs for builds without atomics and threads
-
-gcc:noatomics:
- variables:
- CC: gcc
- EXTRA_CONFIGURE: "--disable-atomic --disable-threads --disable-dnstap"
- <<: *base_image
- <<: *build_job
-
-system:gcc:noatomics:
- <<: *base_image
- <<: *system_test_job
- needs:
- - job: gcc:noatomics
- artifacts: true
-
-unit:gcc:noatomics:
- <<: *base_image
- <<: *unit_test_job
- needs:
- - job: gcc:noatomics
- artifacts: true
-
# Jobs for Clang builds on Debian 11 "bullseye" (amd64)
clang:bullseye:amd64: