whouses

whouses Perl module is an impact analysis in a clearmake build environment.
Download

whouses Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Perl Artistic License
  • Price:
  • FREE
  • Publisher Name:
  • David Boyce
  • Publisher web site:
  • http://search.cpan.org/~dsb/

whouses Tags


whouses Description

whouses Perl module is an impact analysis in a clearmake build environment. whouses Perl module is an impact analysis in a clearmake build environment.SYNOPSISRun this script with the -help option for usage details. Here are some additional sample usages with explanations: whouses foobar.hShows all DOs that make use of any file matching /foobar.h/. whouses -recurse foobar.hSame as above but follows the chain of derived files recursively. whouses -exact foobar.hShows all DOs that make use of the specified file. The -exact flag suppresses pattern matching and shows only DOs which reference the exact file.Whouses provides a limited form of "impact analysis" in a clearmake build environment. This is different from traditional impact analysis (see TRUE CODE ANALYSIS COMPARED below for details). In particular, it operates at the granularity of files rather than language elements.Whouses is best described by example. Imagine you have a VOB /vobs_sw in which you build the incredibly simple application foo from foo.c. You have a Makefile which compiles foo.c to foo.o and then links it to produce foo. And let's further assume you've just done a build using clearmake.Thus, foo is a derived object (DO) which has a config record (CR) showing how it was made. Whouses analyzes that CR and prints the data in easy-to-read indented textual format. For instance: % whouses -do foo foo.c /vobs_sw/src/foo.c => /vobs_sw/src/foo.oThe -do foo points to the derived object from which to extract and analyze the CR; it will be implicit in the remaining examples. The output indicates that foo.o uses foo.c, or in other words that foo.c is a contributor to foo.o. If we add the -recurse flag: % whouses -r foo.c /vobs_sw/src/foo.c => /vobs_sw/src/foo.o /vobs_sw/src/fooWe see all files to which foo.c contributes, indented according to how many generations removed they are. If we now add -terminals % whouses -r -t foo.c /vobs_sw/src/foo.c => /vobs_sw/src/fooIntermediate targets such as foo.o are suppressed so we see only the "final" targets descended from foo.c.We can also go in the other direction using -backward: % whouses -b -e foo /vobs_sw/src/foo Requirements: · Perl


whouses Related Software