src2html - Hyperlink a C source code tree using HTML, Version 1.3-alpha
Warren Toomey firstname.lastname@example.org June 1995
Src2html is a program which takes a C source tree and creates a set of
HTML hypertext documents that allows the most important symbols in the
source tree to be found easily. As well, a HTML version of the source
tree is created, with the symbols given in bold font where they are defined
in the source.
You will need:
+ Perl 4.x
+ a standard Unix sort(1) command.
+ a mkdir(1) that supports recursive creation of directories.
src2html is configured to use `mkdir -p' to do this.
+ an egrep(1) if you're going to use the search facility.
+ httpd(1) if you're going to use the search facility.
+ Ctags-new, which is bundled with src2html, and a C compiler
to compile it.
Extract the src2html archive, including the Ctags-new and Example directories;
you probably have already done that. Go into the Ctags-new directory and make
ctags-new. This should be very straight-forward.
Install ctags-new and src2html in a directory on your path, make them
executable and install their man pages as well. If your mkdir(1) uses a
different option to -p, edit src2html to fix this.
If you want to use the search facility, you need to install src2html.cgi
in your httpd script directory, and edit it to reflect the root of your
HTML documents, as set in DirectryRoot in conf/srm.conf.
Make sure that ctags-new, src2html and src2html.cgi are executable, and
that the latter two can find the Perl interpreter. Installation is complete.
Using src2html is pretty straight-forward. Print out and read the man page
before trying anything. In the FreeBSD directory I have included the config
file and header files for my src2html conversion of the FreeBSD-2.0.5 source
tree; read the man page and FreeBSD/FreeBSD.s2h in tandem. The root document of
this HTML tree is at http://minnie.cs.adfa.oz.au/FreeBSD-srctree/FreeBSD.html.
COMMENTS AND QUESTIONS
Surprisingly, src2html is reasonably fast even on large source trees. This was
my first Perl program, so it could probably be made faster and smaller. I've
placed comments in the source to give you an idea of what each section does. If
you have any questions or comments, please email them to me at
email@example.com. Now that it's finished I'm not that keen on overhauling it
etc. I consider it as a good prototype. Getting inter-source hyperlinks done
would be great, but I really don't want to write a C parser myself.