Blame lib/version-etc.h

Packit 709fb3
/* Print --version and bug-reporting information in a consistent format.
Packit 709fb3
   Copyright (C) 1999, 2003, 2005, 2009-2017 Free Software Foundation, Inc.
Packit 709fb3
Packit 709fb3
   This program is free software: you can redistribute it and/or modify
Packit 709fb3
   it under the terms of the GNU General Public License as published by
Packit 709fb3
   the Free Software Foundation; either version 3 of the License, or
Packit 709fb3
   (at your option) any later version.
Packit 709fb3
Packit 709fb3
   This program is distributed in the hope that it will be useful,
Packit 709fb3
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 709fb3
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 709fb3
   GNU General Public License for more details.
Packit 709fb3
Packit 709fb3
   You should have received a copy of the GNU General Public License
Packit 709fb3
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
Packit 709fb3
Packit 709fb3
/* Written by Jim Meyering. */
Packit 709fb3
Packit 709fb3
#ifndef VERSION_ETC_H
Packit 709fb3
# define VERSION_ETC_H 1
Packit 709fb3
Packit 709fb3
# include <stdarg.h>
Packit 709fb3
# include <stdio.h>
Packit 709fb3
Packit 709fb3
/* The 'sentinel' attribute was added in gcc 4.0.  */
Packit 709fb3
#ifndef _GL_ATTRIBUTE_SENTINEL
Packit 709fb3
# if 4 <= __GNUC__
Packit 709fb3
#  define _GL_ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
Packit 709fb3
# else
Packit 709fb3
#  define _GL_ATTRIBUTE_SENTINEL /* empty */
Packit 709fb3
# endif
Packit 709fb3
#endif
Packit 709fb3
Packit 709fb3
extern const char version_etc_copyright[];
Packit 709fb3
Packit 709fb3
/* The three functions below display the --version information in the
Packit 709fb3
   standard way: command and package names, package version, followed
Packit 709fb3
   by a short GPLv3+ notice and a list of up to 10 author names.
Packit 709fb3
Packit 709fb3
   If COMMAND_NAME is NULL, the PACKAGE is assumed to be the name of
Packit 709fb3
   the program.  The formats are therefore:
Packit 709fb3
Packit 709fb3
   PACKAGE VERSION
Packit 709fb3
Packit 709fb3
   or
Packit 709fb3
Packit 709fb3
   COMMAND_NAME (PACKAGE) VERSION.
Packit 709fb3
Packit 709fb3
   The functions differ in the way they are passed author names: */
Packit 709fb3
Packit 709fb3
/* N_AUTHORS names are supplied in array AUTHORS.  */
Packit 709fb3
extern void version_etc_arn (FILE *stream,
Packit 709fb3
                             const char *command_name, const char *package,
Packit 709fb3
                             const char *version,
Packit 709fb3
                             const char * const * authors, size_t n_authors);
Packit 709fb3
Packit 709fb3
/* Names are passed in the NULL-terminated array AUTHORS.  */
Packit 709fb3
extern void version_etc_ar (FILE *stream,
Packit 709fb3
                            const char *command_name, const char *package,
Packit 709fb3
                            const char *version, const char * const * authors);
Packit 709fb3
Packit 709fb3
/* Names are passed in the NULL-terminated va_list.  */
Packit 709fb3
extern void version_etc_va (FILE *stream,
Packit 709fb3
                            const char *command_name, const char *package,
Packit 709fb3
                            const char *version, va_list authors);
Packit 709fb3
Packit 709fb3
/* Names are passed as separate arguments, with an additional
Packit 709fb3
   NULL argument at the end.  */
Packit 709fb3
extern void version_etc (FILE *stream,
Packit 709fb3
                         const char *command_name, const char *package,
Packit 709fb3
                         const char *version,
Packit 709fb3
                         /* const char *author1, ..., NULL */ ...)
Packit 709fb3
  _GL_ATTRIBUTE_SENTINEL;
Packit 709fb3
Packit 709fb3
/* Display the usual "Report bugs to" stanza.  */
Packit 709fb3
extern void emit_bug_reporting_address (void);
Packit 709fb3
Packit 709fb3
#endif /* VERSION_ETC_H */