On Fri, 26 Oct 2018 at 02:21, Joel Sherrill <j...@rtems.org> wrote: > > > On Thu, Oct 25, 2018 at 3:19 PM Vijay Kumar Banerjee < > vijaykumar9...@gmail.com> wrote: > >> >> >> On Fri, 26 Oct 2018 at 00:56, Joel Sherrill <j...@rtems.org> wrote: >> >>> Vijay, >>> >>> Did covoar just work after adjusting the files to be .o's? Or are there >>> more changes? >>> >>> Covoar just worked after adjusting the files. >> > > Awesome! > > Random thought. If you delete the executables which cause a core dump, can > you generate a full report? > > Then can we push on that report to make sure everything we want to report > on is covered. > > I think we have specific objects now, once they are excluded, we have the rest of the report intact. I'll try it out.
> --joel > > >> If not, I just need the current patch with a good log message. >>> >>> --joel >>> >>> On Thu, Oct 25, 2018 at 2:06 PM Vijay Kumar Banerjee < >>> vijaykumar9...@gmail.com> wrote: >>> >>>> Hi Chris! >>>> >>>> Do you find the patch alright? I was wondering if you were expecting >>>> some changes or modifications. I can do it and submit within this week. :) >>>> >>>> >>>> On Tue, 16 Oct 2018 at 09:06, Vijay Kumar Banerjee < >>>> vijaykumar9...@gmail.com> wrote: >>>> >>>>> mistakenly resent this. Sorry about it. >>>>> I have made a separate patch for covoar, >>>>> I intended to send that one. :) >>>>> >>>>> On Tue, Oct 16, 2018, 9:03 AM Vijay Kumar Banerjee < >>>>> vijaykumar9...@gmail.com> wrote: >>>>> >>>>>> Use the Object files in cpukit/ instead of the static library >>>>>> for Coverage analysis >>>>>> --- >>>>>> tester/rt/coverage.py | 27 ++++-- >>>>>> tester/rtems/testing/coverage/symbol-sets.ini | 90 >>>>>> +++++++++---------- >>>>>> 2 files changed, 66 insertions(+), 51 deletions(-) >>>>>> >>>>>> diff --git a/tester/rt/coverage.py b/tester/rt/coverage.py >>>>>> index c979332..55cb59a 100644 >>>>>> --- a/tester/rt/coverage.py >>>>>> +++ b/tester/rt/coverage.py >>>>>> @@ -244,13 +244,17 @@ class symbol_parser(object): >>>>>> symbol_config_path, >>>>>> symbol_select_path, >>>>>> symbol_set, >>>>>> - build_dir): >>>>>> + build_dir, >>>>>> + bsp_name, >>>>>> + target): >>>>>> self.symbol_select_file = symbol_select_path >>>>>> self.symbol_file = symbol_config_path >>>>>> self.build_dir = build_dir >>>>>> self.symbol_sets = {} >>>>>> self.symbol_set = symbol_set >>>>>> self.ssets = [] >>>>>> + self.bsp_name = bsp_name >>>>>> + self.target = target >>>>>> >>>>>> def parse(self): >>>>>> config = configparser.ConfigParser() >>>>>> @@ -264,9 +268,13 @@ class symbol_parser(object): >>>>>> for sset in self.ssets: >>>>>> lib = path.join(self.build_dir, >>>>>> config.get('libraries', sset)) >>>>>> self.symbol_sets[sset] = lib.encode('utf-8') >>>>>> + ss = self.symbol_sets[sset] >>>>>> + ss = ss.replace('@BSP@', self.bsp_name) >>>>>> + ss = ss.replace('@BUILD-TARGET@', self.target) >>>>>> + self.symbol_sets[sset] = ss >>>>>> return self.ssets >>>>>> except: >>>>>> - raise error.general('Symbol set parsing failed') >>>>>> + raise error.general('Symbol set parsing failed for %s' % >>>>>> sset) >>>>>> >>>>>> def write_ini(self, symbol_set): >>>>>> config = configparser.ConfigParser() >>>>>> @@ -275,11 +283,15 @@ class symbol_parser(object): >>>>>> config.add_section('symbol-sets') >>>>>> config.set('symbol-sets', 'sets', sset) >>>>>> config.add_section(sset) >>>>>> - config.set(sset, 'libraries', self.symbol_sets[sset]) >>>>>> + object_files = [o for o in >>>>>> os.listdir(self.symbol_sets[sset]) if o[-1] == 'o'] >>>>>> + object_paths = [] >>>>>> + for o in object_files: >>>>>> + >>>>>> object_paths.append(path.join(self.symbol_sets[sset], o)) >>>>>> + config.set(sset, 'libraries', ','.join(object_paths)) >>>>>> with open(self.symbol_select_file, 'w') as conf: >>>>>> - config.write(conf) >>>>>> + config.write(conf) >>>>>> except: >>>>>> - raise error.general('symbol parser write failed') >>>>>> + raise error.general('symbol parser write failed for %s' >>>>>> % sset) >>>>>> >>>>>> class covoar(object): >>>>>> ''' >>>>>> @@ -357,6 +369,7 @@ class coverage_run(object): >>>>>> self.report_format = self.macros['cov_report_format'] >>>>>> self.symbol_set = symbol_set >>>>>> self.target = self.macros['target'] >>>>>> + self.bsp_name = self.macros['bsp'].split('-')[0] >>>>>> >>>>>> def run(self): >>>>>> try: >>>>>> @@ -366,7 +379,9 @@ class coverage_run(object): >>>>>> parser = symbol_parser(self.symbol_config_path, >>>>>> self.symbol_select_path, >>>>>> self.symbol_set, >>>>>> - build_dir) >>>>>> + build_dir, >>>>>> + self.bsp_name, >>>>>> + self.target) >>>>>> symbol_sets = parser.parse() >>>>>> for sset in symbol_sets: >>>>>> parser.write_ini(sset) >>>>>> diff --git a/tester/rtems/testing/coverage/symbol-sets.ini >>>>>> b/tester/rtems/testing/coverage/symbol-sets.ini >>>>>> index 2685ef4..8f85533 100644 >>>>>> --- a/tester/rtems/testing/coverage/symbol-sets.ini >>>>>> +++ b/tester/rtems/testing/coverage/symbol-sets.ini >>>>>> @@ -29,50 +29,50 @@ >>>>>> # >>>>>> >>>>>> [symbol-sets] >>>>>> -sets = >>>>>> score,rtems,sapi,libdl,posix,libirfs,libdosfs,libdevfs,libimfs,libcsupport,libbspcmdline,libcpuuse,libstackchk,libfsmount,libstringto,libdevnull,libdumpbuf,libblock >>>>>> +sets = >>>>>> score,rtems,sapi,libdl,posix,librfs,libdosfs,libdevfs,libimfs,libbspcmdline,libcpuuse,libstackchk,libfsmount,libstringto,libdevnull,libdumpbuf,libblock >>>>>> >>>>>> [libraries] >>>>>> -score = @BUILD-TARGET@/c/@BSP@/cpukit/score/libscore.a >>>>>> -rtems = @BUILD-TARGET@/c/@BSP@/cpukit/rtems/librtems.a >>>>>> -sapi = @BUILD-TARGET@/c/@BSP@/cpukit/sapi/libsapi.a >>>>>> -libdl = @BUILD-TARGET@/c/@BSP@/cpukit/libdl/libdl.a >>>>>> -posix = @BUILD-TARGET@/c/@BSP@/cpukit/posix/libposix.a >>>>>> -libirfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/librfs.a >>>>>> -libdosfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/libdosfs.a >>>>>> -libdevfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/libdevfs.a >>>>>> -libimfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/libimfs.a >>>>>> -#libdefaultsfs = @BUiLD-TARGET@/c/@BSP@/cpukit/libfs/libdefaultfs.a >>>>>> -#libjffs2 = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/libjffs2.a >>>>>> -#dtc = @BUILD-TARGET@/c/@BSP@/cpukit/libfdt/libfdt.a >>>>>> -#libdrvmgr = @BUILD-TARGET@/c/@BSP@/cpukit/libdrvmgr/libdrvmgr.a >>>>>> -#libi2c = @BUILD-TARGET@/c/@BSP@/cpukit/libi2c/libi2c.a >>>>>> -libcsupport = @BUILD-TARGET@/c/@BSP@ >>>>>> /cpukit/libcsupport/libcsupport.a >>>>>> -libbspcmdline = @BUILD-TARGET@/c/@BSP@ >>>>>> /cpukit/libmisc/libbspcmdline.a >>>>>> -libcpuuse = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libcpuuse.a >>>>>> -libstackchk = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libstackchk.a >>>>>> -libfsmount = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libfsmount.a >>>>>> -libstringto = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libstringto.a >>>>>> -libdevnull = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libdevnull.a >>>>>> -libdumpbuf = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libdumpbuf.a >>>>>> -#libcapture = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libcapture.a >>>>>> -#libdummy = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libdummy.a >>>>>> -#libmonitor = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libmonitor.a >>>>>> -#libmouse = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libmouse.a >>>>>> -#libmw-fb = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libmw-fb.a >>>>>> -#libredirector = @BUILD-TARGET@/c/@BSP@ >>>>>> /cpukit/libmisc/libredirector.a >>>>>> -#librtemsfdt = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/librtemsfdt.a >>>>>> -#libserdbg = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libserdbg.a >>>>>> -#libshell = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libshell.a >>>>>> -#libtestsupport= @BUILD-TARGET@/c/@BSP@ >>>>>> /cpukit/libmisc/libtestsupport.a >>>>>> -#libuntar = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libuntar.a >>>>>> -#libutf8proc = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libutf8proc.a >>>>>> -#libuuid = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libuuid.a >>>>>> -#libxz = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/libxz.a >>>>>> -libblock = @BUILD-TARGET@/c/@BSP@/cpukit/libblock/libblock.a >>>>>> -#libpci = @BUILD-TARGET@/c/@BSP@/cpukit/libpci/libpci.a >>>>>> -#librpc = @BUILD-TARGET@/c/@BSP@/cpukit/librpc/librpc.a >>>>>> -#libxdr = @BUILD-TARGET@/c/@BSP@/cpukit/librpc/libxdr.a >>>>>> -#libcrypt = @BUILD-TARGET@/c/@BSP@/cpukit/libcrypt/libcrypt.a >>>>>> -#libmd = @BUILD-TARGET@/c/@BSP@/cpukit/libmd/libmd.a >>>>>> -#libstdthreads = @BUILD-TARGET@/c/@BSP@ >>>>>> /cpukit/libstdthreads/libstdthreads.a >>>>>> -#zlib = @BUILD-TARGET@/c/@BSP@/cpukit/zlib/libz.a >>>>>> +score = @BUILD-TARGET@/c/@BSP@/cpukit/score/src >>>>>> +rtems = @BUILD-TARGET@/c/@BSP@/cpukit/rtems/src >>>>>> +sapi = @BUILD-TARGET@/c/@BSP@/cpukit/sapi/src >>>>>> +libdl = @BUILD-TARGET@/c/@BSP@/cpukit/libdl >>>>>> +posix = @BUILD-TARGET@/c/@BSP@/cpukit/posix/src >>>>>> +librfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/src/rfs >>>>>> +libdosfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/src/dosfs >>>>>> +libdevfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/src/devfs >>>>>> +libimfs = @BUILD-TARGET@/c/@BSP@/cpukit/libfs/src/imfs >>>>>> +#libdefaultsfs = @BUiLD-TARGET@/c/@BSP@/cpukit/libfs >>>>>> +#libjffs2 = @BUILD-TARGET@/c/@BSP@/cpukit/libfs >>>>>> +#dtc = @BUILD-TARGET@/c/@BSP@/cpukit/libfdt >>>>>> +#libdrvmgr = @BUILD-TARGET@/c/@BSP@/cpukit/libdrvmgr >>>>>> +#libi2c = @BUILD-TARGET@/c/@BSP@/cpukit/libi2c >>>>>> +#libcsupport = @BUILD-TARGET@/c/@BSP@/cpukit/libcsupport/src >>>>>> +libbspcmdline = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/bspcmdline >>>>>> +libcpuuse = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/cpuuse >>>>>> +libstackchk = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/stackchk >>>>>> +libfsmount = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/fsmount >>>>>> +libstringto = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/stringto >>>>>> +libdevnull = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/devnull >>>>>> +libdumpbuf = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc/dumpbuf >>>>>> +#libcapture = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libdummy = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libmonitor = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libmouse = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libmw-fb = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libredirector = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#librtemsfdt = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libserdbg = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libshell = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libtestsupport= @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libuntar = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libutf8proc = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libuuid = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +#libxz = @BUILD-TARGET@/c/@BSP@/cpukit/libmisc >>>>>> +libblock = @BUILD-TARGET@/c/@BSP@/cpukit/libblock/src >>>>>> +#libpci = @BUILD-TARGET@/c/@BSP@/cpukit/libpci >>>>>> +#librpc = @BUILD-TARGET@/c/@BSP@/cpukit/librpc >>>>>> +#libxdr = @BUILD-TARGET@/c/@BSP@/cpukit/librpc >>>>>> +#libcrypt = @BUILD-TARGET@/c/@BSP@/cpukit/libcrypt >>>>>> +#libmd = @BUILD-TARGET@/c/@BSP@/cpukit/libmd >>>>>> +#libstdthreads = @BUILD-TARGET@/c/@BSP@/cpukit/libstdthreads >>>>>> +#zlib = @BUILD-TARGET@/c/@BSP@/cpukit/zlib >>>>>> -- >>>>>> 2.17.0 >>>>>> >>>>>> _______________________________________________ >>>> devel mailing list >>>> devel@rtems.org >>>> http://lists.rtems.org/mailman/listinfo/devel >>> >>>
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel