ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/utils/gnugetopt.h
(Generate patch)

Comparing trunk/OOPSE-4/src/utils/gnugetopt.h (file contents):
Revision 1541 by gezelter, Wed Oct 6 23:03:54 2004 UTC vs.
Revision 2204 by gezelter, Fri Apr 15 22:04:00 2005 UTC

# Line 38 | Line 38 | extern "C" {
38   extern "C" {
39   #endif
40  
41 < /* For communication from `getopt' to the caller.
42 <   When `getopt' finds an option that takes an argument,
43 <   the argument value is returned here.
44 <   Also, when `ordering' is RETURN_IN_ORDER,
45 <   each non-option ARGV-element is returned here.  */
41 >  /* For communication from `getopt' to the caller.
42 >     When `getopt' finds an option that takes an argument,
43 >     the argument value is returned here.
44 >     Also, when `ordering' is RETURN_IN_ORDER,
45 >     each non-option ARGV-element is returned here.  */
46  
47 < extern char *optarg;
47 >  extern char *optarg;
48  
49 < /* Index in ARGV of the next element to be scanned.
50 <   This is used for communication to and from the caller
51 <   and for communication between successive calls to `getopt'.
49 >  /* Index in ARGV of the next element to be scanned.
50 >     This is used for communication to and from the caller
51 >     and for communication between successive calls to `getopt'.
52  
53 <   On entry to `getopt', zero means this is the first call; initialize.
53 >     On entry to `getopt', zero means this is the first call; initialize.
54  
55 <   When `getopt' returns -1, this is the index of the first of the
56 <   non-option elements that the caller should itself scan.
55 >     When `getopt' returns -1, this is the index of the first of the
56 >     non-option elements that the caller should itself scan.
57  
58 <   Otherwise, `optind' communicates from one call to the next
59 <   how much of ARGV has been scanned so far.  */
58 >     Otherwise, `optind' communicates from one call to the next
59 >     how much of ARGV has been scanned so far.  */
60  
61 < extern int optind;
61 >  extern int optind;
62  
63 < /* Callers store zero here to inhibit the error message `getopt' prints
64 <   for unrecognized options.  */
63 >  /* Callers store zero here to inhibit the error message `getopt' prints
64 >     for unrecognized options.  */
65  
66 < extern int opterr;
66 >  extern int opterr;
67  
68 < /* Set to an option character which was unrecognized.  */
68 >  /* Set to an option character which was unrecognized.  */
69  
70 < extern int optopt;
70 >  extern int optopt;
71  
72   #ifndef __need_getopt
73 < /* Describe the long-named options requested by the application.
74 <   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
75 <   of `struct option' terminated by an element containing a name which is
76 <   zero.
73 >  /* Describe the long-named options requested by the application.
74 >     The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
75 >     of `struct option' terminated by an element containing a name which is
76 >     zero.
77  
78 <   The field `has_arg' is:
79 <   no_argument          (or 0) if the option does not take an argument,
80 <   required_argument    (or 1) if the option requires an argument,
81 <   optional_argument    (or 2) if the option takes an optional argument.
78 >     The field `has_arg' is:
79 >     no_argument                (or 0) if the option does not take an argument,
80 >     required_argument  (or 1) if the option requires an argument,
81 >     optional_argument  (or 2) if the option takes an optional argument.
82  
83 <   If the field `flag' is not NULL, it points to a variable that is set
84 <   to the value given in the field `val' when the option is found, but
85 <   left unchanged if the option is not found.
83 >     If the field `flag' is not NULL, it points to a variable that is set
84 >     to the value given in the field `val' when the option is found, but
85 >     left unchanged if the option is not found.
86  
87 <   To have a long-named option do something other than set an `int' to
88 <   a compiled-in constant, such as set a value from `optarg', set the
89 <   option's `flag' field to zero and its `val' field to a nonzero
90 <   value (the equivalent single-letter option character, if there is
91 <   one).  For long options that have a zero `flag' field, `getopt'
92 <   returns the contents of the `val' field.  */
87 >     To have a long-named option do something other than set an `int' to
88 >     a compiled-in constant, such as set a value from `optarg', set the
89 >     option's `flag' field to zero and its `val' field to a nonzero
90 >     value (the equivalent single-letter option character, if there is
91 >     one).  For long options that have a zero `flag' field, `getopt'
92 >     returns the contents of the `val' field.  */
93  
94 < struct option
95 < {
94 >  struct option
95 >  {
96   # if (defined __STDC__ && __STDC__) || defined __cplusplus
97 <  const char *name;
97 >    const char *name;
98   # else
99 <  char *name;
99 >    char *name;
100   # endif
101 <  /* has_arg can't be an enum because some compilers complain about
102 <     type mismatches in all the code that assumes it is an int.  */
103 <  int has_arg;
104 <  int *flag;
105 <  int val;
106 < };
101 >    /* has_arg can't be an enum because some compilers complain about
102 >       type mismatches in all the code that assumes it is an int.  */
103 >    int has_arg;
104 >    int *flag;
105 >    int val;
106 >  };
107  
108 < /* Names for the values of the `has_arg' field of `struct option'.  */
108 >  /* Names for the values of the `has_arg' field of `struct option'.  */
109  
110   # define no_argument            0
111   # define required_argument      1
# Line 113 | Line 113 | struct option
113   #endif  /* need getopt */
114  
115  
116 < /* Get definitions and prototypes for functions to process the
117 <   arguments in ARGV (ARGC of them, minus the program name) for
118 <   options given in OPTS.
116 >  /* Get definitions and prototypes for functions to process the
117 >     arguments in ARGV (ARGC of them, minus the program name) for
118 >     options given in OPTS.
119  
120 <   Return the option character from OPTS just read.  Return -1 when
121 <   there are no more options.  For unrecognized options, or options
122 <   missing arguments, `optopt' is set to the option letter, and '?' is
123 <   returned.
120 >     Return the option character from OPTS just read.  Return -1 when
121 >     there are no more options.  For unrecognized options, or options
122 >     missing arguments, `optopt' is set to the option letter, and '?' is
123 >     returned.
124  
125 <   The OPTS string is a list of characters which are recognized option
126 <   letters, optionally followed by colons, specifying that that letter
127 <   takes an argument, to be placed in `optarg'.
125 >     The OPTS string is a list of characters which are recognized option
126 >     letters, optionally followed by colons, specifying that that letter
127 >     takes an argument, to be placed in `optarg'.
128  
129 <   If a letter in OPTS is followed by two colons, its argument is
130 <   optional.  This behavior is specific to the GNU `getopt'.
129 >     If a letter in OPTS is followed by two colons, its argument is
130 >     optional.  This behavior is specific to the GNU `getopt'.
131  
132 <   The argument `--' causes premature termination of argument
133 <   scanning, explicitly telling `getopt' that there are no more
134 <   options.
132 >     The argument `--' causes premature termination of argument
133 >     scanning, explicitly telling `getopt' that there are no more
134 >     options.
135  
136 <   If OPTS begins with `--', then non-option arguments are treated as
137 <   arguments to the option '\0'.  This behavior is specific to the GNU
138 <   `getopt'.  */
136 >     If OPTS begins with `--', then non-option arguments are treated as
137 >     arguments to the option '\0'.  This behavior is specific to the GNU
138 >     `getopt'.  */
139  
140   #if (defined __STDC__ && __STDC__) || defined __cplusplus
141   # ifdef __GNU_LIBRARY__
142 < /* Many other libraries have conflicting prototypes for getopt, with
143 <   differences in the consts, in stdlib.h.  To avoid compilation
144 <   errors, only prototype getopt for the GNU C library.  */
145 < extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
142 >  /* Many other libraries have conflicting prototypes for getopt, with
143 >     differences in the consts, in stdlib.h.  To avoid compilation
144 >     errors, only prototype getopt for the GNU C library.  */
145 >  extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
146   # else /* not __GNU_LIBRARY__ */
147 < extern int getopt ();
147 >  extern int getopt ();
148   # endif /* __GNU_LIBRARY__ */
149  
150   # ifndef __need_getopt
151 < extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts,
152 <                        const struct option *__longopts, int *__longind);
153 < extern int getopt_long_only (int __argc, char *const *__argv,
154 <                             const char *__shortopts,
155 <                             const struct option *__longopts, int *__longind);
151 >  extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts,
152 >                          const struct option *__longopts, int *__longind);
153 >  extern int getopt_long_only (int __argc, char *const *__argv,
154 >                               const char *__shortopts,
155 >                               const struct option *__longopts, int *__longind);
156  
157 < /* Internal only.  Users should not call this directly.  */
158 < extern int _getopt_internal (int __argc, char *const *__argv,
159 <                             const char *__shortopts,
160 <                             const struct option *__longopts, int *__longind,
161 <                             int __long_only);
157 >  /* Internal only.  Users should not call this directly.  */
158 >  extern int _getopt_internal (int __argc, char *const *__argv,
159 >                               const char *__shortopts,
160 >                               const struct option *__longopts, int *__longind,
161 >                               int __long_only);
162   # endif
163   #else /* not __STDC__ */
164 < extern int getopt ();
164 >  extern int getopt ();
165   # ifndef __need_getopt
166 < extern int getopt_long ();
167 < extern int getopt_long_only ();
166 >  extern int getopt_long ();
167 >  extern int getopt_long_only ();
168  
169 < extern int _getopt_internal ();
169 >  extern int _getopt_internal ();
170   # endif
171   #endif /* __STDC__ */
172  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines