Version 2.13, released Jan 10, 2011. Added support for the CMake tool (http://www.cmake.org/). Improved parsing of filepaths and filename extensions. Version 2.12, released Feb 14, 2010. Added support for pkg-config to the automake files. Added support for parsing integers in hex, octal and binary formats. Added support for parsing common number suffixes such as 1KB, 1MB, 1GB. Revamped the argtable man page. Version 2.11, released May 3, 2009. Minor tweaks to the RPM packaging and the example Makefile. Replaced the missing "arg_filen" declaration in the Windows DEF file. Added a new test case for arg_file in the validation checks. New instructions for compiling the example code under AIX. Minor corrections to the arg_file documentation. There were no changes to the library source code. Version 2.10, released January 27, 2009. Removed the GNU malloc test from the configure script because it was unnecessary and it caused build problems on IBM AIX platforms. Cleaned the syntax of the argtable man page to be groff compatible. Added instructions to the README file for compiling argtable with regex support under Windows. RPM spec file was revamped to adhere to Fedora Core 10 conventions. Version 2.9, released March 26, 2008. Fixed a makefile bug whereby "make dist" failed to build when the src directory was located outside of the build tree. Otherwise the source code in this release is identical to version 2.8. Version 2.8, released January 1, 2008. Removed some extraneous debug statements from the code. Initialised the string values in arg_str, arg_rex and arg_file to reference empty strings as foolproofing against premature data access. Additional error checking (eg. enforcing argument count limits) is now performed on long arguments that have missing argument values. Version 2.7, released July 18, 2007. Additional parameter checking was added to the arg_xxxn() constructor functions to foolproof them against silly parameters, namely having min parameter counts exceeding the max parameter counts. Fixed a bug in arg_parsearg() that occured on TI DSP platforms when main passed a zero argc value. Fixed a bug in arg_dbl constructor that occured on Solaris platforms because the array of doubles was not aligned on a native byte boundary. Tweaked the autoconf files with regard to the Windows-specific make files. Version 2.6, released February 12, 2006. This release re-instates the Windows makefiles that were accidentally omitted from the previous release. There are no changes to the code base. Version 2.5, released December 23, 2005. This release includes a new function, arg_print_glossary_gnu, that prints the syntax glossary in strict GNU format as an alternative to the existing arg_print_glossary function which deviates slightly from strict GNU conventions. Support for command line arguments with optional values (eg: --foo=[val]) has also been added. Some minor bug fixes have been included and the argtable documentation has been expanded. By far the greatest change has been the migration over to automake generated makefiles. It is hoped these will standardise the argtable build and install process across all posix platforms. Consequently the tarball versioning has changed its format in accordance with automake standards, thus this release appears as "argtable2-5" instead of "argtable-2.5". This new format more correctly describes this release as version 5 of the "argtable2" package, argtable2 being a distinct and separate package from the original "argtable" 1.x series so that both the 1.x and 2.x packages may co-exist on the same system. Another consequence of moving to automake is that libtool versioning of the shared library commences with this release. These interface version numbers will change independently of the package releases as per libtool conventions. Version 2.4, released January 31, 2005. Added two new argument data types: arg_date for parsing date/time arguments, and arg_rex for string arguments against regular expressions. Argument parsing was modified to use a local copy of argv[] to prevent getopt from reordering the global argv[] as it was prone to do. Error reporting was improved to reduce extraneous error messages. Incorporated bug fixes to the Windows Nmake files. Additional documentation and example code provided. Version 2.3, released February 10, 2004. This release adds support for dynamically linked libraries on all platforms and includes modifications to accomodate the Open Watcom C compiler. Bug fixes for string argument handling and memory allocation checking are incorporated, and the arg_free function has been deprecated in favour of a more robust version called arg_freetable. RPM packages are also now available. Version 2.2, released December 12, 2003. This release fixes a bug in the install script and adds MacOS X (10.3) to the list of supported platforms. Version 2.1, released November 16, 2003. This is the first stable release of the argtable-2.x series. It fixes some bugs in the previous beta version and ships with a built-in version of getopt_long for those platforms that do not support it natively. It has been tested successfully on Linux 2.2 (RedHat 7.0 on x86, Debian 3.0 on Alpha), Linux 2.4 (RedHat 9.0 on x86, Debian 2.2 on x86, SuSE 8 ES on AMD64), FreeBSD (version 4.8 on x86), NetBSD (version 1.6.1 on x86), Sun Solaris (version 9 on Sparc R220), Microsoft Visual C .NET. Version 2.0 (BETA), released October 9, 2003. Argtable-2.0 is a completely new design. It abandons the argtable-1.x style support for arbitrary option tag formats in favour of exclusive support for GNU style tags. To this end, it is built on GNU getopt to guarantee 100% GNU compatibility. The new design also adds support for multiple instances of the same option on the command line, is extensible to new types of command line arguments (even custom ones), and provides better error reporting mechanisms than were available in argtable-1.x. It is also secure against buffer overrun attack from maliciously long command line arguments. All in all it is much slicker than the original argtable-1.x design despite the restriction to GNU style arguments only. Users who require the non-GNU argument tag styles are advised to continue using the argtable-1.x versions. Both argtable-1.x and argtable-2.x can happily coexist on the same system for those who wish to have the best of both worlds. Version 1.4, released April 9, 2003. Ported argtable to Windows and added a Microsoft Visual C++ 6.0 workspace to the distribution for the benefit of Windows users. The code only required one change, which was to delete an errant space from a scanf format string! Version 1.3, released December 20, 2001. Moved argtable to a new home on the Sourceforge site and revamped the documentation. Documentation is now created with Doxygen instead of c2man. Also fixed some minor bugs in the Makefiles. The source code itself is unaltered. Version 1.2, released August 5, 1999. The original makefiles have been replaced by autoconf makefiles. The char pointers in the argument table have been redefined as pointers to const char. Some of argtable's internal string buffers have been made larger to accommodate long command lines, and a bug that occurred when program names contained whitespace has been fixed. The documentation has also been revised. Version 1.1, released January 20, 1999. This version fixes some cross-platform compilation errors, and saw the introduction of the multi-platform configuration. It also saw the addition of the arg_record function and a change to the arg_scanargv function so that it no longer requires argv[0] to be the first entry of the argument table. To maintain backwards compatibility, programs written for version 1.0 should now define the macro ARGTABLE_COMPATIBILITY_10 prior to including the argtable.h header file. Version 1.0, released November 13, 1998. Argtable's open-source debut.