merged changes from grep-1.6 (alpha)
authorK. Richard Pixley <rich@cygnus>
Tue, 19 May 1992 00:29:44 +0000 (00:29 +0000)
committerK. Richard Pixley <rich@cygnus>
Tue, 19 May 1992 00:29:44 +0000 (00:29 +0000)
include/ChangeLog
include/getopt.h

index 0ee4bee3c8b4a69515e55daf3acd82680aa0f3cc..fddfa4a5aaaa3ced1c0591fbb45df746fce27e1f 100644 (file)
@@ -1,3 +1,96 @@
+Mon May 18 17:29:03 1992  K. Richard Pixley  (rich@cygnus.com)
+
+       * getopt.h: merged changes from grep-1.6 (alpha).
+
+Fri May  8 14:53:32 1992  K. Richard Pixley  (rich@cygnus.com)
+
+       * getopt.h: merged changes from bison-1.18.
+
+Sat Mar 14 17:25:20 1992  Fred Fish  (fnf@cygnus.com)
+
+       * obstack.h:  Add "area_id" and "flags" members to obstack
+       structure.  Add obstack_chunkfun() and obstack_freefun() to
+       set functions explicitly.  Convert maybe_empty_object to
+       a bit in "flags".
+
+Thu Feb 27 22:01:02 1992  Per Bothner  (bothner@cygnus.com)
+
+       * wait.h (WIFSTOPPED):  Add IBM rs6000-specific version.
+
+Fri Feb 21 20:49:20 1992  John Gilmore  (gnu at cygnus.com)
+
+       * obstack.h:  Add obstack_full_begin.
+       * bfd.h, obstack.h:  Protolint.
+
+Thu Jan 30 01:18:42 1992  John Gilmore  (gnu at cygnus.com)
+
+       * bfd.h:  Remove comma from enum declaration.
+
+Mon Jan 27 22:01:13 1992  Steve Chamberlain  (sac at cygnus.com)
+
+       * bfd.h : new target entr, bfd_relax_section 
+
+Wed Dec 18 17:19:44 1991  Stu Grossman  (grossman at cygnus.com)
+
+       * bfd.h, ieee.h, opcode/m68k.h, opcode/sparc.h:  ANSIfy enums.
+
+Thu Dec 12 20:59:56 1991  John Gilmore  (gnu at cygnus.com)
+
+       * fopen-same.h, fopen-bin.h:  New files for configuring
+       whether fopen distinguishes binary files or not.  For use
+       by host-dependent config files.
+
+Sat Nov 30 20:46:43 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
+
+       * bfd.h: change the documentation format.
+
+       * created coff, elf and opcode and aout directories. Moved:
+
+       aout64.h        ==> aout/aout64.h
+       ar.h            ==> aout/ar.h
+       a.out.encap.h   ==> aout/encap.h
+       a.out.host.h    ==> aout/host.h
+       a.out.hp.h      ==> aout/hp.h
+       a.out.sun4.h    ==> aout/sun4.h
+       ranlib.h        ==> aout/ranlib.h
+       reloc.h         ==> aout/reloc.h
+       stab.def        ==> aout/stab.def
+       stab.gnu.h      ==> aout/stab_gnu.h
+
+       coff-a29k.h     ==> coff/a29k.h
+       coff-h8300.h    ==> coff/h8300.h
+       coff-i386.h     ==> coff/i386.h
+       coff-i960.h     ==> coff/i960.h
+       internalcoff.h  ==> coff/internal.h
+       coff-m68k.h     ==> coff/m68k.h
+       coff-m88k.h     ==> coff/m88k.h
+       coff-mips.h     ==> coff/mips.h
+       coff-rs6000.h   ==> coff/rs6000.h
+
+       elf-common.h    ==> elf/common.h
+       dwarf.h         ==> elf/dwarf.h
+       elf-external.h  ==> elf/external.h
+       elf-internal.h  ==> elf/internal.h
+
+       a29k-opcode.h   ==> opcode/a29k.h
+       arm-opcode.h    ==> opcode/arm.h
+       h8300-opcode.h  ==> opcode/h8300.h
+       i386-opcode.h   ==> opcode/i386.h
+       i860-opcode.h   ==> opcode/i860.h
+       i960-opcode.h   ==> opcode/i960.h
+       m68k-opcode.h   ==> opcode/m68k.h
+       m88k-opcode.h   ==> opcode/m88k.h
+       mips-opcode.h   ==> opcode/mips.h
+       np1-opcode.h    ==> opcode/np1.h
+       ns32k-opcode.h  ==> opcode/ns32k.h
+       pn-opcode.h     ==> opcode/pn.h
+       pyr-opcode.h    ==> opcode/pyr.h
+       sparc-opcode.h  ==> opcode/sparc.h
+       tahoe-opcode.h  ==> opcode/tahoe.h
+       vax-opcode.h    ==> opcode/vax.h
+
+
+
 Wed Nov 27 10:38:31 1991  Steve Chamberlain  (sac at rtl.cygnus.com)
 
        * internalcoff.h: (internal_scnhdr) took out #def dependency, now
