else:
conf.env.Append(PROTOCPATH = '/usr/include')
+ # Check protoc version
+ status, output = conf.TryAction('$PROTOC --version > $TARGET')
+ if status:
+ conf.env['PROTOC_VERSION'] = output
+
# Check if libmudflap is available (only with GCC)
if 'gcc' in env['CC']:
if conf.CheckLib('mudflap'):
conf.env.Append(CORECFLAGS = extra)
# Check if we can use undefined behaviour sanitizer (only with clang)
- extra = '-fsanitize=undefined '
+ # TODO: Fuzz test triggers the bool sanitizer, figure out whether to
+ # modify the fuzz test or to keep ignoring the check.
+ extra = '-fsanitize=undefined,integer -fno-sanitize-recover=undefined,integer -fsanitize-recover=bool '
if 'clang' in env['CC']:
if conf.CheckCCFLAGS(extra, linkflags = extra):
conf.env.Append(CORECFLAGS = extra)
# More strict checks on the nanopb core
env.Append(CORECFLAGS = '/W4')
-
- # PB_RETURN_ERROR triggers C4127 because of while(0)
- env.Append(CFLAGS = '/wd4127')
elif 'tcc' in env['CC']:
# Tiny C Compiler
env.Append(CFLAGS = '-Wall -Werror -g')