Support --with-pkgversion and --with-bugurl.

This commit is contained in:
Joseph Myers 2012-11-09 22:13:45 +00:00
parent 92e4b6a927
commit 8b748aed2a
42 changed files with 470 additions and 119 deletions

View File

@ -1,5 +1,99 @@
2012-11-09 Joseph Myers <joseph@codesourcery.com> 2012-11-09 Joseph Myers <joseph@codesourcery.com>
* aclocal.m4 (ACX_PKGVERSION): New macro.
(ACX_BUGURL): Likewise.
* configure.in: Use ACX_PKGVERSION and ACX_BUGURL.
(PKGVERSION): New AC_DEFINE_UNQUOTED.
(REPORT_BUGS_TO): Likewise.
* configure: Regenerated.
* config.h.in (PKGVERSION): New macro.
(REPORT_BUGS_TO): Likewise.
* config.make.in (PKGVERSION): New variable.
(PKGVERSION_TEXI): Likewise.
(REPORT_BUGS_TO): Likewise.
(REPORT_BUGS_TEXI): Likewise.
* Makefile (format-me): Use -I$(common-objpfx)manual.
(INSTALL): Depend on $(common-objpfx)manual/pkgvers.texi.
($(common-objpfx)manual/%): New target.
(manual/%): Remove target.
* catgets/gencat.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* csu/version.c (banner): Use PKGVERSION and REPORT_BUGS_TO.
* debug/Makefile ($(objpfx)catchsegv): Also substitute PKGVERSION
and REPORT_BUGS_TO.
($(objpfx)xtrace): Likewise.
* debug/catchsegv.sh: Use PKGVERSION and REPORT_BUGS_TO.
* debug/pcprofiledump.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* debug/xtrace.sh (do_help): Use REPORT_BUGS_TO.
(do_version): Use PKGVERSION.
* elf/Makefile ($(objpfx)sotruss): Also substitute PKGVERSION and
REPORT_BUGS_TO.
(common-ldd-rewrite): Likewise.
* elf/dl-close.c (_dl_close_worker): Use REPORT_BUGS_TO.
* elf/ldconfig.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* elf/ldd.bash.in: Use PKGVERSION and REPORT_BUGS_TO.
* elf/pldd.c (argp_program_bug_address): Remove variable.
(more_help): New function.
(argp): Use more_help.
(print_version): Use PKGVERSION.
* elf/sln.c (main): Use PKGVERSION.
(usage): Use REPORT_BUGS_TO.
* elf/sotruss.ksh (do_help): Use REPORT_BUGS_TO.
(top level): Use PKGVERSION.
* elf/sprof.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* iconv/iconv_prog.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* iconv/iconvconfig.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* locale/programs/locale.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* locale/programs/localedef.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* login/programs/pt_chown.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* malloc/Makefile ($(objpfx)mtrace): Also substitute PKGVERSION
and BUGURL.
($(objpfx)memusage): Likewise.
* malloc/memusage.sh (do_help): Use REPORT_BUGS_TO.
(do_version): Use PKGVERSION.
* malloc/memusagestat.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* malloc/mtrace.pl ($PACKAGE): Remove variable.
($PKGVERSION): New variable.
($REPORT_BUGS_TO): Likewise.
(usage): Use $REPORT_BUGS_TO.
(top level): Use $PKGVERSION.
* manual/Makefile (libc-texi-generated): Add pkgvers.texi.
($(objpfx)pkgvers.texi): New rule.
($(objpfx)stamp-pkgvers): Likewise.
* manual/install.texi: Include pkgvers.texi.
(--with-pkgversion): Document new configure option.
(--with-bugurl): Likewise.
(Reporting Bugs): Describe Bugzilla as upstream tracker rather
than necessarily for this particular distribution. Use
REPORT_BUGS_TO for where to report bugs.
* INSTALL: Regenerated.
* manual/libc.texinfo: Include pkgvers.texi.
[!PKGVERSION_DEFAULT]: Include PKGVERSION in version information.
* nscd/nscd.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* nss/getent.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* nss/makedb.c (more_help): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* posix/getconf.c (main): Use PKGVERSION and REPORT_BUGS_TO.
* sunrpc/proto.h [IS_IN_build] (_libc_intl_domainname): Remove
macro.
* sunrpc/rpc_main.c (options_usage): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* sunrpc/rpcinfo.c (usage): Use REPORT_BUGS_TO.
(print_version): Use PKGVERSION.
* sysdeps/unix/sysv/linux/lddlibc4.c (main): Use REPORT_BUGS_TO
and PKGVERSION.
* timezone/checktab.awk: Update from tzcode 2012i. * timezone/checktab.awk: Update from tzcode 2012i.
* timezone/ialloc.c: Likewise. * timezone/ialloc.c: Likewise.
* timezone/private.h: Likewise. * timezone/private.h: Likewise.

23
INSTALL
View File

