Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.547.430 Times

whouses 0.15

  Date Added: February 05, 2010  |  Visits: 591


Report Broken Link
Printer Friendly Version

Product Homepage
Download (71 downloads)

whouses Perl module is an impact analysis in a clearmake build environment. SYNOPSIS Run this script with the -help option for usage details. Here are some additional sample usages with explanations: whouses foobar.h Shows all DOs that make use of any file matching /foobar.h/. whouses -recurse foobar.h Same as above but follows the chain of derived files recursively. whouses -exact foobar.h Shows 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 lets further assume youve 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.o The -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/foo We 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/foo Intermediate 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 <= /vobs_sw/src/foo.o Which shows foo.o as a progenitor of foo. Note that the arrow (<=) is turned around to indicate -backward mode. We also introduced the -exact flag here. By default, arguments to whouses are treated as patterns, not file names, and since foo has no extension it would have matched foo.c and foo.o as well. Use of -exact suppresses pattern matching. Of course we can go backward recursively as well: % whouses -back -exact -recurse foo /vobs_sw/src/foo <= /vobs_sw/src/foo.o /vobs_sw/src/foo.c /vobs_sw/src/foo.h /vobs_sw/src/bar.h And discover that foo.h and bar.h were also used. When used recursively in the forward direction, this script answers the question "if I change file X, which derived files will need to be rebuilt"? This is the classic use, the one for which it was written. When used recursively in the backward direction it can depict the entire dependency tree in an easily readable format. Because extracting a recursive CR can be quite slow for large build systems, whouses provides ways of dumping the CR data to a file representation for speed. Use of -save: % whouses -do foo -save ... will write out the data to foo.crdb. Subsequently, if foo.crdb exists it will be used unless a new the -do flag is used. See also the -db and -fmt flags. The default save format is that of Data::Dumper. It was chosen because it results in a nicely indented, human-readable text format file..

Requirements: No special requirements
Platforms: Linux
Keyword: Analysis Build Cr Dos Foo Impact Impact Analysis Libraries Module Perl Perl Module Programming Whouses
Users rating: 0/10

License: Freeware Size: 21.5 KB
More Reviews or Write Review

Mathematics  -  Plainstat for Mac OS 0.1.1
Provides statistical data analysis modules like descriptive statistic, reliability item analysis, linear regression, multivariate data analysis and nonparametric statistic in an easy-to-use package.
747.52 KB  
Development Editors  -  Catool
Combining the high speed analysis provided by the open source combustion analysis software of catool with the industry leading data aquisition hardware of National Instruments, catoolRT provides a highly powerful yet low cost method of using your...
Libraries  -  perlrpcgen 0.71
perlrpcgen is a Perl module that can generate Perl interfaces from ONC RPC interface definitions. SYNOPSIS perlrpcgen [--makefile] [--all] [--client] [--server] [--data] [--constants] [--module module] [--typemap typemap] [--fork] [--perl...
37.89 KB  
Libraries  -  XML::Parser 2.34
XML::Parser is a perl module for parsing XML documents. SYNOPSIS use XML::Parser; $p1 = new XML::Parser(Style => Debug); $p1->parsefile(REC-xml-19980210.xml); $p1->parse( Hello World ); # Alternative $p2 = new XML::Parser(Handlers...
225.28 KB  
Libraries  -  B::Lint 1.09
B::Lint module contains Perl lint. SYNOPSIS perl -MO=Lint[,OPTIONS] The B::Lint module is equivalent to an extended version of the -w option of perl. It is named after the program lint which carries out a similar process for C...
17.41 KB  
Networking Tools  -  Basic Analysis and Security Engine 1.2
BASE is the Basic Analysis and Security Engine. It is based on the code from the Analysis Console for Intrusion Databases (ACID) project. This application provides a web front-end to query and analyze the alerts coming from a SNORT IDS system....
337.92 KB  
Libraries  -  TA-Lib : Technical Analysis Library 0.3.0
TA-Lib provides common functions for the technical analysis of stock/future/commodity market data. TA-Lib can be reused by trading software developers using Excel, .NET, Java, Perl or C/C++.. Technical analysis open-source software library to...
3.8 MB  
Networking Tools  -  Statistical Traffic Analysis Kit 1.0b2
Statistical Traffic Analysis Kit is a set of command-line traffic analysis tools, designed to help a network administrator to see what is happening at a router at the moment. Unlike tcpdump (1), the stak set uses statistical and stream-oriented...
69.63 KB  
File Utilities  -  GSmartControl 0.8.6
GSmartControl is a graphical user interface for smartctl (from smartmontools package), which is a tool for querying and controlling SMART (Self-Monitoring, Analysis, and Reporting Technology) data on modern hard disk drives. It allows you to...
1.2 MB  
Libraries  -  makeppgraph 1.50-cvs-070506
makeppgraph is a Perl module with graphical analysis of the dependency graph. SYNOPSIS makeppgraph [ option ... ] [ pattern ... ] They say "A picture is worth a thousand words". So lets draw your dependency or include graph from various...
593.92 KB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB  
Libraries  -  App::SimpleScan::Substitution::Line 2.02
App::SimpleScan::Substitution::Line is a line with optional fixed variable values. SYNOPSIS my $line = App::SimpleScan::Substitution::Line->new(" this "); # Use only this value when substituting " ". $line->fix(substituite =>...
54.27 KB