1
1
/* Print --version and bug-reporting information in a consistent format.
2
Copyright (C) 1999, 2003, 2005, 2009 Free Software Foundation, Inc.
2
Copyright (C) 1999, 2003, 2005, 2009-2010 Free Software Foundation, Inc.
4
4
This program is free software: you can redistribute it and/or modify
5
5
it under the terms of the GNU General Public License as published by
22
22
# include <stdarg.h>
23
23
# include <stdio.h>
25
/* The `sentinel' attribute was added in gcc 4.0. */
26
#ifndef ATTRIBUTE_SENTINEL
28
# define ATTRIBUTE_SENTINEL __attribute__ ((__sentinel__))
30
# define ATTRIBUTE_SENTINEL /* empty */
25
34
extern const char version_etc_copyright[];
36
/* The three functions below display the --version information in the
37
standard way: command and package names, package version, followed
38
by a short GPLv3+ notice and a list of up to 10 author names.
40
If COMMAND_NAME is NULL, the PACKAGE is asumed to be the name of
41
the program. The formats are therefore:
47
COMMAND_NAME (PACKAGE) VERSION.
49
The functions differ in the way they are passed author names: */
51
/* N_AUTHORS names are supplied in array AUTHORS. */
52
extern void version_etc_arn (FILE *stream,
53
const char *command_name, const char *package,
55
const char * const * authors, size_t n_authors);
57
/* Names are passed in the NULL-terminated array AUTHORS. */
58
extern void version_etc_ar (FILE *stream,
59
const char *command_name, const char *package,
60
const char *version, const char * const * authors);
62
/* Names are passed in the NULL-terminated va_list. */
27
63
extern void version_etc_va (FILE *stream,
28
const char *command_name, const char *package,
29
const char *version, va_list authors);
64
const char *command_name, const char *package,
65
const char *version, va_list authors);
67
/* Names are passed as separate arguments, with an additional
68
NULL argument at the end. */
31
69
extern void version_etc (FILE *stream,
32
const char *command_name, const char *package,
34
/* const char *author1, ...*/ ...);
70
const char *command_name, const char *package,
72
/* const char *author1, ..., NULL */ ...)
75
/* Display the usual `Report bugs to' stanza */
36
76
extern void emit_bug_reporting_address (void);
38
78
#endif /* VERSION_ETC_H */