src: rework static analysis detection

Inspired by QEMU code.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Pavel Hrdina 2020-11-16 10:57:56 +01:00
parent 912421e7b6
commit 3f2b7d3fe2
2 changed files with 4 additions and 14 deletions

View File

@ -142,20 +142,6 @@ if get_option('test_coverage')
endif
# Detect when running under the clang static analyzer's scan-build driver
# or Coverity-prevent's cov-build. Define STATIC_ANALYSIS accordingly.
rc = run_command(
'sh', '-c',
'test -n "${CCC_ANALYZER_HTML}"' +
' -o -n "${CCC_ANALYZER_ANALYSIS+set}"' +
' -o -n "$COVERITY_BUILD_COMMAND$COVERITY_LD_PRELOAD"',
)
if rc.returncode() == 0
conf.set('STATIC_ANALYSIS', 1)
endif
# Add RPATH information when building for a non-standard prefix, or
# when explicitly requested to do so

View File

@ -29,6 +29,10 @@
#include <stdlib.h>
#include "glibcompat.h"
#if defined __clang_analyzer__ || defined __COVERITY__
# define STATIC_ANALYSIS 1
#endif
#if STATIC_ANALYSIS
# undef NDEBUG /* Don't let a prior NDEBUG definition cause trouble. */
# include <assert.h>