I've had this library sitting around on my disk for a few months that I find helpful in writing programs that process command line arguments.
Read on for details.
This package is designed to simplify the use of command
line arguments for controlling a program. The built in
Ada facilities for command line argument processing are
very basic. This package provide a higher level facility
for dealing with command lines. It is similar in purpose to GNU
getopts however if one is expecting this package to act
in the same manner they will be disappointed.
The concept that this package uses is that client programs
make a series of calls to "create" the arguments that
the program can process. Once all of the parameters
are registered locally with this package then a simple
unified help output can be created and the client program
can refer to the command line arguments in a more meaningful
manner than Ada.Command_Line.Argument(4);
The package is currently being distributed as a .zip file SmartArgs-0.5.zip.
Update:. You can keep an eye on development versions of this package by going to the project page.