[2397] in comp.os.os2.announce archive
FreeWare: New version of Source Mapper! (development tool)
daemon@ATHENA.MIT.EDU (Leif-Erik Larsen)
Sun Jan 26 20:57:50 1997
To: os2ann.DISCUSS@bloom-picayune.MIT.EDU
Date: 26 Jan 1997 22:53:39 GMT
From: leilarse@sn.no (Leif-Erik Larsen)
Reply-To: leilarse@sn.no (Leif-Erik Larsen)
Reply-to: leilarse@sn.no (Leif-Erik Larsen)
---------------------------------------------------------------------
A new version of Source Mapper for OS/2 and DOS is available
for download from "http://home.sn.no/~leilarse/"
now as FREEWARE :-)
S O U R C E M A P P E R ( S M )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is FREEWARE!
~~~~~~~~~~~~~~~~~
Source Mapper has now turned to be freeware! There are several reasons for
this. The first I would like to mention is the fact that no one has registered
it! So you people hopefully get what you wants, - FREEWARE! The other reason
is that I've bought IBM Visual Age C++ v.3.0 for OS/2. And guess what! - I am
really impressed about this product. It has built in support for most of the
things that Source Mapper can do, plus a lot more...
What is Source Mapper (SM) ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
With SM you can make a useful (human readable) map of your C-style source
codes. You can generate a map of a single sourcefile, or you can have SM
generate a map of a huge project that consists of many source files.
The map is especially useful when you need to document the source(s) of your
project. I've also found it helpful when digging into sources written by
others.
The produced map is divided into sections. The main sections are:
* Total information and statistics.
This includes some statistical information about all the sources of your
project. How many lines are empty? How many lines are real code? How many
functions and comments are there? Etc. You will also find a sorted list of
all source files in the map, with easy-to-find line number references of
where each of the sources begin listening in the map. Each line in the map
will have two types of line numbering. Local (offset line number within the
given module) and global. Local line numbers are referenced with "L-nnn"
while global line numbers are referenced with "G-nnn".
* Function register.
Sorted list of all functions in your project. Each function in the register
will show you both the local and the global line number to let you find the
source of the functions quickly.
* List of function calls.
With information about by which function each of the functions in your
project is called. This section is not implemented to the map by default. If
you want it you must manually enable it using the ilf[+] option.
* Identifier list.
With information about which identifier is used where, and by which
function. This section is not implemented to the map by default. If you want
it you must manually enable it using the iil[+] option.
* List of calling sequences.
This is a hierarchical view of how all your functions are called. All top
level functions are listed within separate trees. By default this section is
generated as a compact list, but you may let SM generate it as a flow chart
if you like. To do this you must use the csf[2] option.
* Source lines map.
This section lists the source code of the modules in your project. For each
function you will se a list of which function(s) calling it. You will also
se every comment lines clearly marked, as well as a smart block indentation
level marking. Each line will be listed with its global line number
reference, as well as its local.
All this will (by default) be included within C-style comments. This let you
actually compile the map as one-single-huge module.
In addition you have access to a number of other functions in Source Mapper:
* Automatically add a page-break-character above each function/module/section.
You can also put a string (e.g. "/*{Pagebreak}*/") at different locations in
your sources of which SM will automatically replace with a new-page-char in
the map. For more information, see the options NPs[] and NPS[]
(New-Page-String).
* Optional sorting methods.
* Optional level of display output during map generation (see option dis[n]).
* Make/Build/Link options to let you control if SM will delete .smo-files or
not. If you choose not to delete them, then the generation time may be
dramatically reduced the next time you generate a map of the same project.
If one of the source modules has changed, then SM will automatically rebuild
the corresponding .smo-file.
To get help about which functions are available, just type "sm.exe hlp[]" at
the command prompt, and you are on the road...
Contacting the author
~~~~~~~~~~~~~~~~~~~~~
Leif-Erik Larsen
Aasenvegen 32b
1400 Ski
Norway
E-mail: leilarse@sn.no
WWW: http://home.sn.no/~leilarse/
Feel free to give me any suggestions or comments. I will be happy to hear what
you think about SM, either you like it or not.
Technical information
~~~~~~~~~~~~~~~~~~~~~
SM has been successfully compiled by the following compilers.
OS/2 : IBM Visual Age C++ v.3.0, and Borland C++ v.2.0 for OS/2.
DOS : Borland C++ v.3.1 for DOS.
WIN32 : Borland C++ v.4.52 for Windows.
DOS386: GNU C-Compiler v.2.6.3 for DOS (DJGPP).
UNIX : GNU C-Compiler v.2.6.3
=====================================================================
| c.o.o.announce submissions: POST [or email comp-os-os2-announce@uunet.uu.net]
| Please address other correspondence to lfirrantello@bix.com .
| Please see: http://www.bix.com/pub/os2ann/pindex.htm for posting guidelines