Eliminating hardcoded paths for coverage analysis

Joel Sherrill joel.sherrill at oarcorp.com
Tue Aug 4 14:34:00 UTC 2015



On 8/4/2015 9:28 AM, Hermann Felbinger wrote:
>
>
> Joel Sherrill <joel.sherrill at oarcorp.com <mailto:joel.sherrill at oarcorp.com>> schrieb am Di., 4. Aug. 2015 um 16:06 Uhr:
>
>
>
>     On 8/4/2015 7:52 AM, Hermann Felbinger wrote:
>      > Dear all!
>      >
>      > I'm currently working on a coverage report generator for RTEMS.
>      > In the current version a user has to set the absolute paths to the libraries, which are analyzed for coverage, in a config file, e.g., see [1].
>      >
>      > A detailed explanation how to execute the test cases and how to invoke the generation of coverage reports, can be found in [2].
>      >
>      > To eliminate the absolute paths to the analyzed libraries from the config file, I decided to add a command line parameter '--rtems-cpukit' which has to be set by the user, and points to the cpukit directory within the built rtems directory. An example for the usage of this parameter is:
>      > --rtems-cpukit=/home/hf/development/rtems/b-leon2/sparc-rtems4.11/c/leon2/cpukit/
>      > Now relative paths to the libraries can be used in the config file, as shown in [3].
>      >
>      > Do you think this is a useful solution to get rid of the absolute paths?
>
>     It would work and would be BSP independent. But it moves the path knowledge
>     to the command line.
>
>
>     Could it be done with just "/home/hf/development/rtems/b-leon2" and the
>     user configuration file use @TARGET@/c/@BSP@/cpukit?
>
> Yes of course.
> Then I could use the option --rtems-builddir as prefix for the directory containing the test cases. Currently the path to the test suite is also required to be an absolute path in the execution command for rtems-test e.g. $HOME/development/rtems/b-leon2/testsuites/
>
>     Then the option could be --rtems-builddir or something similar.
>
> OK.

Just make sure it works and is easy to explain. :)

>     I am also thinking that as we move to waf, this might be easier to adapt without
>     changes.
>
> What do you mean by that?

We have plans to switch the build system from autoconf/automake to waf. This would
change the path to the object files in the build tree. Not sure what other impact
it will have. May require listing individual files. Not sure.

>      > Could there be some libraries outside the cpukit directory that are analyzed for coverage?
>
>     It is possible but it wouldn't be something done on a regular basis.
>
>      > Best,
>      > Hermann
>      >
>      > [1] https://github.com/hermann19829/rtems-tools/blob/master/tester/rtems/testing/coverage/symbolSets_pc386.config
>      > [2] http://socis2015rtems.blogspot.co.at/2015/07/build-rtems-and-execute-coverage.html
>      > [3] https://github.com/hermann19829/rtems-tools/blob/master/tester/rtems/testing/coverage/symbolSets.config
>
>     --
--joel



More information about the devel mailing list