The utils directory has assorted scripts used as part of the build
process, and source code for programs used manually at times to update
various things that don't change often. 

Detailed information about how to use the scripts can usually be found
in comments in them Here's a quick overview of what they're for: Script that HTML-ifies changelog entries for release
 announcements. A wrapper around the cl compiler from Microsoft.

columnize.scm: Script to format the tables of functions/commands/etc.
 in help files. Wrapper script for invoking cscope, a handy source code
 browsing/searching tool. perl script used by 'make customize' perl script used by 'make distdepend'

fixdiff.scm:  scheme script to convert a diff with Windows-style path
 separators to Unix-style ones. Creates hdrs/rgb.h and src/rgbtab.gperf with color name
  to RGB tuple maps.
gentables.c:  Compiles into a program used to make src/tables.c Perl script to search for strings in changelogs.    A manual alternative to make customize. Kinda. Script used to update ancient versions of Penn
 that used two files for sitelocks. Perl script used by the makefile to create hdrs/funs.h,
 hdrs/cmds.h, hdrs/patches.h, hdrs/switches.h and src/switchinc.c when
 needed. perl script that turns the CHANGES.* files into
 game/txt/hlp/pennv*.hlp files. perl script used to manipulate player passwords in an
 offline database. Run it with --help for more. Wrapper for the splint code analysis tool to control
 what warnings are printed out.

typedefs.scm: Compiles into a program used to update the list of
 typedefs used by 'make indent'. Used by make to reconcile changes between
 game/mushcnf.dst and your local game/mush.cnf.