X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fversion-etc.c;h=2258c2e21d04e84665e8803b170773415ea0ff62;hb=1a2869593e115e4a6c74aaa0b23ca612357403ce;hp=7523b087b237de628e7fdb37868149e1304c93b4;hpb=6ba1261f9596af6a08bbf270e1c18e8ec90be021;p=gnulib.git diff --git a/lib/version-etc.c b/lib/version-etc.c index 7523b087b..2258c2e21 100644 --- a/lib/version-etc.c +++ b/lib/version-etc.c @@ -1,10 +1,10 @@ -/* Utility to help print --version output in a consistent format. - Copyright (C) 1999-2004 Free Software Foundation, Inc. +/* Print --version and bug-reporting information in a consistent format. + Copyright (C) 1999-2009 Free Software Foundation, Inc. - This program is free software; you can redistribute it and/or modify + 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 2, or (at your option) - any later version. + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -12,14 +12,11 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ /* Written by Jim Meyering. */ -#if HAVE_CONFIG_H -# include -#endif +#include /* Specification. */ #include "version-etc.h" @@ -27,17 +24,15 @@ #include #include #include -#include "unlocked-io.h" + +#if USE_UNLOCKED_IO +# include "unlocked-io.h" +#endif #include "gettext.h" #define _(msgid) gettext (msgid) -/* Default copyright goes to the FSF. */ - -const char* version_etc_copyright = - /* Do *not* mark this string for translation. */ - "Copyright (C) 2004 Free Software Foundation, Inc."; - +enum { COPYRIGHT_YEAR = 2009 }; /* Like version_etc, below, but with the NULL-terminated author list provided via a variable of type va_list. */ @@ -46,17 +41,13 @@ version_etc_va (FILE *stream, const char *command_name, const char *package, const char *version, va_list authors) { - unsigned int n_authors; + size_t n_authors; /* Count the number of authors. */ { va_list tmp_authors; -#ifdef __va_copy - __va_copy (tmp_authors, authors); -#else - tmp_authors = authors; -#endif + va_copy (tmp_authors, authors); n_authors = 0; while (va_arg (tmp_authors, const char *) != NULL) @@ -68,6 +59,20 @@ version_etc_va (FILE *stream, else fprintf (stream, "%s %s\n", package, version); + /* TRANSLATORS: Translate "(C)" to the copyright symbol + (C-in-a-circle), if this symbol is available in the user's + locale. Otherwise, do not translate "(C)"; leave it as-is. */ + fprintf (stream, version_etc_copyright, _("(C)"), COPYRIGHT_YEAR); + + fputs (_("\ +\n\ +License GPLv3+: GNU GPL version 3 or later .\n\ +This is free software: you are free to change and redistribute it.\n\ +There is NO WARRANTY, to the extent permitted by law.\n\ +\n\ +"), + stream); + switch (n_authors) { case 0: @@ -139,15 +144,6 @@ Written by %s, %s, %s,\n%s, %s, %s, %s,\n%s, %s, and others.\n"), break; } va_end (authors); - putc ('\n', stream); - - fputs (version_etc_copyright, stream); - putc ('\n', stream); - - fputs (_("\ -This is free software; see the source for copying conditions. There is NO\n\ -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"), - stream); } @@ -174,3 +170,17 @@ version_etc (FILE *stream, va_start (authors, version); version_etc_va (stream, command_name, package, version, authors); } + +void +emit_bug_reporting_address (void) +{ + /* TRANSLATORS: The placeholder indicates the bug-reporting address + for this package. Please add _another line_ saying + "Report translation bugs to <...>\n" with the address for translation + bugs (typically your translation team's web or email address). */ + printf (_("\nReport bugs to <%s>.\n"), PACKAGE_BUGREPORT); + printf (_("%s home page: .\n"), + PACKAGE_NAME, PACKAGE); + fputs (_("General help using GNU software: .\n"), + stdout); +}