#
# Qmake configuration for the GCC / Clang sanitize features
#

QMAKE_COMMON_SANITIZE_CFLAGS   = -fno-omit-frame-pointer
QMAKE_COMMON_SANITIZE_CXXFLAGS = -fno-omit-frame-pointer

QMAKE_SANITIZE_ADDRESS_CFLAGS     = -fsanitize=address
QMAKE_SANITIZE_ADDRESS_CXXFLAGS   = -fsanitize=address
QMAKE_SANITIZE_ADDRESS_LFLAGS     = -fsanitize=address

QMAKE_SANITIZE_THREAD_CFLAGS      = -fsanitize=thread
QMAKE_SANITIZE_THREAD_CXXFLAGS    = -fsanitize=thread
QMAKE_SANITIZE_THREAD_LFLAGS      = -fsanitize=thread

QMAKE_SANITIZE_MEMORY_CFLAGS      = -fsanitize=memory
QMAKE_SANITIZE_MEMORY_CXXFLAGS    = -fsanitize=memory
QMAKE_SANITIZE_MEMORY_LFLAGS      = -fsanitize=memory

QMAKE_SANITIZE_FUZZERNL_CFLAGS    = -fsanitize=fuzzer-no-link
QMAKE_SANITIZE_FUZZERNL_CXXFLAGS  = -fsanitize=fuzzer-no-link
QMAKE_SANITIZE_FUZZERNL_LFLAGS    = -fsanitize=fuzzer-no-link

QMAKE_SANITIZE_UNDEFINED_CFLAGS   = -fsanitize=undefined -fsanitize=float-divide-by-zero
QMAKE_SANITIZE_UNDEFINED_CXXFLAGS = -fsanitize=undefined -fsanitize=float-divide-by-zero
QMAKE_SANITIZE_UNDEFINED_LFLAGS   = -fsanitize=undefined -fsanitize=float-divide-by-zero