index 1e5db6c9714840c409d98a1aa0b1149edba0fae2..f64de3116163763585b02d68ed7082a243b8b455 100644 (file)
@@ -1,9 +1,9 @@
-/* declarations for getopt
-   Copyright (C) 1989 Free Software Foundation, Inc.
+/* Declarations for getopt.
+   Copyright (C) 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 1, or (at your option)
+   the Free Software Foundation; either version 2, or (at your option)
    any later version.
 
    This program is distributed in the hope that it will be useful,
@@ -15,6 +15,9 @@
    along with this program; if not, write to the Free Software
    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
+#ifndef _GETOPT_H
+#define _GETOPT_H 1
+
 /* For communication from `getopt' to the caller.
    When `getopt' finds an option that takes an argument,
    the argument value is returned here.
@@ -43,34 +46,68 @@ extern int optind;
 extern int opterr;
 
 /* Describe the long-named options requested by the application.
-   _GETOPT_LONG_OPTIONS is a vector of `struct option' terminated by an
-   element containing a name which is zero.
+   The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
+   of `struct option' terminated by an element containing a name which is
+   zero.
+
    The field `has_arg' is:
-   0 if the option does not take an argument,
-   1 if the option requires an argument,
-   2 if the option takes an optional argument.
-   If the field `flag' is nonzero, it points to a variable that is set to
-   the value given in the field `val' when the option is found, but
-   left unchanged if the option is not found.  */
+   no_argument         (or 0) if the option does not take an argument,
+   required_argument   (or 1) if the option requires an argument,
+   optional_argument   (or 2) if the option takes an optional argument.
+
+   If the field `flag' is not NULL, it points to a variable that is set
+   to the value given in the field `val' when the option is found, but
+   left unchanged if the option is not found.
+
+   To have a long-named option do something other than set an `int' to
+   a compiled-in constant, such as set a value from `optarg', set the
+   option's `flag' field to zero and its `val' field to a nonzero
+   value (the equivalent single-letter option character, if there is
+   one).  For long options that have a zero `flag' field, `getopt'
+   returns the contents of the `val' field.  */
 
 struct option
 {
+#if    __STDC__
+  const char *name;
+#else
   char *name;
+#endif
+  /* has_arg can't be an enum because some compilers complain about
+     type mismatches in all the code that assumes it is an int.  */
   int has_arg;
   int *flag;
   int val;
 };
 
-extern struct option *_getopt_long_options;
-
-/* Name of long-named option actually found.
-   Only changed when a long-named option is found.  */
+/* Names for the values of the `has_arg' field of `struct option'.  */
 
-extern char *_getopt_option_name;
-
-/* The index in GETOPT_LONG_OPTIONS of the long-named option found.
-   Only valid when a long-named option has been found by the most
-   recent call to `getopt'.  */
-
-extern int option_index;
+enum _argtype
+{
+  no_argument,
+  required_argument,
+  optional_argument
+};
 
+#if __STDC__
+extern int getopt (int argc, char *const *argv, const char *shortopts);
+extern int getopt_long (int argc, char *const *argv, const char *shortopts,
+                       const struct option *longopts, int *longind);
+extern int getopt_long_only (int argc, char *const *argv,
+                            const char *shortopts,
+                            const struct option *longopts, int *longind);
+
+/* Internal only.  Users should not call this directly.  */
+extern int _getopt_internal (int argc, char *const *argv,
+                            const char *shortopts,
+                            const struct option *longopts, int *longind,
+                            int long_only);
+#else /* not __STDC__ */
+extern int getopt ();
+extern int getopt_long ();
+extern int getopt_long_only ();
+
+extern int _getopt_internal ();
+#endif /* not __STDC__ */
+
+#endif /* _GETOPT_H */