(root)/
m4-1.4.19/
lib/
version-etc.h
       1  /* Print --version and bug-reporting information in a consistent format.
       2     Copyright (C) 1999, 2003, 2005, 2009-2021 Free Software Foundation, Inc.
       3  
       4     This program is free software: you can redistribute it and/or modify
       5     it under the terms of the GNU General Public License as published by
       6     the Free Software Foundation; either version 3 of the License, or
       7     (at your option) any later version.
       8  
       9     This program is distributed in the hope that it will be useful,
      10     but WITHOUT ANY WARRANTY; without even the implied warranty of
      11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      12     GNU General Public License for more details.
      13  
      14     You should have received a copy of the GNU General Public License
      15     along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
      16  
      17  /* Written by Jim Meyering. */
      18  
      19  #ifndef VERSION_ETC_H
      20  # define VERSION_ETC_H 1
      21  
      22  # include <stdarg.h>
      23  # include <stdio.h>
      24  
      25  extern const char version_etc_copyright[];
      26  
      27  /* The three functions below display the --version information in the
      28     standard way: command and package names, package version, followed
      29     by a short GPLv3+ notice and a list of up to 10 author names.
      30  
      31     If COMMAND_NAME is NULL, the PACKAGE is assumed to be the name of
      32     the program.  The formats are therefore:
      33  
      34     PACKAGE VERSION
      35  
      36     or
      37  
      38     COMMAND_NAME (PACKAGE) VERSION.
      39  
      40     The functions differ in the way they are passed author names: */
      41  
      42  /* N_AUTHORS names are supplied in array AUTHORS.  */
      43  extern void version_etc_arn (FILE *stream,
      44                               const char *command_name, const char *package,
      45                               const char *version,
      46                               const char * const * authors, size_t n_authors);
      47  
      48  /* Names are passed in the NULL-terminated array AUTHORS.  */
      49  extern void version_etc_ar (FILE *stream,
      50                              const char *command_name, const char *package,
      51                              const char *version, const char * const * authors);
      52  
      53  /* Names are passed in the NULL-terminated va_list.  */
      54  extern void version_etc_va (FILE *stream,
      55                              const char *command_name, const char *package,
      56                              const char *version, va_list authors);
      57  
      58  /* Names are passed as separate arguments, with an additional
      59     NULL argument at the end.  */
      60  extern void version_etc (FILE *stream,
      61                           const char *command_name, const char *package,
      62                           const char *version,
      63                           /* const char *author1, ..., NULL */ ...)
      64    _GL_ATTRIBUTE_SENTINEL ((0));
      65  
      66  /* Display the usual "Report bugs to" stanza.  */
      67  extern void emit_bug_reporting_address (void);
      68  
      69  #endif /* VERSION_ETC_H */