Open-Source Programming Tools

These tools should compile on most UNIX systems with the GNU toolchain.
They have been tested on Linux and FreeBSD.

emacs/XEmacs

emacs/XEmacs reference card
my ~/.emacs
my emacs Lisp macros (to help C/C++ programming using emacs)

hypersrc/pypersrc

hypersrc/pypersrc are source code browsers.

lwlint

"lwlint" (light-weight lint) is a lint tool that catches some programming mistakes in C/C++ (some of which gcc/g++ won't catch even with -Wall) such as dangling "else", incorrect "else if" series, use of octal constants, declaring pointers and non-pointers in one statement, etc. Warnings can be selectively disabled by args and suppressed by special C comments. C++ source files can be passed to lwlint but it doesn't yet check for any C++ specific lint. The source code should compile on a system with GNU tools (make/gcc/flex/bison).

A heavy-weight (C-only) lint program is splint

download source code


MD5:
fb781ab02888bf063a8bee4fc5e5b900  lwlint_20050427.tar.gz

autogenproto

autogenproto auto-generates function prototypes from C source files.

download source code


MD5:
e71166017449c20d74d825d697e0a016  autogenproto_20050427.tar.gz

Trekkies may be amused by a comment in the source code.

makedepend replacement

I noticed that makedepend fails to recurse into all include files. That's intolerable as it can cause bad executables to be compiled. Here's a replacement written in Python. The only supported makedepend arg is -I but that should suffice.

download source code


MD5:
1ce45fcc58278c173175276cb69f52df  makedepend_python_20050724.zip

home
© 2008 Jim Brooks
Last modified: Wed Jan 2 14:14:40 EST 2008