|
|
@@ -62,6 +62,13 @@ function(add_sanitizers ...) |
|
|
foreach (TARGET ${ARGV}) |
|
|
foreach (TARGET ${ARGV}) |
|
|
# Check if this target will be compiled by exactly one compiler. Other- |
|
|
# Check if this target will be compiled by exactly one compiler. Other- |
|
|
# wise sanitizers can't be used and a warning should be printed once. |
|
|
# wise sanitizers can't be used and a warning should be printed once. |
|
|
|
|
|
get_target_property(TARGET_TYPE ${TARGET} TYPE) |
|
|
|
|
|
if (TARGET_TYPE STREQUAL "INTERFACE_LIBRARY") |
|
|
|
|
|
message(WARNING "Can't use any sanitizers for target ${TARGET}, " |
|
|
|
|
|
"because it is an interface library and cannot be " |
|
|
|
|
|
"compiled directly.") |
|
|
|
|
|
return() |
|
|
|
|
|
endif () |
|
|
sanitizer_target_compilers(${TARGET} TARGET_COMPILER) |
|
|
sanitizer_target_compilers(${TARGET} TARGET_COMPILER) |
|
|
list(LENGTH TARGET_COMPILER NUM_COMPILERS) |
|
|
list(LENGTH TARGET_COMPILER NUM_COMPILERS) |
|
|
if (NUM_COMPILERS GREATER 1) |
|
|
if (NUM_COMPILERS GREATER 1) |
|
|
|