From 2f9e9c31bf5496d488773a47c2e6ec9b95d14502 Mon Sep 17 00:00:00 2001 From: Stephane Bortzmeyer Date: Tue, 27 Jul 2004 13:40:48 +0000 Subject: [PATCH] -V to displays compilation options. See #919459 --- SRC/INSTALL | 11 +- SRC/Makefile.in | 16 ++- SRC/compilation.h.in | 3 + SRC/configure | 230 +++++++++++++++++++++--------------- SRC/configure.ac | 12 +- SRC/echoping.1.in | 3 + SRC/echoping.c | 5 + SRC/echoping.h | 2 + SRC/plugins/Makefile.in | 10 +- SRC/plugins/list-of-dirs.m4 | 2 +- SRC/test-echoping-idn | 3 +- 11 files changed, 184 insertions(+), 113 deletions(-) create mode 100644 SRC/compilation.h.in diff --git a/SRC/INSTALL b/SRC/INSTALL index eb89e15..4f5367f 100644 --- a/SRC/INSTALL +++ b/SRC/INSTALL @@ -68,9 +68,14 @@ APIs) or --with-gnutls To report a bug, email Stephane Bortzmeyer (if you have an account at SourceForge, -you can use their bug reporting tool, too). If the problem is at the -"./configure" step, do not forget to send configure's output *and* the -config.log. +you can use their bug reporting tool, too, at +http://sourceforge.net/tracker/?group_id=4581&atid=104581). + +If the problem is at the "./configure" step, do not forget to send +configure's output *and* the config.log. + +If the problem is at run-time, please send the output of "echoping -V" +(capital V). If echoping segfaults, please send me debugging info. To do so: make clean diff --git a/SRC/Makefile.in b/SRC/Makefile.in index 7dcf48e..e4108ba 100644 --- a/SRC/Makefile.in +++ b/SRC/Makefile.in @@ -41,10 +41,11 @@ POST_UNINSTALL = : host_triplet = @host@ bin_PROGRAMS = echoping$(EXEEXT) DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in $(srcdir)/config.h.in \ - $(srcdir)/echoping.1.in $(top_srcdir)/configure AUTHORS \ - COPYING ChangeLog INSTALL NEWS TODO config.guess config.sub \ - depcomp install-sh ltmain.sh missing mkinstalldirs + $(srcdir)/Makefile.in $(srcdir)/compilation.h.in \ + $(srcdir)/config.h.in $(srcdir)/echoping.1.in \ + $(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \ + TODO config.guess config.sub depcomp install-sh ltmain.sh \ + missing mkinstalldirs subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ @@ -55,7 +56,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = echoping.1 +CONFIG_CLEAN_FILES = echoping.1 compilation.h am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) @@ -177,6 +178,8 @@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +compil_date = @compil_date@ +compil_options = @compil_options@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ @@ -184,6 +187,7 @@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +hostname = @hostname@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ @@ -267,6 +271,8 @@ distclean-hdr: -rm -f config.h stamp-h1 echoping.1: $(top_builddir)/config.status $(srcdir)/echoping.1.in cd $(top_builddir) && $(SHELL) ./config.status $@ +compilation.h: $(top_builddir)/config.status $(srcdir)/compilation.h.in + cd $(top_builddir) && $(SHELL) ./config.status $@ install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" diff --git a/SRC/compilation.h.in b/SRC/compilation.h.in new file mode 100644 index 0000000..a2133f9 --- /dev/null +++ b/SRC/compilation.h.in @@ -0,0 +1,3 @@ +#define COMPILATION_OPTIONS "@PACKAGE_NAME@ @PACKAGE_VERSION@ compiled with @CC@ on @hostname@ (@host@)\n at @compil_date@ with options:\n@compil_options@\n\nPlugins are searched in @plugins_dir@." + +/* $Id$ */ diff --git a/SRC/configure b/SRC/configure index 6bc8d4d..ebc1d53 100755 --- a/SRC/configure +++ b/SRC/configure @@ -463,7 +463,7 @@ ac_includes_default="\ #endif" ac_subdirs_all="$ac_subdirs_all plugins" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP CPP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE plugins_dir subdirs LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB STRIP ac_ct_STRIP CPP CXX CXXFLAGS ac_ct_CXX CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO AMTAR install_sh INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE plugins_dir subdirs hostname compil_options compil_date LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -22132,7 +22132,135 @@ echo $plugins_dir > plugins/dir subdirs="$subdirs plugins" - ac_config_files="$ac_config_files Makefile echoping.1" + +compil_options="" +echo "" +echo "Configuration of echoping:" + + +echo $ECHO_N HTTP ": " +compil_options="$compil_options\nHTTP:" +if eval 'test "$HTTP" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N ICP ": " +compil_options="$compil_options\nICP:" +if eval 'test "$ICP" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N OPENSSL ": " +compil_options="$compil_options\nOPENSSL:" +if eval 'test "$OPENSSL" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N GNUTLS ": " +compil_options="$compil_options\nGNUTLS:" +if eval 'test "$GNUTLS" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N SMTP ": " +compil_options="$compil_options\nSMTP:" +if eval 'test "$SMTP" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N LIBIDN ": " +compil_options="$compil_options\nLIBIDN:" +if eval 'test "$LIBIDN" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N TTCP ": " +compil_options="$compil_options\nTTCP:" +if eval 'test "$TTCP" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N TOS ": " +compil_options="$compil_options\nTOS:" +if eval 'test "$TOS" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +echo $ECHO_N PRIORITY ": " +compil_options="$compil_options\nPRIORITY:" +if eval 'test "$PRIORITY" = "1"' > /dev/null; then + echo "$as_me:$LINENO: result: enabled" >&5 +echo "${ECHO_T}enabled" >&6 + compil_options="$compil_options enabled" +else + echo "$as_me:$LINENO: result: disabled" >&5 +echo "${ECHO_T}disabled" >&6 + compil_options="$compil_options disabled " +fi + + +compil_date=`date +%Y-%m-%d` +hostname=$ac_hostname + + + + ac_config_files="$ac_config_files Makefile echoping.1 compilation.h" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -22691,6 +22819,7 @@ do # Handling of arguments. "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "echoping.1" ) CONFIG_FILES="$CONFIG_FILES echoping.1" ;; + "compilation.h" ) CONFIG_FILES="$CONFIG_FILES compilation.h" ;; "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 @@ -22843,6 +22972,9 @@ s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t s,@plugins_dir@,$plugins_dir,;t t s,@subdirs@,$subdirs,;t t +s,@hostname@,$hostname,;t t +s,@compil_options@,$compil_options,;t t +s,@compil_date@,$compil_date,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF @@ -23745,100 +23877,6 @@ echo "$as_me: error: $ac_sub_configure failed for $ac_dir" >&2;} fi -echo "" -echo "Configuration of echoping:" - - -echo $ECHO_N HTTP ": " -if eval 'test "$HTTP" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N ICP ": " -if eval 'test "$ICP" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N OPENSSL ": " -if eval 'test "$OPENSSL" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N GNUTLS ": " -if eval 'test "$GNUTLS" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N SMTP ": " -if eval 'test "$SMTP" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N LIBIDN ": " -if eval 'test "$LIBIDN" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N TTCP ": " -if eval 'test "$TTCP" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N TOS ": " -if eval 'test "$TOS" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - -echo $ECHO_N PRIORITY ": " -if eval 'test "$PRIORITY" = "1"' > /dev/null; then - echo "$as_me:$LINENO: result: enabled" >&5 -echo "${ECHO_T}enabled" >&6 -else - echo "$as_me:$LINENO: result: disabled" >&5 -echo "${ECHO_T}disabled" >&6 -fi - - diff --git a/SRC/configure.ac b/SRC/configure.ac index 625a837..ba9e094 100644 --- a/SRC/configure.ac +++ b/SRC/configure.ac @@ -303,15 +303,18 @@ AC_DEFINE_UNQUOTED(PLUGINS_DIR, "$plugins_dir", [Directory where the plugins wil AC_SUBST(plugins_dir) echo $plugins_dir > plugins/dir AC_CONFIG_SUBDIRS(plugins) -AC_OUTPUT(Makefile echoping.1) +compil_options="" AC_DEFUN([DISPLAY_SETTING], [ echo $ECHO_N $1 ": " +compil_options="$compil_options\n$1:" if [ eval 'test "$$1" = "1"' > /dev/null]; then AC_MSG_RESULT( enabled) + compil_options="$compil_options enabled" else AC_MSG_RESULT( disabled) + compil_options="$compil_options disabled " fi ])dnl echo "" @@ -327,6 +330,13 @@ DISPLAY_SETTING(TTCP) DISPLAY_SETTING(TOS) DISPLAY_SETTING(PRIORITY) +compil_date=`date +%Y-%m-%d` +hostname=$ac_hostname +AC_SUBST(hostname) +AC_SUBST(compil_options) +AC_SUBST(compil_date) +AC_OUTPUT(Makefile echoping.1 compilation.h) + diff --git a/SRC/echoping.1.in b/SRC/echoping.1.in index fa7b994..31a2f59 100644 --- a/SRC/echoping.1.in +++ b/SRC/echoping.1.in @@ -8,6 +8,7 @@ echoping \- tests a remote host with TCP or UDP .RI [-4] .RI [-6] .RI [-v] +.RI [-V] .RI [-r] .RI [-f fill] .RI [-t timeout] @@ -54,6 +55,8 @@ an IDN (Unicode domain name). .SH OPTIONS .IP -v Verbose +.IP -V +Displays the compiled-in configuration of echoping. Useful for bug reports. .IP -s\ nnn Size of the data to send. Large values can produce strange results with some echo servers. diff --git a/SRC/echoping.c b/SRC/echoping.c index f01eb3a..c9d420a 100644 --- a/SRC/echoping.c +++ b/SRC/echoping.c @@ -61,6 +61,7 @@ main (argc, argv) FILE *files = NULL; CHANNEL channel; int verbose = FALSE; + int dump_config = FALSE; int module_find = FALSE; int n, nr = 0; #ifdef OPENSSL @@ -145,6 +146,7 @@ main (argc, argv) /* popt variables */ const struct poptOption options[] = { {"verbose", 'v', POPT_ARG_NONE, &verbose, 'v'}, + {"dump-configuration", 'V', POPT_ARG_NONE, &dump_config, 'V', "Displays echoping compiled-in configuration"}, {"help", '?', POPT_ARG_NONE, NULL, '?'}, {"size", 's', POPT_ARG_INT, &size, 's'}, {"number", 'n', POPT_ARG_INT, &number, 'n', "Number of iterations"}, @@ -226,6 +228,9 @@ main (argc, argv) " (You can get a list of available plugins with \"ls %s\")\n", PLUGINS_DIR); exit (0); + case 'V': + printf ("%s\n", COMPILATION_OPTIONS); + exit (0); case 'v': break; case 'r': diff --git a/SRC/echoping.h b/SRC/echoping.h index d4561ab..fd7b626 100644 --- a/SRC/echoping.h +++ b/SRC/echoping.h @@ -235,6 +235,8 @@ extern char *progname; extern boolean timeout_flag; +#include "compilation.h" + #ifndef HEADER_INCLUDED #define HEADER_INCLUDED #endif diff --git a/SRC/plugins/Makefile.in b/SRC/plugins/Makefile.in index 4469b49..2cbe3fc 100644 --- a/SRC/plugins/Makefile.in +++ b/SRC/plugins/Makefile.in @@ -34,11 +34,9 @@ NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : host_triplet = @host@ -DIST_COMMON = $(am__configure_deps) $(srcdir)/../config.guess \ - $(srcdir)/../config.sub $(srcdir)/../install-sh \ - $(srcdir)/../ltmain.sh $(srcdir)/../missing \ - $(srcdir)/../mkinstalldirs $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in $(top_srcdir)/configure +DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \ + $(srcdir)/Makefile.in $(top_srcdir)/configure config.guess \ + config.sub depcomp install-sh ltmain.sh missing mkinstalldirs subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/../configure-common.ac \ @@ -47,7 +45,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno -mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = diff --git a/SRC/plugins/list-of-dirs.m4 b/SRC/plugins/list-of-dirs.m4 index 268a0ad..1e1793e 100644 --- a/SRC/plugins/list-of-dirs.m4 +++ b/SRC/plugins/list-of-dirs.m4 @@ -1,4 +1,4 @@ -dnl Created automatically on Tue Jun 15 21:33:27 CEST 2004 +dnl Created automatically on Tue Jul 27 14:46:36 CEST 2004 if test "$dns_BUILD" = 1; then AC_CONFIG_SUBDIRS(dns) fi diff --git a/SRC/test-echoping-idn b/SRC/test-echoping-idn index f40c3fb..513af1c 100644 --- a/SRC/test-echoping-idn +++ b/SRC/test-echoping-idn @@ -7,7 +7,8 @@ echo "Since this tests tries remote servers, a failure is not always " echo " echoping's fault: it may be a network problem." echo "" echo "For this specific test, you *must* set the locale to UTF-8. It is system-" -echo "dependent but you typically 'export LC_CTYPE=xx_XX.utf8'. 'locale -a' to get" +echo "dependent but you typically 'export LC_CTYPE=xx_XX.utf8' or " +echo "'export CHARSET=utf8', depending on your system. 'locale -a' to get" echo "possible values." ./echoping -h / -v café.gennic.net