@ -148,6 +148,19 @@ will be used, and CFLAGS sets optimization options for the compiler.
If you specify just `--build', `configure' will get confused. If you specify just `--build', `configure' will get confused.
`--with-pkgversion=VERSION'
Specify a description, possibly including a build number or build
date, of the binaries being built, to be included in `--version'
output from programs installed with the GNU C Library. For
example, `--with-pkgversion='FooBar GNU/Linux glibc build 123''.
The default value is `GNU libc'.
`--with-bugurl=URL'
Specify the URL that users should visit if they wish to report a
bug, to be included in `--help' output from programs installed with
the GNU C Library. The default value refers to the main
bug-reporting information for the GNU C Library.
To build the library and related programs, type `make'. This will To build the library and related programs, type `make'. This will
produce a lot of output, some of which may look like errors from `make' produce a lot of output, some of which may look like errors from `make'
but isn't. Look for error messages from `make' containing `***'. but isn't. Look for error messages from `make' containing `***'.
@ -404,10 +417,10 @@ remain unfixed for all eternity, if not longer.
It is a good idea to verify that the problem has not already been It is a good idea to verify that the problem has not already been
reported. Bugs are documented in two places: The file `BUGS' describes reported. Bugs are documented in two places: The file `BUGS' describes
a number of well known bugs and the bug tracking system has a WWW a number of well known bugs and the central GNU C Library bug tracking
interface at `http://sourceware.org/bugzilla/'. The WWW interface system has a WWW interface at `http://sourceware.org/bugzilla/'. The
gives you access to open and closed reports. A closed report normally WWW interface gives you access to open and closed reports. A closed
includes a patch or a hint on solving the problem. report normally includes a patch or a hint on solving the problem.
To report a bug, first you must find it. With any luck, this will To report a bug, first you must find it. With any luck, this will
be the hard part. Once you've found a bug, make sure it's really a be the hard part. Once you've found a bug, make sure it's really a
@ -428,7 +441,7 @@ library, you really only need to narrow it down to one library function
call, if possible. This should not be too difficult. call, if possible. This should not be too difficult.
The final step when you have a simple test case is to report the bug. The final step when you have a simple test case is to report the bug.
Do this using the WWW interface to the bug database. Do this at `http://www.gnu.org/software/libc/bugs.html'.
If you are not sure how a function should behave, and this manual If you are not sure how a function should behave, and this manual
doesn't tell you, that's a bug in the manual. Report that too! If the doesn't tell you, that's a bug in the manual. Report that too! If the

View File

@ -399,15 +399,18 @@ endif
define format-me define format-me
@rm -f $@ @rm -f $@
makeinfo --no-validate --plaintext --no-number-sections $< -o $@ makeinfo --no-validate --plaintext --no-number-sections \
-I$(common-objpfx)manual $< -o $@
-chmod a-w $@ -chmod a-w $@
endef endef
INSTALL: manual/install.texi manual/macros.texi; $(format-me) INSTALL: manual/install.texi manual/macros.texi \
manual/dir-add.texi manual/dir-add.info: FORCE $(common-objpfx)manual/pkgvers.texi
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F) $(format-me)
$(common-objpfx)manual/%: FORCE
$(MAKE) $(PARALLELMFLAGS) -C manual $@
FORCE: FORCE:
iconvdata/% localedata/% po/% manual/%: FORCE iconvdata/% localedata/% po/%: FORCE
$(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F) $(MAKE) $(PARALLELMFLAGS) -C $(@D) $(@F)
# glibc 2.0 contains some header files which aren't used with glibc 2.1 # glibc 2.0 contains some header files which aren't used with glibc 2.1

48
aclocal.m4 vendored
View File

@ -165,3 +165,51 @@ then
done done
AC_MSG_RESULT() AC_MSG_RESULT()
fi]) fi])
# These two macros are taken from GCC's config/acx.m4.
dnl Support the --with-pkgversion configure option.
dnl ACX_PKGVERSION(default-pkgversion)
AC_DEFUN([ACX_PKGVERSION],[
AC_ARG_WITH(pkgversion,
AS_HELP_STRING([--with-pkgversion=PKG],
[Use PKG in the version string in place of "$1"]),
[case "$withval" in
yes) AC_MSG_ERROR([package version not specified]) ;;
no) PKGVERSION= ;;
*) PKGVERSION="($withval) " ;;
esac],
PKGVERSION="($1) "
)
PKGVERSION_TEXI=`echo "$PKGVERSION" | sed 's/@/@@/g'`
AC_SUBST(PKGVERSION)
AC_SUBST(PKGVERSION_TEXI)
])
dnl Support the --with-bugurl configure option.
dnl ACX_BUGURL(default-bugurl)
AC_DEFUN([ACX_BUGURL],[
AC_ARG_WITH(bugurl,
AS_HELP_STRING([--with-bugurl=URL],
[Direct users to URL to report a bug]),
[case "$withval" in
yes) AC_MSG_ERROR([bug URL not specified]) ;;
no) BUGURL=
;;
*) BUGURL="$withval"
;;
esac],
BUGURL="$1"
)
case ${BUGURL} in
"")
REPORT_BUGS_TO=
REPORT_BUGS_TEXI=
;;
*)
REPORT_BUGS_TO="<$BUGURL>"
REPORT_BUGS_TEXI=@uref{`echo "$BUGURL" | sed 's/@/@@/g'`}
;;
esac;
AC_SUBST(REPORT_BUGS_TO)
AC_SUBST(REPORT_BUGS_TEXI)
])

View File

@ -227,13 +227,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -244,7 +247,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "gencat (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "gencat %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -161,6 +161,12 @@
/* Define if __stack_chk_guard canary should be randomized at program startup. */ /* Define if __stack_chk_guard canary should be randomized at program startup. */
#undef ENABLE_STACKGUARD_RANDOMIZE #undef ENABLE_STACKGUARD_RANDOMIZE
/* Package description. */
#undef PKGVERSION
/* Bug reporting address. */
#undef REPORT_BUGS_TO
/* Define if multi-arch DSOs should be generated. */ /* Define if multi-arch DSOs should be generated. */
#undef USE_MULTIARCH #undef USE_MULTIARCH

View File

@ -139,4 +139,10 @@ PERL = @PERL@
# Additional libraries. # Additional libraries.
LIBGD = @LIBGD@ LIBGD = @LIBGD@
# Package versions and bug reporting configuration.
PKGVERSION = @PKGVERSION@
PKGVERSION_TEXI = @PKGVERSION_TEXI@
REPORT_BUGS_TO = @REPORT_BUGS_TO@
REPORT_BUGS_TEXI = @REPORT_BUGS_TEXI@
# More variables may be inserted below by configure. # More variables may be inserted below by configure.

66
configure vendored
View File

@ -685,6 +685,10 @@ build_vendor
build_cpu build_cpu
build build
subdirs subdirs
REPORT_BUGS_TEXI
REPORT_BUGS_TO
PKGVERSION_TEXI
PKGVERSION
target_alias target_alias
host_alias host_alias
build_alias build_alias
@ -726,6 +730,8 @@ SHELL'
ac_subst_files='' ac_subst_files=''
ac_user_opts=' ac_user_opts='
enable_option_checking enable_option_checking
with_pkgversion
with_bugurl
with_gd with_gd
with_gd_include with_gd_include
with_gd_lib with_gd_lib
@ -1417,6 +1423,8 @@ Optional Features:
Optional Packages: Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-pkgversion=PKG Use PKG in the version string in place of "GNU libc"
--with-bugurl=URL Direct users to URL to report a bug
--with-gd=DIR find libgd include dir and library with prefix DIR --with-gd=DIR find libgd include dir and library with prefix DIR
--with-gd-include=DIR find libgd include files in DIR --with-gd-include=DIR find libgd include files in DIR
--with-gd-lib=DIR find libgd library files in DIR --with-gd-lib=DIR find libgd library files in DIR
@ -2285,6 +2293,64 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
# Check whether --with-pkgversion was given.
if test "${with_pkgversion+set}" = set; then :
withval=$with_pkgversion; case "$withval" in
yes) as_fn_error $? "package version not specified" "$LINENO" 5 ;;
no) PKGVERSION= ;;
*) PKGVERSION="($withval) " ;;
esac
else
PKGVERSION="(GNU libc) "
fi
PKGVERSION_TEXI=`echo "$PKGVERSION" | sed 's/@/@@/g'`
# Check whether --with-bugurl was given.
if test "${with_bugurl+set}" = set; then :
withval=$with_bugurl; case "$withval" in
yes) as_fn_error $? "bug URL not specified" "$LINENO" 5 ;;
no) BUGURL=
;;
*) BUGURL="$withval"
;;
esac
else
BUGURL="http://www.gnu.org/software/libc/bugs.html"
fi
case ${BUGURL} in
"")
REPORT_BUGS_TO=
REPORT_BUGS_TEXI=
;;
*)
REPORT_BUGS_TO="<$BUGURL>"
REPORT_BUGS_TEXI=@uref{`echo "$BUGURL" | sed 's/@/@@/g'`}
;;
esac;
cat >>confdefs.h <<_ACEOF
#define PKGVERSION "$PKGVERSION"
_ACEOF
cat >>confdefs.h <<_ACEOF
#define REPORT_BUGS_TO "$REPORT_BUGS_TO"
_ACEOF
# Glibc should not depend on any header files # Glibc should not depend on any header files

View File

@ -5,6 +5,13 @@ AC_CONFIG_SRCDIR([include/features.h])
AC_CONFIG_HEADERS([config.h]) AC_CONFIG_HEADERS([config.h])
AC_CONFIG_AUX_DIR([scripts]) AC_CONFIG_AUX_DIR([scripts])
ACX_PKGVERSION([GNU libc])
ACX_BUGURL([http://www.gnu.org/software/libc/bugs.html])
AC_DEFINE_UNQUOTED([PKGVERSION], ["$PKGVERSION"],
[Package description])
AC_DEFINE_UNQUOTED([REPORT_BUGS_TO], ["$REPORT_BUGS_TO"],
[Bug reporting address])
# Glibc should not depend on any header files # Glibc should not depend on any header files
AC_DEFUN([_AC_INCLUDES_DEFAULT_REQUIREMENTS], AC_DEFUN([_AC_INCLUDES_DEFAULT_REQUIREMENTS],
[m4_divert_text([DEFAULTS], [m4_divert_text([DEFAULTS],

View File

@ -24,7 +24,7 @@ static const char __libc_release[] = RELEASE;
static const char __libc_version[] = VERSION; static const char __libc_version[] = VERSION;
static const char banner[] = static const char banner[] =
"GNU C Library "RELEASE" release version "VERSION", by Roland McGrath et al.\n\ "GNU C Library "PKGVERSION RELEASE" release version "VERSION", by Roland McGrath et al.\n\
Copyright (C) 2012 Free Software Foundation, Inc.\n\ Copyright (C) 2012 Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions.\n\ This is free software; see the source for copying conditions.\n\
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n\ There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n\
@ -38,7 +38,7 @@ LIBC_ABIS_STRING
"The oldest ABI supported: " GLIBC_OLDEST_ABI ".\n" "The oldest ABI supported: " GLIBC_OLDEST_ABI ".\n"
#endif #endif
"For bug reporting instructions, please see:\n\ "For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"; "REPORT_BUGS_TO".\n";
#include <unistd.h> #include <unistd.h>

View File

@ -156,7 +156,9 @@ sLIBdir := $(shell echo $(slibdir) | sed 's,lib\(\|64\)$$,\\\\$$LIB,')
$(objpfx)catchsegv: catchsegv.sh $(common-objpfx)soversions.mk \ $(objpfx)catchsegv: catchsegv.sh $(common-objpfx)soversions.mk \
$(common-objpfx)config.make $(common-objpfx)config.make
slibpfx=`echo $(slibdir)|sed 's/lib\(64\|\)$$/\\\\\\\\$$LIB/'`; \ slibpfx=`echo $(slibdir)|sed 's/lib\(64\|\)$$/\\\\\\\\$$LIB/'`; \
sed -e 's|@VERSION@|$(version)|' -e "s|@SLIB@|$$slibpfx|" $< > $@.new sed -e 's|@VERSION@|$(version)|' -e "s|@SLIB@|$$slibpfx|" \
-e 's|@PKGVERSION@|$(PKGVERSION)|' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $< > $@.new
chmod 555 $@.new chmod 555 $@.new
mv -f $@.new $@ mv -f $@.new $@
@ -165,7 +167,9 @@ $(objpfx)pcprofiledump: $(objpfx)pcprofiledump.o
$(objpfx)xtrace: xtrace.sh $(objpfx)xtrace: xtrace.sh
rm -f $@.new rm -f $@.new
sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \ sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \
-e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' $^ > $@.new \ -e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' \
-e 's|@PKGVERSION@|$(PKGVERSION)|' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $^ > $@.new \
&& rm -f $@ && mv $@.new $@ && chmod +x $@ && rm -f $@ && mv $@.new $@ && chmod +x $@
# Depend on libc.so so a DT_NEEDED is generated in the shared objects. # Depend on libc.so so a DT_NEEDED is generated in the shared objects.

View File

@ -33,12 +33,14 @@ if test $# -eq 0; then
echo 'Usage: catchsegv PROGRAM ARGS...' echo 'Usage: catchsegv PROGRAM ARGS...'
echo ' --help print this help, then exit' echo ' --help print this help, then exit'
echo ' --version print version number, then exit' echo ' --version print version number, then exit'
echo "For bug reporting instructions, please see:" echo 'For bug reporting instructions, please see:'
echo "<http://www.gnu.org/software/libc/bugs.html>." cat <<\EOF
@REPORT_BUGS_TO@.
EOF
exit 0 exit 0
;; ;;
--v | --ve | --ver | --vers | --versi | --versio | --version) --v | --ve | --ver | --vers | --versi | --versio | --version)
echo 'catchsegv (GNU libc) @VERSION@' echo 'catchsegv @PKGVERSION@@VERSION@'
echo 'Copyright (C) 2012 Free Software Foundation, Inc. echo 'Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

View File

@ -1,5 +1,5 @@
/* Dump information generated by PC profiling. /* Dump information generated by PC profiling.
Copyright (C) 1999, 2002, 2007, 2009 Free Software Foundation, Inc. Copyright (C) 1999-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
@ -200,13 +200,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -217,7 +220,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "pcprofiledump (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "pcprofiledump %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -54,14 +54,13 @@ Mandatory arguments to long options are also mandatory for any corresponding
short options. short options.
" "
echo $"For bug reporting instructions, please see: printf $"For bug reporting instructions, please see:\\n%s.\\n" \
<http://www.gnu.org/software/libc/bugs.html>. "@REPORT_BUGS_TO@"
"
exit 0 exit 0
} }
do_version() { do_version() {
echo 'xtrace (GNU libc) @VERSION@' echo 'xtrace @PKGVERSION@@VERSION@'
printf $"Copyright (C) %s Free Software Foundation, Inc. printf $"Copyright (C) %s Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

View File

@ -108,7 +108,10 @@ $(objpfx)sotruss: sotruss.ksh $(common-objpfx)config.make
sed -e 's%@KSH@%$(KSH)%g' \ sed -e 's%@KSH@%$(KSH)%g' \
-e 's%@VERSION@%$(version)%g' \ -e 's%@VERSION@%$(version)%g' \
-e 's%@TEXTDOMAINDIR@%$(msgcatdir)%g' \ -e 's%@TEXTDOMAINDIR@%$(msgcatdir)%g' \
-e 's%@PREFIX@%$(prefix)%g' < $< > $@.new -e 's%@PREFIX@%$(prefix)%g' \
-e 's|@PKGVERSION@|$(PKGVERSION)|g' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|g' \
< $< > $@.new
chmod 555 $@.new chmod 555 $@.new
mv -f $@.new $@ mv -f $@.new $@
$(inst_auditdir)/sotruss-lib.so: $(objpfx)sotruss-lib.so $(+force) $(inst_auditdir)/sotruss-lib.so: $(objpfx)sotruss-lib.so $(+force)
@ -381,7 +384,9 @@ endif
common-ldd-rewrite = -e 's%@RTLD@%$(slibdir)/$(rtld-installed-name)%g' \ common-ldd-rewrite = -e 's%@RTLD@%$(slibdir)/$(rtld-installed-name)%g' \
-e 's%@VERSION@%$(version)%g' -e 's%@VERSION@%$(version)%g' \
-e 's|@PKGVERSION@|$(PKGVERSION)|g' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|g'
sh-ldd-rewrite = $(common-ldd-rewrite) -e 's%@BASH@%/bin/sh%g;s/\$$"/"/g' sh-ldd-rewrite = $(common-ldd-rewrite) -e 's%@BASH@%/bin/sh%g;s/\$$"/"/g'
bash-ldd-rewrite = $(common-ldd-rewrite) -e 's%@BASH@%$(BASH)%g' \ bash-ldd-rewrite = $(common-ldd-rewrite) -e 's%@BASH@%$(BASH)%g' \
-e 's%@TEXTDOMAINDIR@%$(msgcatdir)%g' -e 's%@TEXTDOMAINDIR@%$(msgcatdir)%g'

View File

@ -702,7 +702,7 @@ _dl_close_worker (struct link_map *map)
if (any_tls) if (any_tls)
{ {
if (__builtin_expect (++GL(dl_tls_generation) == 0, 0)) if (__builtin_expect (++GL(dl_tls_generation) == 0, 0))
_dl_fatal_printf ("TLS generation counter wrapped! Please report as described in <http://www.gnu.org/software/libc/bugs.html>.\n"); _dl_fatal_printf ("TLS generation counter wrapped! Please report as described in "REPORT_BUGS_TO".\n");
if (tls_free_end == GL(dl_tls_static_used)) if (tls_free_end == GL(dl_tls_static_used))
GL(dl_tls_static_used) = tls_free_start; GL(dl_tls_static_used) = tls_free_start;

View File

@ -294,13 +294,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -311,7 +314,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "ldconfig (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "ldconfig %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -34,7 +34,7 @@ verbose=
while test $# -gt 0; do while test $# -gt 0; do
case "$1" in case "$1" in
--vers | --versi | --versio | --version) --vers | --versi | --versio | --version)
echo 'ldd (GNU libc) @VERSION@' echo 'ldd @PKGVERSION@@VERSION@'
printf $"Copyright (C) %s Free Software Foundation, Inc. printf $"Copyright (C) %s Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
@ -52,9 +52,8 @@ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-u, --unused print unused direct dependencies -u, --unused print unused direct dependencies
-v, --verbose print all information -v, --verbose print all information
" "
echo $"For bug reporting instructions, please see: printf $"For bug reporting instructions, please see:\\n%s.\\n" \
<http://www.gnu.org/software/libc/bugs.html>. "@REPORT_BUGS_TO@"
"
exit 0 exit 0
;; ;;
-d | --d | --da | --dat | --data | --data- | --data-r | --data-re | \ -d | --d | --da | --dat | --data | --data- | --data-r | --data-re | \

View File

@ -52,10 +52,8 @@ extern void *xrealloc (void *o, size_t n)
static void print_version (FILE *stream, struct argp_state *state); static void print_version (FILE *stream, struct argp_state *state);
void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version; void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version;
/* Bug report address. */ /* Function to print some extra text in the help message. */
const char *argp_program_bug_address = N_("\ static char *more_help (int key, const char *text, void *input);
For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n");
/* Definitions of arguments for argp functions. */ /* Definitions of arguments for argp functions. */
static const struct argp_option options[] = static const struct argp_option options[] =
@ -76,7 +74,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state);
/* Data structure to communicate with argp functions. */ /* Data structure to communicate with argp functions. */
static struct argp argp = static struct argp argp =
{ {
options, parse_opt, args_doc, doc, NULL, NULL, NULL options, parse_opt, args_doc, doc, NULL, more_help, NULL
}; };
// File descriptor of /proc/*/mem file. // File descriptor of /proc/*/mem file.
@ -212,11 +210,31 @@ parse_opt (int key, char *arg, struct argp_state *state)
} }
/* Print bug-reporting information in the help message. */
static char *
more_help (int key, const char *text, void *input)
{
char *tp = NULL;
switch (key)
{
case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */
if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\
%s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default:
break;
}
return (char *) text;
}
/* Print the version information. */ /* Print the version information. */
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "pldd (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "pldd %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -58,7 +58,7 @@ main (int argc, char **argv)
{ {
case 2: case 2:
if (strcmp (argv[1], "--version") == 0) { if (strcmp (argv[1], "--version") == 0) {
printf ("sln (GNU libc) %s\n", VERSION); printf ("sln %s%s\n", PKGVERSION, VERSION);
return 0; return 0;
} else if (strcmp (argv[1], "--help") == 0) { } else if (strcmp (argv[1], "--help") == 0) {
usage (); usage ();
@ -82,8 +82,8 @@ static void
usage (void) usage (void)
{ {
printf (_("Usage: sln src dest|file\n\n")); printf (_("Usage: sln src dest|file\n\n"));
fputs (_("For bug reporting instructions, please see:\n\ printf (_("For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"), stdout); %s.\n"), REPORT_BUGS_TO);
} }
static int static int

View File

@ -46,9 +46,8 @@ function do_help {
printf $"Mandatory arguments to long options are also mandatory for any corresponding\nshort options.\n" printf $"Mandatory arguments to long options are also mandatory for any corresponding\nshort options.\n"
echo echo
printf $"For bug reporting instructions, please see: printf $"For bug reporting instructions, please see:\\n%s.\\n" \
<http://www.gnu.org/software/libc/bugs.html>. "@REPORT_BUGS_TO@"
"
exit 0 exit 0
} }
@ -72,7 +71,7 @@ function do_ambiguous {
while test $# -gt 0; do while test $# -gt 0; do
case "$1" in case "$1" in
--v | --ve | --ver | --vers | --versi | --versio | --version) --v | --ve | --ver | --vers | --versi | --versio | --version)
echo "sotruss (GNU libc) @VERSION@" echo "sotruss @PKGVERSION@@VERSION@"
printf $"Copyright (C) %s Free Software Foundation, Inc. printf $"Copyright (C) %s Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

View File

@ -363,13 +363,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -381,7 +384,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "sprof (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "sprof %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -400,13 +400,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -418,7 +421,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "iconv (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "iconv %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -375,13 +375,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -393,7 +396,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "iconvconfig (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "iconvconfig %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -271,13 +271,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -289,7 +292,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "locale (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "locale %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -354,20 +354,26 @@ static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *cp; char *cp;
char *tp;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\
%s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
if (asprintf (&cp, gettext ("\ if (asprintf (&cp, gettext ("\
System's directory for character maps : %s\n\ System's directory for character maps : %s\n\
repertoire maps: %s\n\ repertoire maps: %s\n\
locale path : %s\n\ locale path : %s\n\
%s"), %s"),
CHARMAP_PATH, REPERTOIREMAP_PATH, LOCALE_PATH, gettext ("\ CHARMAP_PATH, REPERTOIREMAP_PATH, LOCALE_PATH, tp) < 0)
For bug reporting instructions, please see:\n\ {
<http://www.gnu.org/software/libc/bugs.html>.\n")) < 0) free (tp);
return NULL; return NULL;
}
return cp; return cp;
default: default:
break; break;
@ -379,7 +385,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "localedef (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "localedef %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -58,7 +58,7 @@ static struct argp argp =
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "pt_chown (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "pt_chown %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\
@ -70,6 +70,7 @@ static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *cp; char *cp;
char *tp;
switch (key) switch (key)
{ {
@ -84,13 +85,19 @@ Set the owner, group and access permission of the slave pseudo\
return cp; return cp;
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
asprintf (&cp, gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\
%s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
if (asprintf (&cp, gettext ("\
The owner is set to the current user, the group is set to `%s',\ The owner is set to the current user, the group is set to `%s',\
and the access permission is set to `%o'.\n\n\ and the access permission is set to `%o'.\n\n\
%s"), %s"),
TTY_GROUP, S_IRUSR|S_IWUSR|S_IWGRP, gettext ("\ TTY_GROUP, S_IRUSR|S_IWUSR|S_IWGRP, tp) < 0)
For bug reporting instructions, please see:\n\ {
<http://www.gnu.org/software/libc/bugs.html>.\n")); free (tp);
return NULL;
}
return cp; return cp;
default: default:
break; break;

View File

@ -126,13 +126,17 @@ sLIBdir := $(shell echo $(slibdir) | sed 's,lib\(\|64\)$$,\\\\$$LIB,')
$(objpfx)mtrace: mtrace.pl $(objpfx)mtrace: mtrace.pl
rm -f $@.new rm -f $@.new
sed -e 's|@PERL@|$(PERL)|' -e 's|@XXX@|$(address-width)|' \ sed -e 's|@PERL@|$(PERL)|' -e 's|@XXX@|$(address-width)|' \
-e 's|@VERSION@|$(version)|' $^ > $@.new \ -e 's|@VERSION@|$(version)|' \
-e 's|@PKGVERSION@|$(PKGVERSION)|' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $^ > $@.new \
&& rm -f $@ && mv $@.new $@ && chmod +x $@ && rm -f $@ && mv $@.new $@ && chmod +x $@
$(objpfx)memusage: memusage.sh $(objpfx)memusage: memusage.sh
rm -f $@.new rm -f $@.new
sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \ sed -e 's|@BASH@|$(BASH)|' -e 's|@VERSION@|$(version)|' \
-e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' $^ > $@.new \ -e 's|@SLIBDIR@|$(sLIBdir)|' -e 's|@BINDIR@|$(bindir)|' \
-e 's|@PKGVERSION@|$(PKGVERSION)|' \
-e 's|@REPORT_BUGS_TO@|$(REPORT_BUGS_TO)|' $^ > $@.new \
&& rm -f $@ && mv $@.new $@ && chmod +x $@ && rm -f $@ && mv $@.new $@ && chmod +x $@

View File

@ -61,14 +61,13 @@ Mandatory arguments to long options are also mandatory for any corresponding
short options. short options.
" "
echo $"For bug reporting instructions, please see: printf $"For bug reporting instructions, please see:\\n%s.\\n" \
<http://www.gnu.org/software/libc/bugs.html>. "@REPORT_BUGS_TO@"
"
exit 0 exit 0
} }
do_version() { do_version() {
echo 'memusage (GNU libc) @VERSION@' echo 'memusage @PKGVERSION@@VERSION@'
printf $"Copyright (C) %s Free Software Foundation, Inc. printf $"Copyright (C) %s Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

View File

@ -528,20 +528,17 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *orig; char *tp;
char *cp;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
orig = gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"); %s.\n"), REPORT_BUGS_TO) < 0)
cp = strdup (orig); return NULL;
if (cp == NULL) return tp;
cp = orig;
return cp;
default: default:
break; break;
} }
@ -552,7 +549,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "memusagestat (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "memusagestat %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -21,7 +21,8 @@ eval "exec @PERL@ -S $0 $@"
# <http://www.gnu.org/licenses/>. # <http://www.gnu.org/licenses/>.
$VERSION = "@VERSION@"; $VERSION = "@VERSION@";
$PACKAGE = "libc"; $PKGVERSION = "@PKGVERSION@";
$REPORT_BUGS_TO = '@REPORT_BUGS_TO@';
$progname = $0; $progname = $0;
sub usage { sub usage {
@ -30,7 +31,7 @@ sub usage {
print " --version print version number, then exit\n"; print " --version print version number, then exit\n";
print "\n"; print "\n";
print "For bug reporting instructions, please see:\n"; print "For bug reporting instructions, please see:\n";
print "<http://www.gnu.org/software/libc/bugs.html>.\n"; print "$REPORT_BUGS_TO.\n";
exit 0; exit 0;
} }
@ -43,7 +44,7 @@ arglist: while (@ARGV) {
if ($ARGV[0] eq "--v" || $ARGV[0] eq "--ve" || $ARGV[0] eq "--ver" || if ($ARGV[0] eq "--v" || $ARGV[0] eq "--ve" || $ARGV[0] eq "--ver" ||
$ARGV[0] eq "--vers" || $ARGV[0] eq "--versi" || $ARGV[0] eq "--vers" || $ARGV[0] eq "--versi" ||
$ARGV[0] eq "--versio" || $ARGV[0] eq "--version") { $ARGV[0] eq "--versio" || $ARGV[0] eq "--version") {
print "mtrace (GNU $PACKAGE) $VERSION\n"; print "mtrace $PKGVERSION$VERSION\n";
print "Copyright (C) 2012 Free Software Foundation, Inc.\n"; print "Copyright (C) 2012 Free Software Foundation, Inc.\n";
print "This is free software; see the source for copying conditions. There is NO\n"; print "This is free software; see the source for copying conditions. There is NO\n";
print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"; print "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n";

View File

@ -61,7 +61,7 @@ examples = $(filter-out $(foreach d, $(add-ons), ../$d/%.c.texi), \
# Generated files directly included from libc.texinfo. # Generated files directly included from libc.texinfo.
libc-texi-generated = chapters.texi top-menu.texi dir-add.texi \ libc-texi-generated = chapters.texi top-menu.texi dir-add.texi \
libm-err.texi version.texi libm-err.texi version.texi pkgvers.texi
# Add path to build dir for generated files # Add path to build dir for generated files
texis-path := $(filter-out $(libc-texi-generated) summary.texi $(examples), \ texis-path := $(filter-out $(libc-texi-generated) summary.texi $(examples), \
@ -113,6 +113,20 @@ $(objpfx)stamp-libm-err: libm-err-tab.pl $(wildcard $(foreach dir,$(sysdirs),\
$(move-if-change) $(objpfx)libm-err-tmp $(objpfx)libm-err.texi $(move-if-change) $(objpfx)libm-err-tmp $(objpfx)libm-err.texi
touch $@ touch $@
# Package version and bug reporting URL.
$(objpfx)pkgvers.texi: $(objpfx)stamp-pkgvers ;
$(objpfx)stamp-pkgvers: $(common-objpfx)config.make
echo "@ifclear PKGVERS" > $(objpfx)pkgvers-tmp
echo "@set PKGVERS" >> $(objpfx)pkgvers-tmp
echo "@set PKGVERSION $(PKGVERSION_TEXI)" >> $(objpfx)pkgvers-tmp
if [ "$(PKGVERSION_TEXI)" = "(GNU libc) " ]; then \
echo "@set PKGVERSION_DEFAULT" >> $(objpfx)pkgvers-tmp; \
fi
echo "@set REPORT_BUGS_TO $(REPORT_BUGS_TEXI)" >> $(objpfx)pkgvers-tmp
echo "@end ifclear" >> $(objpfx)pkgvers-tmp
$(move-if-change) $(objpfx)pkgvers-tmp $(objpfx)pkgvers.texi
touch $@
# Generate a file with the version number. # Generate a file with the version number.
$(objpfx)version.texi: $(objpfx)stamp-version ; $(objpfx)version.texi: $(objpfx)stamp-version ;
$(objpfx)stamp-version: $(common-objpfx)config.make $(objpfx)stamp-version: $(common-objpfx)config.make

View File

@ -2,6 +2,7 @@
@c Makeinfo ignores it when processing the file from the include. @c Makeinfo ignores it when processing the file from the include.
@setfilename INSTALL @setfilename INSTALL
@include macros.texi @include macros.texi
@include pkgvers.texi
@node Installation, Maintenance, Library Summary, Top @node Installation, Maintenance, Library Summary, Top
@c %MENU% How to install the GNU C Library @c %MENU% How to install the GNU C Library
@ -173,6 +174,19 @@ the appropriate compiler flags (@samp{-mcpu=i386} will do the trick) to
@var{CFLAGS}. @var{CFLAGS}.
If you specify just @samp{--build}, @code{configure} will get confused. If you specify just @samp{--build}, @code{configure} will get confused.
@item --with-pkgversion=@var{version}
Specify a description, possibly including a build number or build
date, of the binaries being built, to be included in
@option{--version} output from programs installed with @theglibc{}.
For example, @option{--with-pkgversion='FooBar GNU/Linux glibc build
123'}. The default value is @samp{GNU libc}.
@item --with-bugurl=@var{url}
Specify the URL that users should visit if they wish to report a bug,
to be included in @option{--help} output from programs installed with
@theglibc{}. The default value refers to the main bug-reporting
information for @theglibc{}.
@end table @end table
To build the library and related programs, type @code{make}. This will To build the library and related programs, type @code{make}. This will
@ -458,7 +472,8 @@ remain unfixed for all eternity, if not longer.
It is a good idea to verify that the problem has not already been It is a good idea to verify that the problem has not already been
reported. Bugs are documented in two places: The file @file{BUGS} reported. Bugs are documented in two places: The file @file{BUGS}
describes a number of well known bugs and the bug tracking system has a describes a number of well known bugs and the central @glibcadj{}
bug tracking system has a
WWW interface at WWW interface at
@url{http://sourceware.org/bugzilla/}. The WWW @url{http://sourceware.org/bugzilla/}. The WWW
interface gives you access to open and closed reports. A closed report interface gives you access to open and closed reports. A closed report
@ -483,7 +498,7 @@ library, you really only need to narrow it down to one library
function call, if possible. This should not be too difficult. function call, if possible. This should not be too difficult.
The final step when you have a simple test case is to report the bug. The final step when you have a simple test case is to report the bug.
Do this using the WWW interface to the bug database. Do this at @value{REPORT_BUGS_TO}.
If you are not sure how a function should behave, and this manual If you are not sure how a function should behave, and this manual
doesn't tell you, that's a bug in the manual. Report that too! If the doesn't tell you, that's a bug in the manual. Report that too! If the

View File

@ -13,6 +13,8 @@
@end direntry @end direntry
@include dir-add.texi @include dir-add.texi
@include pkgvers.texi
@c This tells texinfo.tex to use the real section titles in xrefs in @c This tells texinfo.tex to use the real section titles in xrefs in
@c place of the node name, when no section title is explicitly given. @c place of the node name, when no section title is explicitly given.
@set xref-automatic-section-title @set xref-automatic-section-title
@ -36,7 +38,13 @@ This file documents @theglibc{}.
This is This is
@c Disabled (printed editions, see above). @c Disabled (printed editions, see above).
@c Edition @value{EDITION} of @c Edition @value{EDITION} of
@cite{The GNU C Library Reference Manual}, for version @value{VERSION}. @cite{The GNU C Library Reference Manual}, for version
@ifset PKGVERSION_DEFAULT
@value{VERSION}.
@end ifset
@ifclear PKGVERSION_DEFAULT
@value{VERSION} @value{PKGVERSION}.
@end ifclear
Copyright @copyright{} 1993--2012 Free Software Foundation, Inc. Copyright @copyright{} 1993--2012 Free Software Foundation, Inc.
@ -70,6 +78,10 @@ supports it in developing GNU and promoting software freedom.''
@c @center Edition @value{EDITION} @c @center Edition @value{EDITION}
@c @sp 1 @c @sp 1
@center for version @value{VERSION} @center for version @value{VERSION}
@ifclear PKGVERSION_DEFAULT
@sp 1
@center @value{PKGVERSION}
@end ifclear
@page @page
@vskip 0pt plus 1filll @vskip 0pt plus 1filll
@insertcopying @insertcopying
@ -96,6 +108,9 @@ This is
@c Disabled (printed editions, see above). @c Disabled (printed editions, see above).
@c Edition @value{EDITION} of @c Edition @value{EDITION} of
@cite{The GNU C Library Reference Manual}, for Version @value{VERSION} @cite{The GNU C Library Reference Manual}, for Version @value{VERSION}
@ifclear PKGVERSION_DEFAULT
@value{PKGVERSION}
@end ifclear
of @theglibc{}. of @theglibc{}.
@end ifnottex @end ifnottex

View File

@ -451,13 +451,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -468,7 +471,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "nscd (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "nscd %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -82,7 +82,7 @@ static int idn_flags = AI_IDN | AI_CANONIDN;
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "getent (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "getent %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\
@ -962,9 +962,9 @@ more_help (int key, const char *text, void *input)
fputs ("\n\n", fp); fputs ("\n\n", fp);
fputs (gettext ("\ fprintf (fp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"), fp); %s.\n"), REPORT_BUGS_TO);
if (fclose (fp) == 0) if (fclose (fp) == 0)
return doc; return doc;

View File

@ -363,13 +363,16 @@ parse_opt (int key, char *arg, struct argp_state *state)
static char * static char *
more_help (int key, const char *text, void *input) more_help (int key, const char *text, void *input)
{ {
char *tp = NULL;
switch (key) switch (key)
{ {
case ARGP_KEY_HELP_EXTRA: case ARGP_KEY_HELP_EXTRA:
/* We print some extra information. */ /* We print some extra information. */
return strdup (gettext ("\ if (asprintf (&tp, gettext ("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO) < 0)
return NULL;
return tp;
default: default:
break; break;
} }
@ -380,7 +383,7 @@ For bug reporting instructions, please see:\n\
static void static void
print_version (FILE *stream, struct argp_state *state) print_version (FILE *stream, struct argp_state *state)
{ {
fprintf (stream, "makedb (GNU %s) %s\n", PACKAGE, VERSION); fprintf (stream, "makedb %s%s\n", PKGVERSION, VERSION);
fprintf (stream, gettext ("\ fprintf (stream, gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\

View File

@ -1099,7 +1099,7 @@ main (int argc, char *argv[])
if (argc > 1 && strcmp (argv[1], "--version") == 0) if (argc > 1 && strcmp (argv[1], "--version") == 0)
{ {
printf ("getconf (GNU %s) %s\n", PACKAGE, VERSION); printf ("getconf %s%s\n", PKGVERSION, VERSION);
printf (gettext ("\ printf (gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\
@ -1118,8 +1118,8 @@ Usage: getconf [-v SPEC] VAR\n\
Get the configuration value for variable VAR, or for variable PATH_VAR\n\ Get the configuration value for variable VAR, or for variable PATH_VAR\n\
for path PATH. If SPEC is given, give values for compilation\n\ for path PATH. If SPEC is given, give values for compilation\n\
environment SPEC.\n\n")); environment SPEC.\n\n"));
fputs (gettext ("For bug reporting instructions, please see:\n\ printf (gettext ("For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"), stdout); %s.\n"), REPORT_BUGS_TO);
return 0; return 0;
} }

View File

@ -62,7 +62,4 @@ void add_type(int len, const char *type);
#define _(X) (X) #define _(X) (X)
#define textdomain(X) ((void) 0) #define textdomain(X) ((void) 0)
/* This is used in the definition of PACKAGE for --version output. */
#define _libc_intl_domainname "libc"
#endif #endif

View File

@ -1439,15 +1439,15 @@ options_usage (FILE *stream, int status)
f_print (stream, _("-T\t\tgenerate code to support RPC dispatch tables\n")); f_print (stream, _("-T\t\tgenerate code to support RPC dispatch tables\n"));
f_print (stream, _("-Y path\t\tdirectory name to find C preprocessor (cpp)\n")); f_print (stream, _("-Y path\t\tdirectory name to find C preprocessor (cpp)\n"));
f_print (stream, "\n%s", _("\ f_print (stream, _("\n\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n")); %s.\n"), REPORT_BUGS_TO);
exit (status); exit (status);
} }
static void static void
print_version (void) print_version (void)
{ {
printf ("rpcgen (GNU %s) %s\n", PACKAGE, VERSION); printf ("rpcgen %s%s\n", PKGVERSION, VERSION);
exit (0); exit (0);
} }

View File

@ -688,15 +688,15 @@ usage (FILE *stream)
fputs (_(" rpcinfo -b prognum versnum\n"), stream); fputs (_(" rpcinfo -b prognum versnum\n"), stream);
fputs (_(" rpcinfo -d prognum versnum\n"), stream); fputs (_(" rpcinfo -d prognum versnum\n"), stream);
fputc ('\n', stream); fputc ('\n', stream);
fputs (_("\ fprintf (stream, _("\
For bug reporting instructions, please see:\n\ For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"), stream); %s.\n"), REPORT_BUGS_TO);
} }
static void static void
print_version (void) print_version (void)
{ {
printf ("rpcinfo (GNU %s) %s\n", PACKAGE, VERSION); printf ("rpcinfo %s%s\n", PKGVERSION, VERSION);
} }
static u_long static u_long

View File

@ -58,13 +58,13 @@ main (int argc, char *argv[])
if (strcmp (argv[1], "--help") == 0) if (strcmp (argv[1], "--help") == 0)
{ {
printf (gettext ("Usage: lddlibc4 FILE\n\n")); printf (gettext ("Usage: lddlibc4 FILE\n\n"));
fputs (gettext ("For bug reporting instructions, please see:\n\ printf (gettext ("For bug reporting instructions, please see:\n\
<http://www.gnu.org/software/libc/bugs.html>.\n"), stdout); %s.\n"), REPORT_BUGS_TO);
return 0; return 0;
} }
else if (strcmp (argv[1], "--version") == 0) else if (strcmp (argv[1], "--version") == 0)
{ {
printf ("lddlibc4 (GNU %s) %s\n", PACKAGE, VERSION); printf ("lddlibc4 %s%s\n", PKGVERSION, VERSION);
printf (gettext ("\ printf (gettext ("\
Copyright (C) %s Free Software Foundation, Inc.\n\ Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\ This is free software; see the source for copying conditions. There is NO\n\