GNU gengetopt takes a simple description of arguments and generates a C function that uses the GNU getopt_long(3) function to parse and validate the options. It is perfect if you are too lazy to write all that is required to call getopt_long(3), or need to use many options. The generated code also works with autoconf or automake.
GNU Source-highlight produces a document with syntax highlighting when given a source file. It handles many languages, e.g., Java, C/C++, Prolog, Perl, PHP3, Python, Flex, HTML, and other formats, e.g., ChangeLog and log files, as source languages and HTML, XHTML, DocBook, ANSI color escapes, LaTeX, and Texinfo as output formats. Input and output formats can be specified with a regular expression-oriented syntax.
Doublecpp is a preprocessor for C++ that handles a new linguistic construct for defining branches of a multi-method. The "right" branch of such a method will be selected dynamically at run-time according to the actual type of the object on which the method is invoked, and to the actual type of the first argument: double dispatch. This basically implements dynamic overloading in C++.
SourceHighlightIDE is an IDE for GNU Source-highlight. When given a source file, Source-highlight produces a document with syntax highlighting. In particular, SourceHighlightIDE is useful when you have to develop a new language definition file for Source-highlight. Source-highlight reads source language specifications dynamically, so it can be easily extended for handling new languages without recompiling the sources. SourceHighlightIDE is also useful when modifying or debugging an existing language definition file.
IMC (Implementing Mobile Calculi) is a Java framework for implementing distributed applications possibly with code mobility. The name is due to the fact that this framework was originally built to help implement the run-time system of a mobile calculi implementation, i.e., calculi accessing remote resources and nodes, and, possibly, exchanging code, processes, and mobile agents. If you don't need code mobility features, you can simply ignore them and use IMC for building any distributed and network application.
MyIpTrack is a PHP script that allows you to store the IP addresses with which you connect to the Internet. It stores such information on a text file. The information stored are the IP address, date and time, and some notes. This is useful if you connect to the Internet with many different providers (wireless networks, Internet cafes, etc.) and you want to keep track of all the IPs you've used (and date and time). You can also fill some notes for each such record. MyIpTrack only needs a Web server with PHP; it stores the information in a text file.
Source-highlight-qt is a library for performing syntax highlighting in Qt documents by relying on the GNU Source-Highlight library. It provides an implementation of the Qt abstract class QSyntaxHighlighter class, and it deals both with Qt3 and Qt4, although you will need to build a separate version of the library for the two different Qt framework versions. The Qt3 version has fewer features and it is there only for old Qt applications. Furthermore, the QSyntaxHighlighter class in Qt3 has some design problems which make it quite inefficient to use.
QSource-Highlight is a Qt4 front-end for GNU Source-Highlight. You can highlight your code on the fly, and have the highlighted output in all the formats supported by source-highlight (e.g. HTML, LaTeX, Texinfo, etc.). You can then copy the formatted output, and paste it (e.g. in your blog) or save it to a file. A preview of the highlighted output is available for some output formats (e.g. HTML, XHTML, etc.).
> % we aren't running Linux so we
> % don't have the GNU C library, and so
> % don't have getopt_long. That,
> I just grabbed a netbsd libc and pulled
> getopt_long from that. Its a bit of
> work to remove all the references to the
> libc build framework common bits, bit a
> heck of a lot easier than writing a
> I think pretty much any *BSD libc will
> do - most include the code from netbsd
> as far as I know.
> You should be able to use the CVS
> viewers to get the code without having a
> full distro handy.
gengetopt comes with a version of getopt.h getopt.c and getopt1.c and they are all you need to use getopt_long if it doesn't come with libc.
Also, in the manual, there's a chapter explaining how to deal with missing getopt_long.
Hope it helps.