0b2897e694
refs: #4641 Change-Id: Iabed3ad7632544d97559e6798547b7972b416784
23 lines
823 B
Python
23 lines
823 B
Python
# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
|
|
|
|
from waflib import TaskGen
|
|
|
|
def options(opt):
|
|
opt.add_option('--with-coverage', action='store_true', default=False,
|
|
help='Add compiler flags to enable code coverage information')
|
|
|
|
def configure(conf):
|
|
if conf.options.with_coverage:
|
|
if not conf.options.debug:
|
|
conf.fatal('Code coverage flags require debug mode compilation (add --debug)')
|
|
conf.check_cxx(cxxflags=['-fprofile-arcs', '-ftest-coverage', '-fPIC'],
|
|
linkflags=['-fprofile-arcs'], uselib_store='GCOV', mandatory=True)
|
|
|
|
@TaskGen.feature('cxx','cc')
|
|
@TaskGen.after('process_source')
|
|
def add_coverage(self):
|
|
if getattr(self, 'use', ''):
|
|
self.use += ' GCOV'
|
|
else:
|
|
self.use = 'GCOV'
|