home *** CD-ROM | disk | FTP | other *** search
- /*************************************************************************
- ** ^FILE: patchlevel.h - current patchlevel for parseargs
- **
- ** ^HISTORY:
- **
- ** 01/02/92 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch11
- ** - Added strndup() to strfuncs.[ch]
- ** - vms_args.c:vms_parse was not setting avstr if ps_NOTCMDLINE was set.
- ** - made a few other fixes for VMS. Gratuitous "thank you"s go out to
- ** Mike Levin for helping me find and test these fixes (thanx Mike!).
- ** - added VMSbuild.com (contributed by Luke Brennan) to build parseargs
- ** on VAX/VMS.
- ** - fixed unix_man.c to call indent_para() properly.
- ** - added support for TCL to parseargs(1).
- ** - changed the way that parseargs(1) handles escape-sequences.
- **
- ** 12/05/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch10
- ** - Fix bug that was introduced in last patch. Pgopen() was not
- ** using $USAGE_PAGER, it was only using $PAGER.
- ** - When Earl added the extra argument to indent_para(), he forgot to
- ** include the argument when printing the command description. I added
- ** this into *_args.c
- ** - Added #ifdef POSIX_SOURCE stuff to unix_args.c to allow the use
- ** of '--' instead of '+' as the long option prefix.
- **
- ** 08/27/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** 08/27/91 Earl Chew <cechew@bruce.cs.monash.edu.au>
- ** Patch09
- ** - Added proper support for unwritable strings
- ** - strfuncs.c/strsplit():
- ** Leading, and in particular, trailing space trimming may spin off
- ** the end of the token string. This occurs when the string is empty,
- ** or when it has trailing space.
- ** Out of memory error doesn't call syserr() like the rest of the
- ** routines do.
- ** - xparse.c/parsecntl():
- ** Documentation says that the fourth parameter for pc_ARGFLAGS and
- ** pc_PARSEARGS should be either argMask_t (promoted to int) in the
- ** case of writes, or argMask_t * in the case of reads. The code is
- ** at odds with the documentation and requires (int *) on reads.
- ** Also, should check for NULL cmd-name before passing it to strdup().
- ** - vms_args.c/is_cmdline():
- ** Mike Levin pointed out to me that if lib$get_foreign returns a
- ** zero-length string then the proper actions are not taken. This
- ** has been fixed.
- ** - vms_args.c, parseargs.h, xparse.c
- ** For vms_style I added a new parse-state called ps_NOTCMDLINE.
- ** When this flag is SET, then vms_parse() knows for a fact that
- ** the given argv[] array is NOT from the cmdline so it doesnt even
- ** need to call is_cmdline(). SO Now I just have the proper routines
- ** in xparse.c set this flag before calling vms_parse() (and unset
- ** the flag when they are done).
- ** - vms_args.c/vms_parse():
- ** ARGVALGIVEN was set instead of ARGGIVEN (this was wrong).
- **
- **
- ** 08/15/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch08
- ** - fixed some typos in the comments (SIDE-EFFECTS was misspelled
- ** everywhere in the comments for the functions).
- ** - fixed up external definition of ProgName to work for C++
- ** (added extern "C").
- ** - fixed up lparseargs() and vparseargs to free the argument vector
- ** when it was finished with it.
- ** - added some more comments to xparse.c and parseargs.c.
- **
- ** 06/05/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch07
- ** - fixed the "Intro" file to correctly show how to invoke parseargs(3)
- ** (the arguments where in the wrong order).
- ** - added stuff in #ifdef UNWRITABLE_STRING_LITERALS to work for machines
- ** and compilers that dont allow the programmer to modify string literals.
- ** - documented in the README file, all the various compile-time constants
- ** that may change the behavior of parseargs.
- ** - sparseargs neglected to free the argument-vector when it was done
- ** using it.
- **
- ** 05/11/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch06
- ** - parsecntl(3) now correctly handles mispelled keywords for the
- ** pc_ARGFLAGS request (it was looping forever).
- ** - fixed an error in the documentation (a "NOT" was omitted).
- ** - added #ifdef SVR4 stuff to unix_man.c to print System V Release 4
- ** style manual pages.
- ** - allowed "sname=aname" syntax in the ad_prompt field of an ARGDESC
- ** in addition to the existing syntax. This new syntax allows argument
- ** names to be be completely different from keyword names.
- ** - changed get_name() & get_keyword to get_argname() & get_kwdname()
- ** (respectively) in strfuncs.[ch]. Also sped up the algorithm to get
- ** the keyword (since it no longer needs malloc).
- **
- ** 04/25/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch05
- ** - documented support for zsh in parseargs(1)
- ** - added missing call to pclose() in pgopen.c:pgclose()
- ** - added zsh to the list of shells supported by parseargs(1)
- ** (I have yet to document this in the man-pages)
- ** - changed the shell_info structure used by parseargs(1) to
- ** represent different shells. It should now be much simpler
- ** to add new shells to parseargs.c
- ** - fixed a bug in strfuncs.c:basename() for VMS systems
- ** - added more comments to explain whats going on in each <os>_args.c
- ** - updated the README file to correspond with the patchlevel(s)
- ** - updated dependencies in doc/Makefile
- **
- ** 04/10/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch04
- ** - fixed problem with prompting in xparse.c:prompt_user()
- ** - under VMS, getenv was defined to be 'getsymbol', it should
- ** be 'get_symbol' (note the underscore).
- ** - now includes <errno.h> to declare errno
- ** - parseargs no longer includes <fcntl.h>
- ** - fix bug in vms_args.c printing '[]' for required args and vis-a-vis
- ** - fixed bug in argInput and argOutput in argtype.c for VMS
- ** - fixed bug in <os>_args.c where ARGVALGIVEN was improperly being
- ** cleared if the argument was a list or a vector. This was causing
- ** parseargs(1) to screw up on optional lists.
- ** - fixed bug in strfuncs.c:strnicmp() (it was ignoring the length)
- ** - changed strfuncs.[ch] so that my version of strdup is always used
- ** (my version exits if malloc failed, others return NULL).
- ** - Added some changes for SUN and VAX
- ** - Added -1 option to parseargs(1)
- ** - Unhid the -# option to parseargs(1)
- ** - More documentation fixes
- **
- ** 04/04/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch04 (continued)
- ** - fixed bug in xparse.c with PARSECNTL='Prompt' being ignored.
- ** - fixed newline printing error in perl-scripts for parseargs(1)
- ** - added -C option to parseargs(1) and to the docs
- ** - added "patchlevel.h" to distribution
- ** - added "what" string with version and patch level for parseargs(1)
- ** - added hidden -# option to parseargs(1)
- ** - add "doc/effects.inc" to distribution
- ** - fix docs
- ** - fix test.rc for Plan 9 shell
- ** - fix parseargs(1) quoting for perl
- **
- ** 03/22/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch03
- ** - ascii docs fix
- **
- ** 03/21/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch02
- ** - documentation fix
- **
- ** 03/12/91 Brad Appleton <brad@ssd.csd.harris.com>
- ** Patch01
- ** - documentation fix
- **
- ** 03/02/91 Brad Appleton <brad@ssd.csd.harris.com> Created
- ***^^********************************************************************/
-
- #define VERSION 2
- #define REVISION 0
- #define PATCHLEVEL 11
-
- #ifdef __STDC__
- static const char
- #else
- static char
- #endif
- _Ident[] = "@(#)parseargs 2.0 patchlevel 11";
-