diff -Nurb netmrg-0.19/aclocal.m4 netmrg-0.20/aclocal.m4 --- netmrg-0.19/aclocal.m4 2006-02-04 06:41:27.000000000 +0530 +++ netmrg-0.20/aclocal.m4 2008-04-12 07:52:39.000000000 +0530 @@ -1,7 +1,7 @@ -# generated automatically by aclocal 1.9.5 -*- Autoconf -*- +# generated automatically by aclocal 1.10 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005 Free Software Foundation, Inc. +# 2005, 2006 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -11,7 +11,12 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. +m4_if(m4_PACKAGE_VERSION, [2.61],, +[m4_fatal([this file was generated for autoconf 2.61. +You have another version of autoconf. If you want to use that, +you should regenerate the build system entirely.], [63])]) + +# Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -21,14 +26,29 @@ # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. -AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.10' +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to +dnl require some minimum version. Point them to the right macro. +m4_if([$1], [1.10], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- -# Call AM_AUTOMAKE_VERSION so it can be traced. +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.9.5])]) +[AM_AUTOMAKE_VERSION([1.10])dnl +_AM_AUTOCONF_VERSION(m4_PACKAGE_VERSION)]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- @@ -85,14 +105,14 @@ # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 +# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 7 +# serial 8 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- @@ -101,8 +121,10 @@ [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl -AC_SUBST([$1_TRUE]) -AC_SUBST([$1_FALSE]) +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl if $2; then $1_TRUE= $1_FALSE='#' @@ -116,15 +138,14 @@ Usually this means the macro was only invoked conditionally.]]) fi])]) - -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 8 +# serial 9 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -152,6 +173,7 @@ ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], UPC, [depcc="$UPC" am_compiler_list=], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) @@ -217,6 +239,7 @@ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then @@ -269,7 +292,8 @@ AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) -AC_SUBST([AMDEPBACKSLASH]) +AC_SUBST([AMDEPBACKSLASH])dnl +_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- @@ -294,8 +318,9 @@ # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue @@ -354,8 +379,8 @@ # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -378,16 +403,20 @@ # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], -[AC_PREREQ([2.58])dnl +[AC_PREREQ([2.60])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl + # test to see if srcdir already configured + if test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) + fi fi # test whether we have cygpath @@ -407,6 +436,9 @@ AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. +m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,, + [m4_fatal([AC_INIT should be called with package and version arguments])])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl @@ -442,6 +474,10 @@ [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJC], + [_AM_DEPENDENCIES(OBJC)], + [define([AC_PROG_OBJC], + defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl ]) ]) @@ -477,7 +513,7 @@ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl -install_sh=${install_sh-"$am_aux_dir/install-sh"} +install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"} AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. @@ -555,14 +591,14 @@ # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 +# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 5 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ @@ -578,6 +614,7 @@ # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([missing])dnl test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then @@ -588,7 +625,7 @@ fi ]) -# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -596,60 +633,23 @@ # AM_PROG_MKDIR_P # --------------- -# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. -# -# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories -# created by `make install' are always world readable, even if the -# installer happens to have an overly restrictive umask (e.g. 077). -# This was a mistake. There are at least two reasons why we must not -# use `-m 0755': -# - it causes special bits like SGID to be ignored, -# - it may be too restrictive (some setups expect 775 directories). -# -# Do not use -m 0755 and let people choose whatever they expect by -# setting umask. -# -# We cannot accept any implementation of `mkdir' that recognizes `-p'. -# Some implementations (such as Solaris 8's) are not thread-safe: if a -# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' -# concurrently, both version can detect that a/ is missing, but only -# one can create it and the other will error out. Consequently we -# restrict ourselves to GNU make (using the --version option ensures -# this.) +# Check for `mkdir -p'. AC_DEFUN([AM_PROG_MKDIR_P], -[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # We used to keeping the `.' as first argument, in order to - # allow $(mkdir_p) to be used without argument. As in - # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. However this is wrong - # for two reasons: - # 1. if the package is installed by a user who cannot write `.' - # make install will fail, - # 2. the above comment should most certainly read - # $(mkdir_p) $(DESTDIR)$(somedir) - # so it does not work when $(somedir) is undefined and - # $(DESTDIR) is not. - # To support the latter case, we have to write - # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), - # so the `.' trick is pointless. - mkdir_p='mkdir -p --' -else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - for d in ./-p ./--version; - do - test -d $d && rmdir $d - done - # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. - if test -f "$ac_aux_dir/mkinstalldirs"; then - mkdir_p='$(mkinstalldirs)' - else - mkdir_p='$(install_sh) -d' - fi -fi -AC_SUBST([mkdir_p])]) +[AC_PREREQ([2.60])dnl +AC_REQUIRE([AC_PROG_MKDIR_P])dnl +dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P, +dnl while keeping a definition of mkdir_p for backward compatibility. +dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile. +dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of +dnl Makefile.ins that do not define MKDIR_P, so we do our own +dnl adjustment using top_builddir (which is defined more often than +dnl MKDIR_P). +AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl +case $mkdir_p in + [[\\/$]]* | ?:[[\\/]]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac +]) # Helper functions for option handling. -*- Autoconf -*- @@ -761,9 +761,21 @@ if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) +# Copyright (C) 2006 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# _AM_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. diff -Nurb netmrg-0.19/bin/makedocs netmrg-0.20/bin/makedocs --- netmrg-0.19/bin/makedocs 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/bin/makedocs 2008-04-12 07:44:39.000000000 +0530 @@ -22,7 +22,7 @@ rm -f share/doc/man/man1/*.1 docbook2man -d share/doc/netmrg.dsl#print -o share/doc/man share/doc/netmrg.sgml mv share/doc/man/*.1 share/doc/man/man1 -find share/doc/man -type f -maxdepth 1 -exec rm -f {} \; +find share/doc/man -maxdepth 1 -type f -exec rm -f {} \; echo #TXT diff -Nurb netmrg-0.19/bin/makedoctree netmrg-0.20/bin/makedoctree --- netmrg-0.19/bin/makedoctree 2005-02-28 02:07:37.000000000 +0530 +++ netmrg-0.20/bin/makedoctree 1970-01-01 05:30:00.000000000 +0530 @@ -1,72 +0,0 @@ -#!/usr/bin/perl -# -# makedoctree -# -# makes a directory of all documentation versions -# - - -## libraries -use strict; - - -### variables ### -our $baseurl = 'http://svn.netmrg.net'; -our %docfiles = ( - "netmrg.sgml" => "share/doc/netmrg.sgml", - "netmrg.dsl" => "share/doc/netmrg.dsl", - "netmrgdoc.css" => "share/doc/netmrgdoc.css", - "netmrg-logo-small.png" => "share/doc/netmrg-logo-small.png", - "netmrg-logo-medium.png" => "share/doc/netmrg-logo-medium.png", -); -our $updatever = "trunk"; -my $docfolder = "/tmp"; - - - -### forward declairations ### - - -### main ### - -# accept a new version via command line -$updatever = $ARGV[0] if ($ARGV[0] && $ARGV[0] ne ""); - - -# figure out our pretty version (for directory name) -my $prettyver = $updatever; -if ($updatever eq "trunk") -{ - $prettyver = "Trunk"; -} # end if trunk -elsif ($updatever =~ /netmrg-(\d+)_(\d+\w+?)(_(\d+\w+?))?/) -{ - $prettyver =~ s/netmrg/NetMRG/; - $prettyver =~ s/_/\./g; -} # end if netmrg-(version) -else -{ - exit(1); -} # end if something else we don't recognize - - -# make sure our doc directory exists -my $docdir = "$docfolder/$prettyver"; -`rm -rf $docdir` if ( -d $docdir); -mkdir ($docdir); - - -# co each doc file -for my $shortdocfile (keys(%docfiles)) -{ - my $midurl = ($updatever eq "trunk" ? $updatever : "branches/$updatever"); - my $docfile = $docfiles{$shortdocfile}; - my $doccontents = `svn cat $baseurl/$midurl/$docfile 2> /dev/null`; - open (DOC, ">$docdir/$shortdocfile"); - print DOC $doccontents; - close (DOC); -} # end foreach file - -# run docbook2html on the file -`docbook2html -d $docdir/netmrg.dsl#html $docdir/netmrg.sgml -o $docdir`; - diff -Nurb netmrg-0.19/bin/rrdedit.in netmrg-0.20/bin/rrdedit.in --- netmrg-0.19/bin/rrdedit.in 2004-06-05 06:02:17.000000000 +0530 +++ netmrg-0.20/bin/rrdedit.in 2008-09-07 18:21:31.000000000 +0530 @@ -24,17 +24,19 @@ exit fi +workdir="$(mktemp -d rrdedit.XXXXXXXXXX)" + # dump it to temp -$rrdtool dump $RRD_DIR/$1 > /tmp/$1.xml +$rrdtool dump $RRD_DIR/$1 > "$workdir/$1.xml" # make a backup -cp $RRD_DIR/$1 /tmp/$1.backup +cp $RRD_DIR/$1 "$workdir/$1.backup" # edit the xml -$editor /tmp/$1.xml +$editor "$workdir/$1.xml" rm -f $RRD_DIR/$1 # restore the rrd -$rrdtool restore /tmp/$1.xml $RRD_DIR/$1 +$rrdtool restore "$workdir/$1.xml" $RRD_DIR/$1 diff -Nurb netmrg-0.19/bootstrap netmrg-0.20/bootstrap --- netmrg-0.19/bootstrap 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/bootstrap 2008-03-27 06:25:37.000000000 +0530 @@ -2,7 +2,7 @@ set -x -aclocal -I m4 +aclocal -I m4 --install autoheader diff -Nurb netmrg-0.19/config.guess netmrg-0.20/config.guess --- netmrg-0.19/config.guess 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/config.guess 2008-09-07 18:21:31.000000000 +0530 @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, -# Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# Free Software Foundation, Inc. -timestamp='2007-07-22' +timestamp='2008-01-23' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -56,8 +56,8 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -532,7 +532,7 @@ echo rs6000-ibm-aix3.2 fi exit ;; - *:AIX:*:[45]) + *:AIX:*:[456]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 @@ -799,6 +799,9 @@ EM64T | authenticamd) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; esac ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks @@ -833,7 +836,14 @@ echo ${UNAME_MACHINE}-pc-minix exit ;; arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then echo ${UNAME_MACHINE}-unknown-linux-gnu + else + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu @@ -954,8 +964,8 @@ x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;; - xtensa:Linux:*:*) - echo xtensa-unknown-linux-gnu + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so @@ -1474,9 +1484,9 @@ the operating system you are using. It is advised that you download the most up to date version of the config scripts from - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD and - http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub + http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD If the version you run ($0) is already up to date, please send the following data and any information you think might be diff -Nurb netmrg-0.19/config.sub netmrg-0.20/config.sub --- netmrg-0.19/config.sub 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/config.sub 2008-09-07 18:21:31.000000000 +0530 @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, -# Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +# Free Software Foundation, Inc. -timestamp='2007-06-28' +timestamp='2008-01-16' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -72,8 +72,8 @@ version="\ GNU config.sub ($timestamp) -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 -Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -369,10 +369,14 @@ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ - | xstormy16-* | xtensa-* \ + | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-*) ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) @@ -443,6 +447,14 @@ basic_machine=ns32k-sequent os=-dynix ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; c90) basic_machine=c90-cray os=-unicos @@ -668,6 +680,14 @@ basic_machine=m68k-isi os=-sysv ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; m88k-omron*) basic_machine=m88k-omron ;; @@ -813,6 +833,14 @@ basic_machine=i860-intel os=-osf ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; pbd) basic_machine=sparc-tti ;; @@ -1021,6 +1049,10 @@ basic_machine=tic6x-unknown os=-coff ;; + tile*) + basic_machine=tile-unknown + os=-linux-gnu + ;; tx39) basic_machine=mipstx39-unknown ;; diff -Nurb netmrg-0.19/configure netmrg-0.20/configure --- netmrg-0.19/configure 2006-02-04 06:41:33.000000000 +0530 +++ netmrg-0.20/configure 2008-04-12 07:52:41.000000000 +0530 @@ -1,26 +1,55 @@ #! /bin/sh -# From configure.ac Revision: 1.37 . +# From configure.ac Revision:1281 . # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59 for NetMRG 0.19. +# Generated by GNU Autoconf 2.61 for NetMRG 0.20. # -# Copyright (C) 2003 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## -# Be Bourne compatible +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh fi -DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then @@ -30,8 +59,43 @@ fi +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + # Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done PS1='$ ' PS2='> ' PS4='+ ' @@ -45,18 +109,19 @@ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else - $as_unset $as_var + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false @@ -64,157 +129,388 @@ # Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` +# CDPATH. +$as_unset CDPATH -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh +if test "x$CONFIG_SHELL" = x; then + if (eval ":") 2>/dev/null; then + as_have_required=yes +else + as_have_required=no fi + if test $as_have_required = yes && (eval ": +(as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=\$LINENO + as_lineno_2=\$LINENO + test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && + test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } +") 2> /dev/null; then + : +else + as_candidate_shells= as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do case $as_dir in /*) - if ("$as_dir/$as_base" -c ' + for as_base in sh bash ksh sh5; do + as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + done;; + esac +done +IFS=$as_save_IFS + + + for as_shell in $as_candidate_shells $SHELL; do + # Try only shells that exist, to save several forks. + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { ("$as_shell") 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +_ASEOF +}; then + CONFIG_SHELL=$as_shell + as_have_required=yes + if { "$as_shell" 2> /dev/null <<\_ASEOF +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + +: +(as_func_return () { + (exit $1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = "$1" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test $exitcode = 0) || { (exit 1); exit 1; } + +( as_lineno_1=$LINENO as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } + +_ASEOF +}; then + break +fi + +fi + done -done -;; - esac + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV + do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + done + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + + if test $as_have_required = no; then + echo This script requires a shell more modern than all the + echo shells that I found on your system. Please install a + echo modern shell, or manually run the script under such a + echo shell if you do have one. + { (exit 1); exit 1; } +fi + + +fi + +fi + + + +(eval "as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0") || { + echo No shell found that supports shell functions. + echo Please tell autoconf@gnu.org about your system, + echo including any error possibly output before this + echo message +} + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop - s,-$,, - s,^['$as_cr_digits']*\n,, + s/-\n.*// ' >$as_me.lineno && - chmod +x $as_me.lineno || + chmod +x "$as_me.lineno" || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" # Exit status is that of the last command. exit } -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else as_ln_s='ln -s' - fi + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p=: @@ -223,7 +519,28 @@ as_mkdir_p=false fi -as_executable_p="test -f" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -232,86 +549,200 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH +exec 7<&0 &1 # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` -exec 6>&1 - # # Initializations. # ac_default_prefix=/usr/local +ac_clean_files= ac_config_libobj_dir=. +LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - # Identity of this package. PACKAGE_NAME='NetMRG' PACKAGE_TARNAME='netmrg' -PACKAGE_VERSION='0.19' -PACKAGE_STRING='NetMRG 0.19' +PACKAGE_VERSION='0.20' +PACKAGE_STRING='NetMRG 0.20' PACKAGE_BUGREPORT='' ac_unique_file="src/netmrg.cpp" # Factoring default headers for most tests. ac_includes_default="\ #include -#if HAVE_SYS_TYPES_H +#ifdef HAVE_SYS_TYPES_H # include #endif -#if HAVE_SYS_STAT_H +#ifdef HAVE_SYS_STAT_H # include #endif -#if STDC_HEADERS +#ifdef STDC_HEADERS # include # include #else -# if HAVE_STDLIB_H +# ifdef HAVE_STDLIB_H # include # endif #endif -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H # include # endif # include #endif -#if HAVE_STRINGS_H +#ifdef HAVE_STRINGS_H # include #endif -#if HAVE_INTTYPES_H +#ifdef HAVE_INTTYPES_H # include -#else -# if HAVE_STDINT_H +#endif +#ifdef HAVE_STDINT_H # include -# endif #endif -#if HAVE_UNISTD_H +#ifdef HAVE_UNISTD_H # include #endif" -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 INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar RRDTOOL WWWDIR CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP CXXCPP EGREP LIBOBJS MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB LTLIBOBJS' +gt_needs= +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 +datarootdir +datadir +sysconfdir +sharedstatedir +localstatedir +includedir +oldincludedir +docdir +infodir +htmldir +dvidir +pdfdir +psdir +libdir +localedir +mandir +DEFS +ECHO_C +ECHO_N +ECHO_T +LIBS +build_alias +host_alias +target_alias +build +build_cpu +build_vendor +build_os +host +host_cpu +host_vendor +host_os +INSTALL_PROGRAM +INSTALL_SCRIPT +INSTALL_DATA +am__isrc +CYGPATH_W +PACKAGE +VERSION +ACLOCAL +AUTOCONF +AUTOMAKE +AUTOHEADER +MAKEINFO +install_sh +STRIP +INSTALL_STRIP_PROGRAM +mkdir_p +AWK +SET_MAKE +am__leading_dot +AMTAR +am__tar +am__untar +RRDTOOL +MYSQL_CONFIG +WWWDIR +CXX +CXXFLAGS +LDFLAGS +CPPFLAGS +ac_ct_CXX +EXEEXT +OBJEXT +DEPDIR +am__include +am__quote +AMDEP_TRUE +AMDEP_FALSE +AMDEPBACKSLASH +CXXDEPMODE +am__fastdepCXX_TRUE +am__fastdepCXX_FALSE +CC +CFLAGS +ac_ct_CC +CCDEPMODE +am__fastdepCC_TRUE +am__fastdepCC_FALSE +CPP +CXXCPP +GREP +EGREP +LIBOBJS +USE_NLS +MSGFMT +GMSGFMT +MSGFMT_015 +GMSGFMT_015 +XGETTEXT +XGETTEXT_015 +MSGMERGE +INTL_MACOSX_LIBS +LIBICONV +LTLIBICONV +INTLLIBS +LIBINTL +LTLIBINTL +POSUB +LTLIBOBJS' ac_subst_files='' + ac_precious_vars='build_alias +host_alias +target_alias +CXX +CXXFLAGS +LDFLAGS +LIBS +CPPFLAGS +CCC +CC +CFLAGS +CPP +CXXCPP' + # Initialize some variables set by options. ac_init_help= @@ -338,34 +769,48 @@ # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' +datarootdir='${prefix}/share' +datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' ac_prev= +ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" + eval $ac_prev=\$ac_option ac_prev= continue fi - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` + case $ac_option in + *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *) ac_optarg=yes ;; + esac # Accept the important Cygnus configure options, so we can diagnose typos. - case $ac_option in + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; @@ -387,33 +832,45 @@ --config-cache | -C) cache_file=config.cache ;; - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) + -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; + ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` + eval enable_$ac_feature=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ @@ -440,6 +897,12 @@ -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; @@ -464,13 +927,16 @@ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) + | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) @@ -535,6 +1001,16 @@ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; @@ -587,24 +1063,20 @@ -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } - ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=\$ac_optarg ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; + ac_package=`echo $ac_package | sed 's/[-.]/_/g'` + eval with_$ac_package=no ;; --x) # Obsolete; use --with-x. @@ -635,8 +1107,7 @@ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" + eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) @@ -656,27 +1127,19 @@ { (exit 1); exit 1; }; } fi -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir +# Be sure to have absolute directory names. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir do - eval ac_val=$`echo $ac_var` + eval ac_val=\$$ac_var case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac + { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } done # There might be people who depend on the old broken behavior: `$host' @@ -703,86 +1166,76 @@ test "$silent" = yes && exec 6>/dev/null +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + { echo "$as_me: error: Working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + { echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$0" || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then + if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 - { (exit 1); exit 1; }; } - else +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } - fi fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 - { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CXX_set=${CXX+set} -ac_env_CXX_value=$CXX -ac_cv_env_CXX_set=${CXX+set} -ac_cv_env_CXX_value=$CXX -ac_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_env_CXXFLAGS_value=$CXXFLAGS -ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_cv_env_CXXFLAGS_value=$CXXFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP -ac_env_CXXCPP_set=${CXXCPP+set} -ac_env_CXXCPP_value=$CXXCPP -ac_cv_env_CXXCPP_set=${CXXCPP+set} -ac_cv_env_CXXCPP_value=$CXXCPP +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 + { (exit 1); exit 1; }; } + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done # # Report the --help message. @@ -791,7 +1244,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures NetMRG 0.19 to adapt to many kinds of systems. +\`configure' configures NetMRG 0.20 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -811,9 +1264,6 @@ -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] -_ACEOF - - cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] @@ -831,15 +1281,22 @@ --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/netmrg] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF @@ -857,7 +1314,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of NetMRG 0.19:";; + short | recursive ) echo "Configuration of NetMRG 0.20:";; esac cat <<\_ACEOF @@ -873,12 +1330,11 @@ Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-rrdtool=PROGRAM location of the rrdtool binary - --with-mysql-include-dir - MySQL include directory [/usr/(local/)include] - --with-mysql-lib-dir MySQL library directory [/usr/(local/)lib/mysql] + --with-rrdtool=PROGRAM location of the rrdtool program + --with-mysql_config=PROGRAM + location of the mysql_config program --with-snmp-include-dir SNMP include base directory [/usr/(local/)include] - --with-snmp-lib-dir SNMP library directory [/usr/(local/)lib] + --with-snmp-lib-dir SNMP library directory [/usr/(local/)lib[64]] --with-xml2-include-dir XML2 include directory --with-xml2-lib-dir XML2 library directory --with-www-dir install directory for web files @@ -893,8 +1349,9 @@ CXXFLAGS C++ compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory - CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have - headers in a nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if + you have headers in a nonstandard directory CC C compiler command CFLAGS C compiler flags CPP C preprocessor @@ -904,120 +1361,86 @@ it to find libraries and programs with nonstandard names/locations. _ACEOF +ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. - ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue + test -d "$ac_dir" || continue ac_builddir=. -if test "$ac_dir" != .; then +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } done fi -test -n "$ac_init_help" && exit 0 +test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -NetMRG configure 0.19 -generated by GNU Autoconf 2.59 +NetMRG configure 0.20 +generated by GNU Autoconf 2.61 -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF - exit 0 + exit fi -exec 5>config.log -cat >&5 <<_ACEOF +cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by NetMRG $as_me 0.19, which was -generated by GNU Autoconf 2.59. Invocation command line was +It was created by NetMRG $as_me 0.20, which was +generated by GNU Autoconf 2.61. Invocation command line was $ $0 $@ _ACEOF +exec 5>>config.log { cat <<_ASUNAME ## --------- ## @@ -1036,7 +1459,7 @@ /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` @@ -1050,6 +1473,7 @@ test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done +IFS=$as_save_IFS } >&5 @@ -1071,7 +1495,6 @@ ac_configure_args= ac_configure_args0= ac_configure_args1= -ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do @@ -1082,7 +1505,7 @@ -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + *\'*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in @@ -1104,9 +1527,7 @@ -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " + ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac done @@ -1117,8 +1538,8 @@ # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { @@ -1131,20 +1552,34 @@ _ASBOX echo # The following way of writing the cache mishandles newlines in values, -{ +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} + esac | + sort +) echo cat <<\_ASBOX @@ -1155,22 +1590,28 @@ echo for ac_var in $ac_subst_vars do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## +## ------------------- ## +## File substitutions. ## +## ------------------- ## _ASBOX echo for ac_var in $ac_subst_files do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" done | sort echo fi @@ -1182,26 +1623,24 @@ ## ----------- ## _ASBOX echo - sed "/^$/d" confdefs.h | sort + cat confdefs.h echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status - ' 0 +' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h +rm -f -r conftest* confdefs.h # Predefined preprocessor variables. @@ -1232,14 +1671,17 @@ # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi +if test -n "$CONFIG_SITE"; then + set x "$CONFIG_SITE" +elif test "x$prefix" != xNONE; then + set x "$prefix/share/config.site" "$prefix/etc/config.site" +else + set x "$ac_default_prefix/share/config.site" \ + "$ac_default_prefix/etc/config.site" fi -for ac_site_file in $CONFIG_SITE; do +shift +for ac_site_file +do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} @@ -1255,8 +1697,8 @@ { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; esac fi else @@ -1265,15 +1707,15 @@ >$cache_file fi +gt_needs="$gt_needs " # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do +for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 @@ -1298,8 +1740,7 @@ # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in @@ -1316,12 +1757,6 @@ { (exit 1); exit 1; }; } fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - @@ -1346,90 +1781,131 @@ +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/install-sh; then +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break - elif test -f $ac_dir/install.sh; then + elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break - elif test -f $ac_dir/shtool; then + elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5 +echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;} { (exit 1); exit 1; }; } fi -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + # Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 +echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking build system type" >&5 +echo $ECHO_N "checking build system type... $ECHO_C" >&6; } if test "${ac_cv_build+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 echo "$as_me: error: cannot guess build type; you must specify one" >&2;} { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 +echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +echo "${ECHO_T}$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 +echo "$as_me: error: invalid value of canonical build" >&2;} + { (exit 1); exit 1; }; };; +esac build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking host system type" >&5 +echo $ECHO_N "checking host system type... $ECHO_C" >&6; } if test "${ac_cv_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 +echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} { (exit 1); exit 1; }; } +fi fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +echo "${ECHO_T}$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 +echo "$as_me: error: invalid value of canonical host" >&2;} + { (exit 1); exit 1; }; };; +esac host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + +am__api_version='1.10' -am__api_version="1.9" # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -1443,8 +1919,8 @@ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -1466,7 +1942,7 @@ # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -1485,21 +1961,22 @@ ;; esac done +IFS=$as_save_IFS fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is - # removed, or if the path is relative. + # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 +{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -1509,8 +1986,8 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -echo "$as_me:$LINENO: checking whether build environment is sane" >&5 -echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5 +echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } # Just in case sleep 1 echo timestamp > conftest.file @@ -1552,20 +2029,20 @@ Check your system clock" >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } test "$program_prefix" != NONE && - program_transform_name="s,^,$program_prefix,;$program_transform_name" + program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && - program_transform_name="s,\$,$program_suffix,;$program_transform_name" + program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. echo might interpret backslashes. # By default was `s,x,x', remove it if useless. cat <<\_ACEOF >conftest.sed s/[\\$]/&&/g;s/;s,x,x,$// _ACEOF program_transform_name=`echo $program_transform_name | sed -f conftest.sed` -rm conftest.sed +rm -f conftest.sed # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` @@ -1580,45 +2057,60 @@ echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi -if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then - # We used to keeping the `.' as first argument, in order to - # allow $(mkdir_p) to be used without argument. As in - # $(mkdir_p) $(somedir) - # where $(somedir) is conditionally defined. However this is wrong - # for two reasons: - # 1. if the package is installed by a user who cannot write `.' - # make install will fail, - # 2. the above comment should most certainly read - # $(mkdir_p) $(DESTDIR)$(somedir) - # so it does not work when $(somedir) is undefined and - # $(DESTDIR) is not. - # To support the latter case, we have to write - # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), - # so the `.' trick is pointless. - mkdir_p='mkdir -p --' -else - # On NextStep and OpenStep, the `mkdir' command does not - # recognize any option. It will interpret all options as - # directories to create, and then abort because `.' already - # exists. - for d in ./-p ./--version; - do - test -d $d && rmdir $d +{ echo "$as_me:$LINENO: checking for a thread-safe mkdir -p" >&5 +echo $ECHO_N "checking for a thread-safe mkdir -p... $ECHO_C" >&6; } +if test -z "$MKDIR_P"; then + if test "${ac_cv_path_mkdir+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done done - # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. - if test -f "$ac_aux_dir/mkinstalldirs"; then - mkdir_p='$(mkinstalldirs)' +done +IFS=$as_save_IFS + +fi + + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" else - mkdir_p='$(install_sh) -d' + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + test -d ./--version && rmdir ./--version + MKDIR_P="$ac_install_sh -d" fi fi +{ echo "$as_me:$LINENO: result: $MKDIR_P" >&5 +echo "${ECHO_T}$MKDIR_P" >&6; } + +mkdir_p="$MKDIR_P" +case $mkdir_p in + [\\/$]* | ?:[\\/]*) ;; + */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;; +esac for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_AWK+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1631,54 +2123,57 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then - echo "$as_me:$LINENO: result: $AWK" >&5 -echo "${ECHO_T}$AWK" >&6 + { echo "$as_me:$LINENO: result: $AWK" >&5 +echo "${ECHO_T}$AWK" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$AWK" && break done -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then +{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } +set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.make <<\_ACEOF +SHELL = /bin/sh all: - @echo 'ac_maketemp="$(MAKE)"' + @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac rm -f conftest.make fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } SET_MAKE= else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -1691,12 +2186,16 @@ fi rmdir .tst 2>/dev/null -# test to see if srcdir already configured -if test "`cd $srcdir && pwd`" != "`pwd`" && - test -f $srcdir/config.status; then +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + am__isrc=' -I$(srcdir)' + # test to see if srcdir already configured + if test -f $srcdir/config.status; then { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } + fi fi # test whether we have cygpath @@ -1711,7 +2210,7 @@ # Define the identity of the package. PACKAGE='netmrg' - VERSION='0.19' + VERSION='0.20' cat >>confdefs.h <<_ACEOF @@ -1739,7 +2238,7 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} -install_sh=${install_sh-"$am_aux_dir/install-sh"} +install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"} # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right @@ -1749,8 +2248,8 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1763,32 +2262,34 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 + { echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1801,33 +2302,47 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac STRIP=$ac_ct_STRIP + fi else STRIP="$ac_cv_prog_STRIP" fi fi -INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" # We need awk for the "check" target. The system "awk" is bad on # some platforms. @@ -1841,40 +2356,41 @@ - ac_config_headers="$ac_config_headers src/include/config.h" +ac_config_headers="$ac_config_headers src/include/config.h" -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then +{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } +set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.make <<\_ACEOF +SHELL = /bin/sh all: - @echo 'ac_maketemp="$(MAKE)"' + @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac rm -f conftest.make fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } SET_MAKE= else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi # We wanna use C++, not that silly C language ;) -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -1900,15 +2416,15 @@ # rrdtool -# Check whether --with-rrdtool or --without-rrdtool was given. +# Check whether --with-rrdtool was given. if test "${with_rrdtool+set}" = set; then - withval="$with_rrdtool" - rrdtool_prog=$withval -fi; + withval=$with_rrdtool; rrdtool_prog=$withval +fi + # Extract the first word of "rrdtool", so it can be a program name with args. set dummy rrdtool; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_RRDTOOL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1923,29 +2439,30 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_RRDTOOL="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS test -z "$ac_cv_path_RRDTOOL" && ac_cv_path_RRDTOOL="$rrdtool_prog" ;; esac fi RRDTOOL=$ac_cv_path_RRDTOOL - if test -n "$RRDTOOL"; then - echo "$as_me:$LINENO: result: $RRDTOOL" >&5 -echo "${ECHO_T}$RRDTOOL" >&6 + { echo "$as_me:$LINENO: result: $RRDTOOL" >&5 +echo "${ECHO_T}$RRDTOOL" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + if test "x$RRDTOOL" = "x"; then { { echo "$as_me:$LINENO: error: Couldn't find rrdtool. Please verify that it is installed." >&5 echo "$as_me: error: Couldn't find rrdtool. Please verify that it is installed." >&2;} @@ -1954,54 +2471,95 @@ # mysql -# Check whether --with-mysql-include-dir or --without-mysql-include-dir was given. -if test "${with_mysql_include_dir+set}" = set; then - withval="$with_mysql_include_dir" - mysql_include_dir=$withval -fi; - -# Check whether --with-mysql-lib-dir or --without-mysql-lib-dir was given. -if test "${with_mysql_lib_dir+set}" = set; then - withval="$with_mysql_lib_dir" - mysql_lib_dir=$withval -fi; +# Check whether --with-mysql_config was given. +if test "${with_mysql_config+set}" = set; then + withval=$with_mysql_config; mysql_config_prog=$withval +fi + +# Extract the first word of "mysql_config", so it can be a program name with args. +set dummy mysql_config; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_path_MYSQL_CONFIG+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + case $MYSQL_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_MYSQL_CONFIG="$MYSQL_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_path_MYSQL_CONFIG="$as_dir/$ac_word$ac_exec_ext" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + + test -z "$ac_cv_path_MYSQL_CONFIG" && ac_cv_path_MYSQL_CONFIG="$mysql_config_prog" + ;; +esac +fi +MYSQL_CONFIG=$ac_cv_path_MYSQL_CONFIG +if test -n "$MYSQL_CONFIG"; then + { echo "$as_me:$LINENO: result: $MYSQL_CONFIG" >&5 +echo "${ECHO_T}$MYSQL_CONFIG" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + +if test "x$MYSQL_CONFIG" = "x"; then + { { echo "$as_me:$LINENO: error: Couldn't find mysql_config. Please verify that it is installed." >&5 +echo "$as_me: error: Couldn't find mysql_config. Please verify that it is installed." >&2;} + { (exit 1); exit 1; }; } +fi # snmp -# Check whether --with-snmp-include-dir or --without-snmp-include-dir was given. +# Check whether --with-snmp-include-dir was given. if test "${with_snmp_include_dir+set}" = set; then - withval="$with_snmp_include_dir" - snmp_include_dir=$withval -fi; + withval=$with_snmp_include_dir; snmp_include_dir=$withval +fi -# Check whether --with-snmp-lib-dir or --without-snmp-lib-dir was given. + +# Check whether --with-snmp-lib-dir was given. if test "${with_snmp_lib_dir+set}" = set; then - withval="$with_snmp_lib_dir" - snmp_lib_dir=$withval -fi; + withval=$with_snmp_lib_dir; snmp_lib_dir=$withval +fi + # xml2 -# Check whether --with-xml2-include-dir or --without-xml2-include-dir was given. +# Check whether --with-xml2-include-dir was given. if test "${with_xml2_include_dir+set}" = set; then - withval="$with_xml2_include_dir" - xml2_include_dir=$withval -fi; + withval=$with_xml2_include_dir; xml2_include_dir=$withval +fi -# Check whether --with-xml2-lib-dir or --without-xml2-lib-dir was given. + +# Check whether --with-xml2-lib-dir was given. if test "${with_xml2_lib_dir+set}" = set; then - withval="$with_xml2_lib_dir" - xml2_lib_dir=$withval -fi; + withval=$with_xml2_lib_dir; xml2_lib_dir=$withval +fi + # www dir www_dir="${localstatedir}/www/${PACKAGE}" -# Check whether --with-www-dir or --without-www-dir was given. +# Check whether --with-www-dir was given. if test "${with_www_dir+set}" = set; then - withval="$with_www_dir" - www_dir=$withval -fi; + withval=$with_www_dir; www_dir=$withval +fi + WWWDIR=$www_dir @@ -2039,18 +2597,22 @@ ### Checks for programs. -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -n "$ac_tool_prefix"; then - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2063,36 +2625,38 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then - echo "$as_me:$LINENO: result: $CXX" >&5 -echo "${ECHO_T}$CXX" >&6 + { echo "$as_me:$LINENO: result: $CXX" >&5 +echo "${ECHO_T}$CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2105,49 +2669,79 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then - echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -echo "${ECHO_T}$ac_ct_CXX" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 +echo "${ECHO_T}$ac_ct_CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$ac_ct_CXX" && break done -test -n "$ac_ct_CXX" || ac_ct_CXX="g++" + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac CXX=$ac_ct_CXX + fi fi - + fi +fi # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C++ compiler version" >&5 +echo "$as_me:$LINENO: checking for C++ compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } @@ -2172,47 +2766,77 @@ # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5 -echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5 +echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6; } ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 +# +# List of possible output files, starting from the most likely. +# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) +# only as a last resort. b.out is created by i960 compilers. +ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' +# +# The IRIX 6 linker writes into existing files which may not be +# executable, retaining their permissions. Remove them first so a +# subsequent execution test works. +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { (ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link_default") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. break;; * ) break;; esac done +test "$ac_cv_exeext" = no && ac_cv_exeext= + else + ac_file='' +fi + +{ echo "$as_me:$LINENO: result: $ac_file" >&5 +echo "${ECHO_T}$ac_file" >&6; } +if test -z "$ac_file"; then echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -2224,19 +2848,21 @@ fi ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 -# Check the compiler produces executables we can run. If not, either +# Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 -echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 +echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6; } # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -2255,22 +2881,27 @@ fi fi fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either +# Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 +echo "${ECHO_T}$cross_compiling" >&6; } + +{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then @@ -2281,9 +2912,8 @@ for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext break;; * ) break;; esac @@ -2297,14 +2927,14 @@ fi rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +echo "${ECHO_T}$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2324,14 +2954,20 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac @@ -2349,12 +2985,12 @@ rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +echo "${ECHO_T}$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; } if test "${ac_cv_cxx_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2377,49 +3013,48 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; } GXX=`test $ac_compiler_gnu = yes && echo yes` ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -CXXFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cxx_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -2436,167 +3071,141 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cxx_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do + CXXFLAGS="" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_declaration -#include + int main () { -exit (42); + ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_declaration + int main () { -exit (42); + ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -ac_ext=cc +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu DEPDIR="${am__leading_dot}deps" - ac_config_commands="$ac_config_commands depfiles" +ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} @@ -2606,8 +3215,8 @@ .PHONY: am__doit END # If we don't find an include directive, just comment out the code. -echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 -echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; } am__include="#" am__quote= _am_result=none @@ -2634,22 +3243,20 @@ fi -echo "$as_me:$LINENO: result: $_am_result" >&5 -echo "${ECHO_T}$_am_result" >&6 +{ echo "$as_me:$LINENO: result: $_am_result" >&5 +echo "${ECHO_T}$_am_result" >&6; } rm -f confinc confmf -# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. +# Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then - enableval="$enable_dependency_tracking" + enableval=$enable_dependency_tracking; +fi -fi; if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi - - -if test "x$enable_dependency_tracking" != xno; then + if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else @@ -2659,11 +3266,10 @@ - depcc="$CXX" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2727,6 +3333,7 @@ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then @@ -2752,13 +3359,11 @@ fi fi -echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6 +{ echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type - - -if + if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then am__fastdepCXX_TRUE= @@ -2777,8 +3382,8 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2791,32 +3396,34 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2829,26 +3436,41 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac CC=$ac_ct_CC + fi else CC="$ac_cv_prog_CC" fi @@ -2857,8 +3479,8 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2871,74 +3493,34 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi + fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2952,7 +3534,7 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue @@ -2963,6 +3545,7 @@ fi done done +IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. @@ -2980,22 +3563,23 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3008,36 +3592,38 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3050,29 +3636,45 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$ac_ct_CC" && break done + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac CC=$ac_ct_CC + fi fi fi @@ -3085,27 +3687,41 @@ { (exit 1); exit 1; }; } # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 +echo "$as_me:$LINENO: checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 - (eval $ac_compiler --version &5) 2>&5 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 - (eval $ac_compiler -v &5) 2>&5 +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 - (eval $ac_compiler -V &5) 2>&5 +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3128,49 +3744,48 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -3187,38 +3802,118 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + CFLAGS="" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cc_g=no + +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then @@ -3234,12 +3929,12 @@ CFLAGS= fi fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then +{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } +if test "${ac_cv_prog_cc_c89+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_prog_cc_stdc=no + ac_cv_prog_cc_c89=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -3273,12 +3968,17 @@ /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get + as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ + that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; @@ -3293,206 +3993,58 @@ return 0; } _ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext -done -rm -f conftest.$ac_ext conftest.$ac_objext -CC=$ac_save_CC - -fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; - *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; esac - -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c89=$ac_arg else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=cc +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { echo "$as_me:$LINENO: result: none needed" >&5 +echo "${ECHO_T}none needed" >&6; } ;; + xno) + { echo "$as_me:$LINENO: result: unsupported" >&5 +echo "${ECHO_T}unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; +esac + + +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -3500,8 +4052,8 @@ depcc="$CC" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3565,6 +4117,7 @@ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then @@ -3590,13 +4143,11 @@ fi fi -echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 +{ echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type - - -if + if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= @@ -3612,8 +4163,8 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -3647,24 +4198,22 @@ #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -3673,9 +4222,10 @@ # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -3685,24 +4235,22 @@ /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -3713,6 +4261,7 @@ ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -3730,8 +4279,8 @@ else ac_cv_prog_CPP=$CPP fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 +{ echo "$as_me:$LINENO: result: $CPP" >&5 +echo "${ECHO_T}$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do @@ -3754,24 +4303,22 @@ #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -3780,9 +4327,10 @@ # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -3792,24 +4340,22 @@ /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_c_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_c_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -3820,6 +4366,7 @@ ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -3835,7 +4382,7 @@ { (exit 1); exit 1; }; } fi -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -3854,8 +4401,8 @@ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -3877,7 +4424,7 @@ # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -3896,21 +4443,22 @@ ;; esac done +IFS=$as_save_IFS fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is - # removed, or if the path is relative. + # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 +{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -3921,27 +4469,27 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -echo "$as_me:$LINENO: checking whether to enable -Wall" >&5 -echo $ECHO_N "checking whether to enable -Wall... $ECHO_C" >&6 -# Check whether --enable-warnings or --disable-warnings was given. +{ echo "$as_me:$LINENO: checking whether to enable -Wall" >&5 +echo $ECHO_N "checking whether to enable -Wall... $ECHO_C" >&6; } +# Check whether --enable-warnings was given. if test "${enable_warnings+set}" = set; then - enableval="$enable_warnings" - if test -n "$GXX"; then - echo "$as_me:$LINENO: result: adding -Wall to CPPFLAGS." >&5 -echo "${ECHO_T}adding -Wall to CPPFLAGS." >&6 + enableval=$enable_warnings; if test -n "$GXX"; then + { echo "$as_me:$LINENO: result: adding -Wall to CPPFLAGS." >&5 +echo "${ECHO_T}adding -Wall to CPPFLAGS." >&6; } CPPFLAGS="$CPPFLAGS -Wall" fi else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi; + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + ### Checks for libraries. -echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5 -echo $ECHO_N "checking for bindtextdomain in -lintl... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for bindtextdomain in -lintl" >&5 +echo $ECHO_N "checking for bindtextdomain in -lintl... $ECHO_C" >&6; } if test "${ac_cv_lib_intl_bindtextdomain+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3954,56 +4502,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char bindtextdomain (); int main () { -bindtextdomain (); +return bindtextdomain (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_intl_bindtextdomain=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_intl_bindtextdomain=no + ac_cv_lib_intl_bindtextdomain=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5 -echo "${ECHO_T}$ac_cv_lib_intl_bindtextdomain" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_intl_bindtextdomain" >&5 +echo "${ECHO_T}$ac_cv_lib_intl_bindtextdomain" >&6; } if test $ac_cv_lib_intl_bindtextdomain = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBINTL 1 @@ -4014,8 +4559,8 @@ fi -echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 +echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; } if test "${ac_cv_lib_dl_dlopen+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4028,56 +4573,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_dl_dlopen=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 +echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; } if test $ac_cv_lib_dl_dlopen = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBDL 1 @@ -4088,8 +4630,8 @@ fi -echo "$as_me:$LINENO: checking for compress in -lz" >&5 -echo $ECHO_N "checking for compress in -lz... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for compress in -lz" >&5 +echo $ECHO_N "checking for compress in -lz... $ECHO_C" >&6; } if test "${ac_cv_lib_z_compress+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4102,56 +4644,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char compress (); int main () { -compress (); +return compress (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_z_compress=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_z_compress=no + ac_cv_lib_z_compress=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_z_compress" >&5 -echo "${ECHO_T}$ac_cv_lib_z_compress" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_z_compress" >&5 +echo "${ECHO_T}$ac_cv_lib_z_compress" >&6; } if test $ac_cv_lib_z_compress = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBZ 1 @@ -4161,8 +4700,8 @@ fi -echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 -echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 +echo $ECHO_N "checking for pthread_create in -lpthread... $ECHO_C" >&6; } if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4175,62 +4714,59 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char pthread_create (); int main () { -pthread_create (); +return pthread_create (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_pthread_pthread_create=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_pthread_pthread_create=no + ac_cv_lib_pthread_pthread_create=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 -echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 +echo "${ECHO_T}$ac_cv_lib_pthread_pthread_create" >&6; } if test $ac_cv_lib_pthread_pthread_create = yes; then CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS" LIBS="-lpthread $LIBS" else - echo "$as_me:$LINENO: checking for pthread_create in -lc_r" >&5 -echo $ECHO_N "checking for pthread_create in -lc_r... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for pthread_create in -lc_r" >&5 +echo $ECHO_N "checking for pthread_create in -lc_r... $ECHO_C" >&6; } if test "${ac_cv_lib_c_r_pthread_create+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4243,56 +4779,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char pthread_create (); int main () { -pthread_create (); +return pthread_create (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_c_r_pthread_create=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_c_r_pthread_create=no + ac_cv_lib_c_r_pthread_create=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_c_r_pthread_create" >&5 -echo "${ECHO_T}$ac_cv_lib_c_r_pthread_create" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_c_r_pthread_create" >&5 +echo "${ECHO_T}$ac_cv_lib_c_r_pthread_create" >&6; } if test $ac_cv_lib_c_r_pthread_create = yes; then CPPFLAGS="$CPPFLAGS -D_THREAD_SAFE" LIBS="-pthread $LIBS" @@ -4307,8 +4840,8 @@ fi -echo "$as_me:$LINENO: checking for main in -lstdc++" >&5 -echo $ECHO_N "checking for main in -lstdc++... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lstdc++" >&5 +echo $ECHO_N "checking for main in -lstdc++... $ECHO_C" >&6; } if test "${ac_cv_lib_stdcpp_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4325,46 +4858,43 @@ int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_stdcpp_main=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_stdcpp_main=no + ac_cv_lib_stdcpp_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_stdcpp_main" >&5 -echo "${ECHO_T}$ac_cv_lib_stdcpp_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_stdcpp_main" >&5 +echo "${ECHO_T}$ac_cv_lib_stdcpp_main" >&6; } if test $ac_cv_lib_stdcpp_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSTDC__ 1 @@ -4377,8 +4907,8 @@ ## Determine XML2 library path # try and find libs without any additional libraries -echo "$as_me:$LINENO: checking for xmlParseFile in -lxml2" >&5 -echo $ECHO_N "checking for xmlParseFile in -lxml2... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for xmlParseFile in -lxml2" >&5 +echo $ECHO_N "checking for xmlParseFile in -lxml2... $ECHO_C" >&6; } if test "${ac_cv_lib_xml2_xmlParseFile+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4391,56 +4921,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char xmlParseFile (); int main () { -xmlParseFile (); +return xmlParseFile (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_xml2_xmlParseFile=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_xml2_xmlParseFile=no + ac_cv_lib_xml2_xmlParseFile=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_xml2_xmlParseFile" >&5 -echo "${ECHO_T}$ac_cv_lib_xml2_xmlParseFile" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_xml2_xmlParseFile" >&5 +echo "${ECHO_T}$ac_cv_lib_xml2_xmlParseFile" >&6; } if test $ac_cv_lib_xml2_xmlParseFile = yes; then XML2_LIBS=" " else @@ -4452,11 +4979,11 @@ # hunt through several directories trying to find the libraries if test "x$XML2_LIBS" = "x"; then old_LDFLAGS="$LDFLAGS" - for try in $xml2_lib_dir /usr/lib /usr/local/lib ; do + for try in $xml2_lib_dir /usr/lib64 /usr/lib /usr/local/lib ; do LDFLAGS="$old_LDFLAGS -L$try" unset ac_cv_lib_xml2_xmlParseFile - echo "$as_me:$LINENO: checking for xmlParseFile in -lxml2" >&5 -echo $ECHO_N "checking for xmlParseFile in -lxml2... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for xmlParseFile in -lxml2" >&5 +echo $ECHO_N "checking for xmlParseFile in -lxml2... $ECHO_C" >&6; } if test "${ac_cv_lib_xml2_xmlParseFile+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4469,56 +4996,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char xmlParseFile (); int main () { -xmlParseFile (); +return xmlParseFile (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_xml2_xmlParseFile=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_xml2_xmlParseFile=no + ac_cv_lib_xml2_xmlParseFile=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_xml2_xmlParseFile" >&5 -echo "${ECHO_T}$ac_cv_lib_xml2_xmlParseFile" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_xml2_xmlParseFile" >&5 +echo "${ECHO_T}$ac_cv_lib_xml2_xmlParseFile" >&6; } if test $ac_cv_lib_xml2_xmlParseFile = yes; then XML2_LIBS="-L$try" else @@ -4542,245 +5066,12 @@ LIBS="-lxml2 $LIBS" ## Determine MySQL library path -# try and find libs without any additional libraries -echo "$as_me:$LINENO: checking for mysql_init in -lmysqlclient" >&5 -echo $ECHO_N "checking for mysql_init in -lmysqlclient... $ECHO_C" >&6 -if test "${ac_cv_lib_mysqlclient_mysql_init+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lmysqlclient $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char mysql_init (); -int -main () -{ -mysql_init (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_mysqlclient_mysql_init=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_mysqlclient_mysql_init=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_mysqlclient_mysql_init" >&5 -echo "${ECHO_T}$ac_cv_lib_mysqlclient_mysql_init" >&6 -if test $ac_cv_lib_mysqlclient_mysql_init = yes; then - MYSQL_LIBS=" " -else - MYSQL_LIBS= - -fi - - -# hunt through several directories trying to find the libraries -if test "x$MYSQL_LIBS" = "x"; then - old_LDFLAGS="$LDFLAGS" - for try in $mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib /usr/local/mysql/lib /usr/local/lib/mysql /usr/sfw/lib; do - LDFLAGS="$old_LDFLAGS -L$try" - unset ac_cv_lib_mysqlclient_mysql_init - echo "$as_me:$LINENO: checking for mysql_init in -lmysqlclient" >&5 -echo $ECHO_N "checking for mysql_init in -lmysqlclient... $ECHO_C" >&6 -if test "${ac_cv_lib_mysqlclient_mysql_init+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lmysqlclient $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char mysql_init (); -int -main () -{ -mysql_init (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_mysqlclient_mysql_init=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_mysqlclient_mysql_init=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_mysqlclient_mysql_init" >&5 -echo "${ECHO_T}$ac_cv_lib_mysqlclient_mysql_init" >&6 -if test $ac_cv_lib_mysqlclient_mysql_init = yes; then - MYSQL_LIBS="-L$try" -else - MYSQL_LIBS= - -fi - - if test "x$MYSQL_LIBS" != "x"; then - break; - fi - done - LDFLAGS="$old_LDFLAGS $MYSQL_LIBS" -fi - -if test "x$MYSQL_LIBS" = "x"; then - { { echo "$as_me:$LINENO: error: MySQL libraries not found. Use --with-mysql-lib-dir=" >&5 -echo "$as_me: error: MySQL libraries not found. Use --with-mysql-lib-dir=" >&2;} - { (exit 1); exit 1; }; } -fi -# don't forget to add mysqlclient to the list of libraries -LIBS="-lmysqlclient $LIBS" +MYSQL_LIBS=$($MYSQL_CONFIG --libs) +LIBS="$LIBS $MYSQL_LIBS" # now that we've found the libraries, check for MySQL < 4.0 - -echo "$as_me:$LINENO: checking for mysql_thread_init in -lmysqlclient" >&5 -echo $ECHO_N "checking for mysql_thread_init in -lmysqlclient... $ECHO_C" >&6 -if test "${ac_cv_lib_mysqlclient_mysql_thread_init+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lmysqlclient $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char mysql_thread_init (); -int -main () -{ -mysql_thread_init (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_lib_mysqlclient_mysql_thread_init=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -ac_cv_lib_mysqlclient_mysql_thread_init=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_lib_mysqlclient_mysql_thread_init" >&5 -echo "${ECHO_T}$ac_cv_lib_mysqlclient_mysql_thread_init" >&6 -if test $ac_cv_lib_mysqlclient_mysql_thread_init = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBMYSQLCLIENT 1 -_ACEOF - - LIBS="-lmysqlclient $LIBS" - -else +MYSQL_VERSION=$($MYSQL_CONFIG --version) +if test "x${MYSQL_VERSION//.*/}" = "x3"; then cat >>confdefs.h <<\_ACEOF #define OLD_MYSQL 1 @@ -4789,15 +5080,14 @@ fi - ### Checks for header files. -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 -echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 +echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6; } if test -z "$CXXCPP"; then if test "${ac_cv_prog_CXXCPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -4827,24 +5117,22 @@ #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -4853,9 +5141,10 @@ # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -4865,24 +5154,22 @@ /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -4893,6 +5180,7 @@ ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -4910,8 +5198,8 @@ else ac_cv_prog_CXXCPP=$CXXCPP fi -echo "$as_me:$LINENO: result: $CXXCPP" >&5 -echo "${ECHO_T}$CXXCPP" >&6 +{ echo "$as_me:$LINENO: result: $CXXCPP" >&5 +echo "${ECHO_T}$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do @@ -4934,24 +5222,22 @@ #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : else echo "$as_me: failed program was:" >&5 @@ -4960,9 +5246,10 @@ # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -4972,24 +5259,22 @@ /* end confdefs.h. */ #include _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then # Broken: success on invalid input. continue else @@ -5000,6 +5285,7 @@ ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -5015,30 +5301,177 @@ { (exit 1); exit 1; }; } fi -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then +{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # Extract the first word of "grep ggrep" to use in msg output +if test -z "$GREP"; then +set dummy grep ggrep; ac_prog_name=$2 +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_path_GREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue + # Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_GREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +GREP="$ac_cv_path_GREP" +if test -z "$GREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_GREP=$GREP +fi + + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +echo "${ECHO_T}$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ echo "$as_me:$LINENO: checking for egrep" >&5 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } +if test "${ac_cv_path_EGREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + # Extract the first word of "egrep" to use in msg output +if test -z "$EGREP"; then +set dummy egrep; ac_prog_name=$2 +if test "${ac_cv_path_EGREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' + ac_path_EGREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue + # Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_EGREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +EGREP="$ac_cv_path_EGREP" +if test -z "$EGREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_EGREP=$EGREP +fi + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep +{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5062,35 +5495,31 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_stdc=no + ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. @@ -5146,6 +5575,7 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include +#include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) @@ -5165,18 +5595,27 @@ for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + return 2; + return 0; } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -5189,12 +5628,14 @@ ( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF @@ -5203,8 +5644,8 @@ fi -echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 -echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6; } if test "${ac_cv_header_sys_wait_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5217,7 +5658,7 @@ #include #include #ifndef WEXITSTATUS -# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8) +# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8) #endif #ifndef WIFEXITED # define WIFEXITED(stat_val) (((stat_val) & 255) == 0) @@ -5234,38 +5675,34 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_sys_wait_h=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_sys_wait_h=no + ac_cv_header_sys_wait_h=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 +echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; } if test $ac_cv_header_sys_wait_h = yes; then cat >>confdefs.h <<\_ACEOF @@ -5274,8 +5711,8 @@ fi -echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 -echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 +echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; } if test "${ac_cv_header_time+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5299,38 +5736,34 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_header_time=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_time=no + ac_cv_header_time=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 -echo "${ECHO_T}$ac_cv_header_time" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 +echo "${ECHO_T}$ac_cv_header_time" >&6; } if test $ac_cv_header_time = yes; then cat >>confdefs.h <<\_ACEOF @@ -5353,9 +5786,9 @@ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -5369,38 +5802,35 @@ #include <$ac_header> _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_Header=no" + eval "$as_ac_Header=no" fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 @@ -5427,18 +5857,19 @@ do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } else # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -5449,41 +5880,37 @@ #include <$ac_header> _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_header_compiler=no + ac_header_compiler=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6; } # Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -5492,24 +5919,22 @@ /* end confdefs.h. */ #include <$ac_header> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null; then - if test -s conftest.err; then - ac_cpp_err=$ac_cxx_preproc_warn_flag - ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag - else - ac_cpp_err= - fi -else - ac_cpp_err=yes -fi -if test -z "$ac_cpp_err"; then + (exit $ac_status); } >/dev/null && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 @@ -5517,9 +5942,10 @@ ac_header_preproc=no fi + rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 +{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in @@ -5543,25 +5969,19 @@ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## --------------------------------- ## -## Report this to the NetMRG lists. ## -## --------------------------------- ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 + ;; esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } fi if test `eval echo '${'$as_ac_Header'}'` = yes; then @@ -5575,8 +5995,8 @@ ## Determine XML2 include path -echo "$as_me:$LINENO: checking for libxml/xmlmemory.h" >&5 -echo $ECHO_N "checking for libxml/xmlmemory.h... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for libxml/xmlmemory.h" >&5 +echo $ECHO_N "checking for libxml/xmlmemory.h... $ECHO_C" >&6; } # Can we include headers using system include dirs? cat >conftest.$ac_ext <<_ACEOF @@ -5595,36 +6015,32 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then XML2_INCLUDE=" " else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -XML2_INCLUDE= + XML2_INCLUDE= fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext # hunt through several directories trying to find the includes if test "x$XML2_INCLUDE" = "x"; then @@ -5647,36 +6063,32 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then XML2_INCLUDE="-I$i" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -XML2_INCLUDE= + XML2_INCLUDE= fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test "x$XML2_INCLUDE" != "x"; then break; fi @@ -5685,140 +6097,24 @@ fi if test "x$XML2_INCLUDE" = "x"; then - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } { { echo "$as_me:$LINENO: error: XML2 headers not found. Use --with-xml2-include-dir=" >&5 echo "$as_me: error: XML2 headers not found. Use --with-xml2-include-dir=" >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } ## Determine MySQL include path -echo "$as_me:$LINENO: checking for mysql/mysql.h" >&5 -echo $ECHO_N "checking for mysql/mysql.h... $ECHO_C" >&6 - -# Can we include headers using system include dirs? -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -int a = 1; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - MYSQL_INCLUDE=" " -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -MYSQL_INCLUDE= - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - -# hunt through several directories trying to find the includes -if test "x$MYSQL_INCLUDE" = "x"; then - old_CPPFLAGS="$CPPFLAGS" - for i in $mysql_include_dir /usr/include /usr/local/include /usr/local/mysql/include /usr/local/include/mysql ; do - CPPFLAGS="$old_CPPFLAGS -I$i" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -int a = 1; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - MYSQL_INCLUDE="-I$i" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -MYSQL_INCLUDE= - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - if test "x$MYSQL_INCLUDE" != "x"; then - break; - fi - done - CPPFLAGS="$old_CPPFLAGS $MYSQL_INCLUDE" -fi - -if test "x$MYSQL_INCLUDE" = "x"; then - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 - { { echo "$as_me:$LINENO: error: MySQL headers not found. Use --with-mysql-include-dir=" >&5 -echo "$as_me: error: MySQL headers not found. Use --with-mysql-include-dir=" >&2;} - { (exit 1); exit 1; }; } -fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +MYSQL_INCLUDE=$($MYSQL_CONFIG --cflags) +CPPFLAGS="$CPPFLAGS $MYSQL_INCLUDE" ### Checks for typedefs, structures, and compiler characteristics. #AC_CHECK_TYPES([long long]) -echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 +echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } if test "${ac_cv_c_const+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5836,10 +6132,10 @@ #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; - const charset x; + const charset cs; /* SunOS 4.1.1 cc rejects this. */ - char const *const *ccp; - char **p; + char const *const *pcpcc; + char **ppc; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; @@ -5848,16 +6144,17 @@ an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; - ccp = &g + (g ? g-g : 0); + pcpcc = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ - ++ccp; - p = (char**) ccp; - ccp = (char const *const *) p; + ++pcpcc; + ppc = (char**) pcpcc; + pcpcc = (char const *const *) ppc; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; + if (s) return 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; @@ -5876,7 +6173,9 @@ } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; + if (!foo) return 0; } + return !cs[0] && !zero.x; #endif ; @@ -5884,38 +6183,34 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_c_const=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_c_const=no + ac_cv_c_const=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 -echo "${ECHO_T}$ac_cv_c_const" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 +echo "${ECHO_T}$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then cat >>confdefs.h <<\_ACEOF @@ -5924,8 +6219,8 @@ fi -echo "$as_me:$LINENO: checking for size_t" >&5 -echo $ECHO_N "checking for size_t... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for size_t" >&5 +echo $ECHO_N "checking for size_t... $ECHO_C" >&6; } if test "${ac_cv_type_size_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5936,56 +6231,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default +typedef size_t ac__type_new_; int main () { -if ((size_t *) 0) +if ((ac__type_new_ *) 0) return 0; -if (sizeof (size_t)) +if (sizeof (ac__type_new_)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then ac_cv_type_size_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_size_t=no + ac_cv_type_size_t=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -echo "${ECHO_T}$ac_cv_type_size_t" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 +echo "${ECHO_T}$ac_cv_type_size_t" >&6; } if test $ac_cv_type_size_t = yes; then : else cat >>confdefs.h <<_ACEOF -#define size_t unsigned +#define size_t unsigned int _ACEOF fi @@ -5993,8 +6285,8 @@ ### Checks for library functions. -echo "$as_me:$LINENO: checking return type of signal handlers" >&5 -echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; } if test "${ac_cv_type_signal+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6006,64 +6298,52 @@ /* end confdefs.h. */ #include #include -#ifdef signal -# undef signal -#endif -#ifdef __cplusplus -extern "C" void (*signal (int, void (*)(int)))(int); -#else -void (*signal ()) (); -#endif int main () { -int i; +return *(signal (0, 0)) (0) == 1; ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_type_signal=void + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_type_signal=int else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_signal=int + ac_cv_type_signal=void fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 -echo "${ECHO_T}$ac_cv_type_signal" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +echo "${ECHO_T}$ac_cv_type_signal" >&6; } cat >>confdefs.h <<_ACEOF #define RETSIGTYPE $ac_cv_type_signal _ACEOF -echo "$as_me:$LINENO: checking for working memcmp" >&5 -echo $ECHO_N "checking for working memcmp... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for working memcmp" >&5 +echo $ECHO_N "checking for working memcmp... $ECHO_C" >&6; } if test "${ac_cv_func_memcmp_working+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6082,9 +6362,9 @@ { /* Some versions of memcmp are not 8-bit clean. */ - char c0 = 0x40, c1 = 0x80, c2 = 0x81; + char c0 = '\100', c1 = '\200', c2 = '\201'; if (memcmp(&c0, &c2, 1) >= 0 || memcmp(&c1, &c2, 1) >= 0) - exit (1); + return 1; /* The Next x86 OpenStep bug shows up only when comparing 16 bytes or more and with at least one buffer not starting on a 4-byte boundary. @@ -6100,9 +6380,9 @@ strcpy (a, "--------01111111"); strcpy (b, "--------10000000"); if (memcmp (a, b, 16) >= 0) - exit (1); + return 1; } - exit (0); + return 0; } ; @@ -6110,13 +6390,22 @@ } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -6129,22 +6418,22 @@ ( exit $ac_status ) ac_cv_func_memcmp_working=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + fi -echo "$as_me:$LINENO: result: $ac_cv_func_memcmp_working" >&5 -echo "${ECHO_T}$ac_cv_func_memcmp_working" >&6 -test $ac_cv_func_memcmp_working = no && case $LIBOBJS in - "memcmp.$ac_objext" | \ - *" memcmp.$ac_objext" | \ - "memcmp.$ac_objext "* | \ +{ echo "$as_me:$LINENO: result: $ac_cv_func_memcmp_working" >&5 +echo "${ECHO_T}$ac_cv_func_memcmp_working" >&6; } +test $ac_cv_func_memcmp_working = no && case " $LIBOBJS " in *" memcmp.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS memcmp.$ac_objext" ;; + *) LIBOBJS="$LIBOBJS memcmp.$ac_objext" + ;; esac -echo "$as_me:$LINENO: checking whether lstat dereferences a symlink specified with a trailing slash" >&5 -echo $ECHO_N "checking whether lstat dereferences a symlink specified with a trailing slash... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether lstat dereferences a symlink specified with a trailing slash" >&5 +echo $ECHO_N "checking whether lstat dereferences a symlink specified with a trailing slash... $ECHO_C" >&6; } if test "${ac_cv_func_lstat_dereferences_slashed_symlink+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6168,19 +6457,28 @@ /* Linux will dereference the symlink and fail. That is better in the sense that it means we will not have to compile and use the lstat wrapper. */ - exit (lstat ("conftest.sym/", &sbuf) ? 0 : 1); + return lstat ("conftest.sym/", &sbuf) == 0; ; return 0; } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -6193,8 +6491,10 @@ ( exit $ac_status ) ac_cv_func_lstat_dereferences_slashed_symlink=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + else # If the `ln -s' command failed, then we probably don't even # have an lstat function. @@ -6203,8 +6503,8 @@ rm -f conftest.sym conftest.file fi -echo "$as_me:$LINENO: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5 -echo "${ECHO_T}$ac_cv_func_lstat_dereferences_slashed_symlink" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5 +echo "${ECHO_T}$ac_cv_func_lstat_dereferences_slashed_symlink" >&6; } test $ac_cv_func_lstat_dereferences_slashed_symlink = yes && @@ -6214,18 +6514,16 @@ if test $ac_cv_func_lstat_dereferences_slashed_symlink = no; then - case $LIBOBJS in - "lstat.$ac_objext" | \ - *" lstat.$ac_objext" | \ - "lstat.$ac_objext "* | \ + case " $LIBOBJS " in *" lstat.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS lstat.$ac_objext" ;; + *) LIBOBJS="$LIBOBJS lstat.$ac_objext" + ;; esac fi -echo "$as_me:$LINENO: checking whether stat accepts an empty string" >&5 -echo $ECHO_N "checking whether stat accepts an empty string... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether stat accepts an empty string" >&5 +echo $ECHO_N "checking whether stat accepts an empty string... $ECHO_C" >&6; } if test "${ac_cv_func_stat_empty_string_bug+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6243,43 +6541,52 @@ main () { struct stat sbuf; - exit (stat ("", &sbuf) ? 1 : 0); + return stat ("", &sbuf) == 0; ; return 0; } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_func_stat_empty_string_bug=yes + ac_cv_func_stat_empty_string_bug=no else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) -ac_cv_func_stat_empty_string_bug=no +ac_cv_func_stat_empty_string_bug=yes fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + fi -echo "$as_me:$LINENO: result: $ac_cv_func_stat_empty_string_bug" >&5 -echo "${ECHO_T}$ac_cv_func_stat_empty_string_bug" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_func_stat_empty_string_bug" >&5 +echo "${ECHO_T}$ac_cv_func_stat_empty_string_bug" >&6; } if test $ac_cv_func_stat_empty_string_bug = yes; then - case $LIBOBJS in - "stat.$ac_objext" | \ - *" stat.$ac_objext" | \ - "stat.$ac_objext "* | \ + case " $LIBOBJS " in *" stat.$ac_objext "* ) ;; - *) LIBOBJS="$LIBOBJS stat.$ac_objext" ;; + *) LIBOBJS="$LIBOBJS stat.$ac_objext" + ;; esac @@ -6299,9 +6606,9 @@ do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -6327,68 +6634,60 @@ #undef $ac_func -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" -{ #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) +#if defined __stub_$ac_func || defined __stub___$ac_func choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} #endif int main () { -return f != $ac_func; +return $ac_func (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_var=no" + eval "$as_ac_var=no" fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 +ac_res=`eval echo '${'$as_ac_var'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 @@ -6397,13 +6696,12 @@ fi done -echo "$as_me:$LINENO: checking for library containing nanosleep" >&5 -echo $ECHO_N "checking for library containing nanosleep... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for library containing nanosleep" >&5 +echo $ECHO_N "checking for library containing nanosleep... $ECHO_C" >&6; } if test "${ac_cv_search_nanosleep+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS -ac_cv_search_nanosleep=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -6411,115 +6709,73 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char nanosleep (); int main () { -nanosleep (); +return nanosleep (); ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +for ac_lib in '' rt posix4; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_search_nanosleep="none required" + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + ac_cv_search_nanosleep=$ac_res else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -if test "$ac_cv_search_nanosleep" = no; then - for ac_lib in rt posix4; do - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char nanosleep (); -int -main () -{ -nanosleep (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_search_nanosleep="-l$ac_lib" -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +fi +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext + if test "${ac_cv_search_nanosleep+set}" = set; then + break fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext - done +done +if test "${ac_cv_search_nanosleep+set}" = set; then + : +else + ac_cv_search_nanosleep=no fi +rm conftest.$ac_ext LIBS=$ac_func_search_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_search_nanosleep" >&5 -echo "${ECHO_T}$ac_cv_search_nanosleep" >&6 -if test "$ac_cv_search_nanosleep" != no; then - test "$ac_cv_search_nanosleep" = "none required" || LIBS="$ac_cv_search_nanosleep $LIBS" +{ echo "$as_me:$LINENO: result: $ac_cv_search_nanosleep" >&5 +echo "${ECHO_T}$ac_cv_search_nanosleep" >&6; } +ac_res=$ac_cv_search_nanosleep +if test "$ac_res" != no; then + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" else { { echo "$as_me:$LINENO: error: nanosleep function not found." >&5 @@ -6549,12 +6805,12 @@ # Determine UCD or Net-SNMP library path if test "x$snmp_lib_dir" != "x"; then - test -f $snmp_lib_dir/libsnmp.a -o -f $snmp_lib_dir/libsnmp.so && SNMP_LIBDIR=$snmp_lib_dir - test -f $snmp_lib_dir/libnetsnmp.a -o -f $snmp_lib_dir/libnetsnmp.so && SNMP_LIBDIR=$snmp_lib_dir + test -f $snmp_lib_dir/libsnmp.a -o -f $snmp_lib_dir/libsnmp.so -o -f $snmp_lib_dir/libsnmp.dylib && SNMP_LIBDIR=$snmp_lib_dir + test -f $snmp_lib_dir/libnetsnmp.a -o -f $snmp_lib_dir/libnetsnmp.so -o -f $snmp_lib_dir/libnetsnmp.dylib && SNMP_LIBDIR=$snmp_lib_dir else - for i in /usr/local/lib /usr/lib /usr/sfw/lib; do - test -f $i/libsnmp.a -o -f $i/libsnmp.so && SNMP_LIBDIR=$i - test -f $i/libnetsnmp.a -o -f $i/libnetsnmp.so && SNMP_LIBDIR=$i + for i in /usr/local/lib /usr/sfw/lib /usr/lib /usr/lib64 ; do + test -f $i/libsnmp.a -o -f $i/libsnmp.so -o -f $i/libsnmp.dylib && SNMP_LIBDIR=$i + test -f $i/libnetsnmp.a -o -f $i/libnetsnmp.so -o -f $i/libnetsnmp.dylib && SNMP_LIBDIR=$i done fi @@ -6588,8 +6844,8 @@ # Net/UCD-SNMP includes v3 support and insists on crypto unless # compiled --without-openssl SNMP_SSL=no -echo "$as_me:$LINENO: checking if Net-SNMP needs crypto support" >&5 -echo $ECHO_N "checking if Net-SNMP needs crypto support... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if Net-SNMP needs crypto support" >&5 +echo $ECHO_N "checking if Net-SNMP needs crypto support... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -6606,40 +6862,36 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } SNMP_SSL=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: checking if UCD-SNMP needs crypto support" >&5 -echo $ECHO_N "checking if UCD-SNMP needs crypto support... $ECHO_C" >&6 + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: checking if UCD-SNMP needs crypto support" >&5 +echo $ECHO_N "checking if UCD-SNMP needs crypto support... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -6656,43 +6908,39 @@ } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } SNMP_SSL=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test "$SNMP_SSL" = "yes"; then -echo "$as_me:$LINENO: checking for CRYPTO_free in -lcrypto" >&5 -echo $ECHO_N "checking for CRYPTO_free in -lcrypto... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for CRYPTO_free in -lcrypto" >&5 +echo $ECHO_N "checking for CRYPTO_free in -lcrypto... $ECHO_C" >&6; } if test "${ac_cv_lib_crypto_CRYPTO_free+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6705,56 +6953,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char CRYPTO_free (); int main () { -CRYPTO_free (); +return CRYPTO_free (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_crypto_CRYPTO_free=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_crypto_CRYPTO_free=no + ac_cv_lib_crypto_CRYPTO_free=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_crypto_CRYPTO_free" >&5 -echo "${ECHO_T}$ac_cv_lib_crypto_CRYPTO_free" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_crypto_CRYPTO_free" >&5 +echo "${ECHO_T}$ac_cv_lib_crypto_CRYPTO_free" >&6; } if test $ac_cv_lib_crypto_CRYPTO_free = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBCRYPTO 1 @@ -6771,8 +7016,8 @@ fi HAVE_NET_SNMP=no -echo "$as_me:$LINENO: checking for snmp_timeout in -lnetsnmp" >&5 -echo $ECHO_N "checking for snmp_timeout in -lnetsnmp... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for snmp_timeout in -lnetsnmp" >&5 +echo $ECHO_N "checking for snmp_timeout in -lnetsnmp... $ECHO_C" >&6; } if test "${ac_cv_lib_netsnmp_snmp_timeout+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6785,56 +7030,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char snmp_timeout (); int main () { -snmp_timeout (); +return snmp_timeout (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_netsnmp_snmp_timeout=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_netsnmp_snmp_timeout=no + ac_cv_lib_netsnmp_snmp_timeout=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_netsnmp_snmp_timeout" >&5 -echo "${ECHO_T}$ac_cv_lib_netsnmp_snmp_timeout" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_netsnmp_snmp_timeout" >&5 +echo "${ECHO_T}$ac_cv_lib_netsnmp_snmp_timeout" >&6; } if test $ac_cv_lib_netsnmp_snmp_timeout = yes; then LIBS="-lnetsnmp $LIBS" @@ -6844,15 +7086,15 @@ HAVE_NET_SNMP=yes else - echo "$as_me:$LINENO: result: Cannot find Net-SNMP libraries...checking for UCD-SNMP" >&5 -echo "${ECHO_T}Cannot find Net-SNMP libraries...checking for UCD-SNMP" >&6 + { echo "$as_me:$LINENO: result: Cannot find Net-SNMP libraries...checking for UCD-SNMP" >&5 +echo "${ECHO_T}Cannot find Net-SNMP libraries...checking for UCD-SNMP" >&6; } fi if test "$HAVE_NET_SNMP" = "no"; then -echo "$as_me:$LINENO: checking for snmp_timeout in -lsnmp" >&5 -echo $ECHO_N "checking for snmp_timeout in -lsnmp... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for snmp_timeout in -lsnmp" >&5 +echo $ECHO_N "checking for snmp_timeout in -lsnmp... $ECHO_C" >&6; } if test "${ac_cv_lib_snmp_snmp_timeout+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6865,56 +7107,53 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char snmp_timeout (); int main () { -snmp_timeout (); +return snmp_timeout (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then ac_cv_lib_snmp_snmp_timeout=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_snmp_snmp_timeout=no + ac_cv_lib_snmp_snmp_timeout=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_snmp_snmp_timeout" >&5 -echo "${ECHO_T}$ac_cv_lib_snmp_snmp_timeout" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_snmp_snmp_timeout" >&5 +echo "${ECHO_T}$ac_cv_lib_snmp_snmp_timeout" >&6; } if test $ac_cv_lib_snmp_snmp_timeout = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSNMP 1 @@ -6932,30 +7171,17 @@ # Internationalization support - MKINSTALLDIRS= - if test -n "$ac_aux_dir"; then - case "$ac_aux_dir" in - /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; - *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; - esac - fi - if test -z "$MKINSTALLDIRS"; then - MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" - fi - - - - echo "$as_me:$LINENO: checking whether NLS is requested" >&5 -echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 - # Check whether --enable-nls or --disable-nls was given. + { echo "$as_me:$LINENO: checking whether NLS is requested" >&5 +echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6; } + # Check whether --enable-nls was given. if test "${enable_nls+set}" = set; then - enableval="$enable_nls" - USE_NLS=$enableval + enableval=$enable_nls; USE_NLS=$enableval else USE_NLS=yes -fi; - echo "$as_me:$LINENO: result: $USE_NLS" >&5 -echo "${ECHO_T}$USE_NLS" >&6 +fi + + { echo "$as_me:$LINENO: result: $USE_NLS" >&5 +echo "${ECHO_T}$USE_NLS" >&6; } @@ -6992,8 +7218,8 @@ # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7008,7 +7234,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --statistics /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" break 2 @@ -7023,17 +7250,17 @@ fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != ":"; then - echo "$as_me:$LINENO: result: $MSGFMT" >&5 -echo "${ECHO_T}$MSGFMT" >&6 + { echo "$as_me:$LINENO: result: $MSGFMT" >&5 +echo "${ECHO_T}$MSGFMT" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_GMSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7048,30 +7275,42 @@ IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT - if test -n "$GMSGFMT"; then - echo "$as_me:$LINENO: result: $GMSGFMT" >&5 -echo "${ECHO_T}$GMSGFMT" >&6 + { echo "$as_me:$LINENO: result: $GMSGFMT" >&5 +echo "${ECHO_T}$GMSGFMT" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; + *) MSGFMT_015=$MSGFMT ;; + esac + + case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; + *) GMSGFMT_015=$GMSGFMT ;; + esac + + + # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then @@ -7102,8 +7341,8 @@ # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7118,7 +7357,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" break 2 @@ -7133,15 +7373,21 @@ fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then - echo "$as_me:$LINENO: result: $XGETTEXT" >&5 -echo "${ECHO_T}$XGETTEXT" >&6 + { echo "$as_me:$LINENO: result: $XGETTEXT" >&5 +echo "${ECHO_T}$XGETTEXT" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi rm -f messages.po + case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; + *) XGETTEXT_015=$XGETTEXT ;; + esac + + # Prepare PATH_SEPARATOR. # The user is always right. @@ -7173,8 +7419,8 @@ # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_path_MSGMERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7189,7 +7435,8 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then - if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 2>&1; then ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" break 2 fi @@ -7203,39 +7450,18 @@ fi MSGMERGE="$ac_cv_path_MSGMERGE" if test "$MSGMERGE" != ":"; then - echo "$as_me:$LINENO: result: $MSGMERGE" >&5 -echo "${ECHO_T}$MSGMERGE" >&6 + { echo "$as_me:$LINENO: result: $MSGMERGE" >&5 +echo "${ECHO_T}$MSGMERGE" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - if test "$GMSGFMT" != ":"; then - if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && - (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - : ; - else - GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` - echo "$as_me:$LINENO: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5 -echo "${ECHO_T}found $GMSGFMT program is not GNU msgfmt; ignore it" >&6 - GMSGFMT=":" - fi - fi + test -n "$localedir" || localedir='${datadir}/locale' - if test "$XGETTEXT" != ":"; then - if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && - (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - : ; - else - echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5 -echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6 - XGETTEXT=":" - fi - rm -f messages.po - fi - ac_config_commands="$ac_config_commands default-1" + ac_config_commands="$ac_config_commands po-directories" @@ -7255,13 +7481,13 @@ prefix="$acl_save_prefix" -# Check whether --with-gnu-ld or --without-gnu-ld was given. +# Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no -fi; +fi + # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then @@ -7278,8 +7504,8 @@ ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for ld used by GCC" >&5 +echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -7308,11 +7534,11 @@ ;; esac elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for GNU ld" >&5 +echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6; } else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for non-GNU ld" >&5 +echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; } fi if test "${acl_cv_path_LD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -7342,17 +7568,17 @@ LD="$acl_cv_path_LD" if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 + { echo "$as_me:$LINENO: result: $LD" >&5 +echo "${ECHO_T}$LD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 +echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6; } if test "${acl_cv_prog_gnu_ld+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7364,14 +7590,15 @@ acl_cv_prog_gnu_ld=no ;; esac fi -echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6 +{ echo "$as_me:$LINENO: result: $acl_cv_prog_gnu_ld" >&5 +echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6; } with_gnu_ld=$acl_cv_prog_gnu_ld - echo "$as_me:$LINENO: checking for shared library run path origin" >&5 -echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6 + + { echo "$as_me:$LINENO: checking for shared library run path origin" >&5 +echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6; } if test "${acl_cv_rpath+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7383,8 +7610,8 @@ acl_cv_rpath=done fi -echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 -echo "${ECHO_T}$acl_cv_rpath" >&6 +{ echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 +echo "${ECHO_T}$acl_cv_rpath" >&6; } wl="$acl_cv_wl" libext="$acl_cv_libext" shlibext="$acl_cv_shlibext" @@ -7392,13 +7619,33 @@ hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" hardcode_direct="$acl_cv_hardcode_direct" hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath or --disable-rpath was given. + # Check whether --enable-rpath was given. if test "${enable_rpath+set}" = set; then - enableval="$enable_rpath" - : + enableval=$enable_rpath; : else enable_rpath=yes -fi; +fi + + + + acl_libdirstem=lib + searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib64 ) acl_libdirstem=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + fi + @@ -7420,10 +7667,9 @@ prefix="$acl_save_prefix" -# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given. +# Check whether --with-libiconv-prefix was given. if test "${with_libiconv_prefix+set}" = set; then - withval="$with_libiconv_prefix" - + withval=$with_libiconv_prefix; if test "X$withval" = "Xno"; then use_additional=no else @@ -7442,11 +7688,12 @@ else additional_includedir="$withval/include" - additional_libdir="$withval/lib" + additional_libdir="$withval/$acl_libdirstem" fi fi -fi; +fi + LIBICONV= LTLIBICONV= INCICONV= @@ -7484,9 +7731,16 @@ found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$additional_libdir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$additional_libdir/lib$name.dll.a"; }; }; then found_dir="$additional_libdir" + if test -f "$additional_libdir/lib$name.$shlibext"; then found_so="$additional_libdir/lib$name.$shlibext" + else + found_so="$additional_libdir/lib$name.dll.a" + fi if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi @@ -7514,9 +7768,16 @@ case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$dir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$dir/lib$name.dll.a"; }; }; then found_dir="$dir" + if test -f "$dir/lib$name.$shlibext"; then found_so="$dir/lib$name.$shlibext" + else + found_so="$dir/lib$name.dll.a" + fi if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi @@ -7539,7 +7800,7 @@ if test "X$found_dir" != "X"; then LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else haveit= @@ -7604,8 +7865,8 @@ fi additional_includedir= case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` additional_includedir="$basedir/include" ;; esac @@ -7615,7 +7876,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -7654,12 +7915,12 @@ case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/lib"; then + if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -7799,17 +8060,141 @@ - echo "$as_me:$LINENO: checking whether NLS is requested" >&5 -echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 - # Check whether --enable-nls or --disable-nls was given. -if test "${enable_nls+set}" = set; then - enableval="$enable_nls" - USE_NLS=$enableval + + + + + + + + { echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5 +echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6; } +if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else - USE_NLS=yes -fi; - echo "$as_me:$LINENO: result: $USE_NLS" >&5 -echo "${ECHO_T}$USE_NLS" >&6 + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +CFPreferencesCopyAppValue(NULL, NULL) + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + gt_cv_func_CFPreferencesCopyAppValue=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_func_CFPreferencesCopyAppValue=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$gt_save_LIBS" +fi +{ echo "$as_me:$LINENO: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 +echo "${ECHO_T}$gt_cv_func_CFPreferencesCopyAppValue" >&6; } + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +_ACEOF + + fi + { echo "$as_me:$LINENO: checking for CFLocaleCopyCurrent" >&5 +echo $ECHO_N "checking for CFLocaleCopyCurrent... $ECHO_C" >&6; } +if test "${gt_cv_func_CFLocaleCopyCurrent+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include +int +main () +{ +CFLocaleCopyCurrent(); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + gt_cv_func_CFLocaleCopyCurrent=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + gt_cv_func_CFLocaleCopyCurrent=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$gt_save_LIBS" +fi +{ echo "$as_me:$LINENO: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 +echo "${ECHO_T}$gt_cv_func_CFLocaleCopyCurrent" >&6; } + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_CFLOCALECOPYCURRENT 1 +_ACEOF + + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi + + @@ -7818,17 +8203,37 @@ LTLIBINTL= POSUB= + case " $gt_needs " in + *" need-formatstring-macros "*) gt_api_version=3 ;; + *" need-ngettext "*) gt_api_version=2 ;; + *) gt_api_version=1 ;; + esac + gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" + gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" + if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no + if test $gt_api_version -ge 3; then + gt_revision_test_code=' +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) +#endif +typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; +' + else + gt_revision_test_code= + fi + if test $gt_api_version -ge 2; then + gt_expression_test_code=' + * ngettext ("", "", 0)' + else + gt_expression_test_code= + fi - - - - echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 -echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6 -if test "${gt_cv_func_gnugettext1_libc+set}" = set; then + { echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 +echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6; } +if { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -7838,53 +8243,52 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include +$gt_revision_test_code extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings; int main () { bindtextdomain ("", ""); -return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_func_gnugettext1_libc=yes + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + eval "$gt_func_gnugettext_libc=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -gt_cv_func_gnugettext1_libc=no + eval "$gt_func_gnugettext_libc=no" fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5 -echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6 +ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } - if test "$gt_cv_func_gnugettext1_libc" != "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then @@ -7915,8 +8319,8 @@ done - echo "$as_me:$LINENO: checking for iconv" >&5 -echo $ECHO_N "checking for iconv... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for iconv" >&5 +echo $ECHO_N "checking for iconv... $ECHO_C" >&6; } if test "${am_cv_func_iconv+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -7942,34 +8346,32 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then am_cv_func_iconv=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" @@ -7993,42 +8395,40 @@ } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then am_cv_lib_iconv=yes am_cv_func_iconv=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext LIBS="$am_save_LIBS" fi fi -echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 -echo "${ECHO_T}$am_cv_func_iconv" >&6 +{ echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 +echo "${ECHO_T}$am_cv_func_iconv" >&6; } if test "$am_cv_func_iconv" = yes; then cat >>confdefs.h <<\_ACEOF @@ -8037,10 +8437,10 @@ fi if test "$am_cv_lib_iconv" = yes; then - echo "$as_me:$LINENO: checking how to link with libiconv" >&5 -echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $LIBICONV" >&5 -echo "${ECHO_T}$LIBICONV" >&6 + { echo "$as_me:$LINENO: checking how to link with libiconv" >&5 +echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6; } + { echo "$as_me:$LINENO: result: $LIBICONV" >&5 +echo "${ECHO_T}$LIBICONV" >&6; } else CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= @@ -8052,6 +8452,7 @@ + use_additional=yes acl_save_prefix="$prefix" @@ -8066,10 +8467,9 @@ prefix="$acl_save_prefix" -# Check whether --with-libintl-prefix or --without-libintl-prefix was given. +# Check whether --with-libintl-prefix was given. if test "${with_libintl_prefix+set}" = set; then - withval="$with_libintl_prefix" - + withval=$with_libintl_prefix; if test "X$withval" = "Xno"; then use_additional=no else @@ -8088,11 +8488,12 @@ else additional_includedir="$withval/include" - additional_libdir="$withval/lib" + additional_libdir="$withval/$acl_libdirstem" fi fi -fi; +fi + LIBINTL= LTLIBINTL= INCINTL= @@ -8130,9 +8531,16 @@ found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$additional_libdir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$additional_libdir/lib$name.dll.a"; }; }; then found_dir="$additional_libdir" + if test -f "$additional_libdir/lib$name.$shlibext"; then found_so="$additional_libdir/lib$name.$shlibext" + else + found_so="$additional_libdir/lib$name.dll.a" + fi if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi @@ -8160,9 +8568,16 @@ case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$dir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$dir/lib$name.dll.a"; }; }; then found_dir="$dir" + if test -f "$dir/lib$name.$shlibext"; then found_so="$dir/lib$name.$shlibext" + else + found_so="$dir/lib$name.dll.a" + fi if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi @@ -8185,7 +8600,7 @@ if test "X$found_dir" != "X"; then LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else haveit= @@ -8250,8 +8665,8 @@ fi additional_includedir= case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` additional_includedir="$basedir/include" ;; esac @@ -8261,7 +8676,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -8300,12 +8715,12 @@ case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/lib"; then + if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -8428,9 +8843,9 @@ done fi - echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 -echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6 -if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then + { echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 +echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6; } +if { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else gt_save_CPPFLAGS="$CPPFLAGS" @@ -8444,53 +8859,51 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include +$gt_revision_test_code extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias (); +const char *_nl_expand_alias (const char *); int main () { bindtextdomain ("", ""); -return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0) +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - gt_cv_func_gnugettext1_libintl=yes + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then + eval "$gt_func_gnugettext_libintl=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -gt_cv_func_gnugettext1_libintl=no + eval "$gt_func_gnugettext_libintl=no" fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -8499,64 +8912,64 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include +$gt_revision_test_code extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias (); +const char *_nl_expand_alias (const char *); int main () { bindtextdomain ("", ""); -return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0) +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + (exit $ac_status); } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" - gt_cv_func_gnugettext1_libintl=yes + eval "$gt_func_gnugettext_libintl=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS" fi -echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5 -echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6 +ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } fi - if test "$gt_cv_func_gnugettext1_libc" = "yes" \ - || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \ + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes @@ -8568,6 +8981,14 @@ + if test -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + fi + if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then @@ -8580,15 +9001,15 @@ fi fi - echo "$as_me:$LINENO: checking whether to use NLS" >&5 -echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $USE_NLS" >&5 -echo "${ECHO_T}$USE_NLS" >&6 + { echo "$as_me:$LINENO: checking whether to use NLS" >&5 +echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6; } + { echo "$as_me:$LINENO: result: $USE_NLS" >&5 +echo "${ECHO_T}$USE_NLS" >&6; } if test "$USE_NLS" = "yes"; then - echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 -echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 +echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; } if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then gt_source="external libintl" else gt_source="libc" @@ -8596,18 +9017,18 @@ else gt_source="included intl directory" fi - echo "$as_me:$LINENO: result: $gt_source" >&5 -echo "${ECHO_T}$gt_source" >&6 + { echo "$as_me:$LINENO: result: $gt_source" >&5 +echo "${ECHO_T}$gt_source" >&6; } fi if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then - echo "$as_me:$LINENO: checking how to link with libintl" >&5 -echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6 - echo "$as_me:$LINENO: result: $LIBINTL" >&5 -echo "${ECHO_T}$LIBINTL" >&6 + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then + { echo "$as_me:$LINENO: checking how to link with libintl" >&5 +echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6; } + { echo "$as_me:$LINENO: result: $LIBINTL" >&5 +echo "${ECHO_T}$LIBINTL" >&6; } for element in $INCINTL; do haveit= @@ -8663,7 +9084,7 @@ # #AC_CONFIG_SUBDIRS(src) - ac_config_files="$ac_config_files Makefile subst bin/rrdedit etc/Makefile etc/cron.d-netmrg etc/init.d-netmrg etc/netmrg.conf etc/netmrg.xml m4/Makefile po/Makefile.in src/Makefile src/include/netmrg.h var/Makefile var/lib/Makefile var/lib/rrd/Makefile www/Makefile www/include/config.php" +ac_config_files="$ac_config_files Makefile subst bin/rrdedit etc/Makefile etc/cron.d-netmrg etc/init.d-netmrg etc/netmrg.conf etc/netmrg.xml m4/Makefile po/Makefile.in src/Makefile src/include/netmrg.h var/Makefile var/lib/Makefile var/lib/rrd/Makefile www/Makefile www/include/config.php" cat >confcache <<\_ACEOF @@ -8684,39 +9105,58 @@ # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. +# So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. -{ +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; + ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} | + esac | + sort +) | sed ' + /^ac_cv_env_/b end t clear - : clear + :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + test "x$cache_file" != "x/dev/null" && + { echo "$as_me:$LINENO: updating cache $cache_file" >&5 +echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else - echo "not updating unwritable cache $cache_file" + { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 +echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache @@ -8725,32 +9165,18 @@ # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -8802,17 +9228,45 @@ ## M4sh Initialization. ## ## --------------------- ## -# Be Bourne compatible +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in + *posix*) set -o posix ;; +esac + +fi + + + + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh fi -DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then @@ -8822,8 +9276,43 @@ fi +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + # Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done PS1='$ ' PS2='> ' PS4='+ ' @@ -8837,18 +9326,19 @@ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else - $as_unset $as_var + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false @@ -8856,159 +9346,120 @@ # Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi +# CDPATH. +$as_unset CDPATH - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop - s,-$,, - s,^['$as_cr_digits']*\n,, + s/-\n.*// ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensible to this). - . ./$as_me.lineno + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" # Exit status is that of the last command. exit } -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links - as_ln_s='cp -p' - else as_ln_s='ln -s' - fi + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -p'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -p' elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p=: @@ -9017,7 +9468,28 @@ as_mkdir_p=false fi -as_executable_p="test -f" +if test -x / >/dev/null 2>&1; then + as_test_x='test -x' +else + if ls -dL / >/dev/null 2>&1; then + as_ls_L_option=L + else + as_ls_L_option= + fi + as_test_x=' + eval sh -c '\'' + if test -d "$1"; then + test -d "$1/."; + else + case $1 in + -*)set "./$1";; + esac; + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + ???[sx]*):;;*)false;;esac;fi + '\'' sh + ' +fi +as_executable_p=$as_test_x # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" @@ -9026,31 +9498,14 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - exec 6>&1 -# Open the log real soon, to keep \$[0] and so on meaningful, and to +# Save the log message, to keep $[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - -This file was extended by NetMRG $as_me 0.19, which was -generated by GNU Autoconf 2.59. Invocation command line was +# values after options handling. +ac_log=" +This file was extended by NetMRG $as_me 0.20, which was +generated by GNU Autoconf 2.61. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -9058,30 +9513,20 @@ CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + _ACEOF +cat >>$CONFIG_STATUS <<_ACEOF # Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi +_ACEOF cat >>$CONFIG_STATUS <<\_ACEOF - ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. @@ -9089,7 +9534,7 @@ Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit - -V, --version print version number, then exit + -V, --version print version number and configuration settings, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions @@ -9108,19 +9553,22 @@ $config_commands Report bugs to ." -_ACEOF +_ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ -NetMRG config.status 0.19 -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" +NetMRG config.status 0.20 +configured by $0, generated by GNU Autoconf 2.61, + with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 2006 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -INSTALL="$INSTALL" + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF @@ -9131,39 +9579,24 @@ do case $1 in --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; - -*) + *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; esac case $ac_option in # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift @@ -9173,18 +9606,24 @@ $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + { echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} + -*) { echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; - *) ac_config_targets="$ac_config_targets $1" ;; + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; esac shift @@ -9200,21 +9639,32 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + CONFIG_SHELL=$SHELL + export CONFIG_SHELL + exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF - +cat >>$CONFIG_STATUS <<\_ACEOF +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + echo "$ac_log" +} >&5 + +_ACEOF cat >>$CONFIG_STATUS <<_ACEOF # -# INIT-COMMANDS section. +# INIT-COMMANDS # - AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake. + # from automake < 1.5. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" @@ -9222,39 +9672,40 @@ _ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF + +# Handling of arguments. for ac_config_target in $ac_config_targets do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "subst" ) CONFIG_FILES="$CONFIG_FILES subst" ;; - "bin/rrdedit" ) CONFIG_FILES="$CONFIG_FILES bin/rrdedit" ;; - "etc/Makefile" ) CONFIG_FILES="$CONFIG_FILES etc/Makefile" ;; - "etc/cron.d-netmrg" ) CONFIG_FILES="$CONFIG_FILES etc/cron.d-netmrg" ;; - "etc/init.d-netmrg" ) CONFIG_FILES="$CONFIG_FILES etc/init.d-netmrg" ;; - "etc/netmrg.conf" ) CONFIG_FILES="$CONFIG_FILES etc/netmrg.conf" ;; - "etc/netmrg.xml" ) CONFIG_FILES="$CONFIG_FILES etc/netmrg.xml" ;; - "m4/Makefile" ) CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; - "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; - "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; - "src/include/netmrg.h" ) CONFIG_FILES="$CONFIG_FILES src/include/netmrg.h" ;; - "var/Makefile" ) CONFIG_FILES="$CONFIG_FILES var/Makefile" ;; - "var/lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES var/lib/Makefile" ;; - "var/lib/rrd/Makefile" ) CONFIG_FILES="$CONFIG_FILES var/lib/rrd/Makefile" ;; - "www/Makefile" ) CONFIG_FILES="$CONFIG_FILES www/Makefile" ;; - "www/include/config.php" ) CONFIG_FILES="$CONFIG_FILES www/include/config.php" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; - "src/include/config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS src/include/config.h" ;; + case $ac_config_target in + "src/include/config.h") CONFIG_HEADERS="$CONFIG_HEADERS src/include/config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "subst") CONFIG_FILES="$CONFIG_FILES subst" ;; + "bin/rrdedit") CONFIG_FILES="$CONFIG_FILES bin/rrdedit" ;; + "etc/Makefile") CONFIG_FILES="$CONFIG_FILES etc/Makefile" ;; + "etc/cron.d-netmrg") CONFIG_FILES="$CONFIG_FILES etc/cron.d-netmrg" ;; + "etc/init.d-netmrg") CONFIG_FILES="$CONFIG_FILES etc/init.d-netmrg" ;; + "etc/netmrg.conf") CONFIG_FILES="$CONFIG_FILES etc/netmrg.conf" ;; + "etc/netmrg.xml") CONFIG_FILES="$CONFIG_FILES etc/netmrg.xml" ;; + "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;; + "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "src/include/netmrg.h") CONFIG_FILES="$CONFIG_FILES src/include/netmrg.h" ;; + "var/Makefile") CONFIG_FILES="$CONFIG_FILES var/Makefile" ;; + "var/lib/Makefile") CONFIG_FILES="$CONFIG_FILES var/lib/Makefile" ;; + "var/lib/rrd/Makefile") CONFIG_FILES="$CONFIG_FILES var/lib/rrd/Makefile" ;; + "www/Makefile") CONFIG_FILES="$CONFIG_FILES www/Makefile" ;; + "www/include/config.php") CONFIG_FILES="$CONFIG_FILES www/include/config.php" ;; + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done + # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely @@ -9266,355 +9717,473 @@ fi # Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, +# simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. $debug || { - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } - # Create a (secure) tmp directory for tmp files. { - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - # -# CONFIG_FILES section. +# Set up the sed scripts for CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CYGPATH_W@,$CYGPATH_W,;t t -s,@PACKAGE@,$PACKAGE,;t t -s,@VERSION@,$VERSION,;t t -s,@ACLOCAL@,$ACLOCAL,;t t -s,@AUTOCONF@,$AUTOCONF,;t t -s,@AUTOMAKE@,$AUTOMAKE,;t t -s,@AUTOHEADER@,$AUTOHEADER,;t t -s,@MAKEINFO@,$MAKEINFO,;t t -s,@install_sh@,$install_sh,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t -s,@mkdir_p@,$mkdir_p,;t t -s,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@am__leading_dot@,$am__leading_dot,;t t -s,@AMTAR@,$AMTAR,;t t -s,@am__tar@,$am__tar,;t t -s,@am__untar@,$am__untar,;t t -s,@RRDTOOL@,$RRDTOOL,;t t -s,@WWWDIR@,$WWWDIR,;t t -s,@CXX@,$CXX,;t t -s,@CXXFLAGS@,$CXXFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CXX@,$ac_ct_CXX,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@DEPDIR@,$DEPDIR,;t t -s,@am__include@,$am__include,;t t -s,@am__quote@,$am__quote,;t t -s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t -s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t -s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t -s,@CXXDEPMODE@,$CXXDEPMODE,;t t -s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t -s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@CCDEPMODE@,$CCDEPMODE,;t t -s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t -s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t -s,@CPP@,$CPP,;t t -s,@CXXCPP@,$CXXCPP,;t t -s,@EGREP@,$EGREP,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t -s,@USE_NLS@,$USE_NLS,;t t -s,@MSGFMT@,$MSGFMT,;t t -s,@GMSGFMT@,$GMSGFMT,;t t -s,@XGETTEXT@,$XGETTEXT,;t t -s,@MSGMERGE@,$MSGMERGE,;t t -s,@LIBICONV@,$LIBICONV,;t t -s,@LTLIBICONV@,$LTLIBICONV,;t t -s,@INTLLIBS@,$INTLLIBS,;t t -s,@LIBINTL@,$LIBINTL,;t t -s,@LTLIBINTL@,$LTLIBINTL,;t t -s,@POSUB@,$POSUB,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` +if test -n "$CONFIG_FILES"; then + +_ACEOF + + + +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +SHELL!$SHELL$ac_delim +PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim +PACKAGE_NAME!$PACKAGE_NAME$ac_delim +PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim +PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim +PACKAGE_STRING!$PACKAGE_STRING$ac_delim +PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim +exec_prefix!$exec_prefix$ac_delim +prefix!$prefix$ac_delim +program_transform_name!$program_transform_name$ac_delim +bindir!$bindir$ac_delim +sbindir!$sbindir$ac_delim +libexecdir!$libexecdir$ac_delim +datarootdir!$datarootdir$ac_delim +datadir!$datadir$ac_delim +sysconfdir!$sysconfdir$ac_delim +sharedstatedir!$sharedstatedir$ac_delim +localstatedir!$localstatedir$ac_delim +includedir!$includedir$ac_delim +oldincludedir!$oldincludedir$ac_delim +docdir!$docdir$ac_delim +infodir!$infodir$ac_delim +htmldir!$htmldir$ac_delim +dvidir!$dvidir$ac_delim +pdfdir!$pdfdir$ac_delim +psdir!$psdir$ac_delim +libdir!$libdir$ac_delim +localedir!$localedir$ac_delim +mandir!$mandir$ac_delim +DEFS!$DEFS$ac_delim +ECHO_C!$ECHO_C$ac_delim +ECHO_N!$ECHO_N$ac_delim +ECHO_T!$ECHO_T$ac_delim +LIBS!$LIBS$ac_delim +build_alias!$build_alias$ac_delim +host_alias!$host_alias$ac_delim +target_alias!$target_alias$ac_delim +build!$build$ac_delim +build_cpu!$build_cpu$ac_delim +build_vendor!$build_vendor$ac_delim +build_os!$build_os$ac_delim +host!$host$ac_delim +host_cpu!$host_cpu$ac_delim +host_vendor!$host_vendor$ac_delim +host_os!$host_os$ac_delim +INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim +INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim +INSTALL_DATA!$INSTALL_DATA$ac_delim +am__isrc!$am__isrc$ac_delim +CYGPATH_W!$CYGPATH_W$ac_delim +PACKAGE!$PACKAGE$ac_delim +VERSION!$VERSION$ac_delim +ACLOCAL!$ACLOCAL$ac_delim +AUTOCONF!$AUTOCONF$ac_delim +AUTOMAKE!$AUTOMAKE$ac_delim +AUTOHEADER!$AUTOHEADER$ac_delim +MAKEINFO!$MAKEINFO$ac_delim +install_sh!$install_sh$ac_delim +STRIP!$STRIP$ac_delim +INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim +mkdir_p!$mkdir_p$ac_delim +AWK!$AWK$ac_delim +SET_MAKE!$SET_MAKE$ac_delim +am__leading_dot!$am__leading_dot$ac_delim +AMTAR!$AMTAR$ac_delim +am__tar!$am__tar$ac_delim +am__untar!$am__untar$ac_delim +RRDTOOL!$RRDTOOL$ac_delim +MYSQL_CONFIG!$MYSQL_CONFIG$ac_delim +WWWDIR!$WWWDIR$ac_delim +CXX!$CXX$ac_delim +CXXFLAGS!$CXXFLAGS$ac_delim +LDFLAGS!$LDFLAGS$ac_delim +CPPFLAGS!$CPPFLAGS$ac_delim +ac_ct_CXX!$ac_ct_CXX$ac_delim +EXEEXT!$EXEEXT$ac_delim +OBJEXT!$OBJEXT$ac_delim +DEPDIR!$DEPDIR$ac_delim +am__include!$am__include$ac_delim +am__quote!$am__quote$ac_delim +AMDEP_TRUE!$AMDEP_TRUE$ac_delim +AMDEP_FALSE!$AMDEP_FALSE$ac_delim +AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim +CXXDEPMODE!$CXXDEPMODE$ac_delim +am__fastdepCXX_TRUE!$am__fastdepCXX_TRUE$ac_delim +am__fastdepCXX_FALSE!$am__fastdepCXX_FALSE$ac_delim +CC!$CC$ac_delim +CFLAGS!$CFLAGS$ac_delim +ac_ct_CC!$ac_ct_CC$ac_delim +CCDEPMODE!$CCDEPMODE$ac_delim +am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim +am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim +CPP!$CPP$ac_delim +CXXCPP!$CXXCPP$ac_delim +GREP!$GREP$ac_delim +EGREP!$EGREP$ac_delim +LIBOBJS!$LIBOBJS$ac_delim +_ACEOF + + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat +done + +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi + +cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF +CEOF$ac_eof +_ACEOF + + +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +USE_NLS!$USE_NLS$ac_delim +MSGFMT!$MSGFMT$ac_delim +GMSGFMT!$GMSGFMT$ac_delim +MSGFMT_015!$MSGFMT_015$ac_delim +GMSGFMT_015!$GMSGFMT_015$ac_delim +XGETTEXT!$XGETTEXT$ac_delim +XGETTEXT_015!$XGETTEXT_015$ac_delim +MSGMERGE!$MSGMERGE$ac_delim +INTL_MACOSX_LIBS!$INTL_MACOSX_LIBS$ac_delim +LIBICONV!$LIBICONV$ac_delim +LTLIBICONV!$LTLIBICONV$ac_delim +INTLLIBS!$INTLLIBS$ac_delim +LIBINTL!$LIBINTL$ac_delim +LTLIBINTL!$LTLIBINTL$ac_delim +POSUB!$POSUB$ac_delim +LTLIBOBJS!$LTLIBOBJS$ac_delim +_ACEOF + + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 16; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi -fi # test -n "$CONFIG_FILES" +done + +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi +cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end +_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF +:end +s/|#_!!_#|//g +CEOF$ac_eof _ACEOF + + +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +}' +fi + cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; +fi # test -n "$CONFIG_FILES" + + +for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +echo "$as_me: error: Invalid tag $ac_tag." >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; esac - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || + ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` + test -d "$as_dir" && break done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } - ac_builddir=. -if test "$ac_dir" != .; then +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + case $ac_mode in + :F) + # + # CONFIG_FILE + # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; esac - done` || { (exit 1); exit 1; } _ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= + +case `sed -n '/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p +' $ac_file_inputs` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub @@ -9622,248 +10191,131 @@ cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' +s&@configure_input@&$configure_input&;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&5 +echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&2;} -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + rm -f "$tmp/stdin" case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; + -) cat "$tmp/out"; rm -f "$tmp/out";; + *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; esac - - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - + ;; + :H) + # + # CONFIG_HEADER + # _ACEOF -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed +# Transform confdefs.h into a sed script `conftest.defines', that +# substitutes the proper values into config.h.in to produce config.h. +rm -f conftest.defines conftest.tail +# First, append a space to every undef/define line, to ease matching. +echo 's/$/ /' >conftest.defines +# Then, protect against being on the right side of a sed subst, or in +# an unquoted here document, in config.status. If some macros were +# called several times there might be several #defines for the same +# symbol, which is useless. But do not sort them, since the last +# AC_DEFINE must be honored. +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where +# NAME is the cpp macro being defined, VALUE is the value it is being given. +# PARAMS is the parameter list in the macro definition--in most cases, it's +# just an empty string. +ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' +ac_dB='\\)[ (].*,\\1define\\2' +ac_dC=' ' +ac_dD=' ,' + +uniq confdefs.h | + sed -n ' + t rset + :rset + s/^[ ]*#[ ]*define[ ][ ]*// + t ok + d + :ok + s/[\\&,]/\\&/g + s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p + s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p + ' >>conftest.defines -# This sed command replaces #undef with comments. This is necessary, for +# Remove the space that was appended to ease matching. +# Then replace #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, +# (The regexp can be short, since the line contains either #define or #undef.) +echo 's/ $// +s,^[ #]*u.*,/* & */,' >>conftest.defines + +# Break up conftest.defines: +ac_max_sed_lines=50 + +# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" +# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" +# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" +# et cetera. +ac_in='$ac_file_inputs' +ac_out='"$tmp/out1"' +ac_nxt='"$tmp/out2"' + +while : +do + # Write a here document: + cat >>$CONFIG_STATUS <<_ACEOF + # First, check the format of the line: + cat >"\$tmp/defines.sed" <<\\CEOF +/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def +/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def +b +:def _ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null -do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS + sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail + sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS + ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in + sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail + grep . conftest.tail >/dev/null || break rm -f conftest.defines mv conftest.tail conftest.defines done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs +rm -f conftest.defines conftest.tail +echo "ac_result=$ac_in" >>$CONFIG_STATUS cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then + echo "/* $configure_input */" >"$tmp/config.h" + cat "$ac_result" >>"$tmp/config.h" + if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - rm -f $ac_file - mv $tmp/config.h $ac_file + mv "$tmp/config.h" $ac_file fi else - cat $tmp/config.h - rm -f $tmp/config.h + echo "/* $configure_input */" + cat "$ac_result" fi + rm -f "$tmp/out12" # Compute $ac_file's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do @@ -9874,135 +10326,39 @@ _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || +echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || $as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X$ac_file : 'X\(//\)[^/]' \| \ X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X$ac_file : 'X\(/\)' \| . 2>/dev/null || echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'`/stamp-h$_am_stamp_count -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac + ;; -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 +echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. @@ -10010,19 +10366,31 @@ # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. - # So let's grep whole file. - if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed 10q "$mf" | grep '^#.*generated by automake' > /dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$mf" : 'X\(/\)' \| . 2>/dev/null || echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` else continue @@ -10045,49 +10413,76 @@ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || + fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$file" : 'X\(/\)' \| . 2>/dev/null || echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir + { as_dir=$dirpart/$fdir + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } s/.*/./; q'` + test -d "$as_dir" && break done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; - default-1 ) + "po-directories":C) for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in @@ -10107,6 +10502,9 @@ /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" @@ -10120,12 +10518,13 @@ if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assigment from automake. + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` + # Hide the ALL_LINGUAS assigment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. + # Hide the ALL_LINGUAS assigment from automake < 1.5. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES @@ -10196,11 +10595,10 @@ ;; esac done ;; + esac -done -_ACEOF +done # for ac_tag -cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF diff -Nurb netmrg-0.19/configure.ac netmrg-0.20/configure.ac --- netmrg-0.19/configure.ac 2006-01-10 06:28:13.000000000 +0530 +++ netmrg-0.20/configure.ac 2008-03-27 06:25:37.000000000 +0530 @@ -19,8 +19,8 @@ ############################################################# AC_PREREQ(2.53) -AC_INIT(NetMRG,0.19) -AC_REVISION($Revision: 1.37 $) +AC_INIT(NetMRG,0.20) +AC_REVISION($Revision:1281 $) AC_CONFIG_SRCDIR(src/netmrg.cpp) AC_CANONICAL_HOST AM_INIT_AUTOMAKE @@ -51,7 +51,7 @@ AC_ARG_WITH(rrdtool, AC_HELP_STRING( [--with-rrdtool=PROGRAM], - [location of the rrdtool binary]), + [location of the rrdtool program]), [rrdtool_prog=$withval]) AC_PATH_PROG(RRDTOOL, rrdtool, $rrdtool_prog) @@ -60,16 +60,16 @@ fi # mysql -AC_ARG_WITH(mysql-include-dir, +AC_ARG_WITH(mysql_config, AC_HELP_STRING( - [--with-mysql-include-dir], - [MySQL include directory [[/usr/(local/)include]]]), - [mysql_include_dir=$withval]) -AC_ARG_WITH(mysql-lib-dir, - AC_HELP_STRING( - [--with-mysql-lib-dir], - [MySQL library directory [[/usr/(local/)lib/mysql]]]), - [mysql_lib_dir=$withval]) + [--with-mysql_config=PROGRAM], + [location of the mysql_config program]), + [mysql_config_prog=$withval]) +AC_PATH_PROG(MYSQL_CONFIG, mysql_config, $mysql_config_prog) + +if test "x$MYSQL_CONFIG" = "x"; then + AC_MSG_ERROR([Couldn't find mysql_config. Please verify that it is installed.]) +fi # snmp AC_ARG_WITH(snmp-include-dir, @@ -80,7 +80,7 @@ AC_ARG_WITH(snmp-lib-dir, AC_HELP_STRING( [--with-snmp-lib-dir], - [SNMP library directory [[/usr/(local/)lib]]]), + [SNMP library directory [[/usr/(local/)lib[64]]]]), [snmp_lib_dir=$withval]) # xml2 @@ -171,7 +171,7 @@ # hunt through several directories trying to find the libraries if test "x$XML2_LIBS" = "x"; then old_LDFLAGS="$LDFLAGS" - for try in $xml2_lib_dir /usr/lib /usr/local/lib ; do + for try in $xml2_lib_dir /usr/lib64 /usr/lib /usr/local/lib ; do LDFLAGS="$old_LDFLAGS -L$try" unset ac_cv_lib_xml2_xmlParseFile AC_CHECK_LIB(xml2, xmlParseFile, @@ -192,38 +192,14 @@ LIBS="-lxml2 $LIBS" ## Determine MySQL library path -# try and find libs without any additional libraries -AC_CHECK_LIB(mysqlclient, mysql_init, - MYSQL_LIBS=" ", - MYSQL_LIBS= -) - -# hunt through several directories trying to find the libraries -if test "x$MYSQL_LIBS" = "x"; then - old_LDFLAGS="$LDFLAGS" - for try in $mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib /usr/local/mysql/lib /usr/local/lib/mysql /usr/sfw/lib; do - LDFLAGS="$old_LDFLAGS -L$try" - unset ac_cv_lib_mysqlclient_mysql_init - AC_CHECK_LIB(mysqlclient, mysql_init, - MYSQL_LIBS="-L$try", - MYSQL_LIBS= - ) - if test "x$MYSQL_LIBS" != "x"; then - break; - fi - done - LDFLAGS="$old_LDFLAGS $MYSQL_LIBS" -fi - -if test "x$MYSQL_LIBS" = "x"; then - AC_MSG_ERROR([MySQL libraries not found. Use --with-mysql-lib-dir=]) -fi -# don't forget to add mysqlclient to the list of libraries -LIBS="-lmysqlclient $LIBS" +MYSQL_LIBS=$($MYSQL_CONFIG --libs) +LIBS="$LIBS $MYSQL_LIBS" # now that we've found the libraries, check for MySQL < 4.0 -AC_CHECK_LIB(mysqlclient, mysql_thread_init, [], - AC_DEFINE(OLD_MYSQL, 1, [Old MySQL version])) +MYSQL_VERSION=$($MYSQL_CONFIG --version) +if test "x${MYSQL_VERSION//.*/}" = "x3"; then + AC_DEFINE(OLD_MYSQL, 1, [Old MySQL version]) +fi ### Checks for header files. @@ -271,35 +247,8 @@ AC_MSG_RESULT(yes) ## Determine MySQL include path -AC_MSG_CHECKING(for mysql/mysql.h) - -# Can we include headers using system include dirs? -AC_TRY_COMPILE([#include ], [int a = 1;], - MYSQL_INCLUDE=" ", - MYSQL_INCLUDE= -) - -# hunt through several directories trying to find the includes -if test "x$MYSQL_INCLUDE" = "x"; then - old_CPPFLAGS="$CPPFLAGS" - for i in $mysql_include_dir /usr/include /usr/local/include /usr/local/mysql/include /usr/local/include/mysql ; do - CPPFLAGS="$old_CPPFLAGS -I$i" - AC_TRY_COMPILE([#include ], [int a = 1;], - MYSQL_INCLUDE="-I$i", - MYSQL_INCLUDE= - ) - if test "x$MYSQL_INCLUDE" != "x"; then - break; - fi - done - CPPFLAGS="$old_CPPFLAGS $MYSQL_INCLUDE" -fi - -if test "x$MYSQL_INCLUDE" = "x"; then - AC_MSG_RESULT(no) - AC_MSG_ERROR([MySQL headers not found. Use --with-mysql-include-dir=]) -fi -AC_MSG_RESULT(yes) +MYSQL_INCLUDE=$($MYSQL_CONFIG --cflags) +CPPFLAGS="$CPPFLAGS $MYSQL_INCLUDE" ### Checks for typedefs, structures, and compiler characteristics. @@ -340,12 +289,12 @@ # Determine UCD or Net-SNMP library path if test "x$snmp_lib_dir" != "x"; then - test -f $snmp_lib_dir/libsnmp.a -o -f $snmp_lib_dir/libsnmp.so && SNMP_LIBDIR=$snmp_lib_dir - test -f $snmp_lib_dir/libnetsnmp.a -o -f $snmp_lib_dir/libnetsnmp.so && SNMP_LIBDIR=$snmp_lib_dir + test -f $snmp_lib_dir/libsnmp.a -o -f $snmp_lib_dir/libsnmp.so -o -f $snmp_lib_dir/libsnmp.dylib && SNMP_LIBDIR=$snmp_lib_dir + test -f $snmp_lib_dir/libnetsnmp.a -o -f $snmp_lib_dir/libnetsnmp.so -o -f $snmp_lib_dir/libnetsnmp.dylib && SNMP_LIBDIR=$snmp_lib_dir else - for i in /usr/local/lib /usr/lib /usr/sfw/lib; do - test -f $i/libsnmp.a -o -f $i/libsnmp.so && SNMP_LIBDIR=$i - test -f $i/libnetsnmp.a -o -f $i/libnetsnmp.so && SNMP_LIBDIR=$i + for i in /usr/local/lib /usr/sfw/lib /usr/lib /usr/lib64 ; do + test -f $i/libsnmp.a -o -f $i/libsnmp.so -o -f $i/libsnmp.dylib && SNMP_LIBDIR=$i + test -f $i/libnetsnmp.a -o -f $i/libnetsnmp.so -o -f $i/libnetsnmp.dylib && SNMP_LIBDIR=$i done fi diff -Nurb netmrg-0.19/contrib/linuxpmu.sh netmrg-0.20/contrib/linuxpmu.sh --- netmrg-0.19/contrib/linuxpmu.sh 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/contrib/linuxpmu.sh 2007-05-29 19:06:46.000000000 +0530 @@ -0,0 +1,13 @@ +#!/bin/sh + +# Author: Uwe Steinmann + +# usage linuxpmu.sh +# battery number can be 0 or 1 +# command can be 'charge', 'max_charge', 'current', 'voltage' + +if [ -f /proc/pmu/battery_$1 ]; then + cat /proc/pmu/battery_$1 | grep "^$2 *:" | awk -F: '{print $2}' +else + echo "U" +fi diff -Nurb netmrg-0.19/contrib/surfboard/surfboard4100-signal.html netmrg-0.20/contrib/surfboard/surfboard4100-signal.html --- netmrg-0.19/contrib/surfboard/surfboard4100-signal.html 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/contrib/surfboard/surfboard4100-signal.html 2006-03-01 06:24:18.000000000 +0530 @@ -0,0 +1,123 @@ + + + + + + + + + + + +
+ + + +
Configuration + Manager
+ + +
+
+ + + + + + + +
StatusSignalAddressesConfigurationLogsHelp
+ + + +
This page provides information about the current + upstream and downstream signal status of your Cable Modem. +
+

+
+ + + + + + + + + + + + + + + + + + + + +
Downstream Value
Frequency723000000 Hz Locked + 
Signal to Noise Ratio34 dB 
QAM256
Network Access Control ObjectON
Power Level2 dBmV +  + + + +
The Downstream Power Level reading is a + snapshot taken at the time this page was requested. Please + Reload/Refresh this Page for a new reading +
+
+ + + + + + + + + + + + + + + + + + + +
Upstream Value
Channel ID3
Frequency30992000 Hz Ranged +
Ranging Service ID239
Symbol Rate3.200 Msym/s
Power Level46 dBmV
+

+
+

+

Status | Signal | Addresses | Configuration | Logs | Help +

+ + + + + +
+
+
Copyright + 1997-2000
diff -Nurb netmrg-0.19/contrib/surfboard/surfboard5100-signal.html netmrg-0.20/contrib/surfboard/surfboard5100-signal.html --- netmrg-0.19/contrib/surfboard/surfboard5100-signal.html 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/contrib/surfboard/surfboard5100-signal.html 2006-03-01 06:24:18.000000000 +0530 @@ -0,0 +1,157 @@ + + + + + + + + +
+
+ + +
+ + Configuration Manager +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +
+ + +Status + + +Signal + + +Addresses + + +Configuration + + +Logs + + +Help
+ + + + +
+This page provides information about the current upstream and +downstream signal status of your Cable Modem. +
+ +

+

+
+ + + + + + + + + + + + + + + + +
Downstream +Value
Frequency 723000000 Hz Locked
Signal to Noise Ratio37 dB
Power Level2 dB + + +
+ +The Downstream Power Level reading is a snapshot taken at the time this +page was requested. Please Reload/Refresh this Page for a new reading + +
+
+
+

+
+ + + + + + + + + + + + + + + + + + +
Upstream +Value
Channel ID3
Frequency 30992000 Hz Ranged
Power Level46 dBmV +
+
+ +

+

+ +
+ +

+

+Status | +Signal | +Addresses | +Configuration | +Logs | +Help +

+
+
+
+ + + + + + + +
+
+ +© Copyright 1997-2002 +
+ + diff -Nurb netmrg-0.19/contrib/surfboard/surfboard.php netmrg-0.20/contrib/surfboard/surfboard.php --- netmrg-0.19/contrib/surfboard/surfboard.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/contrib/surfboard/surfboard.php 2006-03-01 06:24:18.000000000 +0530 @@ -0,0 +1,101 @@ +#!/usr/bin/php + url direction variable\n"; + echo " url: full path to the signal page (not the frame!)\n"; + echo " ex: $signalpage\n"; + echo " direction: downstream\n"; + echo " variable: frequency, snr, qam, power_level\n"; + echo " direction: upstream\n"; + echo " variable: channel_id, frequency, ranging_service_id, \n"; + echo " symbol_rate, power_level\n"; + exit(1); +} // end if not proper arguments +// assign variables +$signalpage = $_SERVER['argv'][1]; +$direction = $_SERVER['argv'][2]; +$variable = $_SERVER['argv'][3]; + +// grab page conents +$signalpage_contents = file_get_contents($signalpage); + +switch ($direction) +{ + case 'downstream': + switch ($variable) + { + case 'frequency': + $regex = '/Downstream.*?Frequency.*?(\d+)\s*Hz/s'; + break; + + case 'snr': + $regex = '/Downstream.*?Signal to Noise Ratio.*?(\d+)\s*dB/s'; + break; + + case 'qam': + $regex = '/Downstream.*?QAM.*?(\d+)/s'; + break; + + case 'power_level': + $regex = '/Downstream.*?Power Level.*?(\d+)\s*dB(?:mV)?/s'; + break; + } // end switch variable + break; + + case 'upstream': + switch ($variable) + { + case 'channel_id': + $regex = '/Upstream.*?Channel ID.*?(\d+).*?/s'; + break; + + case 'frequency': + $regex = '/Upstream.*?Frequency.*?(\d+)\s*Hz/s'; + break; + + case 'ranging_service_id': + $regex = '/Upstream.*?Ranging Service ID.*?(\d+)/s'; + break; + + case 'symbol_rate': + $regex = '/Upstream.*?Symbol Rate.*?([\d\.]+)\s*Msym\/s/s'; + break; + + case 'power_level': + $regex = '/Upstream.*?Power Level.*?(\d+)\s*dBmV/s'; + break; + } // end switch variable + break; +} // end switch direction + +// lookup appropriate value +if (!empty($regex) && preg_match($regex, $signalpage_contents, $matches)) +{ + $outputval = $matches[1]; +} // end if regex and regex match + +// check output +if (!empty($outputval)) +{ + echo "$outputval\n"; +} // end if we had output to pass along + +?> diff -Nurb netmrg-0.19/debian/changelog netmrg-0.20/debian/changelog --- netmrg-0.19/debian/changelog 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/changelog 2008-09-07 18:21:31.000000000 +0530 @@ -1,3 +1,15 @@ +netmrg (0.20-2) unstable; urgency=low + + * Create temp directory in rrdedit (Closes: #496384) + + -- Uwe Steinmann Fri, 28 Aug 2008 16:28:06 +0200 + +netmrg (0.20-1) unstable; urgency=low + + * New upstream release + + -- Uwe Steinmann Fri, 02 May 2008 09:00:22 +0200 + netmrg (0.19-4.1) unstable; urgency=low * Non-maintainer upload. diff -Nurb netmrg-0.19/debian/copyright netmrg-0.20/debian/copyright --- netmrg-0.19/debian/copyright 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/copyright 2008-09-07 18:21:31.000000000 +0530 @@ -7,4 +7,10 @@ Copyright: + Copyright (C) 2003-2007 Brady Alleman and Douglas E. Warner + This project is licensed under the terms of the MIT License. + +This software contains a copy of xajax which is licensed under +the GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1, February 1999 + diff -Nurb netmrg-0.19/debian/netmrg.doc-base netmrg-0.20/debian/netmrg.doc-base --- netmrg-0.19/debian/netmrg.doc-base 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/netmrg.doc-base 2008-09-07 18:21:31.000000000 +0530 @@ -3,7 +3,7 @@ Author: Brady Alleman and Douglas E. Warner Abstract: This manual describes what netmrg is and how it can be used. -Section: net +Section: Network/Monitoring Format: text Files: /usr/share/doc/netmrg/netmrg.txt.gz diff -Nurb netmrg-0.19/debian/postinst netmrg-0.20/debian/postinst --- netmrg-0.19/debian/postinst 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/postinst 2008-09-07 18:21:31.000000000 +0530 @@ -55,12 +55,12 @@ case "$1" in configure) - chown -R netmrg.www-data /var/lib/netmrg - chown -R netmrg.www-data /var/log/netmrg + chown -R netmrg:www-data /var/lib/netmrg + chown -R netmrg:www-data /var/log/netmrg if [ ! -d "/var/lib/netmrg/sessions" ] ; then mkdir -p /var/lib/netmrg/sessions fi - chown -R www-data.www-data /var/lib/netmrg/sessions + chown -R www-data:www-data /var/lib/netmrg/sessions chmod 700 /var/lib/netmrg/sessions config="/etc/netmrg/netmrg.xml" diff -Nurb netmrg-0.19/debian/update-from-0.17.sql netmrg-0.20/debian/update-from-0.17.sql --- netmrg-0.19/debian/update-from-0.17.sql 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/update-from-0.17.sql 2008-09-07 18:21:31.000000000 +0530 @@ -7,4 +7,34 @@ ALTER TABLE `tests_sql` ADD `timeout` INT DEFAULT '10' NOT NULL ; -- INSERT INTO updates SET update_version = '0.18.1', name = 'SQL Test Timeout', version_applied_to = 'pre-0.17', dateapplied = now(); +UPDATE `versioninfo` set version = '0.18.1' where module = 'Main'; + +-- Update to 0.18.2 UPDATE `versioninfo` set version = '0.18.2' where module = 'Main'; + +-- Update to 0.19 +ALTER TABLE monitors MODIFY test_id INT NOT NULL; +ALTER TABLE view MODIFY pos INT NOT NULL; +INSERT INTO tests_internal VALUES (8,'Windows CPU Load'); +INSERT INTO tests_script SET name='Livingston Portmaster Active Modems', cmd='pmmodems.pl %snmp_read_community% %ip%', data_type='2'; +UPDATE graphs SET min=NULL WHERE min=0; +UPDATE graphs SET max=NULL WHERE max=0; +UPDATE `versioninfo` set version = '0.19' where module = 'Main'; + +-- update to 0.20 +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_props` (`id` INT NOT NULL AUTO_INCREMENT, `dev_type_id` INT NOT NULL, `name` VARCHAR( 200 ) NOT NULL, `test_type` TINYINT NOT NULL, `test_id` INT NOT NULL, `test_params` VARCHAR( 150 ) NOT NULL, PRIMARY KEY ( `id` )) TYPE = MYISAM; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Values Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_prop_vals` ( `dev_id` INT NOT NULL, `prop_id` INT NOT NULL, `value` VARCHAR( 250 ) NOT NULL, PRIMARY KEY ( `dev_id` , `prop_id` )); + +INSERT INTO updates SET update_version = '0.20', name = 'SNMP Interface Cache New Fields', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `snmp_interface_cache` ADD `nexthop` VARCHAR( 20 ) , ADD `vlan` VARCHAR( 20 ) , ADD `mode` TINYINT; + +INSERT INTO updates SET update_version = '0.20', name = 'Graph Item Consolidation Function Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `graph_ds` ADD `cf` TINYINT NOT NULL DEFAULT '1'; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Unknowns on SNMP Restart Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `devices` ADD `unknowns_on_snmp_restart` TINYINT NOT NULL DEFAULT '1'; + +UPDATE `versioninfo` set version = '0.20' where module = 'Main'; diff -Nurb netmrg-0.19/debian/update-from-0.18.1.sql netmrg-0.20/debian/update-from-0.18.1.sql --- netmrg-0.19/debian/update-from-0.18.1.sql 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/update-from-0.18.1.sql 2008-09-07 18:21:31.000000000 +0530 @@ -1 +1,28 @@ UPDATE `versioninfo` set version = '0.18.2' where module = 'Main'; + +-- Update to 0.19 +ALTER TABLE monitors MODIFY test_id INT NOT NULL; +ALTER TABLE view MODIFY pos INT NOT NULL; +INSERT INTO tests_internal VALUES (8,'Windows CPU Load'); +INSERT INTO tests_script SET name='Livingston Portmaster Active Modems', cmd='pmmodems.pl %snmp_read_community% %ip%', data_type='2'; +UPDATE graphs SET min=NULL WHERE min=0; +UPDATE graphs SET max=NULL WHERE max=0; +UPDATE `versioninfo` set version = '0.19' where module = 'Main'; + +-- update to 0.20 +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_props` (`id` INT NOT NULL AUTO_INCREMENT, `dev_type_id` INT NOT NULL, `name` VARCHAR( 200 ) NOT NULL, `test_type` TINYINT NOT NULL, `test_id` INT NOT NULL, `test_params` VARCHAR( 150 ) NOT NULL, PRIMARY KEY ( `id` )) TYPE = MYISAM; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Values Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_prop_vals` ( `dev_id` INT NOT NULL, `prop_id` INT NOT NULL, `value` VARCHAR( 250 ) NOT NULL, PRIMARY KEY ( `dev_id` , `prop_id` )); + +INSERT INTO updates SET update_version = '0.20', name = 'SNMP Interface Cache New Fields', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `snmp_interface_cache` ADD `nexthop` VARCHAR( 20 ) , ADD `vlan` VARCHAR( 20 ) , ADD `mode` TINYINT; + +INSERT INTO updates SET update_version = '0.20', name = 'Graph Item Consolidation Function Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `graph_ds` ADD `cf` TINYINT NOT NULL DEFAULT '1'; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Unknowns on SNMP Restart Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `devices` ADD `unknowns_on_snmp_restart` TINYINT NOT NULL DEFAULT '1'; + +UPDATE `versioninfo` set version = '0.20' where module = 'Main'; diff -Nurb netmrg-0.19/debian/update-from-0.18.2.sql netmrg-0.20/debian/update-from-0.18.2.sql --- netmrg-0.19/debian/update-from-0.18.2.sql 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/debian/update-from-0.18.2.sql 2008-09-07 18:21:31.000000000 +0530 @@ -1,3 +1,4 @@ +-- Update to 0.19 ALTER TABLE monitors MODIFY test_id INT NOT NULL; ALTER TABLE view MODIFY pos INT NOT NULL; INSERT INTO tests_internal VALUES (8,'Windows CPU Load'); @@ -5,3 +6,21 @@ UPDATE graphs SET min=NULL WHERE min=0; UPDATE graphs SET max=NULL WHERE max=0; UPDATE `versioninfo` set version = '0.19' where module = 'Main'; + +-- update to 0.20 +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_props` (`id` INT NOT NULL AUTO_INCREMENT, `dev_type_id` INT NOT NULL, `name` VARCHAR( 200 ) NOT NULL, `test_type` TINYINT NOT NULL, `test_id` INT NOT NULL, `test_params` VARCHAR( 150 ) NOT NULL, PRIMARY KEY ( `id` )) TYPE = MYISAM; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Values Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_prop_vals` ( `dev_id` INT NOT NULL, `prop_id` INT NOT NULL, `value` VARCHAR( 250 ) NOT NULL, PRIMARY KEY ( `dev_id` , `prop_id` )); + +INSERT INTO updates SET update_version = '0.20', name = 'SNMP Interface Cache New Fields', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `snmp_interface_cache` ADD `nexthop` VARCHAR( 20 ) , ADD `vlan` VARCHAR( 20 ) , ADD `mode` TINYINT; + +INSERT INTO updates SET update_version = '0.20', name = 'Graph Item Consolidation Function Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `graph_ds` ADD `cf` TINYINT NOT NULL DEFAULT '1'; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Unknowns on SNMP Restart Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `devices` ADD `unknowns_on_snmp_restart` TINYINT NOT NULL DEFAULT '1'; + +UPDATE `versioninfo` set version = '0.20' where module = 'Main'; diff -Nurb netmrg-0.19/debian/update-from-0.19.sql netmrg-0.20/debian/update-from-0.19.sql --- netmrg-0.19/debian/update-from-0.19.sql 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/debian/update-from-0.19.sql 2008-09-07 18:21:31.000000000 +0530 @@ -0,0 +1,17 @@ +-- update to 0.20 +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_props` (`id` INT NOT NULL AUTO_INCREMENT, `dev_type_id` INT NOT NULL, `name` VARCHAR( 200 ) NOT NULL, `test_type` TINYINT NOT NULL, `test_id` INT NOT NULL, `test_params` VARCHAR( 150 ) NOT NULL, PRIMARY KEY ( `id` )) TYPE = MYISAM; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Properties Values Table', version_applied_to = '0.19', dateapplied = now(); +CREATE TABLE `dev_prop_vals` ( `dev_id` INT NOT NULL, `prop_id` INT NOT NULL, `value` VARCHAR( 250 ) NOT NULL, PRIMARY KEY ( `dev_id` , `prop_id` )); + +INSERT INTO updates SET update_version = '0.20', name = 'SNMP Interface Cache New Fields', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `snmp_interface_cache` ADD `nexthop` VARCHAR( 20 ) , ADD `vlan` VARCHAR( 20 ) , ADD `mode` TINYINT; + +INSERT INTO updates SET update_version = '0.20', name = 'Graph Item Consolidation Function Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `graph_ds` ADD `cf` TINYINT NOT NULL DEFAULT '1'; + +INSERT INTO updates SET update_version = '0.20', name = 'Device Unknowns on SNMP Restart Field', version_applied_to = '0.19', dateapplied = now(); +ALTER TABLE `devices` ADD `unknowns_on_snmp_restart` TINYINT NOT NULL DEFAULT '1'; + +UPDATE `versioninfo` set version = '0.20' where module = 'Main'; diff -Nurb netmrg-0.19/etc/Makefile.in netmrg-0.20/etc/Makefile.in --- netmrg-0.19/etc/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/etc/Makefile.in 2008-04-12 07:52:40.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,15 +16,11 @@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -68,8 +64,6 @@ DATA = $(netmrg_etc_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -93,11 +87,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -107,9 +105,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -127,13 +127,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -145,28 +145,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -215,7 +226,6 @@ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ netmrg.xml: $(top_builddir)/config.status $(srcdir)/netmrg.xml.in cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ -uninstall-info-am: uninstall-netmrg_etcDATA: @$(NORMAL_UNINSTALL) @@ -232,23 +242,21 @@ distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/.. - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -264,7 +272,7 @@ all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(netmrg_etcdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -310,12 +318,20 @@ install-data-am: install-netmrg_etcDATA +install-dvi: install-dvi-am + install-exec-am: +install-html: install-html-am + install-info: install-info-am install-man: +install-pdf: install-pdf-am + +install-ps: install-ps-am + installcheck-am: maintainer-clean: maintainer-clean-am @@ -334,17 +350,20 @@ ps-am: -uninstall-am: uninstall-info-am uninstall-netmrg_etcDATA +uninstall-am: uninstall-netmrg_etcDATA + +.MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-netmrg_etcDATA install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ - pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \ - uninstall-netmrg_etcDATA + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-netmrg_etcDATA install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \ + uninstall-am uninstall-netmrg_etcDATA @SET_MAKE@ diff -Nurb netmrg-0.19/etc/netmrg.xml.in netmrg-0.20/etc/netmrg.xml.in --- netmrg-0.19/etc/netmrg.xml.in 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/etc/netmrg.xml.in 2008-09-07 18:21:31.000000000 +0530 @@ -15,7 +15,7 @@ @libexecdir@/netmrg @localstatedir@/lib/netmrg/rrd @prefix@/share/netmrg - @datadir@/netmrg/locale + @datarootdir@/netmrg/locale 5 diff -Nurb netmrg-0.19/INSTALL netmrg-0.20/INSTALL --- netmrg-0.19/INSTALL 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/INSTALL 2008-04-12 07:44:39.000000000 +0530 @@ -88,7 +88,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/satisfyreq.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/upgrade.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/satisfyreq.html + . file:///home/silfreed/src/netmrg/share/doc/txt/upgrade.html diff -Nurb netmrg-0.19/libexec/linux26diskaccess.pl netmrg-0.20/libexec/linux26diskaccess.pl --- netmrg-0.19/libexec/linux26diskaccess.pl 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/libexec/linux26diskaccess.pl 2007-05-29 19:06:46.000000000 +0530 @@ -1,4 +1,5 @@ #!/usr/bin/perl + use strict; ### config variables @@ -51,6 +52,7 @@ my $line = ; close(STAT); chomp($line); +$line =~ s/^\s+//; my ($read, $readb, $write, $writeb); if ($partition eq "") { diff -Nurb netmrg-0.19/libexec/linuxload.sh netmrg-0.20/libexec/linuxload.sh --- netmrg-0.19/libexec/linuxload.sh 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/libexec/linuxload.sh 2007-05-29 19:06:46.000000000 +0530 @@ -1,14 +1,12 @@ #!/bin/sh +# Author: Uwe Steinmann + # usage linuxload.sh # item can be 1, 2, or 3 -if [ -f /proc/loadavg ]; then -# if [ "$1" = "1" ­o "$1" = "2" -o "$1" = "3" ]; then - cat /proc/loadavg | cut -d' ' -f$1 -# else -# echo "U" -# fi +if [ -f /proc/loadavg -a "$1" != "" -a $1 -ge 1 -a $1 -le 3 ]; then + cut -d' ' -f$1 /proc/loadavg else echo "U" fi diff -Nurb netmrg-0.19/libexec/linuxload.sh.debdiff netmrg-0.20/libexec/linuxload.sh.debdiff --- netmrg-0.19/libexec/linuxload.sh.debdiff 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/libexec/linuxload.sh.debdiff 2008-09-07 18:21:31.000000000 +0530 @@ -0,0 +1,14 @@ +#!/bin/sh + +# usage linuxload.sh +# item can be 1, 2, or 3 + +if [ -f /proc/loadavg ]; then +# if [ "$1" = "1" ­o "$1" = "2" -o "$1" = "3" ]; then + cat /proc/loadavg | cut -d' ' -f$1 +# else +# echo "U" +# fi +else + echo "U" +fi diff -Nurb netmrg-0.19/libexec/old-cisco-dev-props.php netmrg-0.20/libexec/old-cisco-dev-props.php --- netmrg-0.19/libexec/old-cisco-dev-props.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/libexec/old-cisco-dev-props.php 2006-11-01 21:46:06.000000000 +0530 @@ -0,0 +1,39 @@ +#!/usr/bin/php -q + +** +** Descritpion: +** Returns either the model number (actually closer to "family" than model), +** and the IOS version. Designed for use on 2900XL and 3500XL switches with +** older IOS versions that do not support MIBs containing these values separately. +*/ + +// no errors! +error_reporting(E_ALL); + +// if less than 3 arguments, exit +if ($argc != 4) { print "U\nnot enough args"; exit; } + +$snmp_result = snmpget($argv[1], $argv[2], "sysDescr.0"); + +//print($snmp_result); + +$model = preg_replace("/.* \(tm\) /s", "", $snmp_result); +$model = preg_replace("/ .*/s", "", $model); +$model = "WS-" . $model; + +$version = preg_replace("/.* Version /s", "", $snmp_result); +$version = preg_replace("/,.*/s", "", $version); + +switch ($argv[3]) +{ + case "version": echo("$version\n"); break; + case "model": echo("$model\n"); break; +} + +exit; +?> + diff -Nurb netmrg-0.19/libexec/snmpdiff.sh netmrg-0.20/libexec/snmpdiff.sh --- netmrg-0.19/libexec/snmpdiff.sh 2005-11-03 23:17:04.000000000 +0530 +++ netmrg-0.20/libexec/snmpdiff.sh 2007-11-22 23:46:29.000000000 +0530 @@ -15,7 +15,7 @@ shift shift -snmpget="snmpget -v1 -c $community -Oqv $hostname" +snmpget="snmpget -v1 -c $community -OqvU $hostname" val=`$snmpget $1`; shift diff -Nurb netmrg-0.19/m4/codeset.m4 netmrg-0.20/m4/codeset.m4 --- netmrg-0.19/m4/codeset.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/codeset.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,23 +0,0 @@ -# codeset.m4 serial AM1 (gettext-0.10.40) -dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. - -AC_DEFUN([AM_LANGINFO_CODESET], -[ - AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, - [AC_TRY_LINK([#include ], - [char* cs = nl_langinfo(CODESET);], - am_cv_langinfo_codeset=yes, - am_cv_langinfo_codeset=no) - ]) - if test $am_cv_langinfo_codeset = yes; then - AC_DEFINE(HAVE_LANGINFO_CODESET, 1, - [Define if you have and nl_langinfo(CODESET).]) - fi -]) diff -Nurb netmrg-0.19/m4/gettext.m4 netmrg-0.20/m4/gettext.m4 --- netmrg-0.19/m4/gettext.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/gettext.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ -# gettext.m4 serial 28 (gettext-0.13) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# gettext.m4 serial 59 (gettext-0.16.1) +dnl Copyright (C) 1995-2006 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -17,7 +15,7 @@ dnl Authors: dnl Ulrich Drepper , 1995-2000. -dnl Bruno Haible , 2000-2003. +dnl Bruno Haible , 2000-2006. dnl Macro to add for using GNU gettext. @@ -65,8 +63,13 @@ ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ])])])]) - define(gt_included_intl, ifelse([$1], [external], [no], [yes])) - define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], [])) + define([gt_included_intl], + ifelse([$1], [external], + ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]), + [yes])) + define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], [])) + gt_NEEDS_INIT + AM_GNU_GETTEXT_NEED([$2]) AC_REQUIRE([AM_PO_SUBDIRS])dnl ifelse(gt_included_intl, yes, [ @@ -80,7 +83,7 @@ dnl Sometimes libintl requires libiconv, so first search for libiconv. dnl Ideally we would do this search only after the dnl if test "$USE_NLS" = "yes"; then - dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then + dnl if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT dnl the configure script would need to contain the same shell code dnl again, outside any 'if'. There are two solutions: @@ -92,8 +95,11 @@ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ]) + dnl Sometimes, on MacOS X, libintl requires linking with CoreFoundation. + gt_INTL_MACOSX + dnl Set USE_NLS. - AM_NLS + AC_REQUIRE([AM_NLS]) ifelse(gt_included_intl, yes, [ BUILD_INCLUDED_LIBINTL=no @@ -103,6 +109,15 @@ LTLIBINTL= POSUB= + dnl Add a version number to the cache macros. + case " $gt_needs " in + *" need-formatstring-macros "*) gt_api_version=3 ;; + *" need-ngettext "*) gt_api_version=2 ;; + *) gt_api_version=1 ;; + esac + gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" + gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" + dnl If we use NLS figure out what method if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no @@ -121,28 +136,35 @@ dnl to use. If GNU gettext is available we use this. Else we have dnl to fall back to GNU NLS library. - dnl Add a version number to the cache macros. - define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1))) - define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc]) - define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl]) - - AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc, - [AC_TRY_LINK([#include -]ifelse([$2], [need-formatstring-macros], -[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION + if test $gt_api_version -ge 3; then + gt_revision_test_code=' +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif changequote(,)dnl typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; changequote([,])dnl -], [])[extern int _nl_msg_cat_cntr; +' + else + gt_revision_test_code= + fi + if test $gt_api_version -ge 2; then + gt_expression_test_code=' + * ngettext ("", "", 0)' + else + gt_expression_test_code= + fi + + AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc], + [AC_TRY_LINK([#include +$gt_revision_test_code +extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings;], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], - gt_cv_func_gnugettext_libc=yes, - gt_cv_func_gnugettext_libc=no)]) +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings], + [eval "$gt_func_gnugettext_libc=yes"], + [eval "$gt_func_gnugettext_libc=no"])]) - if test "$gt_cv_func_gnugettext_libc" != "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then dnl Sometimes libintl requires libiconv, so first search for libiconv. ifelse(gt_included_intl, yes, , [ AM_ICONV_LINK @@ -153,52 +175,40 @@ dnl even if libiconv doesn't exist. AC_LIB_LINKFLAGS_BODY([intl]) AC_CACHE_CHECK([for GNU gettext in libintl], - gt_cv_func_gnugettext_libintl, + [$gt_func_gnugettext_libintl], [gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" dnl Now see whether libintl exists and does not depend on libiconv. AC_TRY_LINK([#include -]ifelse([$2], [need-formatstring-macros], -[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -#endif -changequote(,)dnl -typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -changequote([,])dnl -], [])[extern int _nl_msg_cat_cntr; +$gt_revision_test_code +extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias ();], +const char *_nl_expand_alias (const char *);], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], - gt_cv_func_gnugettext_libintl=yes, - gt_cv_func_gnugettext_libintl=no) +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")], + [eval "$gt_func_gnugettext_libintl=yes"], + [eval "$gt_func_gnugettext_libintl=no"]) dnl Now see whether libintl exists and depends on libiconv. - if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" AC_TRY_LINK([#include -]ifelse([$2], [need-formatstring-macros], -[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -#endif -changequote(,)dnl -typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -changequote([,])dnl -], [])[extern int _nl_msg_cat_cntr; +$gt_revision_test_code +extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif -const char *_nl_expand_alias ();], +const char *_nl_expand_alias (const char *);], [bindtextdomain ("", ""); -return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], +return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")], [LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" - gt_cv_func_gnugettext_libintl=yes + eval "$gt_func_gnugettext_libintl=yes" ]) fi CPPFLAGS="$gt_save_CPPFLAGS" @@ -209,8 +219,8 @@ dnl use it. But if this macro is used in GNU gettext, and GNU dnl gettext is already preinstalled in libintl, we update this dnl libintl. (Cf. the install rule in intl/Makefile.in.) - if test "$gt_cv_func_gnugettext_libc" = "yes" \ - || { test "$gt_cv_func_gnugettext_libintl" = "yes" \ + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes @@ -233,11 +243,12 @@ dnl Mark actions used to generate GNU NLS library. BUILD_INCLUDED_LIBINTL=yes USE_INCLUDED_LIBINTL=yes - LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV" - LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV" + LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD" + LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD" LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` fi + CATOBJEXT= if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions to use GNU gettext tools. @@ -245,6 +256,15 @@ fi ]) + if test -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + dnl Some extra flags are needed during linking. + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + fi + if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then AC_DEFINE(ENABLE_NLS, 1, @@ -260,7 +280,7 @@ if test "$USE_NLS" = "yes"; then AC_MSG_CHECKING([where the gettext function comes from]) if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext_libintl" = "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then gt_source="external libintl" else gt_source="libc" @@ -274,7 +294,7 @@ if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then - if test "$gt_cv_func_gnugettext_libintl" = "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then AC_MSG_CHECKING([how to link with libintl]) AC_MSG_RESULT([$LIBINTL]) AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) @@ -320,6 +340,7 @@ AC_SUBST(GENCAT) dnl For backward compatibility. Some Makefiles may be using this. + INTLOBJS= if test "$USE_INCLUDED_LIBINTL" = yes; then INTLOBJS="\$(GETTOBJS)" fi @@ -341,145 +362,56 @@ ]) -dnl Checks for all prerequisites of the intl subdirectory, -dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS, -dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL. -AC_DEFUN([AM_INTL_SUBDIR], +dnl Checks for special options needed on MacOS X. +dnl Defines INTL_MACOSX_LIBS. +AC_DEFUN([gt_INTL_MACOSX], [ - AC_REQUIRE([AC_PROG_INSTALL])dnl - AC_REQUIRE([AM_MKINSTALLDIRS])dnl - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_ISC_POSIX])dnl - AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([AC_C_CONST])dnl - AC_REQUIRE([bh_C_SIGNED])dnl - AC_REQUIRE([AC_C_INLINE])dnl - AC_REQUIRE([AC_TYPE_OFF_T])dnl - AC_REQUIRE([AC_TYPE_SIZE_T])dnl - AC_REQUIRE([jm_AC_TYPE_LONG_LONG])dnl - AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl - AC_REQUIRE([gt_TYPE_WCHAR_T])dnl - AC_REQUIRE([gt_TYPE_WINT_T])dnl - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) - AC_REQUIRE([gt_TYPE_INTMAX_T]) - AC_REQUIRE([gt_PRINTF_POSIX]) - AC_REQUIRE([AC_FUNC_ALLOCA])dnl - AC_REQUIRE([AC_FUNC_MMAP])dnl - AC_REQUIRE([jm_GLIBC21])dnl - AC_REQUIRE([gt_INTDIV0])dnl - AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl - AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl - AC_REQUIRE([gt_INTTYPES_PRI])dnl - AC_REQUIRE([gl_XSIZE])dnl - - AC_CHECK_TYPE([ptrdiff_t], , - [AC_DEFINE([ptrdiff_t], [long], - [Define as the type of the result of subtracting two pointers, if the system doesn't define it.]) - ]) - AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ -stdlib.h string.h unistd.h sys/param.h]) - AC_CHECK_FUNCS([asprintf fwprintf getcwd getegid geteuid getgid getuid \ -mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \ -strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \ -__fsetlocking]) - - dnl Use the _snprintf function only if it is declared (because on NetBSD it - dnl is defined as a weak alias of snprintf; we prefer to use the latter). - gt_CHECK_DECL(_snprintf, [#include ]) - gt_CHECK_DECL(_snwprintf, [#include ]) - - dnl Use the *_unlocked functions only if they are declared. - dnl (because some of them were defined without being declared in Solaris - dnl 2.5.1 but were removed in Solaris 2.6, whereas we want binaries built - dnl on Solaris 2.5.1 to run on Solaris 2.6). - dnl Don't use AC_CHECK_DECLS because it isn't supported in autoconf-2.13. - gt_CHECK_DECL(feof_unlocked, [#include ]) - gt_CHECK_DECL(fgets_unlocked, [#include ]) - gt_CHECK_DECL(getc_unlocked, [#include ]) - - case $gt_cv_func_printf_posix in - *yes) HAVE_POSIX_PRINTF=1 ;; - *) HAVE_POSIX_PRINTF=0 ;; - esac - AC_SUBST([HAVE_POSIX_PRINTF]) - if test "$ac_cv_func_asprintf" = yes; then - HAVE_ASPRINTF=1 - else - HAVE_ASPRINTF=0 - fi - AC_SUBST([HAVE_ASPRINTF]) - if test "$ac_cv_func_snprintf" = yes; then - HAVE_SNPRINTF=1 - else - HAVE_SNPRINTF=0 - fi - AC_SUBST([HAVE_SNPRINTF]) - if test "$ac_cv_func_wprintf" = yes; then - HAVE_WPRINTF=1 - else - HAVE_WPRINTF=0 + dnl Check for API introduced in MacOS X 10.2. + AC_CACHE_CHECK([for CFPreferencesCopyAppValue], + gt_cv_func_CFPreferencesCopyAppValue, + [gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + AC_TRY_LINK([#include ], + [CFPreferencesCopyAppValue(NULL, NULL)], + [gt_cv_func_CFPreferencesCopyAppValue=yes], + [gt_cv_func_CFPreferencesCopyAppValue=no]) + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1, + [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.]) + fi + dnl Check for API introduced in MacOS X 10.3. + AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent, + [gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + AC_TRY_LINK([#include ], [CFLocaleCopyCurrent();], + [gt_cv_func_CFLocaleCopyCurrent=yes], + [gt_cv_func_CFLocaleCopyCurrent=no]) + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1, + [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.]) + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" fi - AC_SUBST([HAVE_WPRINTF]) + AC_SUBST([INTL_MACOSX_LIBS]) +]) - AM_ICONV - AM_LANGINFO_CODESET - if test $ac_cv_header_locale_h = yes; then - AM_LC_MESSAGES - fi - - dnl intl/plural.c is generated from intl/plural.y. It requires bison, - dnl because plural.y uses bison specific features. It requires at least - dnl bison-1.26 because earlier versions generate a plural.c that doesn't - dnl compile. - dnl bison is only needed for the maintainer (who touches plural.y). But in - dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put - dnl the rule in general Makefile. Now, some people carelessly touch the - dnl files or have a broken "make" program, hence the plural.c rule will - dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not - dnl present or too old. - AC_CHECK_PROGS([INTLBISON], [bison]) - if test -z "$INTLBISON"; then - ac_verc_fail=yes - else - dnl Found it, now check the version. - AC_MSG_CHECKING([version of bison]) -changequote(<<,>>)dnl - ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` - case $ac_prog_version in - '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; - 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) -changequote([,])dnl - ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; - *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; - esac - AC_MSG_RESULT([$ac_prog_version]) - fi - if test $ac_verc_fail = yes; then - INTLBISON=: - fi + +dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized. +m4_define([gt_NEEDS_INIT], +[ + m4_divert_text([DEFAULTS], [gt_needs=]) + m4_define([gt_NEEDS_INIT], []) ]) -dnl gt_CHECK_DECL(FUNC, INCLUDES) -dnl Check whether a function is declared. -AC_DEFUN([gt_CHECK_DECL], +dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL]) +AC_DEFUN([AM_GNU_GETTEXT_NEED], [ - AC_CACHE_CHECK([whether $1 is declared], ac_cv_have_decl_$1, - [AC_TRY_COMPILE([$2], [ -#ifndef $1 - char *p = (char *) $1; -#endif -], ac_cv_have_decl_$1=yes, ac_cv_have_decl_$1=no)]) - if test $ac_cv_have_decl_$1 = yes; then - gt_value=1 - else - gt_value=0 - fi - AC_DEFINE_UNQUOTED([HAVE_DECL_]translit($1, [a-z], [A-Z]), [$gt_value], - [Define to 1 if you have the declaration of `$1', and to 0 if you don't.]) + m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"]) ]) diff -Nurb netmrg-0.19/m4/glibc21.m4 netmrg-0.20/m4/glibc21.m4 --- netmrg-0.19/m4/glibc21.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/glibc21.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,32 +0,0 @@ -# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) -dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -# Test for the GNU C Library, version 2.1 or newer. -# From Bruno Haible. - -AC_DEFUN([jm_GLIBC21], - [ - AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, - ac_cv_gnu_library_2_1, - [AC_EGREP_CPP([Lucky GNU user], - [ -#include -#ifdef __GNU_LIBRARY__ - #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) - Lucky GNU user - #endif -#endif - ], - ac_cv_gnu_library_2_1=yes, - ac_cv_gnu_library_2_1=no) - ] - ) - AC_SUBST(GLIBC21) - GLIBC21="$ac_cv_gnu_library_2_1" - ] -) diff -Nurb netmrg-0.19/m4/iconv.m4 netmrg-0.20/m4/iconv.m4 --- netmrg-0.19/m4/iconv.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/iconv.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ # iconv.m4 serial AM4 (gettext-0.11.3) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. diff -Nurb netmrg-0.19/m4/intdiv0.m4 netmrg-0.20/m4/intdiv0.m4 --- netmrg-0.19/m4/intdiv0.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/intdiv0.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,72 +0,0 @@ -# intdiv0.m4 serial 1 (gettext-0.11.3) -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. - -AC_DEFUN([gt_INTDIV0], -[ - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - - AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], - gt_cv_int_divbyzero_sigfpe, - [ - AC_TRY_RUN([ -#include -#include - -static void -#ifdef __cplusplus -sigfpe_handler (int sig) -#else -sigfpe_handler (sig) int sig; -#endif -{ - /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ - exit (sig != SIGFPE); -} - -int x = 1; -int y = 0; -int z; -int nan; - -int main () -{ - signal (SIGFPE, sigfpe_handler); -/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ -#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) - signal (SIGTRAP, sigfpe_handler); -#endif -/* Linux/SPARC yields signal SIGILL. */ -#if defined (__sparc__) && defined (__linux__) - signal (SIGILL, sigfpe_handler); -#endif - - z = x / y; - nan = y / y; - exit (1); -} -], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, - [ - # Guess based on the CPU. - case "$host_cpu" in - alpha* | i[34567]86 | m68k | s390*) - gt_cv_int_divbyzero_sigfpe="guessing yes";; - *) - gt_cv_int_divbyzero_sigfpe="guessing no";; - esac - ]) - ]) - case "$gt_cv_int_divbyzero_sigfpe" in - *yes) value=1;; - *) value=0;; - esac - AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, - [Define if integer division by zero raises signal SIGFPE.]) -]) diff -Nurb netmrg-0.19/m4/intmax.m4 netmrg-0.20/m4/intmax.m4 --- netmrg-0.19/m4/intmax.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/intmax.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,32 +0,0 @@ -# intmax.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. -dnl Test whether the system has the 'intmax_t' type, but don't attempt to -dnl find a replacement if it is lacking. - -AC_DEFUN([gt_TYPE_INTMAX_T], -[ - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) - AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t, - [AC_TRY_COMPILE([ -#include -#include -#if HAVE_STDINT_H_WITH_UINTMAX -#include -#endif -#if HAVE_INTTYPES_H_WITH_UINTMAX -#include -#endif -], [intmax_t x = -1;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)]) - if test $gt_cv_c_intmax_t = yes; then - AC_DEFINE(HAVE_INTMAX_T, 1, - [Define if you have the 'intmax_t' type in or .]) - fi -]) diff -Nurb netmrg-0.19/m4/inttypes_h.m4 netmrg-0.20/m4/inttypes_h.m4 --- netmrg-0.19/m4/inttypes_h.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/inttypes_h.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,28 +0,0 @@ -# inttypes_h.m4 serial 5 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -# Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, -# doesn't clash with , and declares uintmax_t. - -AC_DEFUN([jm_AC_HEADER_INTTYPES_H], -[ - AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, - [AC_TRY_COMPILE( - [#include -#include ], - [uintmax_t i = (uintmax_t) -1;], - jm_ac_cv_header_inttypes_h=yes, - jm_ac_cv_header_inttypes_h=no)]) - if test $jm_ac_cv_header_inttypes_h = yes; then - AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, - [Define if exists, doesn't clash with , - and declares uintmax_t. ]) - fi -]) diff -Nurb netmrg-0.19/m4/inttypes.m4 netmrg-0.20/m4/inttypes.m4 --- netmrg-0.19/m4/inttypes.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/inttypes.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,27 +0,0 @@ -# inttypes.m4 serial 1 (gettext-0.11.4) -dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -# Define HAVE_INTTYPES_H if exists and doesn't clash with -# . - -AC_DEFUN([gt_HEADER_INTTYPES_H], -[ - AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h, - [ - AC_TRY_COMPILE( - [#include -#include ], - [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no) - ]) - if test $gt_cv_header_inttypes_h = yes; then - AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1, - [Define if exists and doesn't clash with .]) - fi -]) diff -Nurb netmrg-0.19/m4/inttypes-pri.m4 netmrg-0.20/m4/inttypes-pri.m4 --- netmrg-0.19/m4/inttypes-pri.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/inttypes-pri.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,32 +0,0 @@ -# inttypes-pri.m4 serial 1 (gettext-0.11.4) -dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. - -# Define PRI_MACROS_BROKEN if exists and defines the PRI* -# macros to non-string values. This is the case on AIX 4.3.3. - -AC_DEFUN([gt_INTTYPES_PRI], -[ - AC_REQUIRE([gt_HEADER_INTTYPES_H]) - if test $gt_cv_header_inttypes_h = yes; then - AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], - gt_cv_inttypes_pri_broken, - [ - AC_TRY_COMPILE([#include -#ifdef PRId32 -char *p = PRId32; -#endif -], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes) - ]) - fi - if test "$gt_cv_inttypes_pri_broken" = yes; then - AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1, - [Define if exists and defines unusable PRI* macros.]) - fi -]) diff -Nurb netmrg-0.19/m4/isc-posix.m4 netmrg-0.20/m4/isc-posix.m4 --- netmrg-0.19/m4/isc-posix.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/isc-posix.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,26 +0,0 @@ -# isc-posix.m4 serial 2 (gettext-0.11.2) -dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -# This file is not needed with autoconf-2.53 and newer. Remove it in 2005. - -# This test replaces the one in autoconf. -# Currently this macro should have the same name as the autoconf macro -# because gettext's gettext.m4 (distributed in the automake package) -# still uses it. Otherwise, the use in gettext.m4 makes autoheader -# give these diagnostics: -# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX -# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX - -undefine([AC_ISC_POSIX]) - -AC_DEFUN([AC_ISC_POSIX], - [ - dnl This test replaces the obsolescent AC_ISC_POSIX kludge. - AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) - ] -) diff -Nurb netmrg-0.19/m4/lcmessage.m4 netmrg-0.20/m4/lcmessage.m4 --- netmrg-0.19/m4/lcmessage.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/lcmessage.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,32 +0,0 @@ -# lcmessage.m4 serial 3 (gettext-0.11.3) -dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. -dnl -dnl This file can can be used in projects which are not available under -dnl the GNU General Public License or the GNU Library General Public -dnl License but which still want to provide support for the GNU gettext -dnl functionality. -dnl Please note that the actual code of the GNU gettext library is covered -dnl by the GNU Library General Public License, and the rest of the GNU -dnl gettext package package is covered by the GNU General Public License. -dnl They are *not* in the public domain. - -dnl Authors: -dnl Ulrich Drepper , 1995. - -# Check whether LC_MESSAGES is available in . - -AC_DEFUN([AM_LC_MESSAGES], -[ - AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, - [AC_TRY_LINK([#include ], [return LC_MESSAGES], - am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) - if test $am_cv_val_LC_MESSAGES = yes; then - AC_DEFINE(HAVE_LC_MESSAGES, 1, - [Define if your file defines LC_MESSAGES.]) - fi -]) diff -Nurb netmrg-0.19/m4/lib-ld.m4 netmrg-0.20/m4/lib-ld.m4 --- netmrg-0.19/m4/lib-ld.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/lib-ld.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ # lib-ld.m4 serial 3 (gettext-0.13) dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl Subroutines of libtool.m4, dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision diff -Nurb netmrg-0.19/m4/lib-link.m4 netmrg-0.20/m4/lib-link.m4 --- netmrg-0.19/m4/lib-link.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/lib-link.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,13 +1,13 @@ -# lib-link.m4 serial 4 (gettext-0.12) -dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# lib-link.m4 serial 9 (gettext-0.16) +dnl Copyright (C) 2001-2006 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. +AC_PREREQ(2.50) + dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and dnl the libraries corresponding to explicit and implicit dependencies. dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and @@ -95,6 +95,8 @@ dnl hardcode_direct, hardcode_minus_L. AC_DEFUN([AC_LIB_RPATH], [ + dnl Tell automake >= 1.10 to complain if config.rpath is missing. + m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host @@ -124,6 +126,7 @@ dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. AC_DEFUN([AC_LIB_LINKFLAGS_BODY], [ + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) dnl By default, look in $includedir and $libdir. @@ -146,7 +149,7 @@ ]) else additional_includedir="$withval/include" - additional_libdir="$withval/lib" + additional_libdir="$withval/$acl_libdirstem" fi fi ]) @@ -195,9 +198,16 @@ found_so= found_a= if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$additional_libdir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$additional_libdir/lib$name.dll.a"; }; }; then found_dir="$additional_libdir" + if test -f "$additional_libdir/lib$name.$shlibext"; then found_so="$additional_libdir/lib$name.$shlibext" + else + found_so="$additional_libdir/lib$name.dll.a" + fi if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi @@ -217,9 +227,16 @@ case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + if test -n "$shlibext" \ + && { test -f "$dir/lib$name.$shlibext" \ + || { test "$shlibext" = dll \ + && test -f "$dir/lib$name.dll.a"; }; }; then found_dir="$dir" + if test -f "$dir/lib$name.$shlibext"; then found_so="$dir/lib$name.$shlibext" + else + found_so="$dir/lib$name.dll.a" + fi if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi @@ -246,7 +263,7 @@ dnl Linking with a shared library. We attempt to hardcode its dnl directory into the executable's runpath, unless it's the dnl standard /usr/lib. - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/$acl_libdirstem"; then dnl No hardcoding is needed. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else @@ -332,8 +349,8 @@ dnl Assume the include files are nearby. additional_includedir= case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` additional_includedir="$basedir/include" ;; esac @@ -350,7 +367,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -394,12 +411,12 @@ dnl 3. if it's already present in $LDFLAGS or the already dnl constructed $LIBNAME, dnl 4. if it doesn't exist as a directory. - if test "X$additional_libdir" != "X/usr/lib"; then + if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -549,3 +566,79 @@ fi done ]) + +dnl For those cases where a variable contains several -L and -l options +dnl referring to unknown libraries and directories, this macro determines the +dnl necessary additional linker options for the runtime path. +dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL]) +dnl sets LDADDVAR to linker options needed together with LIBSVALUE. +dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed, +dnl otherwise linking without libtool is assumed. +AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], +[ + AC_REQUIRE([AC_LIB_RPATH]) + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) + $1= + if test "$enable_rpath" != no; then + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + dnl Use an explicit option to hardcode directories into the resulting + dnl binary. + rpathdirs= + next= + for opt in $2; do + if test -n "$next"; then + dir="$next" + dnl No need to hardcode the standard /usr/lib. + if test "X$dir" != "X/usr/$acl_libdirstem"; then + rpathdirs="$rpathdirs $dir" + fi + next= + else + case $opt in + -L) next=yes ;; + -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'` + dnl No need to hardcode the standard /usr/lib. + if test "X$dir" != "X/usr/$acl_libdirstem"; then + rpathdirs="$rpathdirs $dir" + fi + next= ;; + *) next= ;; + esac + fi + done + if test "X$rpathdirs" != "X"; then + if test -n ""$3""; then + dnl libtool is used for linking. Use -R options. + for dir in $rpathdirs; do + $1="${$1}${$1:+ }-R$dir" + done + else + dnl The linker is used for linking directly. + if test -n "$hardcode_libdir_separator"; then + dnl Weird platform: only the last -rpath option counts, the user + dnl must pass all path elements in one option. + alldirs= + for dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + $1="$flag" + else + dnl The -rpath options are cumulative. + for dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + $1="${$1}${$1:+ }$flag" + done + fi + fi + fi + fi + fi + AC_SUBST([$1]) +]) diff -Nurb netmrg-0.19/m4/lib-prefix.m4 netmrg-0.20/m4/lib-prefix.m4 --- netmrg-0.19/m4/lib-prefix.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/lib-prefix.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ -# lib-prefix.m4 serial 3 (gettext-0.13) -dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# lib-prefix.m4 serial 5 (gettext-0.15) +dnl Copyright (C) 2001-2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl From Bruno Haible. @@ -26,6 +24,7 @@ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) dnl By default, look in $includedir and $libdir. use_additional=yes @@ -47,7 +46,7 @@ ]) else additional_includedir="$withval/include" - additional_libdir="$withval/lib" + additional_libdir="$withval/$acl_libdirstem" fi fi ]) @@ -71,7 +70,7 @@ if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in - linux*) haveit=yes;; + linux* | gnu* | k*bsd*-gnu) haveit=yes;; esac fi fi @@ -89,7 +88,7 @@ dnl 2. if it's already present in $LDFLAGS, dnl 3. if it's /usr/local/lib and we are using GCC on Linux, dnl 4. if it doesn't exist as a directory. - if test "X$additional_libdir" != "X/usr/lib"; then + if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then haveit= for x in $LDFLAGS; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) @@ -99,7 +98,7 @@ fi done if test -z "$haveit"; then - if test "X$additional_libdir" = "X/usr/local/lib"; then + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; @@ -153,3 +152,34 @@ exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" ]) + +dnl AC_LIB_PREPARE_MULTILIB creates a variable acl_libdirstem, containing +dnl the basename of the libdir, either "lib" or "lib64". +AC_DEFUN([AC_LIB_PREPARE_MULTILIB], +[ + dnl There is no formal standard regarding lib and lib64. The current + dnl practice is that on a system supporting 32-bit and 64-bit instruction + dnl sets or ABIs, 64-bit libraries go under $prefix/lib64 and 32-bit + dnl libraries go under $prefix/lib. We determine the compiler's default + dnl mode by looking at the compiler's library search path. If at least + dnl of its elements ends in /lib64 or points to a directory whose absolute + dnl pathname ends in /lib64, we assume a 64-bit ABI. Otherwise we use the + dnl default, namely "lib". + acl_libdirstem=lib + searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib64 ) acl_libdirstem=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + fi +]) diff -Nurb netmrg-0.19/m4/longdouble.m4 netmrg-0.20/m4/longdouble.m4 --- netmrg-0.19/m4/longdouble.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/longdouble.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,30 +0,0 @@ -# longdouble.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. -dnl Test whether the compiler supports the 'long double' type. -dnl Prerequisite: AC_PROG_CC - -AC_DEFUN([gt_TYPE_LONGDOUBLE], -[ - AC_CACHE_CHECK([for long double], gt_cv_c_long_double, - [if test "$GCC" = yes; then - gt_cv_c_long_double=yes - else - AC_TRY_COMPILE([ - /* The Stardent Vistra knows sizeof(long double), but does not support it. */ - long double foo = 0.0; - /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ - int array [2*(sizeof(long double) >= sizeof(double)) - 1]; - ], , - gt_cv_c_long_double=yes, gt_cv_c_long_double=no) - fi]) - if test $gt_cv_c_long_double = yes; then - AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if you have the 'long double' type.]) - fi -]) diff -Nurb netmrg-0.19/m4/longlong.m4 netmrg-0.20/m4/longlong.m4 --- netmrg-0.19/m4/longlong.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/longlong.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,25 +0,0 @@ -# longlong.m4 serial 4 -dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -# Define HAVE_LONG_LONG if 'long long' works. - -AC_DEFUN([jm_AC_TYPE_LONG_LONG], -[ - AC_CACHE_CHECK([for long long], ac_cv_type_long_long, - [AC_TRY_LINK([long long ll = 1LL; int i = 63;], - [long long llmax = (long long) -1; - return ll << i | ll >> i | llmax / ll | llmax % ll;], - ac_cv_type_long_long=yes, - ac_cv_type_long_long=no)]) - if test $ac_cv_type_long_long = yes; then - AC_DEFINE(HAVE_LONG_LONG, 1, - [Define if you have the 'long long' type.]) - fi -]) diff -Nurb netmrg-0.19/m4/Makefile.in netmrg-0.20/m4/Makefile.in --- netmrg-0.19/m4/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/m4/Makefile.in 2008-04-12 07:52:40.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,15 +13,11 @@ # PARTICULAR PURPOSE. @SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -52,8 +48,6 @@ DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -77,11 +71,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -91,9 +89,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -111,13 +111,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -129,28 +129,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 intmax.m4 inttypes.m4 inttypes_h.m4 inttypes-pri.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 longdouble.m4 longlong.m4 nls.m4 po.m4 printf-posix.m4 progtest.m4 signed.m4 size_max.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 wchar_t.m4 wint_t.m4 xsize.m4 all: all-am @@ -184,7 +195,6 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: tags: TAGS TAGS: @@ -193,22 +203,21 @@ distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -267,12 +276,20 @@ install-data-am: +install-dvi: install-dvi-am + install-exec-am: +install-html: install-html-am + install-info: install-info-am install-man: +install-pdf: install-pdf-am + +install-ps: install-ps-am + installcheck-am: maintainer-clean: maintainer-clean-am @@ -291,16 +308,19 @@ ps-am: -uninstall-am: uninstall-info-am +uninstall-am: + +.MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ - mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \ - uninstall-info-am + mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff -Nurb netmrg-0.19/m4/nls.m4 netmrg-0.20/m4/nls.m4 --- netmrg-0.19/m4/nls.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/nls.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ -# nls.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# nls.m4 serial 3 (gettext-0.15) +dnl Copyright (C) 1995-2003, 2005-2006 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -19,6 +17,8 @@ dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. +AC_PREREQ(2.50) + AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) @@ -29,21 +29,3 @@ AC_MSG_RESULT($USE_NLS) AC_SUBST(USE_NLS) ]) - -AC_DEFUN([AM_MKINSTALLDIRS], -[ - dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly - dnl find the mkinstalldirs script in another subdir but $(top_srcdir). - dnl Try to locate it. - MKINSTALLDIRS= - if test -n "$ac_aux_dir"; then - case "$ac_aux_dir" in - /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; - *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; - esac - fi - if test -z "$MKINSTALLDIRS"; then - MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" - fi - AC_SUBST(MKINSTALLDIRS) -]) diff -Nurb netmrg-0.19/m4/po.m4 netmrg-0.20/m4/po.m4 --- netmrg-0.19/m4/po.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/po.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ -# po.m4 serial 3 (gettext-0.14) -dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# po.m4 serial 13 (gettext-0.15) +dnl Copyright (C) 1995-2006 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -19,12 +17,14 @@ dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. +AC_PREREQ(2.50) + dnl Checks for all prerequisites of the po subdirectory. AC_DEFUN([AM_PO_SUBDIRS], [ AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl - AC_REQUIRE([AM_MKINSTALLDIRS])dnl + AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake AC_REQUIRE([AM_NLS])dnl dnl Perform the following tests also if --disable-nls has been given, @@ -34,59 +34,57 @@ dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. dnl The second test excludes FreeBSD msgfmt. AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, - [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && + [$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + dnl Test whether it is GNU msgfmt >= 0.15. +changequote(,)dnl + case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; + *) MSGFMT_015=$MSGFMT ;; + esac +changequote([,])dnl + AC_SUBST([MSGFMT_015]) +changequote(,)dnl + case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; + *) GMSGFMT_015=$GMSGFMT ;; + esac +changequote([,])dnl + AC_SUBST([GMSGFMT_015]) + dnl Search for GNU xgettext 0.12 or newer in the PATH. dnl The first test excludes Solaris xgettext and early GNU xgettext versions. dnl The second test excludes FreeBSD xgettext. AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, - [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && + [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) dnl Remove leftover from FreeBSD xgettext call. rm -f messages.po + dnl Test whether it is GNU xgettext >= 0.15. +changequote(,)dnl + case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; + *) XGETTEXT_015=$XGETTEXT ;; + esac +changequote([,])dnl + AC_SUBST([XGETTEXT_015]) + dnl Search for GNU msgmerge 0.11 or newer in the PATH. AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, - [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) - - dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. - dnl Test whether we really found GNU msgfmt. - if test "$GMSGFMT" != ":"; then - dnl If it is no GNU msgfmt we define it as : so that the - dnl Makefiles still can work. - if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && - (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - : ; - else - GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` - AC_MSG_RESULT( - [found $GMSGFMT program is not GNU msgfmt; ignore it]) - GMSGFMT=":" - fi - fi + [$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :) - dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. - dnl Test whether we really found GNU xgettext. - if test "$XGETTEXT" != ":"; then - dnl If it is no GNU xgettext we define it as : so that the - dnl Makefiles still can work. - if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && - (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then - : ; - else - AC_MSG_RESULT( - [found xgettext program is not GNU xgettext; ignore it]) - XGETTEXT=":" - fi - dnl Remove leftover from FreeBSD xgettext call. - rm -f messages.po - fi + dnl Installation directories. + dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we + dnl have to define it here, so that it can be used in po/Makefile. + test -n "$localedir" || localedir='${datadir}/locale' + AC_SUBST([localedir]) - AC_OUTPUT_COMMANDS([ + AC_CONFIG_COMMANDS([po-directories], [[ for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in @@ -106,6 +104,9 @@ /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" @@ -119,12 +120,13 @@ if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` - # Hide the ALL_LINGUAS assigment from automake. + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` + # Hide the ALL_LINGUAS assigment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. + # Hide the ALL_LINGUAS assigment from automake < 1.5. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES @@ -194,10 +196,10 @@ fi ;; esac - done], + done]], [# Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it - # from automake. + # from automake < 1.5. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" @@ -283,7 +285,7 @@ changequote([,])dnl # Set POTFILES to the value of the Makefile variable POTFILES. - sed_x_POTFILES="`$gt_echo \"$sed_x_variable\" | sed -e '/^ *#/d' -e 's/VARIABLE/POTFILES/g'`" + sed_x_POTFILES=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/POTFILES/g'` POTFILES=`sed -n -e "$sed_x_POTFILES" < "$ac_file"` # Compute POTFILES_DEPS as # $(foreach file, $(POTFILES), $(top_srcdir)/$(file)) @@ -298,14 +300,14 @@ fi if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. - ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` + ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # Set ALL_LINGUAS to the value of the Makefile variable LINGUAS. - sed_x_LINGUAS="`$gt_echo \"$sed_x_variable\" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'`" + sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'` ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"` fi - # Hide the ALL_LINGUAS assigment from automake. + # Hide the ALL_LINGUAS assigment from automake < 1.5. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) @@ -348,7 +350,7 @@ QMFILES="$QMFILES $srcdirpre$lang.qm" frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg" - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` RESOURCESDLLFILES="$RESOURCESDLLFILES $srcdirpre$frobbedlang/\$(DOMAIN).resources.dll" done # CATALOGS depends on both $ac_dir and the user's LINGUAS @@ -389,7 +391,7 @@ QTCATALOGS="$QTCATALOGS $lang.qm" frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` TCLCATALOGS="$TCLCATALOGS $frobbedlang.msg" - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` CSHARPCATALOGS="$CSHARPCATALOGS $frobbedlang/\$(DOMAIN).resources.dll" done fi @@ -409,7 +411,7 @@ if grep -l '@CSHARPCATALOGS@' "$ac_file" > /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do - frobbedlang=`echo $lang | sed -e 's/_/-/g'` + frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` cat >> "$ac_file.tmp" < -#include -/* The string "%2$d %1$d", with dollar characters protected from the shell's - dollar expansion (possibly an autoconf bug). */ -static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -static char buf[100]; -int main () -{ - sprintf (buf, format, 33, 55); - return (strcmp (buf, "55 33") != 0); -}], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no, - [ - AC_EGREP_CPP(notposix, [ -#if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ - notposix -#endif - ], gt_cv_func_printf_posix="guessing no", - gt_cv_func_printf_posix="guessing yes") - ]) - ]) - case $gt_cv_func_printf_posix in - *yes) - AC_DEFINE(HAVE_POSIX_PRINTF, 1, - [Define if your printf() function supports format strings with positions.]) - ;; - esac -]) diff -Nurb netmrg-0.19/m4/progtest.m4 netmrg-0.20/m4/progtest.m4 --- netmrg-0.19/m4/progtest.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/progtest.m4 2008-03-27 06:25:37.000000000 +0530 @@ -1,10 +1,8 @@ -# progtest.m4 serial 3 (gettext-0.12) -dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. +# progtest.m4 serial 4 (gettext-0.14.2) +dnl Copyright (C) 1996-2003, 2005 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public @@ -18,6 +16,8 @@ dnl Authors: dnl Ulrich Drepper , 1996. +AC_PREREQ(2.50) + # Search path for a program which passes the given test. dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, @@ -67,6 +67,7 @@ test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then + echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" break 2 diff -Nurb netmrg-0.19/m4/signed.m4 netmrg-0.20/m4/signed.m4 --- netmrg-0.19/m4/signed.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/signed.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,19 +0,0 @@ -# signed.m4 serial 1 (gettext-0.10.40) -dnl Copyright (C) 2001-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. - -AC_DEFUN([bh_C_SIGNED], -[ - AC_CACHE_CHECK([for signed], bh_cv_c_signed, - [AC_TRY_COMPILE(, [signed char x;], bh_cv_c_signed=yes, bh_cv_c_signed=no)]) - if test $bh_cv_c_signed = no; then - AC_DEFINE(signed, , - [Define to empty if the C compiler doesn't support this keyword.]) - fi -]) diff -Nurb netmrg-0.19/m4/size_max.m4 netmrg-0.20/m4/size_max.m4 --- netmrg-0.19/m4/size_max.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/size_max.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,61 +0,0 @@ -# size_max.m4 serial 2 -dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. - -AC_DEFUN([gl_SIZE_MAX], -[ - AC_CHECK_HEADERS(stdint.h) - dnl First test whether the system already has SIZE_MAX. - AC_MSG_CHECKING([for SIZE_MAX]) - result= - AC_EGREP_CPP([Found it], [ -#include -#if HAVE_STDINT_H -#include -#endif -#ifdef SIZE_MAX -Found it -#endif -], result=yes) - if test -z "$result"; then - dnl Define it ourselves. Here we assume that the type 'size_t' is not wider - dnl than the type 'unsigned long'. - dnl The _AC_COMPUTE_INT macro works up to LONG_MAX, since it uses 'expr', - dnl which is guaranteed to work from LONG_MIN to LONG_MAX. - _AC_COMPUTE_INT([~(size_t)0 / 10], res_hi, - [#include ], result=?) - _AC_COMPUTE_INT([~(size_t)0 % 10], res_lo, - [#include ], result=?) - _AC_COMPUTE_INT([sizeof (size_t) <= sizeof (unsigned int)], fits_in_uint, - [#include ], result=?) - if test "$fits_in_uint" = 1; then - dnl Even though SIZE_MAX fits in an unsigned int, it must be of type - dnl 'unsigned long' if the type 'size_t' is the same as 'unsigned long'. - AC_TRY_COMPILE([#include - extern size_t foo; - extern unsigned long foo; - ], [], fits_in_uint=0) - fi - if test -z "$result"; then - if test "$fits_in_uint" = 1; then - result="$res_hi$res_lo"U - else - result="$res_hi$res_lo"UL - fi - else - dnl Shouldn't happen, but who knows... - result='~(size_t)0' - fi - fi - AC_MSG_RESULT([$result]) - if test "$result" != yes; then - AC_DEFINE_UNQUOTED([SIZE_MAX], [$result], - [Define as the maximum value of type 'size_t', if the system doesn't define it.]) - fi -]) diff -Nurb netmrg-0.19/m4/stdint_h.m4 netmrg-0.20/m4/stdint_h.m4 --- netmrg-0.19/m4/stdint_h.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/stdint_h.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,28 +0,0 @@ -# stdint_h.m4 serial 3 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -# Define HAVE_STDINT_H_WITH_UINTMAX if exists, -# doesn't clash with , and declares uintmax_t. - -AC_DEFUN([jm_AC_HEADER_STDINT_H], -[ - AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, - [AC_TRY_COMPILE( - [#include -#include ], - [uintmax_t i = (uintmax_t) -1;], - jm_ac_cv_header_stdint_h=yes, - jm_ac_cv_header_stdint_h=no)]) - if test $jm_ac_cv_header_stdint_h = yes; then - AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, - [Define if exists, doesn't clash with , - and declares uintmax_t. ]) - fi -]) diff -Nurb netmrg-0.19/m4/uintmax_t.m4 netmrg-0.20/m4/uintmax_t.m4 --- netmrg-0.19/m4/uintmax_t.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/uintmax_t.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,32 +0,0 @@ -# uintmax_t.m4 serial 7 (gettext-0.12) -dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -AC_PREREQ(2.13) - -# Define uintmax_t to 'unsigned long' or 'unsigned long long' -# if it is not already defined in or . - -AC_DEFUN([jm_AC_TYPE_UINTMAX_T], -[ - AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_AC_HEADER_STDINT_H]) - if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then - AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) - test $ac_cv_type_unsigned_long_long = yes \ - && ac_type='unsigned long long' \ - || ac_type='unsigned long' - AC_DEFINE_UNQUOTED(uintmax_t, $ac_type, - [Define to unsigned long or unsigned long long - if and don't define.]) - else - AC_DEFINE(HAVE_UINTMAX_T, 1, - [Define if you have the 'uintmax_t' type in or .]) - fi -]) diff -Nurb netmrg-0.19/m4/ulonglong.m4 netmrg-0.20/m4/ulonglong.m4 --- netmrg-0.19/m4/ulonglong.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/ulonglong.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,25 +0,0 @@ -# ulonglong.m4 serial 3 -dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert. - -# Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works. - -AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], -[ - AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, - [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;], - [unsigned long long ullmax = (unsigned long long) -1; - return ull << i | ull >> i | ullmax / ull | ullmax % ull;], - ac_cv_type_unsigned_long_long=yes, - ac_cv_type_unsigned_long_long=no)]) - if test $ac_cv_type_unsigned_long_long = yes; then - AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1, - [Define if you have the 'unsigned long long' type.]) - fi -]) diff -Nurb netmrg-0.19/m4/wchar_t.m4 netmrg-0.20/m4/wchar_t.m4 --- netmrg-0.19/m4/wchar_t.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/wchar_t.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,22 +0,0 @@ -# wchar_t.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. -dnl Test whether has the 'wchar_t' type. -dnl Prerequisite: AC_PROG_CC - -AC_DEFUN([gt_TYPE_WCHAR_T], -[ - AC_CACHE_CHECK([for wchar_t], gt_cv_c_wchar_t, - [AC_TRY_COMPILE([#include - wchar_t foo = (wchar_t)'\0';], , - gt_cv_c_wchar_t=yes, gt_cv_c_wchar_t=no)]) - if test $gt_cv_c_wchar_t = yes; then - AC_DEFINE(HAVE_WCHAR_T, 1, [Define if you have the 'wchar_t' type.]) - fi -]) diff -Nurb netmrg-0.19/m4/wint_t.m4 netmrg-0.20/m4/wint_t.m4 --- netmrg-0.19/m4/wint_t.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/wint_t.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,22 +0,0 @@ -# wint_t.m4 serial 1 (gettext-0.12) -dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Bruno Haible. -dnl Test whether has the 'wint_t' type. -dnl Prerequisite: AC_PROG_CC - -AC_DEFUN([gt_TYPE_WINT_T], -[ - AC_CACHE_CHECK([for wint_t], gt_cv_c_wint_t, - [AC_TRY_COMPILE([#include - wint_t foo = (wchar_t)'\0';], , - gt_cv_c_wint_t=yes, gt_cv_c_wint_t=no)]) - if test $gt_cv_c_wint_t = yes; then - AC_DEFINE(HAVE_WINT_T, 1, [Define if you have the 'wint_t' type.]) - fi -]) diff -Nurb netmrg-0.19/m4/xsize.m4 netmrg-0.20/m4/xsize.m4 --- netmrg-0.19/m4/xsize.m4 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/m4/xsize.m4 1970-01-01 05:30:00.000000000 +0530 @@ -1,14 +0,0 @@ -# xsize.m4 serial 2 -dnl Copyright (C) 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_XSIZE], -[ - dnl Prerequisites of lib/xsize.h. - AC_REQUIRE([gl_SIZE_MAX]) - AC_CHECK_HEADERS(stdint.h) -]) diff -Nurb netmrg-0.19/Makefile.in netmrg-0.20/Makefile.in --- netmrg-0.19/Makefile.in 2006-02-04 06:41:33.000000000 +0530 +++ netmrg-0.20/Makefile.in 2008-04-12 07:52:41.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,15 +17,11 @@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = . am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -57,7 +53,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 + configure.lineno config.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/src/include/config.h CONFIG_CLEAN_FILES = subst bin/rrdedit src/include/netmrg.h \ @@ -77,10 +73,11 @@ DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -98,6 +95,8 @@ $(netmrg_share_db_DATA) $(netmrg_share_doc_DATA) \ $(netmrg_share_html_DATA) $(netmrg_share_images_DATA) \ $(netmrg_var_log_DATA) +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) @@ -113,8 +112,6 @@ distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -138,11 +135,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -152,9 +153,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -172,13 +175,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -190,28 +193,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -294,7 +308,7 @@ src/include/config.h: src/include/stamp-h1 @if test ! -f $@; then \ rm -f src/include/stamp-h1; \ - $(MAKE) src/include/stamp-h1; \ + $(MAKE) $(AM_MAKEFLAGS) src/include/stamp-h1; \ else :; fi src/include/stamp-h1: $(top_srcdir)/src/include/config.h.in $(top_builddir)/config.status @@ -331,7 +345,6 @@ echo " rm -f '$(DESTDIR)$(netmrg_libexecdir)/$$f'"; \ rm -f "$(DESTDIR)$(netmrg_libexecdir)/$$f"; \ done -uninstall-info-am: uninstall-netmrg_man1DATA: @$(NORMAL_UNINSTALL) @@ -382,7 +395,7 @@ done install-netmrg_var_logDATA: $(netmrg_var_log_DATA) @$(NORMAL_INSTALL) - test -z "$(netmrg_var_logdir)" || $(mkdir_p) "$(DESTDIR)$(netmrg_var_logdir)" + test -z "$(netmrg_var_logdir)" || $(MKDIR_P) "$(DESTDIR)$(netmrg_var_logdir)" @list='$(netmrg_var_log_DATA)'; for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ f=$(am__strip_dir) \ @@ -429,8 +442,7 @@ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: +$(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ @@ -532,24 +544,22 @@ distdir: $(DISTFILES) $(am__remove_distdir) - mkdir $(distdir) - $(mkdir_p) $(distdir)/. $(distdir)/bin $(distdir)/etc $(distdir)/m4 $(distdir)/po $(distdir)/src/include $(distdir)/www/include - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + test -d $(distdir) || mkdir $(distdir) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -563,7 +573,7 @@ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ @@ -571,6 +581,8 @@ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ @@ -578,7 +590,7 @@ -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ - ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz @@ -653,7 +665,7 @@ $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ - sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: @cd $(distuninstallcheck_dir) \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ @@ -678,7 +690,7 @@ installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(netmrg_libexecdir)" "$(DESTDIR)$(netmrg_man1dir)" "$(DESTDIR)$(netmrg_share_bindstatsdir)" "$(DESTDIR)$(netmrg_share_dbdir)" "$(DESTDIR)$(netmrg_share_docdir)" "$(DESTDIR)$(netmrg_share_htmldir)" "$(DESTDIR)$(netmrg_share_imagesdir)" "$(DESTDIR)$(netmrg_var_logdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install-exec: install-exec-recursive install-data: install-data-recursive @@ -724,12 +736,20 @@ install-netmrg_share_docDATA install-netmrg_share_htmlDATA \ install-netmrg_share_imagesDATA install-netmrg_var_logDATA +install-dvi: install-dvi-recursive + install-exec-am: install-binSCRIPTS install-netmrg_libexecSCRIPTS +install-html: install-html-recursive + install-info: install-info-recursive install-man: +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -750,35 +770,35 @@ ps-am: -uninstall-am: uninstall-binSCRIPTS uninstall-info-am \ - uninstall-netmrg_libexecSCRIPTS uninstall-netmrg_man1DATA \ - uninstall-netmrg_share_bindstatsDATA \ +uninstall-am: uninstall-binSCRIPTS uninstall-netmrg_libexecSCRIPTS \ + uninstall-netmrg_man1DATA uninstall-netmrg_share_bindstatsDATA \ uninstall-netmrg_share_dbDATA uninstall-netmrg_share_docDATA \ uninstall-netmrg_share_htmlDATA \ uninstall-netmrg_share_imagesDATA uninstall-netmrg_var_logDATA -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ - check-am clean clean-generic clean-recursive ctags \ - ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-shar \ - dist-tarZ dist-zip distcheck distclean distclean-generic \ - distclean-hdr distclean-recursive distclean-tags \ - distcleancheck distdir distuninstallcheck dvi dvi-am html \ - html-am info info-am install install-am install-binSCRIPTS \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man \ - install-netmrg_libexecSCRIPTS install-netmrg_man1DATA \ - install-netmrg_share_bindstatsDATA install-netmrg_share_dbDATA \ - install-netmrg_share_docDATA install-netmrg_share_htmlDATA \ - install-netmrg_share_imagesDATA install-netmrg_var_logDATA \ - install-strip installcheck installcheck-am installdirs \ - installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-generic \ - mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am uninstall-binSCRIPTS uninstall-info-am \ - uninstall-netmrg_libexecSCRIPTS uninstall-netmrg_man1DATA \ - uninstall-netmrg_share_bindstatsDATA \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am am--refresh check check-am clean clean-generic \ + ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ + dist-shar dist-tarZ dist-zip distcheck distclean \ + distclean-generic distclean-hdr distclean-tags distcleancheck \ + distdir distuninstallcheck dvi dvi-am html html-am info \ + info-am install install-am install-binSCRIPTS install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-netmrg_libexecSCRIPTS \ + install-netmrg_man1DATA install-netmrg_share_bindstatsDATA \ + install-netmrg_share_dbDATA install-netmrg_share_docDATA \ + install-netmrg_share_htmlDATA install-netmrg_share_imagesDATA \ + install-netmrg_var_logDATA install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ + pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ + uninstall-binSCRIPTS uninstall-netmrg_libexecSCRIPTS \ + uninstall-netmrg_man1DATA uninstall-netmrg_share_bindstatsDATA \ uninstall-netmrg_share_dbDATA uninstall-netmrg_share_docDATA \ uninstall-netmrg_share_htmlDATA \ uninstall-netmrg_share_imagesDATA uninstall-netmrg_var_logDATA diff -Nurb netmrg-0.19/po/Makefile.in.in netmrg-0.20/po/Makefile.in.in --- netmrg-0.19/po/Makefile.in.in 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/po/Makefile.in.in 2008-03-27 06:25:37.000000000 +0530 @@ -22,14 +22,14 @@ prefix = @prefix@ exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ datadir = @datadir@ localedir = $(datadir)/locale gettextsrcdir = $(datadir)/gettext/po INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ -MKINSTALLDIRS = @MKINSTALLDIRS@ -mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ @@ -277,7 +277,7 @@ clean: mostlyclean distclean: clean - rm -f Makefile Makefile.in POTFILES *.mo + rm -f Makefile Makefile.in stamp-po POTFILES *.mo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" diff -Nurb netmrg-0.19/po/stamp-po netmrg-0.20/po/stamp-po --- netmrg-0.19/po/stamp-po 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/po/stamp-po 1970-01-01 05:30:00.000000000 +0530 @@ -1 +0,0 @@ -timestamp diff -Nurb netmrg-0.19/README netmrg-0.20/README --- netmrg-0.19/README 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/README 2008-04-12 07:44:39.000000000 +0530 @@ -1,39 +1,39 @@ - The NetMRG Reference Brady Alleman Douglas E. Warner - Copyright © 2003-2006 Brady Alleman and Douglas E. Warner + Copyright © 2003-2007 Brady Alleman and Douglas E. Warner This project is licensed under the terms of the MIT License. Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following + conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. All product names are property of their respective owners. Such names are used for identification purposes only and are not indicative of endorsement by or of any company, organization, product, or platform. - _________________________________________________________ + __________________________________________________________ Table of Contents I. Overview @@ -61,117 +61,132 @@ Table of Contents 1. Introduction 2. Revision History - _________________________________________________________ + __________________________________________________________ Chapter 1. Introduction - Welcome to NetMRG! NetMRG is a database-driven network monitoring - and graphing tool for use on Linux systems. It offers an intuitive - web-based configuration, customized monitoring capabilities for - unusual situations, a fast multi-threaded polling application, and - brilliant graphs rendered by RRDTOOL. - - This document aims to guide you swiftly through the installation and - configuration of NetMRG, as well as act as a reference for those - with existing installations. - _________________________________________________________ + Welcome to NetMRG! NetMRG is a database-driven network + monitoring and graphing tool for use on Linux systems. It + offers an intuitive web-based configuration, customized + monitoring capabilities for unusual situations, a fast + multi-threaded polling application, and brilliant graphs + rendered by RRDTOOL. + + This document aims to guide you swiftly through the + installation and configuration of NetMRG, as well as act as a + reference for those with existing installations. + __________________________________________________________ Chapter 2. Revision History + * 0.20 + 2008.04.11 + Major feature enhancements and bug fixes; Fixed compilation + under GCC 4.3; restructuring of view pages to show graph + titles (for easier in-page searching) and icons for graph + actions; fixed mysql 5 compatibility; added device + properties (keeps track of things like model #, serial #, + etc); added ability to chain interfaces to travel between + them; added ajax monitor selection on graphs. * 0.19 2006.02.03 - Major Feature Enhancements and Bug Fixes; Major Web Interface - redesign to give more room for graphs and ease overall use. - Security enhancements behind the scenes to ensure correct - permissions checking. Added a search interface that will search - groups, devices, sub devies, and sub device parameters. RRDtool - 1.2 support (including graph smoothing); Depricated use of - netmrg_cron.sh in favor of using netmrg-gatherer; migrated bulk - of docs to wiki; numerous other bugfixes and enhancements. + Major Feature Enhancements and Bug Fixes; Major Web + Interface redesign to give more room for graphs and ease + overall use. Security enhancements behind the scenes to + ensure correct permissions checking. Added a search + interface that will search groups, devices, sub devies, and + sub device parameters. RRDtool 1.2 support (including graph + smoothing); Depricated use of netmrg_cron.sh in favor of + using netmrg-gatherer; migrated bulk of docs to wiki; + numerous other bugfixes and enhancements. * 0.18.2 2004.11.09 - Minor Bug Fixes; Fixed some escaping problems on the interface - cache page, disabled the 'quickprint' Net-SNMP option for better - compatibility, fixed the snmp-failure test, fixed an SVO-user - view issue, and added failover for duplicate ifNames when adding - interfaces. + Minor Bug Fixes; Fixed some escaping problems on the + interface cache page, disabled the 'quickprint' Net-SNMP + option for better compatibility, fixed the snmp-failure + test, fixed an SVO-user view issue, and added failover for + duplicate ifNames when adding interfaces. * 0.18.1 2004.11.01 - Minor Bug Fixes; Fixed a small bug where the gatherer would not - register negative values. + Minor Bug Fixes; Fixed a small bug where the gatherer would + not register negative values. * 0.18 2004.10.25 - Major Bug Fixes; Fixed an issue preventing form submissions on - some browsers, fixed PHP string escaping problems, fixed - inability to create inverted stacked graphs, and fixed parameter - substituion and documentation regarding notifications and - responses. Added better support on FreeBSDs (4.8-5.2) and x86-64 - architectures (Linux and FreeBSD), the ability to multiply - summed values, MySQL timeouts, simple value parsing (to get the - numeric content out of quoted numbers, etc), graphic icons for - most actions, support for a default external auth user (with + Major Bug Fixes; Fixed an issue preventing form submissions + on some browsers, fixed PHP string escaping problems, fixed + inability to create inverted stacked graphs, and fixed + parameter substituion and documentation regarding + notifications and responses. Added better support on + FreeBSDs (4.8-5.2) and x86-64 architectures (Linux and + FreeBSD), the ability to multiply summed values, MySQL + timeouts, simple value parsing (to get the numeric content + out of quoted numbers, etc), graphic icons for most + actions, support for a default external auth user (with regards to permissions), and cleaned up the gatherer build process output. * 0.17 2004.09.13 - Minor Feature Enhancements; Added colorized gatherer output, - checkbox support on multiple pages, the ability to disable - users, fixed a potential SQL-injection bug, updated navigation - on group pages, updated tutorials. + Minor Feature Enhancements; Added colorized gatherer + output, checkbox support on multiple pages, the ability to + disable users, fixed a potential SQL-injection bug, updated + navigation on group pages, updated tutorials. * 0.16 2004.06.10 - Minor Bugfixes and Feature Enhancements; fixed a user management - bug and several bugs related to 'single view only' users not - being able to see graphs, added the ability to ignore SNMP - uptime checks for devices (permitting the monitoring of broken - devices), added the ability to do an SNMP walk of an OID (useful - for the Windows SNMP agent), enhanced group/device management, - cleaned up autoconf (now supports FC2), and added experimental - syslog and daemon support in the gatherer. + Minor Bugfixes and Feature Enhancements; fixed a user + management bug and several bugs related to 'single view + only' users not being able to see graphs, added the ability + to ignore SNMP uptime checks for devices (permitting the + monitoring of broken devices), added the ability to do an + SNMP walk of an OID (useful for the Windows SNMP agent), + enhanced group/device management, cleaned up autoconf (now + supports FC2), and added experimental syslog and daemon + support in the gatherer. * 0.15 2004.05.20 - Minor Bugfixes and Feature Enhancements; fixes for various db - errors (including the infamous one on snmp_cache_view.php), - better cross-platform compilation, select all/none/invert - checkbox support, support for choosing what graph to apply to an - interface, better support for php < 4.2.0, and some security - fixes for single-view-only users. + Minor Bugfixes and Feature Enhancements; fixes for various + db errors (including the infamous one on + snmp_cache_view.php), better cross-platform compilation, + select all/none/invert checkbox support, support for + choosing what graph to apply to an interface, better + support for php < 4.2.0, and some security fixes for + single-view-only users. * 0.14 2004.03.10 Minor Bugfixes and Feature Enhancements; escaping issues in - template dereferencing, broken links on various pages, security - issues regarding manual SNMP recaching, broken duplication on - non-cutting-edge MySQL, more parameter substitution in SQL - tests, better date parsing for advanced graph view, nav-bar and - group navigation enhancements, advanced view capability for - monitor-only graphs. + template dereferencing, broken links on various pages, + security issues regarding manual SNMP recaching, broken + duplication on non-cutting-edge MySQL, more parameter + substitution in SQL tests, better date parsing for advanced + graph view, nav-bar and group navigation enhancements, + advanced view capability for monitor-only graphs. * 0.13 2003.12.19 - Minor Bugfixes and Feature Enhancements; slide show ordering, - previous slide, resume slide show, better formatting of 'sums', - errors on view editing, fixes to permissions checking, and an - occassional segfault in the gatherer was fixed. + Minor Bugfixes and Feature Enhancements; slide show + ordering, previous slide, resume slide show, better + formatting of 'sums', errors on view editing, fixes to + permissions checking, and an occassional segfault in the + gatherer was fixed. * 0.12 2003.12.15 - Major Feature Enhancents and Bugfixes; added SNMPv2 support, - fixed a bug that would cause a device to be deleted from all - groups, fixed session timeout when using external auth, added - checkbox support to interface/disk cache pages, slide show - enhancements, fixed permission issue where unauthorized users - could view/edit test_* pages + Major Feature Enhancents and Bugfixes; added SNMPv2 + support, fixed a bug that would cause a device to be + deleted from all groups, fixed session timeout when using + external auth, added checkbox support to interface/disk + cache pages, slide show enhancements, fixed permission + issue where unauthorized users could view/edit test_* pages * 0.10 2003.10.05 - Major bug fix; fixes a db error when trying to view monitors, a - bug that would always set the width and height to zero when - creating graphs, and makes conditions with 'rate of change' - work. Many documentation upgrades. + Major bug fix; fixes a db error when trying to view + monitors, a bug that would always set the width and height + to zero when creating graphs, and makes conditions with + 'rate of change' work. Many documentation upgrades. * 0.10pre2 2003.09.15 - This release focuses on adding new features and sqaushing bugs. - In addition, there is now an 'updater.php' that is required to - be run between versions. A minor change needs to be made to - everyone's 'netmrg.xml' to add an 'externalauth' field inside - the 'website' section. + This release focuses on adding new features and sqaushing + bugs. In addition, there is now an 'updater.php' that is + required to be run between versions. A minor change needs + to be made to everyone's 'netmrg.xml' to add an + 'externalauth' field inside the 'website' section. * 0.10pre1 2003.07.28 Initial publication @@ -183,7 +198,7 @@ 4. Satisfying Requirements 5. Installation Procedure 6. Upgrade Procedure - _________________________________________________________ + __________________________________________________________ Chapter 3. Software Requirements @@ -195,26 +210,26 @@ * Libxml2, Version >= 2.30 * Libstdc++, Version >= 3.2 Versions earlier than this may compile just fine, but may - experience runtime issues. Specifically, we experienced software - crashes on an SMP machine running version 2.96 that were - resolved by upgrading to 3.2. + experience runtime issues. Specifically, we experienced + software crashes on an SMP machine running version 2.96 + that were resolved by upgrading to 3.2. * NET/UCD-SNMP, Version >= 4.2.2 - _________________________________________________________ + __________________________________________________________ Chapter 4. Satisfying Requirements - Specific instructions to satisfy dependencies for certain platforms - are presented below. They should be used more as suggestions, not - necessarily step-by-step instructions. You may need to do more than - what is listed, or much less, depending on the options you selected - when installing your operating system. + Specific instructions to satisfy dependencies for certain + platforms are presented below. They should be used more as + suggestions, not necessarily step-by-step instructions. You may + need to do more than what is listed, or much less, depending on + the options you selected when installing your operating system. * Red Hat Linux - + In order to satisfy the libstdc++ requirement, Redhat 8.0 - or above is required. NetMRG may not be stable on older - versions of libstdc++. - + Install the following RPMs from your Red Hat installation - media: + + In order to satisfy the libstdc++ requirement, Redhat + 8.0 or above is required. NetMRG may not be stable on + older versions of libstdc++. + + Install the following RPMs from your Red Hat + installation media: o httpd o php o php-mysql @@ -227,14 +242,16 @@ o net-snmp-devel o net-snmp-utils + Installing RRDTOOL - o Download an RRDTOOL RPM from http://www.freshrpms.net/ + o Download an RRDTOOL RPM from + http://www.freshrpms.net/ o OR Download the RRDTOOL source from http://www.rrdtool.org/ and compile it. + Installing precompiled NetMRG RPM - Download the latest NetMRG RPM and install it as follows: + Download the latest NetMRG RPM and install it as + follows: $ rpm -Uvh netmrg-0.10.rpm - You will still have to perform the following tasks listed - in the Install Instructions: + You will still have to perform the following tasks + listed in the Install Instructions: o Setup the Database o Configure Apache o Configure the Installation @@ -250,7 +267,7 @@ + Run configure, specifying gcc32: ./configure 'LDFLAGS=-L/usr/local/gcc3/lib' 'CPPFLAGS=-I/usr/local/gcc3 /include' 'CXX=g++32' - _________________________________________________________ + __________________________________________________________ Chapter 5. Installation Procedure @@ -265,12 +282,12 @@ make make install - Note: If configure fails to locate the needed libraries they can - be manually specified. Run ./configure --help for details on the - necessary options. + Note: If configure fails to locate the needed libraries they + can be manually specified. Run ./configure --help for + details on the necessary options. 3. Setup the database - Now we need to setup the database. Please change at least the - password (netmrgpass below). + Now we need to setup the database. Please change at least + the password (netmrgpass below). mysqladmin create netmrg mysql -u root -p netmrg < share/netmrg.mysql mysql -u root -p @@ -279,70 +296,73 @@ 4. You need to modify your apache config in order to make your NetMRG installation live (commonly in /etc/httpd/conf/httpd.conf). - The first is to alias /netmrg to the installed web directory - (commonly /usr/local/var/www/netmrg/webfiles). + The first is to alias /netmrg to the installed web + directory (commonly /usr/local/var/www/netmrg/webfiles). Alias /netmrg "/usr/local/var/www/netmrg/webfiles" The easier way (if you're running Apache >= 1.3) is to just - Include the conf file we've created anywhere in your file (near - the bottom is fine). + Include the conf file we've created anywhere in your file + (near the bottom is fine). Include /usr/local/etc/netmrg.conf You will need to restart your Apache after making config - changes. Telling it to reload its config should be good enough + changes. Telling it to reload its config should be good + enough killall -HUP httpd 5. Configure the Installation - All of NetMRG's common configuration options are controlled by - an XML file, normally located at /usr/local/etc/netmrg.xml. You - should edit this file to make any necessary changes before - continuing with installation. + All of NetMRG's common configuration options are controlled + by an XML file, normally located at + /usr/local/etc/netmrg.xml. You should edit this file to + make any necessary changes before continuing with + installation. For most installations, you will at least need to edit netmrg.xml to reflect your database username and password. 6. Setup Permissions - NetMRG does not need superuser permissions to run, therefore we - will setup a user for it. + NetMRG does not need superuser permissions to run, + therefore we will setup a user for it. # useradd netmrg # chown netmrg:netmrg /usr/local/var/log/netmrg # chown netmrg:netmrg /usr/local/var/lib/netmrg/rrd 7. Setup crontab - You can setup the crontab entries in two places: either edit - /etc/crontab, or run crontab -e as the netmrg user. For 'crontab - -e', use an entry similar to this: + You can setup the crontab entries in two places: either + edit /etc/crontab, or run crontab -e as the netmrg user. + For 'crontab -e', use an entry similar to this: */5 * * * * bash -c "if [ -f /usr/local/var/lock/subsys/netmrg ]; then /usr/local/bin/netmrg-gatherer; fi" - To edit the master crontab, edit /etc/crontab and add a line - similar to this: + To edit the master crontab, edit /etc/crontab and add a + line similar to this: */5 * * * * netmrg bash -c "if [ -f /usr/local/var/lock/subsys/netmrg ] ; then /usr/local/bin/netmrg-gatherer; fi" 8. Point your web browser at your install, and start graphing - things! The default login is admin and the default password is - nimda. Point your web browser at the host you built this on - (something similar to http://yourhost.com/netmrg/) and please - change your password! - _________________________________________________________ + things! The default login is admin and the default password + is nimda. Point your web browser at the host you built this + on (something similar to http://yourhost.com/netmrg/) and + please change your password! + __________________________________________________________ Chapter 6. Upgrade Procedure After doing a 'make install' as described in the chapter on - Installing NetMRG, the next step is to run the web-based updater. - This is accomplished by logging into NetMRG with administrator - privileges, and following the prompts. NetMRG's web interface will - not operate normally and the gatherer will not run until the - web-based upgrade is performed. Non-administrator users will only - receive a message directing them to contact their NetMRG - administrator. - - If you need to perform an upgrade, the updater will prompt you to - apply all updates. Clicking this link will perform all necessary - updates for this release. - - If for some reason an update fails, or you would like to re-apply an - update for any reason, you can goto the updater and goto View all - available updates. This will present you a list of the updates that - are available and their status (applied, not applied, or error). If - you have problems updating from one version to the next, you can - force individual updates that fail so that they're considered - 'applied'. Once all updates are applied for a particular version, - the database will be automatically updated to the latest version - that has all updates applied. + Installing NetMRG, the next step is to run the web-based + updater. This is accomplished by logging into NetMRG with + administrator privileges, and following the prompts. NetMRG's + web interface will not operate normally and the gatherer will + not run until the web-based upgrade is performed. + Non-administrator users will only receive a message directing + them to contact their NetMRG administrator. + + If you need to perform an upgrade, the updater will prompt you + to apply all updates. Clicking this link will perform all + necessary updates for this release. + + If for some reason an update fails, or you would like to + re-apply an update for any reason, you can goto the updater and + goto View all available updates. This will present you a list + of the updates that are available and their status (applied, + not applied, or error). If you have problems updating from one + version to the next, you can force individual updates that fail + so that they're considered 'applied'. Once all updates are + applied for a particular version, the database will be + automatically updated to the latest version that has all + updates applied. III. Reference @@ -366,9 +386,9 @@ Description - netmrg-gatherer performs tests on all enabled hosts in NetMRG. It - will store results in RRD files using RRDTOOL(1) and perform actions - in response to events. + netmrg-gatherer performs tests on all enabled hosts in NetMRG. + It will store results in RRD files using RRDTOOL(1) and perform + actions in response to events. Global Options @@ -393,17 +413,18 @@ -M mode - Mode of operation. This option controls the manner in which - the gatherer operates. The modes currently supported are - "once" (the default, best used manually or via cron) which - runs all tests once then exits, and "wait" (best used when - daemonized) which will run all tests, wait for the gatherer - interval to expire, and then repeat. - - Note: To run netmrg-gatherer daemonized, the recommended set of - options at this point is "-X -S -M wait" which will daemonize, - repeat the gather cycle on each interval, and write output to - syslog. + Mode of operation. This option controls the manner in + which the gatherer operates. The modes currently + supported are "once" (the default, best used manually or + via cron) which runs all tests once then exits, and + "wait" (best used when daemonized) which will run all + tests, wait for the gatherer interval to expire, and + then repeat. + + Note: To run netmrg-gatherer daemonized, the recommended set + of options at this point is "-X -S -M wait" which will + daemonize, repeat the gather cycle on each interval, and + write output to syslog. Logging, Debugging and Verbosity Options @@ -413,12 +434,13 @@ -b - Bland. Disables color output. By default, netmrg-gatherer - will display color output when connected to a terminal, but - will use bland output when its output is written to a file. - This option should only be needed when the detection - mechanism has failed, or the user doesn't want to see colors - when running the program by hand. + Bland. Disables color output. By default, + netmrg-gatherer will display color output when connected + to a terminal, but will use bland output when its output + is written to a file. This option should only be needed + when the detection mechanism has failed, or the user + doesn't want to see colors when running the program by + hand. -a @@ -434,7 +456,8 @@ -l level mask - Only outputs messages that match the specified level mask. + Only outputs messages that match the specified level + mask. -c component mask @@ -460,7 +483,8 @@ -H host - Uses the specified host name for connecting to the database. + Uses the specified host name for connecting to the + database. -D database @@ -468,13 +492,14 @@ -u user name - Uses the specified user name for connecting to the database. + Uses the specified user name for connecting to the + database. -p [password] - Uses the specified password for connecting to the database. - If no password is specified, the user is prompted to enter - one. + Uses the specified password for connecting to the + database. If no password is specified, the user is + prompted to enter one. Recaching Options @@ -486,17 +511,19 @@ Performs a disk recache on the specified device. - Note: Recaching options are intended for use by the web interface. - These options should not be generally used by end users. - _________________________________________________________ + Note: Recaching options are intended for use by the web + interface. These options should not be generally used by end + users. + __________________________________________________________ Chapter 7. Contact Information - We have great aspirations for what NetMRG could become, but as with - all open-source software, such aspriations can only be achieved with - the active participation of the open-source community. Please do - your part and support software that you use by helping to answer - support questions on forums and report bugs to developers. Thanks! + We have great aspirations for what NetMRG could become, but as + with all open-source software, such aspriations can only be + achieved with the active participation of the open-source + community. Please do your part and support software that you + use by helping to answer support questions on forums and report + bugs to developers. Thanks! * Main Website - http://www.netmrg.net/ * Online Docs- http://wiki.netmrg.net/ diff -Nurb netmrg-0.19/RELEASE-NOTES netmrg-0.20/RELEASE-NOTES --- netmrg-0.19/RELEASE-NOTES 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/RELEASE-NOTES 2008-04-12 07:44:39.000000000 +0530 @@ -1,6 +1,17 @@ Chapter 2. Revision History + * 0.20 + + 2008.04.11 + + Major feature enhancements and bug fixes; Fixed compilation under GCC + 4.3; restructuring of view pages to show graph titles (for easier + in-page searching) and icons for graph actions; fixed mysql 5 + compatibility; added device properties (keeps track of things like + model #, serial #, etc); added ability to chain interfaces to travel + between them; added ajax monitor selection on graphs. + * 0.19 2006.02.03 @@ -137,7 +148,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/overview.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/intro.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/overview.html + . file:///home/silfreed/src/netmrg/share/doc/txt/intro.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html diff -Nurb netmrg-0.19/share/doc/ChangeLog netmrg-0.20/share/doc/ChangeLog --- netmrg-0.19/share/doc/ChangeLog 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/share/doc/ChangeLog 2008-04-02 07:35:55.000000000 +0530 @@ -1,3 +1,130 @@ +2008.04.01 v0.20cvs balleman + - bug#488 : ajax monitor selection - add built-ins + +2008.03.26 v0.20cvs silfreed + - bug#482 : fixing configure/compilation issues + - bug#491 : fixing gcc 4.3 errors + +2008.01.21 v0.20cvs silfreed + - updated bugs.netmrg.net to mantis 1.1.1 + +2007.12.19 v0.20cvs silfreed + - bug#490 - fail to find net-snmp in x86_64 + adding detection of /usr/lib64 + +2007.05.29 v0.20cvs silfreed + - adding scripts contributed by Uwe Steinmann + for monitoring linux load w/o SNMP and Apple systems battery status + with a PMU + - incorporating modifications to linux26diskaccess.pl + (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=412549) + +2007.05.14 v0.20cvs silfreed + - updated wiki.netmrg.net to mediawiki 1.10.0 + +2007.04.05 v0.20cvs silfreed + - updated bugs.netmrg.net to mantis 1.0.7 + - updated lists.netmrg.net to phpBB 2.0.22 + +2006.11.13 v0.20cvs silfreed + - bug#0000458: View page should have action items beside each graph + improved html structure of view page and improved CSS wrapping of graphs. + setup CSS hack for IE to allow the images to still center but throw the new + controls to the left. + - updated copyright to 2007 + +2007.01.30 v0.20cvs balleman + - bug#0000466: Release Checklist for 0.20 - version bumps + +2007.01.24 v0.20cvs balleman + - updated bugs.netmrg.net to mantis 1.0.6 + - updated wiki.netmrg.net to mediawiki 1.6.9 + +2006.11.13 v0.20cvs silfreed + - setup Auto Bot Questions for lists.netmrg.net to try to cut down + on spam registrations + http://www.phpbb.com/phpBB/viewtopic.php?t=383305 + +2006.11.10 v0.20cvs balleman + - added watermarks in rrdtool 1.2 graphs + +2006.11.03 v0.20cvs balleman + - bug#0000480: AJAX monitor selection: if there is only one device, no monitors can be selected + - bug#0000303: add ability to have 'max' lines on the weekly, monthly, yearly graphs + - bug#0000468: HTML codes in condition operator drop-down + - bug#0000419: write unknown to rrdtool when snmp agent restarts + +2006.11.01 v0.20cvs balleman + - bug#0000471: Device Properties should be gathered infrequently + - bug#0000483: When the device type changes, cached properties should be discarded/translated + +2006.10.24 v0.20cvs silfreed + - updated bugs.netmrg.net to mantis 1.0.5 + +2006.09.24 v0.20cvs balleman + - bug#0000479: fixed device properties multidelete + +2006.09.22 v0.20cvs keb + - bug#0000460: MySQL header and library detection cleanup + +2006.07.02 v0.20cvs balleman + - bug#0000441: Documentation on how to become daemonized + +2006.06.30 v0.20cvs silfreed + - updated lists.netmrg.net to phpBB 2.0.21 + - updated wiki.netmrg.net to mediawiki 1.6.7 + - updated bugs.netmrg.net to mantis 1.0.3 + +2006.06.25 v0.20cvs balleman + - bug#0000473: basic CDP interface linkage support + +2006.06.24 v0.20cvs balleman + - bug#0000465: infinite loop on nanosleep() - fixed uninited param + - bug#0000462: Device Properties - fixed memory leak + - bug#0000459: Cool AJAX stuff to investigate: xajax is the way to go + - bug#0000415: new monitor/subdev selection method + - bug#0000256: Added support for special sub-dev-variable "nexthop" to link interfaces + +2006.06.16 v0.20cvs keb + - bug#0000469: Configure tweak for OS X compatibility + +2006.04.14 v0.20cvs silfreed + - updated lists.netmrg.net to phpBB 2.0.20 + - updated wiki.netmrg.net to mediawiki 1.6.2 + +2006.03.24 v0.20cvs silfreed + - putting backticks around "conditions" for mysql 5.0 compatibility + +2006.02.27 v0.20cvs silfreed + - bug#0000456: Should be able to search within a view page on titles + that last update contained patches to view page that weren't supposed + to make it up yet, sorry + +2006.02.26 v0.20cvs silfreed + - updated bugs.netmrg.net to mantis 1.0.1 + - updated wiki.netmrg.net to mediawiki 1.5.6 + +2006.02.21 v0.20cvs silfreed + - bug#0000461: Support for D-Link FSM726 Switch's ifAlias + - adding script to poll surfboard status information + +2006.02.19 v0.20cvs balleman + - bug#0000462: Device Properties + Completed initial framework. + - bug#0000393: line number messages + +2006.02.13 v0.20cvs silfreed + - bug#0000452: Menu Rendering problems in IE + added
between #header and #content to clear; fix recommended + by Scott Gonzalez (http://www.scottsplayground.com, scott.gonzalez@gmail.com) + - quit using onload="" to run javascript onload functions. Use + addOnloadEvent() that does stuff through the window.onload element + - bug#0000457: Separator should be cleaned up a bit + changed the table to a div, and cleaned up the css + +2006.02.03 v0.20cvs keb + - reordered users.php so the code is more readable + 2006.02.03 v0.19cvs silfreed - bug#0000392: Release Checklist for 0.19 * final doc changes and branching before release @@ -319,7 +446,7 @@ - bug#0000295 - db_escape_string can't be conditional 2004.09.13 v0.17cvs silfreed - - updated bugs.pa.net to mantis 0.19.0, enabled sponsorships + - updated bugs.netmrg.net to mantis 0.19.0, enabled sponsorships - bug#0000280 - Using checkbox delete in conditions.php gives errors when nothing is checked - bug#0000279 - new groups are always added with the Root parent - fixed 'disabled user check' to take into account if we were 0.17 or not diff -Nurb netmrg-0.19/share/doc/html/contact.html netmrg-0.20/share/doc/html/contact.html --- netmrg-0.19/share/doc/html/contact.html 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/html/contact.html 2008-04-12 07:44:39.000000000 +0530 @@ -4,7 +4,7 @@ + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Contact Information + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> The NetMRG Reference + © 2003-2007 Brady Alleman and Douglas E. Warner


diff -Nurb netmrg-0.19/share/doc/html/installation.html netmrg-0.20/share/doc/html/installation.html --- netmrg-0.19/share/doc/html/installation.html 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/html/installation.html 2008-04-12 07:44:39.000000000 +0530 @@ -4,7 +4,7 @@ + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Installation + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Installation Procedure + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Introduction + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Manual Pages + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> netmrg-gatherer netmrg-gatherer
- +

Name

netmrg-gatherer -- Gathers data from devices.
- +

Synopsis

@@ -59,7 +59,7 @@
- +

Description

@@ -68,7 +68,7 @@ using RRDTOOL(1) and perform actions in response to events.

- +

Global Options

@@ -94,7 +94,7 @@
- +

Operating Options

@@ -147,7 +147,7 @@
- +

Logging, Debugging and Verbosity Options

@@ -234,7 +234,7 @@
- +

Configuration File Options

@@ -263,7 +263,7 @@
- +

Database Options

@@ -313,7 +313,7 @@
- +

Recaching Options

diff -Nurb netmrg-0.19/share/doc/html/overview.html netmrg-0.20/share/doc/html/overview.html --- netmrg-0.19/share/doc/html/overview.html 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/html/overview.html 2008-04-12 07:44:39.000000000 +0530 @@ -4,7 +4,7 @@ + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Overview + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Reference + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Revision History
  • +

    0.20

    + +

    2008.04.11

    + +

    Major feature enhancements and bug fixes; Fixed + compilation under GCC 4.3; restructuring of view pages to + show graph titles (for easier in-page searching) and icons + for graph actions; fixed mysql 5 compatibility; added + device properties (keeps track of things like model #, + serial #, etc); added ability to chain interfaces to travel + between them; added ajax monitor selection on graphs.

    +
  • + +
  • 0.19

    2006.02.03

    diff -Nurb netmrg-0.19/share/doc/html/satisfyreq.html netmrg-0.20/share/doc/html/satisfyreq.html --- netmrg-0.19/share/doc/html/satisfyreq.html 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/html/satisfyreq.html 2008-04-12 07:44:39.000000000 +0530 @@ -4,7 +4,7 @@ + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Satisfying Requirements + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Software Requirements + "HTML Tidy for Linux (vers 14 June 2007), see www.w3.org" /> Upgrade Procedure .\" Please send any bug reports, improvements, comments, patches, .\" etc. to Steve Cheng . -.TH "NETMRG-GATHERER" "1" "03 February 2006" "" "Manual Pages" +.TH "NETMRG-GATHERER" "1" "11 April 2008" "" "Manual Pages" .SH NAME netmrg-gatherer \- Gathers data from devices. diff -Nurb netmrg-0.19/share/doc/netmrg.sgml netmrg-0.20/share/doc/netmrg.sgml --- netmrg-0.19/share/doc/netmrg.sgml 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/share/doc/netmrg.sgml 2008-04-12 07:44:39.000000000 +0530 @@ -13,9 +13,9 @@ Warner - 2006 + 2007 - 2003-2006 + 2003-2007 Brady Alleman and Douglas E. Warner @@ -61,6 +61,18 @@ Revision History + 0.20 + 2008.04.11 + +Major feature enhancements and bug fixes; +Fixed compilation under GCC 4.3; restructuring of view pages to show graph +titles (for easier in-page searching) and icons for graph actions; fixed mysql +5 compatibility; added device properties (keeps track of things like model #, +serial #, etc); added ability to chain interfaces to travel between them; +added ajax monitor selection on graphs. + + + 0.19 2006.02.03 diff -Nurb netmrg-0.19/share/doc/TODO netmrg-0.20/share/doc/TODO --- netmrg-0.19/share/doc/TODO 2006-02-01 00:28:40.000000000 +0530 +++ netmrg-0.20/share/doc/TODO 2008-04-12 06:18:32.000000000 +0530 @@ -6,32 +6,9 @@ == global == documentation Usage information (description of every page) -page titles should reflect where you're at - - names of devices, etc user preferences themes a device's type can affect the list of tests that can be performed on it -when looking at a device's graphs, you should be able to click next to it - and follow it to the next device (if applicable) - - -== silfreed == -make netmrg xhtml compliant -View Graph replacement (dew) - - title as text - - comments as text - - allow links to other items (next subdevice) - - - - custom link -Web Interface redesign (dew) - - big navigations along top - - "device tree" renamed - - collapsed view - * have nav at the top w/ items immediately around where you currently are - * graphs below nav w/ items of where you're currently at -PHP Library Restructure - - split libraries into more useful items - - write a 'loadlib' function to load libries instead of ugly 'include_once's everywhere == balleman == @@ -84,22 +61,29 @@ www/webfiles/updater.php bugs.netmrg.net generate new template database + mysqldump --skip-extended-insert netmrg > netmrg.mysql update docs w/ release notes generate new docs - makedoctree : makedoctree netmrg-0_18_2 + ./bin/makedocs test tutorial test upgrade from previous version -branch SVN (ex: netmrg-0_10) +branch/tag SVN (ex: netmrg-0_10) build tarball + ./bin/makedist - upload to devel, maybe release for non-devel releases, build RPM from tarball -update docs on www.netmrg.net +update docs on wiki.netmrg.net update demo.netmrg.net announce on www.netmrg.net announce on lists.netmrg.net announce on freshmeat.net notify other package maintainers -== branching svn == -svn copy trunk branches/netmrg-0_18_2 +== branching/tagging svn == +svn copy \ + svn+ssh://argo.pyxos.net/home/svnroot/netmrg/trunk \ + svn+ssh://argo.pyxos.net/home/svnroot/netmrg/branches/netmrg-0_19 +svn copy \ + svn+ssh://argo.pyxos.net/home/svnroot/netmrg/branches/netmrg-0_19 \ + svn+ssh://argo.pyxos.net/home/svnroot/netmrg/tags/netmrg-0_19_1 diff -Nurb netmrg-0.19/share/doc/txt/INSTALL netmrg-0.20/share/doc/txt/INSTALL --- netmrg-0.19/share/doc/txt/INSTALL 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/txt/INSTALL 2008-04-12 07:44:39.000000000 +0530 @@ -88,7 +88,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/satisfyreq.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/upgrade.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/satisfyreq.html + . file:///home/silfreed/src/netmrg/share/doc/txt/upgrade.html diff -Nurb netmrg-0.19/share/doc/txt/netmrg.txt netmrg-0.20/share/doc/txt/netmrg.txt --- netmrg-0.19/share/doc/txt/netmrg.txt 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/share/doc/txt/netmrg.txt 2008-04-12 07:44:39.000000000 +0530 @@ -1,39 +1,39 @@ - The NetMRG Reference Brady Alleman Douglas E. Warner - Copyright © 2003-2006 Brady Alleman and Douglas E. Warner + Copyright © 2003-2007 Brady Alleman and Douglas E. Warner This project is licensed under the terms of the MIT License. Permission is hereby granted, free of charge, to any person - obtaining a copy of this software and associated documentation files - (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, - publish, distribute, sublicense, and/or sell copies of the Software, - and to permit persons to whom the Software is furnished to do so, - subject to the following conditions: + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following + conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - SOFTWARE. + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. All product names are property of their respective owners. Such names are used for identification purposes only and are not indicative of endorsement by or of any company, organization, product, or platform. - _________________________________________________________ + __________________________________________________________ Table of Contents I. Overview @@ -61,117 +61,132 @@ Table of Contents 1. Introduction 2. Revision History - _________________________________________________________ + __________________________________________________________ Chapter 1. Introduction - Welcome to NetMRG! NetMRG is a database-driven network monitoring - and graphing tool for use on Linux systems. It offers an intuitive - web-based configuration, customized monitoring capabilities for - unusual situations, a fast multi-threaded polling application, and - brilliant graphs rendered by RRDTOOL. - - This document aims to guide you swiftly through the installation and - configuration of NetMRG, as well as act as a reference for those - with existing installations. - _________________________________________________________ + Welcome to NetMRG! NetMRG is a database-driven network + monitoring and graphing tool for use on Linux systems. It + offers an intuitive web-based configuration, customized + monitoring capabilities for unusual situations, a fast + multi-threaded polling application, and brilliant graphs + rendered by RRDTOOL. + + This document aims to guide you swiftly through the + installation and configuration of NetMRG, as well as act as a + reference for those with existing installations. + __________________________________________________________ Chapter 2. Revision History + * 0.20 + 2008.04.11 + Major feature enhancements and bug fixes; Fixed compilation + under GCC 4.3; restructuring of view pages to show graph + titles (for easier in-page searching) and icons for graph + actions; fixed mysql 5 compatibility; added device + properties (keeps track of things like model #, serial #, + etc); added ability to chain interfaces to travel between + them; added ajax monitor selection on graphs. * 0.19 2006.02.03 - Major Feature Enhancements and Bug Fixes; Major Web Interface - redesign to give more room for graphs and ease overall use. - Security enhancements behind the scenes to ensure correct - permissions checking. Added a search interface that will search - groups, devices, sub devies, and sub device parameters. RRDtool - 1.2 support (including graph smoothing); Depricated use of - netmrg_cron.sh in favor of using netmrg-gatherer; migrated bulk - of docs to wiki; numerous other bugfixes and enhancements. + Major Feature Enhancements and Bug Fixes; Major Web + Interface redesign to give more room for graphs and ease + overall use. Security enhancements behind the scenes to + ensure correct permissions checking. Added a search + interface that will search groups, devices, sub devies, and + sub device parameters. RRDtool 1.2 support (including graph + smoothing); Depricated use of netmrg_cron.sh in favor of + using netmrg-gatherer; migrated bulk of docs to wiki; + numerous other bugfixes and enhancements. * 0.18.2 2004.11.09 - Minor Bug Fixes; Fixed some escaping problems on the interface - cache page, disabled the 'quickprint' Net-SNMP option for better - compatibility, fixed the snmp-failure test, fixed an SVO-user - view issue, and added failover for duplicate ifNames when adding - interfaces. + Minor Bug Fixes; Fixed some escaping problems on the + interface cache page, disabled the 'quickprint' Net-SNMP + option for better compatibility, fixed the snmp-failure + test, fixed an SVO-user view issue, and added failover for + duplicate ifNames when adding interfaces. * 0.18.1 2004.11.01 - Minor Bug Fixes; Fixed a small bug where the gatherer would not - register negative values. + Minor Bug Fixes; Fixed a small bug where the gatherer would + not register negative values. * 0.18 2004.10.25 - Major Bug Fixes; Fixed an issue preventing form submissions on - some browsers, fixed PHP string escaping problems, fixed - inability to create inverted stacked graphs, and fixed parameter - substituion and documentation regarding notifications and - responses. Added better support on FreeBSDs (4.8-5.2) and x86-64 - architectures (Linux and FreeBSD), the ability to multiply - summed values, MySQL timeouts, simple value parsing (to get the - numeric content out of quoted numbers, etc), graphic icons for - most actions, support for a default external auth user (with + Major Bug Fixes; Fixed an issue preventing form submissions + on some browsers, fixed PHP string escaping problems, fixed + inability to create inverted stacked graphs, and fixed + parameter substituion and documentation regarding + notifications and responses. Added better support on + FreeBSDs (4.8-5.2) and x86-64 architectures (Linux and + FreeBSD), the ability to multiply summed values, MySQL + timeouts, simple value parsing (to get the numeric content + out of quoted numbers, etc), graphic icons for most + actions, support for a default external auth user (with regards to permissions), and cleaned up the gatherer build process output. * 0.17 2004.09.13 - Minor Feature Enhancements; Added colorized gatherer output, - checkbox support on multiple pages, the ability to disable - users, fixed a potential SQL-injection bug, updated navigation - on group pages, updated tutorials. + Minor Feature Enhancements; Added colorized gatherer + output, checkbox support on multiple pages, the ability to + disable users, fixed a potential SQL-injection bug, updated + navigation on group pages, updated tutorials. * 0.16 2004.06.10 - Minor Bugfixes and Feature Enhancements; fixed a user management - bug and several bugs related to 'single view only' users not - being able to see graphs, added the ability to ignore SNMP - uptime checks for devices (permitting the monitoring of broken - devices), added the ability to do an SNMP walk of an OID (useful - for the Windows SNMP agent), enhanced group/device management, - cleaned up autoconf (now supports FC2), and added experimental - syslog and daemon support in the gatherer. + Minor Bugfixes and Feature Enhancements; fixed a user + management bug and several bugs related to 'single view + only' users not being able to see graphs, added the ability + to ignore SNMP uptime checks for devices (permitting the + monitoring of broken devices), added the ability to do an + SNMP walk of an OID (useful for the Windows SNMP agent), + enhanced group/device management, cleaned up autoconf (now + supports FC2), and added experimental syslog and daemon + support in the gatherer. * 0.15 2004.05.20 - Minor Bugfixes and Feature Enhancements; fixes for various db - errors (including the infamous one on snmp_cache_view.php), - better cross-platform compilation, select all/none/invert - checkbox support, support for choosing what graph to apply to an - interface, better support for php < 4.2.0, and some security - fixes for single-view-only users. + Minor Bugfixes and Feature Enhancements; fixes for various + db errors (including the infamous one on + snmp_cache_view.php), better cross-platform compilation, + select all/none/invert checkbox support, support for + choosing what graph to apply to an interface, better + support for php < 4.2.0, and some security fixes for + single-view-only users. * 0.14 2004.03.10 Minor Bugfixes and Feature Enhancements; escaping issues in - template dereferencing, broken links on various pages, security - issues regarding manual SNMP recaching, broken duplication on - non-cutting-edge MySQL, more parameter substitution in SQL - tests, better date parsing for advanced graph view, nav-bar and - group navigation enhancements, advanced view capability for - monitor-only graphs. + template dereferencing, broken links on various pages, + security issues regarding manual SNMP recaching, broken + duplication on non-cutting-edge MySQL, more parameter + substitution in SQL tests, better date parsing for advanced + graph view, nav-bar and group navigation enhancements, + advanced view capability for monitor-only graphs. * 0.13 2003.12.19 - Minor Bugfixes and Feature Enhancements; slide show ordering, - previous slide, resume slide show, better formatting of 'sums', - errors on view editing, fixes to permissions checking, and an - occassional segfault in the gatherer was fixed. + Minor Bugfixes and Feature Enhancements; slide show + ordering, previous slide, resume slide show, better + formatting of 'sums', errors on view editing, fixes to + permissions checking, and an occassional segfault in the + gatherer was fixed. * 0.12 2003.12.15 - Major Feature Enhancents and Bugfixes; added SNMPv2 support, - fixed a bug that would cause a device to be deleted from all - groups, fixed session timeout when using external auth, added - checkbox support to interface/disk cache pages, slide show - enhancements, fixed permission issue where unauthorized users - could view/edit test_* pages + Major Feature Enhancents and Bugfixes; added SNMPv2 + support, fixed a bug that would cause a device to be + deleted from all groups, fixed session timeout when using + external auth, added checkbox support to interface/disk + cache pages, slide show enhancements, fixed permission + issue where unauthorized users could view/edit test_* pages * 0.10 2003.10.05 - Major bug fix; fixes a db error when trying to view monitors, a - bug that would always set the width and height to zero when - creating graphs, and makes conditions with 'rate of change' - work. Many documentation upgrades. + Major bug fix; fixes a db error when trying to view + monitors, a bug that would always set the width and height + to zero when creating graphs, and makes conditions with + 'rate of change' work. Many documentation upgrades. * 0.10pre2 2003.09.15 - This release focuses on adding new features and sqaushing bugs. - In addition, there is now an 'updater.php' that is required to - be run between versions. A minor change needs to be made to - everyone's 'netmrg.xml' to add an 'externalauth' field inside - the 'website' section. + This release focuses on adding new features and sqaushing + bugs. In addition, there is now an 'updater.php' that is + required to be run between versions. A minor change needs + to be made to everyone's 'netmrg.xml' to add an + 'externalauth' field inside the 'website' section. * 0.10pre1 2003.07.28 Initial publication @@ -183,7 +198,7 @@ 4. Satisfying Requirements 5. Installation Procedure 6. Upgrade Procedure - _________________________________________________________ + __________________________________________________________ Chapter 3. Software Requirements @@ -195,26 +210,26 @@ * Libxml2, Version >= 2.30 * Libstdc++, Version >= 3.2 Versions earlier than this may compile just fine, but may - experience runtime issues. Specifically, we experienced software - crashes on an SMP machine running version 2.96 that were - resolved by upgrading to 3.2. + experience runtime issues. Specifically, we experienced + software crashes on an SMP machine running version 2.96 + that were resolved by upgrading to 3.2. * NET/UCD-SNMP, Version >= 4.2.2 - _________________________________________________________ + __________________________________________________________ Chapter 4. Satisfying Requirements - Specific instructions to satisfy dependencies for certain platforms - are presented below. They should be used more as suggestions, not - necessarily step-by-step instructions. You may need to do more than - what is listed, or much less, depending on the options you selected - when installing your operating system. + Specific instructions to satisfy dependencies for certain + platforms are presented below. They should be used more as + suggestions, not necessarily step-by-step instructions. You may + need to do more than what is listed, or much less, depending on + the options you selected when installing your operating system. * Red Hat Linux - + In order to satisfy the libstdc++ requirement, Redhat 8.0 - or above is required. NetMRG may not be stable on older - versions of libstdc++. - + Install the following RPMs from your Red Hat installation - media: + + In order to satisfy the libstdc++ requirement, Redhat + 8.0 or above is required. NetMRG may not be stable on + older versions of libstdc++. + + Install the following RPMs from your Red Hat + installation media: o httpd o php o php-mysql @@ -227,14 +242,16 @@ o net-snmp-devel o net-snmp-utils + Installing RRDTOOL - o Download an RRDTOOL RPM from http://www.freshrpms.net/ + o Download an RRDTOOL RPM from + http://www.freshrpms.net/ o OR Download the RRDTOOL source from http://www.rrdtool.org/ and compile it. + Installing precompiled NetMRG RPM - Download the latest NetMRG RPM and install it as follows: + Download the latest NetMRG RPM and install it as + follows: $ rpm -Uvh netmrg-0.10.rpm - You will still have to perform the following tasks listed - in the Install Instructions: + You will still have to perform the following tasks + listed in the Install Instructions: o Setup the Database o Configure Apache o Configure the Installation @@ -250,7 +267,7 @@ + Run configure, specifying gcc32: ./configure 'LDFLAGS=-L/usr/local/gcc3/lib' 'CPPFLAGS=-I/usr/local/gcc3 /include' 'CXX=g++32' - _________________________________________________________ + __________________________________________________________ Chapter 5. Installation Procedure @@ -265,12 +282,12 @@ make make install - Note: If configure fails to locate the needed libraries they can - be manually specified. Run ./configure --help for details on the - necessary options. + Note: If configure fails to locate the needed libraries they + can be manually specified. Run ./configure --help for + details on the necessary options. 3. Setup the database - Now we need to setup the database. Please change at least the - password (netmrgpass below). + Now we need to setup the database. Please change at least + the password (netmrgpass below). mysqladmin create netmrg mysql -u root -p netmrg < share/netmrg.mysql mysql -u root -p @@ -279,70 +296,73 @@ 4. You need to modify your apache config in order to make your NetMRG installation live (commonly in /etc/httpd/conf/httpd.conf). - The first is to alias /netmrg to the installed web directory - (commonly /usr/local/var/www/netmrg/webfiles). + The first is to alias /netmrg to the installed web + directory (commonly /usr/local/var/www/netmrg/webfiles). Alias /netmrg "/usr/local/var/www/netmrg/webfiles" The easier way (if you're running Apache >= 1.3) is to just - Include the conf file we've created anywhere in your file (near - the bottom is fine). + Include the conf file we've created anywhere in your file + (near the bottom is fine). Include /usr/local/etc/netmrg.conf You will need to restart your Apache after making config - changes. Telling it to reload its config should be good enough + changes. Telling it to reload its config should be good + enough killall -HUP httpd 5. Configure the Installation - All of NetMRG's common configuration options are controlled by - an XML file, normally located at /usr/local/etc/netmrg.xml. You - should edit this file to make any necessary changes before - continuing with installation. + All of NetMRG's common configuration options are controlled + by an XML file, normally located at + /usr/local/etc/netmrg.xml. You should edit this file to + make any necessary changes before continuing with + installation. For most installations, you will at least need to edit netmrg.xml to reflect your database username and password. 6. Setup Permissions - NetMRG does not need superuser permissions to run, therefore we - will setup a user for it. + NetMRG does not need superuser permissions to run, + therefore we will setup a user for it. # useradd netmrg # chown netmrg:netmrg /usr/local/var/log/netmrg # chown netmrg:netmrg /usr/local/var/lib/netmrg/rrd 7. Setup crontab - You can setup the crontab entries in two places: either edit - /etc/crontab, or run crontab -e as the netmrg user. For 'crontab - -e', use an entry similar to this: + You can setup the crontab entries in two places: either + edit /etc/crontab, or run crontab -e as the netmrg user. + For 'crontab -e', use an entry similar to this: */5 * * * * bash -c "if [ -f /usr/local/var/lock/subsys/netmrg ]; then /usr/local/bin/netmrg-gatherer; fi" - To edit the master crontab, edit /etc/crontab and add a line - similar to this: + To edit the master crontab, edit /etc/crontab and add a + line similar to this: */5 * * * * netmrg bash -c "if [ -f /usr/local/var/lock/subsys/netmrg ] ; then /usr/local/bin/netmrg-gatherer; fi" 8. Point your web browser at your install, and start graphing - things! The default login is admin and the default password is - nimda. Point your web browser at the host you built this on - (something similar to http://yourhost.com/netmrg/) and please - change your password! - _________________________________________________________ + things! The default login is admin and the default password + is nimda. Point your web browser at the host you built this + on (something similar to http://yourhost.com/netmrg/) and + please change your password! + __________________________________________________________ Chapter 6. Upgrade Procedure After doing a 'make install' as described in the chapter on - Installing NetMRG, the next step is to run the web-based updater. - This is accomplished by logging into NetMRG with administrator - privileges, and following the prompts. NetMRG's web interface will - not operate normally and the gatherer will not run until the - web-based upgrade is performed. Non-administrator users will only - receive a message directing them to contact their NetMRG - administrator. - - If you need to perform an upgrade, the updater will prompt you to - apply all updates. Clicking this link will perform all necessary - updates for this release. - - If for some reason an update fails, or you would like to re-apply an - update for any reason, you can goto the updater and goto View all - available updates. This will present you a list of the updates that - are available and their status (applied, not applied, or error). If - you have problems updating from one version to the next, you can - force individual updates that fail so that they're considered - 'applied'. Once all updates are applied for a particular version, - the database will be automatically updated to the latest version - that has all updates applied. + Installing NetMRG, the next step is to run the web-based + updater. This is accomplished by logging into NetMRG with + administrator privileges, and following the prompts. NetMRG's + web interface will not operate normally and the gatherer will + not run until the web-based upgrade is performed. + Non-administrator users will only receive a message directing + them to contact their NetMRG administrator. + + If you need to perform an upgrade, the updater will prompt you + to apply all updates. Clicking this link will perform all + necessary updates for this release. + + If for some reason an update fails, or you would like to + re-apply an update for any reason, you can goto the updater and + goto View all available updates. This will present you a list + of the updates that are available and their status (applied, + not applied, or error). If you have problems updating from one + version to the next, you can force individual updates that fail + so that they're considered 'applied'. Once all updates are + applied for a particular version, the database will be + automatically updated to the latest version that has all + updates applied. III. Reference @@ -366,9 +386,9 @@ Description - netmrg-gatherer performs tests on all enabled hosts in NetMRG. It - will store results in RRD files using RRDTOOL(1) and perform actions - in response to events. + netmrg-gatherer performs tests on all enabled hosts in NetMRG. + It will store results in RRD files using RRDTOOL(1) and perform + actions in response to events. Global Options @@ -393,17 +413,18 @@ -M mode - Mode of operation. This option controls the manner in which - the gatherer operates. The modes currently supported are - "once" (the default, best used manually or via cron) which - runs all tests once then exits, and "wait" (best used when - daemonized) which will run all tests, wait for the gatherer - interval to expire, and then repeat. - - Note: To run netmrg-gatherer daemonized, the recommended set of - options at this point is "-X -S -M wait" which will daemonize, - repeat the gather cycle on each interval, and write output to - syslog. + Mode of operation. This option controls the manner in + which the gatherer operates. The modes currently + supported are "once" (the default, best used manually or + via cron) which runs all tests once then exits, and + "wait" (best used when daemonized) which will run all + tests, wait for the gatherer interval to expire, and + then repeat. + + Note: To run netmrg-gatherer daemonized, the recommended set + of options at this point is "-X -S -M wait" which will + daemonize, repeat the gather cycle on each interval, and + write output to syslog. Logging, Debugging and Verbosity Options @@ -413,12 +434,13 @@ -b - Bland. Disables color output. By default, netmrg-gatherer - will display color output when connected to a terminal, but - will use bland output when its output is written to a file. - This option should only be needed when the detection - mechanism has failed, or the user doesn't want to see colors - when running the program by hand. + Bland. Disables color output. By default, + netmrg-gatherer will display color output when connected + to a terminal, but will use bland output when its output + is written to a file. This option should only be needed + when the detection mechanism has failed, or the user + doesn't want to see colors when running the program by + hand. -a @@ -434,7 +456,8 @@ -l level mask - Only outputs messages that match the specified level mask. + Only outputs messages that match the specified level + mask. -c component mask @@ -460,7 +483,8 @@ -H host - Uses the specified host name for connecting to the database. + Uses the specified host name for connecting to the + database. -D database @@ -468,13 +492,14 @@ -u user name - Uses the specified user name for connecting to the database. + Uses the specified user name for connecting to the + database. -p [password] - Uses the specified password for connecting to the database. - If no password is specified, the user is prompted to enter - one. + Uses the specified password for connecting to the + database. If no password is specified, the user is + prompted to enter one. Recaching Options @@ -486,17 +511,19 @@ Performs a disk recache on the specified device. - Note: Recaching options are intended for use by the web interface. - These options should not be generally used by end users. - _________________________________________________________ + Note: Recaching options are intended for use by the web + interface. These options should not be generally used by end + users. + __________________________________________________________ Chapter 7. Contact Information - We have great aspirations for what NetMRG could become, but as with - all open-source software, such aspriations can only be achieved with - the active participation of the open-source community. Please do - your part and support software that you use by helping to answer - support questions on forums and report bugs to developers. Thanks! + We have great aspirations for what NetMRG could become, but as + with all open-source software, such aspriations can only be + achieved with the active participation of the open-source + community. Please do your part and support software that you + use by helping to answer support questions on forums and report + bugs to developers. Thanks! * Main Website - http://www.netmrg.net/ * Online Docs- http://wiki.netmrg.net/ diff -Nurb netmrg-0.19/share/doc/txt/RELEASE-NOTES netmrg-0.20/share/doc/txt/RELEASE-NOTES --- netmrg-0.19/share/doc/txt/RELEASE-NOTES 2006-02-04 06:36:25.000000000 +0530 +++ netmrg-0.20/share/doc/txt/RELEASE-NOTES 2008-04-12 07:44:39.000000000 +0530 @@ -1,6 +1,17 @@ Chapter 2. Revision History + * 0.20 + + 2008.04.11 + + Major feature enhancements and bug fixes; Fixed compilation under GCC + 4.3; restructuring of view pages to show graph titles (for easier + in-page searching) and icons for graph actions; fixed mysql 5 + compatibility; added device properties (keeps track of things like + model #, serial #, etc); added ability to chain interfaces to travel + between them; added ajax monitor selection on graphs. + * 0.19 2006.02.03 @@ -137,7 +148,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/overview.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/intro.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/overview.html + . file:///home/silfreed/src/netmrg/share/doc/txt/intro.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html diff -Nurb netmrg-0.19/share/doc/txt/UPGRADE netmrg-0.20/share/doc/txt/UPGRADE --- netmrg-0.19/share/doc/txt/UPGRADE 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/share/doc/txt/UPGRADE 2008-04-12 07:44:39.000000000 +0530 @@ -25,7 +25,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/install.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/reference.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/install.html + . file:///home/silfreed/src/netmrg/share/doc/txt/reference.html diff -Nurb netmrg-0.19/share/doc/VERSION netmrg-0.20/share/doc/VERSION --- netmrg-0.19/share/doc/VERSION 2006-01-10 06:28:13.000000000 +0530 +++ netmrg-0.20/share/doc/VERSION 2007-01-30 23:38:04.000000000 +0530 @@ -1 +1 @@ -0.19 +0.20 diff -Nurb netmrg-0.19/share/images/default/Makefile netmrg-0.20/share/images/default/Makefile --- netmrg-0.19/share/images/default/Makefile 2005-11-04 07:14:05.000000000 +0530 +++ netmrg-0.20/share/images/default/Makefile 2006-11-01 21:46:06.000000000 +0530 @@ -11,6 +11,7 @@ @$(BATIK) -h 15 duplicate.svg @$(BATIK) -h 15 recachedisk.svg @$(BATIK) -h 15 recacheinterface.svg + @$(BATIK) -h 15 recacheproperties.svg @$(BATIK) -h 15 parameters.svg @$(BATIK) -h 15 slideshow.svg @$(BATIK) -h 15 view.svg diff -Nurb netmrg-0.19/share/images/default/recacheproperties.svg netmrg-0.20/share/images/default/recacheproperties.svg --- netmrg-0.19/share/images/default/recacheproperties.svg 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/share/images/default/recacheproperties.svg 2006-11-01 21:46:06.000000000 +0530 @@ -0,0 +1,61 @@ + + +image/svg+xmlP + + + \ No newline at end of file diff -Nurb netmrg-0.19/share/netmrg.mysql netmrg-0.20/share/netmrg.mysql --- netmrg-0.19/share/netmrg.mysql 2006-01-10 06:48:36.000000000 +0530 +++ netmrg-0.20/share/netmrg.mysql 2008-04-12 06:30:48.000000000 +0530 @@ -1,13 +1,15 @@ --- MySQL dump 10.9 +-- MySQL dump 10.11 -- -- Host: localhost Database: netmrg -- ------------------------------------------------------ --- Server version 4.1.16 +-- Server version 5.0.45 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; @@ -33,11 +35,10 @@ -- Dumping data for table `conditions` -- - -/*!40000 ALTER TABLE `conditions` DISABLE KEYS */; LOCK TABLES `conditions` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `conditions` DISABLE KEYS */; /*!40000 ALTER TABLE `conditions` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `data_types` @@ -49,18 +50,21 @@ `rrd_type` varchar(50) NOT NULL default '', `name` varchar(50) NOT NULL default '', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; -- -- Dumping data for table `data_types` -- - -/*!40000 ALTER TABLE `data_types` DISABLE KEYS */; LOCK TABLES `data_types` WRITE; -INSERT INTO `data_types` VALUES (1,'GAUGE','Gauge'),(2,'COUNTER','Counter'),(3,'DERIVE','Derive (a counter without overflow protection)'),(4,'ABSOLUTE','Absolute (a counter reset when read)'),(-1,'','Not Graphed'); -UNLOCK TABLES; +/*!40000 ALTER TABLE `data_types` DISABLE KEYS */; +INSERT INTO `data_types` (`id`, `rrd_type`, `name`) VALUES (1,'GAUGE','Gauge'); +INSERT INTO `data_types` (`id`, `rrd_type`, `name`) VALUES (2,'COUNTER','Counter'); +INSERT INTO `data_types` (`id`, `rrd_type`, `name`) VALUES (3,'DERIVE','Derive (a counter without overflow protection)'); +INSERT INTO `data_types` (`id`, `rrd_type`, `name`) VALUES (4,'ABSOLUTE','Absolute (a counter reset when read)'); +INSERT INTO `data_types` (`id`, `rrd_type`, `name`) VALUES (-1,'','Not Graphed'); /*!40000 ALTER TABLE `data_types` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `dev_parents` @@ -77,12 +81,80 @@ -- Dumping data for table `dev_parents` -- - -/*!40000 ALTER TABLE `dev_parents` DISABLE KEYS */; LOCK TABLES `dev_parents` WRITE; -INSERT INTO `dev_parents` VALUES (1,1); -UNLOCK TABLES; +/*!40000 ALTER TABLE `dev_parents` DISABLE KEYS */; +INSERT INTO `dev_parents` (`grp_id`, `dev_id`) VALUES (1,1); /*!40000 ALTER TABLE `dev_parents` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `dev_prop_vals` +-- + +DROP TABLE IF EXISTS `dev_prop_vals`; +CREATE TABLE `dev_prop_vals` ( + `dev_id` int(11) NOT NULL, + `prop_id` int(11) NOT NULL, + `value` varchar(250) NOT NULL, + PRIMARY KEY (`dev_id`,`prop_id`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1; + +-- +-- Dumping data for table `dev_prop_vals` +-- + +LOCK TABLES `dev_prop_vals` WRITE; +/*!40000 ALTER TABLE `dev_prop_vals` DISABLE KEYS */; +/*!40000 ALTER TABLE `dev_prop_vals` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `dev_props` +-- + +DROP TABLE IF EXISTS `dev_props`; +CREATE TABLE `dev_props` ( + `id` int(11) NOT NULL auto_increment, + `dev_type_id` int(11) NOT NULL, + `name` varchar(200) NOT NULL, + `test_type` tinyint(4) NOT NULL, + `test_id` int(11) NOT NULL, + `test_params` varchar(150) NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=latin1; + +-- +-- Dumping data for table `dev_props` +-- + +LOCK TABLES `dev_props` WRITE; +/*!40000 ALTER TABLE `dev_props` DISABLE KEYS */; +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (1,9,'Chassis ID',2,47,'enterprises.9.3.6.3.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (5,10,'Model',2,47,'mib-2.47.1.1.1.1.13.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (3,9,'Firmware',1,1,'old-cisco-dev-props.php %ip% %snmp_read_community% version'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (4,9,'Model',1,1,'old-cisco-dev-props.php %ip% %snmp_read_community% model'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (6,10,'Serial',2,47,'mib-2.47.1.1.1.1.11.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (7,10,'Firmware',2,47,'mib-2.47.1.1.1.1.9.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (8,10,'Chassis ID',2,47,'enterprises.9.3.6.3.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (9,11,'Model',2,47,'enterprises.9.5.1.2.16.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (10,11,'Serial',2,47,'enterprises.9.5.1.2.19.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (11,11,'Firmware',2,47,'enterprises.9.5.1.3.1.1.19.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (12,11,'Chassis ID',2,47,'enterprises.9.3.6.3.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (13,12,'Model',2,47,'mib-2.47.1.1.1.1.13.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (14,12,'Radio',2,47,'iso.2.840.10036.3.1.2.1.3.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (15,12,'Radio Firmware',2,47,'iso.2.840.10036.3.1.2.1.4.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (16,12,'Serial',2,47,'mib-2.47.1.1.1.1.11.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (17,12,'Chassis ID',2,47,'enterprises.9.3.6.3.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (20,13,'Model',2,47,'enterprises.318.1.1.1.1.1.1.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (19,12,'Firmware',1,1,'old-cisco-dev-props.php %ip% %snmp_read_community% version'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (21,13,'Serial',2,47,'enterprises.318.1.1.1.1.2.3.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (22,13,'Chassis ID',2,47,'sysName.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (23,13,'Location',2,47,'sysLocation.0'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (24,13,'Firmware',2,47,'enterprises.318.1.4.2.4.1.4.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (25,13,'Card Serial',2,47,'enterprises.318.1.4.2.4.1.2.1'); +INSERT INTO `dev_props` (`id`, `dev_type_id`, `name`, `test_type`, `test_id`, `test_params`) VALUES (26,12,'Location',2,47,'sysLocation.0'); +/*!40000 ALTER TABLE `dev_props` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `dev_types` @@ -94,18 +166,22 @@ `name` varchar(200) NOT NULL default '', `comment` varchar(250) NOT NULL default '', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=latin1; -- -- Dumping data for table `dev_types` -- - -/*!40000 ALTER TABLE `dev_types` DISABLE KEYS */; LOCK TABLES `dev_types` WRITE; -INSERT INTO `dev_types` VALUES (8,'Linux Box',''); -UNLOCK TABLES; +/*!40000 ALTER TABLE `dev_types` DISABLE KEYS */; +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (8,'Linux Box',''); +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (9,'Cisco 2900XL and 3500XL (old IOS)',''); +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (10,'Cisco Catalyst 2900XL, 3500XL, 2950, 3550',''); +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (11,'Cisco Catalyst 3560, 3750',''); +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (12,'Cisco AP1200',''); +INSERT INTO `dev_types` (`id`, `name`, `comment`) VALUES (13,'SmartUPS',''); /*!40000 ALTER TABLE `dev_types` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `devices` @@ -129,20 +205,20 @@ `snmp_port` smallint(5) unsigned NOT NULL default '161', `status` smallint(6) NOT NULL default '0', `no_snmp_uptime_check` tinyint(4) NOT NULL default '0', + `unknowns_on_snmp_restart` tinyint(4) NOT NULL default '1', PRIMARY KEY (`id`), KEY `disabled` (`disabled`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; -- -- Dumping data for table `devices` -- - -/*!40000 ALTER TABLE `devices` DISABLE KEYS */; LOCK TABLES `devices` WRITE; -INSERT INTO `devices` VALUES (1,'Template Linux Box','127.0.0.1','',8,1,1,0,0,0,0,1000000,3,161,0,0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `devices` DISABLE KEYS */; +INSERT INTO `devices` (`id`, `name`, `ip`, `snmp_read_community`, `dev_type`, `snmp_recache_method`, `disabled`, `snmp_avoided`, `snmp_uptime`, `snmp_ifnumber`, `snmp_version`, `snmp_timeout`, `snmp_retries`, `snmp_port`, `status`, `no_snmp_uptime_check`, `unknowns_on_snmp_restart`) VALUES (1,'Template Linux Box','127.0.0.1','',8,1,1,0,0,0,0,1000000,3,161,0,0,1); /*!40000 ALTER TABLE `devices` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `event_log` @@ -162,11 +238,10 @@ -- Dumping data for table `event_log` -- - -/*!40000 ALTER TABLE `event_log` DISABLE KEYS */; LOCK TABLES `event_log` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `event_log` DISABLE KEYS */; /*!40000 ALTER TABLE `event_log` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `events` @@ -189,11 +264,10 @@ -- Dumping data for table `events` -- - -/*!40000 ALTER TABLE `events` DISABLE KEYS */; LOCK TABLES `events` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `events` DISABLE KEYS */; /*!40000 ALTER TABLE `events` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `graph_ds` @@ -213,20 +287,37 @@ `multiplier` varchar(100) NOT NULL default '1', `start_time` varchar(20) NOT NULL default '', `end_time` varchar(20) NOT NULL default '', + `cf` tinyint(4) NOT NULL default '1', PRIMARY KEY (`id`), KEY `graph_id` (`graph_id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=19 DEFAULT CHARSET=latin1; -- -- Dumping data for table `graph_ds` -- - -/*!40000 ALTER TABLE `graph_ds` DISABLE KEYS */; LOCK TABLES `graph_ds` WRITE; -INSERT INTO `graph_ds` VALUES (1,2,'#FF6600',4,1,'System',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(2,1,'#3366FF',5,1,'User',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','',''),(3,3,'#00CC66',5,1,'Nice',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','',''),(4,-2,'#000000',1,1,'Total',1,'CURRENT,AVERAGE,MAXIMUM',4,'1','',''),(5,4,'#FF9900',4,2,'1 Minute',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(6,5,'#330066',2,2,'5 Minute',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','',''),(7,6,'#990000',2,2,'15 Minute',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','',''),(8,7,'#330066',4,3,'TCP Connections',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(9,8,'#330066',4,4,'Users',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(10,9,'#330066',4,5,'Processes',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(11,11,'#CC3300',4,6,'Swap',1,'CURRENT,AVERAGE,MAXIMUM',1,'1024','',''),(12,10,'#FF9933',5,6,'RAM',1,'CURRENT,AVERAGE,MAXIMUM',2,'1024','',''),(13,-2,'#000000',1,6,'Total',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','',''),(14,12,'#00CC00',4,7,'Inbound',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','',''),(15,13,'#0000CC',2,7,'Outbound',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','',''),(16,16,'#333399',4,8,'Used',1,'CURRENT,AVERAGE,MAXIMUM',1,'1024','',''),(17,15,'#3399FF',5,8,'Available',1,'CURRENT,AVERAGE,MAXIMUM',2,'1024','',''),(18,-2,'#000000',1,8,'Total',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','',''); -UNLOCK TABLES; +/*!40000 ALTER TABLE `graph_ds` DISABLE KEYS */; +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (1,2,'#FF6600',4,1,'System',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (2,1,'#3366FF',5,1,'User',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (3,3,'#00CC66',5,1,'Nice',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (4,-2,'#000000',1,1,'Total',1,'CURRENT,AVERAGE,MAXIMUM',4,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (5,4,'#FF9900',4,2,'1 Minute',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (6,5,'#330066',2,2,'5 Minute',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (7,6,'#990000',2,2,'15 Minute',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (8,7,'#330066',4,3,'TCP Connections',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (9,8,'#330066',4,4,'Users',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (10,9,'#330066',4,5,'Processes',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (11,11,'#CC3300',4,6,'Swap',1,'CURRENT,AVERAGE,MAXIMUM',1,'1024','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (12,10,'#FF9933',5,6,'RAM',1,'CURRENT,AVERAGE,MAXIMUM',2,'1024','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (13,-2,'#000000',1,6,'Total',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (14,12,'#00CC00',4,7,'Inbound',1,'CURRENT,AVERAGE,MAXIMUM',1,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (15,13,'#0000CC',2,7,'Outbound',1,'CURRENT,AVERAGE,MAXIMUM',2,'1','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (16,16,'#333399',4,8,'Used',1,'CURRENT,AVERAGE,MAXIMUM',1,'1024','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (17,15,'#3399FF',5,8,'Available',1,'CURRENT,AVERAGE,MAXIMUM',2,'1024','','',1); +INSERT INTO `graph_ds` (`id`, `mon_id`, `color`, `type`, `graph_id`, `label`, `alignment`, `stats`, `position`, `multiplier`, `start_time`, `end_time`, `cf`) VALUES (18,-2,'#000000',1,8,'Total',1,'CURRENT,AVERAGE,MAXIMUM',3,'1','','',1); /*!40000 ALTER TABLE `graph_ds` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `graphs` @@ -247,18 +338,24 @@ `max` int(11) default NULL, `min` int(11) default NULL, PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1; -- -- Dumping data for table `graphs` -- - -/*!40000 ALTER TABLE `graphs` DISABLE KEYS */; LOCK TABLES `graphs` WRITE; -INSERT INTO `graphs` VALUES (1,'Linux Box - CPU Utilization','%dev_name% - CPU Utilization','',575,100,'% Usage','template','',1000,NULL,NULL),(2,'Linux Box - Load Average','%dev_name% - Load Average','',575,100,'run queue size','template','',1000,NULL,NULL),(3,'Linux Box - TCP Connections','%dev_name% - TCP Connections','',575,100,'Connections','template','',1000,NULL,NULL),(4,'Linux Box - Logged In Users','%dev_name% - Logged In Users','',575,100,'Users','template','',1000,NULL,NULL),(5,'Linux Box - System Processes','%dev_name% - System Processes','',575,100,'Processes','template','',1000,NULL,NULL),(6,'Linux Box - Available Memory','%dev_name% - Available Memory','',575,100,'Bytes','template','',1024,NULL,NULL),(7,'Linux Box - LAN Traffic','%dev_name% - %ifDescr%','Interface: %ifDescr%%n IP: %ifIP%',575,100,'bytes / sec','template','',1000,NULL,NULL),(8,'Linux Box - Disk Utilization','%dev_name% - %dskPath%','',575,100,'Bytes','template','',1024,NULL,NULL); -UNLOCK TABLES; +/*!40000 ALTER TABLE `graphs` DISABLE KEYS */; +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (1,'Linux Box - CPU Utilization','%dev_name% - CPU Utilization','',575,100,'% Usage','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (2,'Linux Box - Load Average','%dev_name% - Load Average','',575,100,'run queue size','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (3,'Linux Box - TCP Connections','%dev_name% - TCP Connections','',575,100,'Connections','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (4,'Linux Box - Logged In Users','%dev_name% - Logged In Users','',575,100,'Users','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (5,'Linux Box - System Processes','%dev_name% - System Processes','',575,100,'Processes','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (6,'Linux Box - Available Memory','%dev_name% - Available Memory','',575,100,'Bytes','template','',1024,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (7,'Linux Box - LAN Traffic','%dev_name% - %ifDescr%','Interface: %ifDescr%%n IP: %ifIP%',575,100,'bytes / sec','template','',1000,NULL,NULL); +INSERT INTO `graphs` (`id`, `name`, `title`, `comment`, `width`, `height`, `vert_label`, `type`, `options`, `base`, `max`, `min`) VALUES (8,'Linux Box - Disk Utilization','%dev_name% - %dskPath%','',575,100,'Bytes','template','',1024,NULL,NULL); /*!40000 ALTER TABLE `graphs` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `groups` @@ -271,18 +368,17 @@ `comment` varchar(200) NOT NULL default '', `parent_id` int(11) default NULL, PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=latin1; -- -- Dumping data for table `groups` -- - -/*!40000 ALTER TABLE `groups` DISABLE KEYS */; LOCK TABLES `groups` WRITE; -INSERT INTO `groups` VALUES (1,'Template Group','',0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `groups` DISABLE KEYS */; +INSERT INTO `groups` (`id`, `name`, `comment`, `parent_id`) VALUES (1,'Template Group','',0); /*!40000 ALTER TABLE `groups` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `log` @@ -303,17 +399,22 @@ KEY `dev_id` (`dev_id`), KEY `subdev_id` (`subdev_id`), KEY `mon_id` (`mon_id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1; -- -- Dumping data for table `log` -- - -/*!40000 ALTER TABLE `log` DISABLE KEYS */; LOCK TABLES `log` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `log` DISABLE KEYS */; +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (1,'2007-03-21 21:08:42',2,NULL,NULL,32,4,'Device has returned from SNMP-death.'); +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (2,'2007-03-21 21:08:42',2,NULL,NULL,32,4,'Using unknowns for non-gauge values.'); +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (3,'2007-03-21 21:08:42',2,NULL,NULL,32,256,'Number of interfaces changed from 0 to 11'); +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (4,'2007-03-21 21:08:42',2,NULL,NULL,32,256,'Performing SNMP Recache.'); +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (5,'2007-03-21 21:08:59',2,NULL,NULL,32,16,'read() provided 0 bytes.'); +INSERT INTO `log` (`id`, `date`, `dev_id`, `subdev_id`, `mon_id`, `level`, `component`, `message`) VALUES (6,'2007-03-21 21:08:59',2,NULL,NULL,32,16,'read() provided 0 bytes.'); /*!40000 ALTER TABLE `log` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `monitors` @@ -338,18 +439,32 @@ PRIMARY KEY (`id`), KEY `sub_dev_id` (`sub_dev_id`), KEY `template_index` (`sub_dev_id`,`test_id`,`test_type`,`test_params`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=17 DEFAULT CHARSET=latin1; -- -- Dumping data for table `monitors` -- - -/*!40000 ALTER TABLE `monitors` DISABLE KEYS */; LOCK TABLES `monitors` WRITE; -INSERT INTO `monitors` VALUES (1,1,2,0,405,0,2,5,'',NULL,NULL,NULL,NULL,0),(2,1,2,0,405,0,2,7,'',NULL,NULL,NULL,NULL,0),(3,1,2,0,405,0,2,8,'',NULL,NULL,NULL,NULL,0),(4,1,1,NULL,NULL,0,2,9,'',NULL,NULL,NULL,NULL,0),(5,1,1,NULL,NULL,0,2,10,'',NULL,NULL,NULL,NULL,0),(6,1,1,NULL,NULL,0,2,11,'',NULL,NULL,NULL,NULL,0),(7,1,1,NULL,NULL,0,2,18,'',NULL,NULL,NULL,NULL,0),(8,1,1,NULL,NULL,0,2,3,'',NULL,NULL,NULL,NULL,0),(9,1,1,NULL,NULL,0,2,2,'',NULL,NULL,NULL,NULL,0),(10,1,1,NULL,NULL,0,2,13,'',NULL,NULL,NULL,NULL,0),(11,1,1,NULL,NULL,0,2,12,'',NULL,NULL,NULL,NULL,0),(12,2,2,0,10000000,0,2,39,'',NULL,NULL,NULL,NULL,0),(13,2,2,0,100000000,0,2,38,'',NULL,NULL,NULL,NULL,0),(14,2,2,0,100000000,0,2,40,'',NULL,NULL,NULL,NULL,0),(15,3,1,NULL,NULL,0,2,43,'',NULL,NULL,NULL,NULL,0),(16,3,1,NULL,NULL,0,2,44,'',NULL,NULL,NULL,NULL,0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `monitors` DISABLE KEYS */; +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (1,1,2,0,405,0,2,5,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (2,1,2,0,405,0,2,7,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (3,1,2,0,405,0,2,8,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (4,1,1,NULL,NULL,0,2,9,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (5,1,1,NULL,NULL,0,2,10,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (6,1,1,NULL,NULL,0,2,11,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (7,1,1,NULL,NULL,0,2,18,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (8,1,1,NULL,NULL,0,2,3,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (9,1,1,NULL,NULL,0,2,2,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (10,1,1,NULL,NULL,0,2,13,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (11,1,1,NULL,NULL,0,2,12,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (12,2,2,0,10000000,0,2,39,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (13,2,2,0,100000000,0,2,38,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (14,2,2,0,100000000,0,2,40,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (15,3,1,NULL,NULL,0,2,43,'',NULL,NULL,NULL,NULL,0); +INSERT INTO `monitors` (`id`, `sub_dev_id`, `data_type`, `min_val`, `max_val`, `tuned`, `test_type`, `test_id`, `test_params`, `last_val`, `delta_val`, `last_time`, `delta_time`, `status`) VALUES (16,3,1,NULL,NULL,0,2,44,'',NULL,NULL,NULL,NULL,0); /*!40000 ALTER TABLE `monitors` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `notifications` @@ -362,18 +477,17 @@ `command` varchar(250) NOT NULL default '', `disabled` tinyint(4) NOT NULL default '0', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; -- -- Dumping data for table `notifications` -- - -/*!40000 ALTER TABLE `notifications` DISABLE KEYS */; LOCK TABLES `notifications` WRITE; -INSERT INTO `notifications` VALUES (1,'Broadcast message to linux users','wall \'%dev_name%: %event_name%\'',0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `notifications` DISABLE KEYS */; +INSERT INTO `notifications` (`id`, `name`, `command`, `disabled`) VALUES (1,'Broadcast message to linux users','wall \'%dev_name%: %event_name%\'',0); /*!40000 ALTER TABLE `notifications` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `responses` @@ -392,11 +506,10 @@ -- Dumping data for table `responses` -- - -/*!40000 ALTER TABLE `responses` DISABLE KEYS */; LOCK TABLES `responses` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `responses` DISABLE KEYS */; /*!40000 ALTER TABLE `responses` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `snmp_disk_cache` @@ -415,11 +528,10 @@ -- Dumping data for table `snmp_disk_cache` -- - -/*!40000 ALTER TABLE `snmp_disk_cache` DISABLE KEYS */; LOCK TABLES `snmp_disk_cache` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `snmp_disk_cache` DISABLE KEYS */; /*!40000 ALTER TABLE `snmp_disk_cache` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `snmp_interface_cache` @@ -438,6 +550,9 @@ `ifAdminStatus` smallint(6) NOT NULL default '0', `ifOperStatus` smallint(6) NOT NULL default '0', `ifSpeed` int(11) NOT NULL default '0', + `nexthop` varchar(20) default NULL, + `vlan` varchar(20) default NULL, + `mode` tinyint(4) default NULL, KEY `ifIndex` (`dev_id`,`ifIndex`), KEY `ifName` (`dev_id`,`ifName`), KEY `ifDescr` (`dev_id`,`ifDescr`), @@ -451,11 +566,10 @@ -- Dumping data for table `snmp_interface_cache` -- - -/*!40000 ALTER TABLE `snmp_interface_cache` DISABLE KEYS */; LOCK TABLES `snmp_interface_cache` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `snmp_interface_cache` DISABLE KEYS */; /*!40000 ALTER TABLE `snmp_interface_cache` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `sub_dev_variables` @@ -474,11 +588,10 @@ -- Dumping data for table `sub_dev_variables` -- - -/*!40000 ALTER TABLE `sub_dev_variables` DISABLE KEYS */; LOCK TABLES `sub_dev_variables` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `sub_dev_variables` DISABLE KEYS */; /*!40000 ALTER TABLE `sub_dev_variables` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `sub_devices` @@ -493,18 +606,19 @@ `status` smallint(6) NOT NULL default '0', PRIMARY KEY (`id`), KEY `id_2` (`id`,`dev_id`,`type`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=latin1; -- -- Dumping data for table `sub_devices` -- - -/*!40000 ALTER TABLE `sub_devices` DISABLE KEYS */; LOCK TABLES `sub_devices` WRITE; -INSERT INTO `sub_devices` VALUES (1,1,1,'System',0),(2,1,2,'Network Interface',0),(3,1,3,'Disk Drive',0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `sub_devices` DISABLE KEYS */; +INSERT INTO `sub_devices` (`id`, `dev_id`, `type`, `name`, `status`) VALUES (1,1,1,'System',0); +INSERT INTO `sub_devices` (`id`, `dev_id`, `type`, `name`, `status`) VALUES (2,1,2,'Network Interface',0); +INSERT INTO `sub_devices` (`id`, `dev_id`, `type`, `name`, `status`) VALUES (3,1,3,'Disk Drive',0); /*!40000 ALTER TABLE `sub_devices` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `tests_internal` @@ -517,18 +631,24 @@ PRIMARY KEY (`id`), UNIQUE KEY `id` (`id`), KEY `id_2` (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=latin1; -- -- Dumping data for table `tests_internal` -- - -/*!40000 ALTER TABLE `tests_internal` DISABLE KEYS */; LOCK TABLES `tests_internal` WRITE; -INSERT INTO `tests_internal` VALUES (1,'Count Lines in File'),(2,'Lucent TNT \"Good\" Modems (available modems minus suspect modems)'),(3,'UCD CPU Load (user + system)'),(4,'Windows Disk Usage (percent)'),(5,'UCD Swap Usage (percent)'),(6,'Read Value from File'),(7,'SNMP Failure'),(8,'Windows CPU Load'); -UNLOCK TABLES; +/*!40000 ALTER TABLE `tests_internal` DISABLE KEYS */; +INSERT INTO `tests_internal` (`id`, `name`) VALUES (1,'Count Lines in File'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (2,'Lucent TNT \"Good\" Modems (available modems minus suspect modems)'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (3,'UCD CPU Load (user + system)'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (4,'Windows Disk Usage (percent)'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (5,'UCD Swap Usage (percent)'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (6,'Read Value from File'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (7,'SNMP Failure'); +INSERT INTO `tests_internal` (`id`, `name`) VALUES (8,'Windows CPU Load'); /*!40000 ALTER TABLE `tests_internal` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `tests_script` @@ -543,18 +663,21 @@ `dev_type` int(11) NOT NULL default '0', `priority` tinyint(4) NOT NULL default '0', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1; -- -- Dumping data for table `tests_script` -- - -/*!40000 ALTER TABLE `tests_script` DISABLE KEYS */; LOCK TABLES `tests_script` WRITE; -INSERT INTO `tests_script` VALUES (1,'Custom','',2,0,0),(2,'Ping Latency','ping_time.pl %ip%',2,8,0),(3,'SNMP Diff','snmpdiff.php',2,8,0),(4,'Win2k SNMP CPU','win2kcpu.pl',2,8,0),(5,'Livingston Portmaster Active Modems','pmmodems.pl %snmp_read_community% %ip%',2,0,0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `tests_script` DISABLE KEYS */; +INSERT INTO `tests_script` (`id`, `name`, `cmd`, `data_type`, `dev_type`, `priority`) VALUES (1,'Custom','%parameters%',2,9,0); +INSERT INTO `tests_script` (`id`, `name`, `cmd`, `data_type`, `dev_type`, `priority`) VALUES (2,'Ping Latency','ping_time.pl %ip%',2,8,0); +INSERT INTO `tests_script` (`id`, `name`, `cmd`, `data_type`, `dev_type`, `priority`) VALUES (3,'SNMP Diff','snmpdiff.php',2,8,0); +INSERT INTO `tests_script` (`id`, `name`, `cmd`, `data_type`, `dev_type`, `priority`) VALUES (4,'Win2k SNMP CPU','win2kcpu.pl',2,8,0); +INSERT INTO `tests_script` (`id`, `name`, `cmd`, `data_type`, `dev_type`, `priority`) VALUES (5,'Livingston Portmaster Active Modems','pmmodems.pl %snmp_read_community% %ip%',2,0,0); /*!40000 ALTER TABLE `tests_script` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `tests_snmp` @@ -569,18 +692,58 @@ `type` tinyint(4) NOT NULL default '0', `subitem` int(11) NOT NULL default '0', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=48 DEFAULT CHARSET=latin1; -- -- Dumping data for table `tests_snmp` -- - -/*!40000 ALTER TABLE `tests_snmp` DISABLE KEYS */; LOCK TABLES `tests_snmp` WRITE; -INSERT INTO `tests_snmp` VALUES (1,'TNT - Modems Online','.1.3.6.1.4.1.529.10.6.0',8,0,0),(2,'Host - System Processes','.1.3.6.1.2.1.25.1.6.0',8,0,0),(3,'Host - Logged in Users','.1.3.6.1.2.1.25.1.5.0',8,0,0),(4,'Cisco - CPU Utilization','.1.3.6.1.4.1.9.2.1.58.0',8,0,0),(5,'UCD - CPU Percent User','enterprises.ucdavis.systemStats.ssCpuRawUser.0',8,0,0),(6,'UCD - CPU Percent Idle','enterprises.ucdavis.systemStats.ssCpuRawIdle.0',8,0,0),(7,'UCD - CPU Percent System','enterprises.ucdavis.systemStats.ssCpuRawSystem.0',8,0,0),(8,'UCD - CPU Percent Nice','enterprises.ucdavis.systemStats.ssCpuRawNice.0',8,0,0),(9,'UCD - Load Average - 1 min','laLoad.1',8,0,0),(10,'UCD - Load Average - 5 min','laLoad.2',2,0,0),(11,'UCD - Load Average - 15 min','laLoad.3',2,0,0),(12,'UCD - Available Swap','memAvailSwap.0',2,0,0),(13,'UCD - Available Physical RAM','memAvailReal.0',2,0,0),(19,'C5k - % Bandwidth','.1.3.6.1.4.1.9.5.1.1.8.0',2,0,0),(18,'Open TCP Connections','tcp.tcpCurrEstab.0',2,0,0),(21,'C7k Free Memory (Processor)','.1.3.6.1.4.1.9.9.48.1.1.1.6.1',2,0,0),(22,'C7k Free Memory (Fast)','.1.3.6.1.4.1.9.9.48.1.1.1.6.5',2,0,0),(23,'C7k Used Memory (Fast)','.1.3.6.1.4.1.9.9.48.1.1.1.5.5',2,0,0),(24,'UCD - Executable 1','enterprises.ucdavis.extTable.extEntry.extOutput.1',2,0,0),(25,'DNS - A Records','enterprises.ucdavis.extTable.extEntry.extOutput.1',2,0,0),(26,'DNS - PTR Records','enterprises.ucdavis.extTable.extEntry.extOutput.2',2,0,0),(27,'DNS - MX Records','enterprises.ucdavis.extTable.extEntry.extOutput.3',2,0,0),(28,'DNS - CNAME Records','enterprises.ucdavis.extTable.extEntry.extOutput.4',2,0,0),(29,'DNS - ANY Records','enterprises.ucdavis.extTable.extEntry.extOutput.5',2,0,0),(30,'Cisco - RSP - Inlet Temperature (C)','enterprises.9.9.13.1.3.1.3.1',5,0,0),(31,'Cisco - RSP - Hotpoint Temperature (C)','enterprises.9.9.13.1.3.1.3.2',5,0,0),(32,'Cisco - RSP - Exhaust Temperature (C)','enterprises.9.9.13.1.3.1.3.3',5,0,0),(33,'TNT - Dead Modems','.1.3.6.1.4.1.529.15.7.0',4,0,0),(34,'TNT - Disabled Modems','.1.3.6.1.4.1.529.15.5.0',4,0,0),(35,'TNT - Suspect Modems','.1.3.6.1.4.1.529.15.3.0',4,0,0),(36,'TNT - Available Modems','.1.3.6.1.4.1.529.15.1.0',4,0,0),(37,'TNT - Busy Modems','.1.3.6.1.4.1.529.15.9.0',4,0,0),(38,'Interfaces - Bytes Out','ifOutOctets.%ifIndex%',8,0,0),(39,'Interfaces - Bytes In','ifInOctets.%ifIndex%',8,0,0),(40,'Interfaces - Errors In','ifInErrors.%ifIndex%',8,0,0),(41,'TNT - Connected DS0s','.1.3.6.1.4.1.529.4.21.1.7.%ifIndex%',8,0,0),(42,'Disk - Size (kB)','dskTotal.%dskIndex%',8,0,0),(43,'Disk - Available (kB)','dskAvail.%dskIndex%',8,0,0),(44,'Disk - Used (kB)','dskUsed.%dskIndex%',8,0,0),(45,'Disk - Percent Used','dskPercent.%dskIndex%',8,0,0),(46,'Disk - Percent Node Usage','dskPercentNode.%dskIndex%',8,0,0); -UNLOCK TABLES; +/*!40000 ALTER TABLE `tests_snmp` DISABLE KEYS */; +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (1,'TNT - Modems Online','.1.3.6.1.4.1.529.10.6.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (2,'Host - System Processes','.1.3.6.1.2.1.25.1.6.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (3,'Host - Logged in Users','.1.3.6.1.2.1.25.1.5.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (4,'Cisco - CPU Utilization','.1.3.6.1.4.1.9.2.1.58.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (5,'UCD - CPU Percent User','enterprises.ucdavis.systemStats.ssCpuRawUser.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (6,'UCD - CPU Percent Idle','enterprises.ucdavis.systemStats.ssCpuRawIdle.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (7,'UCD - CPU Percent System','enterprises.ucdavis.systemStats.ssCpuRawSystem.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (8,'UCD - CPU Percent Nice','enterprises.ucdavis.systemStats.ssCpuRawNice.0',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (9,'UCD - Load Average - 1 min','laLoad.1',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (10,'UCD - Load Average - 5 min','laLoad.2',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (11,'UCD - Load Average - 15 min','laLoad.3',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (12,'UCD - Available Swap','memAvailSwap.0',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (13,'UCD - Available Physical RAM','memAvailReal.0',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (19,'C5k - % Bandwidth','.1.3.6.1.4.1.9.5.1.1.8.0',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (18,'Open TCP Connections','tcp.tcpCurrEstab.0',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (21,'C7k Free Memory (Processor)','.1.3.6.1.4.1.9.9.48.1.1.1.6.1',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (22,'C7k Free Memory (Fast)','.1.3.6.1.4.1.9.9.48.1.1.1.6.5',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (23,'C7k Used Memory (Fast)','.1.3.6.1.4.1.9.9.48.1.1.1.5.5',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (24,'UCD - Executable 1','enterprises.ucdavis.extTable.extEntry.extOutput.1',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (25,'DNS - A Records','enterprises.ucdavis.extTable.extEntry.extOutput.1',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (26,'DNS - PTR Records','enterprises.ucdavis.extTable.extEntry.extOutput.2',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (27,'DNS - MX Records','enterprises.ucdavis.extTable.extEntry.extOutput.3',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (28,'DNS - CNAME Records','enterprises.ucdavis.extTable.extEntry.extOutput.4',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (29,'DNS - ANY Records','enterprises.ucdavis.extTable.extEntry.extOutput.5',2,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (30,'Cisco - RSP - Inlet Temperature (C)','enterprises.9.9.13.1.3.1.3.1',5,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (31,'Cisco - RSP - Hotpoint Temperature (C)','enterprises.9.9.13.1.3.1.3.2',5,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (32,'Cisco - RSP - Exhaust Temperature (C)','enterprises.9.9.13.1.3.1.3.3',5,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (33,'TNT - Dead Modems','.1.3.6.1.4.1.529.15.7.0',4,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (34,'TNT - Disabled Modems','.1.3.6.1.4.1.529.15.5.0',4,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (35,'TNT - Suspect Modems','.1.3.6.1.4.1.529.15.3.0',4,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (36,'TNT - Available Modems','.1.3.6.1.4.1.529.15.1.0',4,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (37,'TNT - Busy Modems','.1.3.6.1.4.1.529.15.9.0',4,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (38,'Interfaces - Bytes Out','ifOutOctets.%ifIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (39,'Interfaces - Bytes In','ifInOctets.%ifIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (40,'Interfaces - Errors In','ifInErrors.%ifIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (41,'TNT - Connected DS0s','.1.3.6.1.4.1.529.4.21.1.7.%ifIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (42,'Disk - Size (kB)','dskTotal.%dskIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (43,'Disk - Available (kB)','dskAvail.%dskIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (44,'Disk - Used (kB)','dskUsed.%dskIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (45,'Disk - Percent Used','dskPercent.%dskIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (46,'Disk - Percent Node Usage','dskPercentNode.%dskIndex%',8,0,0); +INSERT INTO `tests_snmp` (`id`, `name`, `oid`, `dev_type`, `type`, `subitem`) VALUES (47,'Custom','%parameters%',8,0,0); /*!40000 ALTER TABLE `tests_snmp` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `tests_sql` @@ -598,18 +761,21 @@ `column_num` tinyint(4) NOT NULL default '0', `timeout` int(11) NOT NULL default '10', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=latin1; -- -- Dumping data for table `tests_sql` -- - -/*!40000 ALTER TABLE `tests_sql` DISABLE KEYS */; LOCK TABLES `tests_sql` WRITE; -INSERT INTO `tests_sql` VALUES (1,'MySQL Questions',8,'localhost','root','sqlroot','show status like \"Questions\"',1,10),(3,'NetMRG - Active Script Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=1',0,10),(4,'NetMRG - Active SNMP Monitors',8,'localhost','netmrgread','netmrgread',' select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=2',0,10),(5,'NetMRG - Active SQL Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=3',0,10),(6,'NetMRG - Active Internal Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=4',0,10); -UNLOCK TABLES; +/*!40000 ALTER TABLE `tests_sql` DISABLE KEYS */; +INSERT INTO `tests_sql` (`id`, `name`, `sub_dev_type`, `host`, `user`, `password`, `query`, `column_num`, `timeout`) VALUES (1,'MySQL Questions',8,'localhost','root','sqlroot','show status like \"Questions\"',1,10); +INSERT INTO `tests_sql` (`id`, `name`, `sub_dev_type`, `host`, `user`, `password`, `query`, `column_num`, `timeout`) VALUES (3,'NetMRG - Active Script Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=1',0,10); +INSERT INTO `tests_sql` (`id`, `name`, `sub_dev_type`, `host`, `user`, `password`, `query`, `column_num`, `timeout`) VALUES (4,'NetMRG - Active SNMP Monitors',8,'localhost','netmrgread','netmrgread',' select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=2',0,10); +INSERT INTO `tests_sql` (`id`, `name`, `sub_dev_type`, `host`, `user`, `password`, `query`, `column_num`, `timeout`) VALUES (5,'NetMRG - Active SQL Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=3',0,10); +INSERT INTO `tests_sql` (`id`, `name`, `sub_dev_type`, `host`, `user`, `password`, `query`, `column_num`, `timeout`) VALUES (6,'NetMRG - Active Internal Monitors',8,'localhost','netmrgread','netmrgread','select count(*) from netmrg.monitors, netmrg.sub_devices, netmrg.devices where monitors.sub_dev_id=sub_devices.id and sub_devices.dev_id=devices.id and devices.disabled = 0 and monitors.test_type=4',0,10); /*!40000 ALTER TABLE `tests_sql` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `updates` @@ -627,12 +793,56 @@ -- Dumping data for table `updates` -- - -/*!40000 ALTER TABLE `updates` DISABLE KEYS */; LOCK TABLES `updates` WRITE; -INSERT INTO `updates` VALUES ('0.10pre2','Graph Options','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Options2','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Item Times','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Item Times2','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Title','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Item Muliplier','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','SNMP ifSpeed','pre-0.17','2004-10-25 20:59:06'),('0.10pre2','Graph Title Fill-in','pre-0.17','2004-10-25 20:59:06'),('0.12','SNMP Version Support','pre-0.17','2004-10-25 20:59:06'),('0.12','SNMP Timeout','pre-0.17','2004-10-25 20:59:06'),('0.12','User Prefs','pre-0.17','2004-10-25 20:59:06'),('0.12','User Prefs Slideshow Default','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP Recache Method','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP Recache Method Default','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP Recache Method Default2','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP Recache Method Default3','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP Recache Drop','pre-0.17','2004-10-25 20:59:06'),('0.14','SNMP ifNumber Drop','pre-0.17','2004-10-25 20:59:06'),('0.14','Log Table','pre-0.17','2004-10-25 20:59:06'),('0.14','User Index Drop','pre-0.17','2004-10-25 20:59:06'),('0.14','User Unique Index','pre-0.17','2004-10-25 20:59:06'),('0.16','Device SNMP Uptime Check Option','pre-0.17','2004-10-25 20:59:06'),('0.16','SNMP Test Type','pre-0.17','2004-10-25 20:59:06'),('0.16','Graph Min/Max','pre-0.17','2004-10-25 20:59:06'),('0.17','Internal Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'),('0.17','Script Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'),('0.17','SQL Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'),('0.17','New Internal Test - Lucent TNT Good Modems','pre-0.17','2004-10-25 20:59:06'),('0.17','New Internal Test - UCD CPU Load','pre-0.17','2004-10-25 20:59:06'),('0.17','New Internal Test - Windows Disk Usage','pre-0.17','2004-10-25 20:59:06'),('0.17','New Internal Test - UCD Swap Usage','pre-0.17','2004-10-25 20:59:06'),('0.17','New Internal Test - Read Value from File','pre-0.17','2004-10-25 20:59:06'),('0.17','User Disabled Support','pre-0.17','2004-10-25 20:59:06'),('0.18','Graph Multiply Sum Support','0.17','2004-10-25 20:59:35'),('0.18','New Internal Test - SNMP Failure','0.17','2004-10-25 20:59:35'),('0.18','SQL Test Timeout','0.17','2004-10-25 20:59:35'),('0.19','Increase size of monitors.type_id','0.19','2006-01-09 20:09:39'),('0.19','Increase size of view.pos','0.19','2006-01-09 20:09:42'),('0.19','Livingston Portmaster Modems Script Test','0.19','2006-01-09 20:09:54'),('0.19','Graph Min NULL Fix','0.19','2006-01-09 20:09:56'),('0.19','Graph Max NULL Fix','0.19','2006-01-09 20:09:59'); -UNLOCK TABLES; +/*!40000 ALTER TABLE `updates` DISABLE KEYS */; +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Options','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Options2','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Item Times','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Item Times2','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Title','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Item Muliplier','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','SNMP ifSpeed','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.10pre2','Graph Title Fill-in','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.12','SNMP Version Support','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.12','SNMP Timeout','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.12','User Prefs','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.12','User Prefs Slideshow Default','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP Recache Method','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP Recache Method Default','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP Recache Method Default2','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP Recache Method Default3','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP Recache Drop','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','SNMP ifNumber Drop','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','Log Table','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','User Index Drop','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.14','User Unique Index','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.16','Device SNMP Uptime Check Option','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.16','SNMP Test Type','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.16','Graph Min/Max','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','Internal Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','Script Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','SQL Test Name Lengthen','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','New Internal Test - Lucent TNT Good Modems','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','New Internal Test - UCD CPU Load','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','New Internal Test - Windows Disk Usage','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','New Internal Test - UCD Swap Usage','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','New Internal Test - Read Value from File','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.17','User Disabled Support','pre-0.17','2004-10-25 20:59:06'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.18','Graph Multiply Sum Support','0.17','2004-10-25 20:59:35'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.18','New Internal Test - SNMP Failure','0.17','2004-10-25 20:59:35'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.18','SQL Test Timeout','0.17','2004-10-25 20:59:35'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.19','Increase size of monitors.type_id','0.19','2006-01-09 20:09:39'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.19','Increase size of view.pos','0.19','2006-01-09 20:09:42'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.19','Livingston Portmaster Modems Script Test','0.19','2006-01-09 20:09:54'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.19','Graph Min NULL Fix','0.19','2006-01-09 20:09:56'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.19','Graph Max NULL Fix','0.19','2006-01-09 20:09:59'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.20','Device Properties Table','0.19','2007-03-21 20:56:44'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.20','Device Properties Values Table','0.19','2007-03-21 20:56:44'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.20','SNMP Interface Cache New Fields','0.19','2007-03-21 20:56:44'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.20','Graph Item Consolidation Function Field','0.19','2007-03-21 20:56:45'); +INSERT INTO `updates` (`update_version`, `name`, `version_applied_to`, `dateapplied`) VALUES ('0.20','Device Unknowns on SNMP Restart Field','0.19','2007-03-21 20:56:45'); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `user` @@ -649,18 +859,18 @@ `disabled` tinyint(4) NOT NULL default '0', PRIMARY KEY (`id`), UNIQUE KEY `user` (`user`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; -- -- Dumping data for table `user` -- - -/*!40000 ALTER TABLE `user` DISABLE KEYS */; LOCK TABLES `user` WRITE; -INSERT INTO `user` VALUES (1,'admin','ee10c315eba2c75b403ea99136f5b48d',3,'Administrator',0,0),(2,'NETMRG_DEFAULT_MAP','d41d8cd98f00b204e9800998ecf8427e',0,'Administrator',0,1); -UNLOCK TABLES; +/*!40000 ALTER TABLE `user` DISABLE KEYS */; +INSERT INTO `user` (`id`, `user`, `pass`, `permit`, `fullname`, `group_id`, `disabled`) VALUES (1,'admin','ee10c315eba2c75b403ea99136f5b48d',3,'Administrator',0,0); +INSERT INTO `user` (`id`, `user`, `pass`, `permit`, `fullname`, `group_id`, `disabled`) VALUES (2,'NETMRG_DEFAULT_MAP','d41d8cd98f00b204e9800998ecf8427e',0,'Administrator',0,1); /*!40000 ALTER TABLE `user` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `user_prefs` @@ -676,18 +886,18 @@ PRIMARY KEY (`id`), KEY `uid` (`uid`), KEY `uid_module_pref` (`uid`,`module`,`pref`) -) ENGINE=MyISAM DEFAULT CHARSET=latin1; +) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1; -- -- Dumping data for table `user_prefs` -- - -/*!40000 ALTER TABLE `user_prefs` DISABLE KEYS */; LOCK TABLES `user_prefs` WRITE; -INSERT INTO `user_prefs` VALUES (1,1,'SlideShow','AutoScroll','1'),(2,2,'SlideShow','AutoScroll','1'); -UNLOCK TABLES; +/*!40000 ALTER TABLE `user_prefs` DISABLE KEYS */; +INSERT INTO `user_prefs` (`id`, `uid`, `module`, `pref`, `value`) VALUES (1,1,'SlideShow','AutoScroll','1'); +INSERT INTO `user_prefs` (`id`, `uid`, `module`, `pref`, `value`) VALUES (2,2,'SlideShow','AutoScroll','1'); /*!40000 ALTER TABLE `user_prefs` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `versioninfo` @@ -703,12 +913,11 @@ -- Dumping data for table `versioninfo` -- - -/*!40000 ALTER TABLE `versioninfo` DISABLE KEYS */; LOCK TABLES `versioninfo` WRITE; -INSERT INTO `versioninfo` VALUES ('Main','0.19'); -UNLOCK TABLES; +/*!40000 ALTER TABLE `versioninfo` DISABLE KEYS */; +INSERT INTO `versioninfo` (`module`, `version`) VALUES ('Main','0.20'); /*!40000 ALTER TABLE `versioninfo` ENABLE KEYS */; +UNLOCK TABLES; -- -- Table structure for table `view` @@ -732,11 +941,11 @@ -- Dumping data for table `view` -- - -/*!40000 ALTER TABLE `view` DISABLE KEYS */; LOCK TABLES `view` WRITE; -UNLOCK TABLES; +/*!40000 ALTER TABLE `view` DISABLE KEYS */; /*!40000 ALTER TABLE `view` ENABLE KEYS */; +UNLOCK TABLES; +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; @@ -746,3 +955,4 @@ /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; +-- Dump completed on 2008-04-12 0:44:35 diff -Nurb netmrg-0.19/share/netmrg.spec netmrg-0.20/share/netmrg.spec --- netmrg-0.19/share/netmrg.spec 2006-02-01 01:38:52.000000000 +0530 +++ netmrg-0.20/share/netmrg.spec 1970-01-01 05:30:00.000000000 +0530 @@ -1,116 +0,0 @@ -%define _localdatadir %{_var} - -Summary: Network Monitoring package using PHP, MySQL, and RRDtool -Name: netmrg -Version: 0.19 -Release: 1 -#Epoch: 1 -License: GPLv2 -Group: Application/System -Source0: netmrg-%{version}.tar.gz -#Source1: -#Patch0: -#Patch1: -URL: http://www.netmrg.net -BuildRoot: %{_tmppath}/%{name}-root -Requires: php, php-mysql, mysql, webserver, rrdtool, libxml2 -BuildRequires: mysql-devel, libxml2-devel -%{!?_with_ucd:Requires: net-snmp} -%{!?_with_ucd:BuildRequires: net-snmp-devel} -%{?_with_ucd:Requires: ucd-snmp} -%{?_with_ucd:BuildRequires: ucd-snmp-devel} - - -%description -NetMRG is a tool for network monitoring, reporting, and graphing. Based -on RRDTOOL, the best of open source graphing systems, NetMRG is capable -of creating graphs of any parameter of your network. - -%prep -%define _wwwdir %{_localstatedir}/www/%{name} -%setup -q -%configure \ - --with-wwwdir=%{_wwwdir} - -%build -make %{_smp_mflags} - -%install -rm -rf %{buildroot} -make \ - prefix=%{?buildroot:%{buildroot}}%{_prefix} \ - exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \ - bindir=%{?buildroot:%{buildroot}}%{_bindir} \ - sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \ - sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \ - datadir=%{?buildroot:%{buildroot}}%{_datadir} \ - includedir=%{?buildroot:%{buildroot}}%{_includedir} \ - libdir=%{?buildroot:%{buildroot}}%{_libdir} \ - libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \ - localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \ - sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \ - mandir=%{?buildroot:%{buildroot}}%{_mandir} \ - infodir=%{?buildroot:%{buildroot}}%{_infodir} \ - netmrg_wwwdir=%{?buildroot:%{buildroot}}%{_wwwdir} \ - install - -install -d %{buildroot}/%{_sysconfdir}/cron.d -install -m 644 etc/cron.d-netmrg %{buildroot}/%{_sysconfdir}/cron.d/netmrg -install -d %{buildroot}/%{_sysconfdir}/rc.d/init.d -install -m 755 etc/init.d-netmrg %{buildroot}/%{_sysconfdir}/rc.d/init.d/netmrg -rm -f %{buildroot}/${_datadir}/doc/%{name}-%{version}/cron.d-netmrg -rm -f %{buildroot}/${_datadir}/doc/%{name}-%{version}/init.d-netmrg - -%clean -rm -rf %{buildroot} - -%pre -if [ $1 = 1 ]; then - useradd -d %{_localstatedir}/lib/netmrg netmrg > /dev/null 2>&1 || true - chmod 755 %{_localstatedir}/lib/netmrg -fi - -%post -if [ $1 = 1 ]; then - chkconfig --add netmrg -fi - -%preun -if [ $1 = 0 ]; then - service netmrg stop > /dev/null 2>&1 - /sbin/chkconfig --del netmrg -fi - -%postun -if [ $1 = 0 ]; then - userdel netmrg -fi - -%files -%defattr(-, root, root) -%doc %{_datadir}/doc/* -%config(noreplace) %{_sysconfdir}/%{name}.xml -%config(noreplace) %{_sysconfdir}/%{name}.conf -%config %{_sysconfdir}/cron.d/netmrg -%config %{_sysconfdir}/rc.d/init.d/netmrg -%{_bindir}/* -%{_datadir}/%{name}/* -%{_mandir}/man1/* -%{_localstatedir}/www/* -%attr(-, netmrg, netmrg) %dir %{_localstatedir}/log/netmrg -%attr(-, netmrg, netmrg) %{_localstatedir}/lib/netmrg/* -%{_libexecdir}/* - -%changelog -* Thu Oct 14 2004 Douglas E. Warner -- fix homedir for netmrg - -* Fri May 28 2004 Douglas E. Warner -- added new init and cron scripts - -* Sat May 19 2004 Kevin Bonner -- added build option '--with ucd' to allow building on older RH boxes - -* Sat Oct 06 2003 Douglas E. Warner -- Initial RPM release. - diff -Nurb netmrg-0.19/src/devices.cpp netmrg-0.20/src/devices.cpp --- netmrg-0.19/src/devices.cpp 2005-01-27 07:13:17.000000000 +0530 +++ netmrg-0.20/src/devices.cpp 2006-11-04 01:49:26.000000000 +0530 @@ -15,6 +15,59 @@ #include "mappings.h" #include "settings.h" +void do_properties_recache(DeviceInfo info, MYSQL *mysql) +{ + string query = string("SELECT id, test_type, test_id, test_params, name FROM dev_props WHERE dev_type_id = " + inttostr(info.device_type)); + + MYSQL_RES *mysql_res = db_query(mysql, &info, query); + MYSQL_ROW mysql_row; + + for (uint i = 0; i < mysql_num_rows(mysql_res); i++) + { + mysql_row = mysql_fetch_row(mysql_res); + + string value; + info.property_id = strtoint(mysql_row[0]); + info.test_type = strtoint(mysql_row[1]); + info.test_id = strtoint(mysql_row[2]); + info.test_params = mysql_row[3]; + info.parameters.push_front(ValuePair("parameters", info.test_params)); + + switch (info.test_type) + { + case 1: value = process_script_monitor(info, mysql); + value = strstripnl(value); + break; + + case 2: value = process_snmp_monitor(info, mysql); + value = remove_surrounding_quotes(value); + break; + + case 3: value = process_sql_monitor(info, mysql); + break; + + case 4: value = process_internal_monitor(info, mysql); + break; + + default: debuglogger(DEBUG_PROPERTY, LEVEL_WARNING, &info, "Unknown test type (" + inttostr(info.test_type) + ")."); + value = "U"; + } // end switch + + if (value != "U") + { + debuglogger(DEBUG_PROPERTY, LEVEL_INFO, &info, string("Device Property '") + mysql_row[4] + "' set to {'" + value + "'}"); + db_update(mysql, &info, "REPLACE INTO dev_prop_vals SET dev_id=" + inttostr(info.device_id) + ", prop_id=" + mysql_row[0] + ", value='" + db_escape(value) + "'"); + } + else + { + debuglogger(DEBUG_PROPERTY, LEVEL_INFO, &info, "Device Property test failed, skipping update."); + } + } + + mysql_free_result(mysql_res); + +} // end do_properties_recache + uint process_sub_device(DeviceInfo info, MYSQL *mysql) { MYSQL_RES *mysql_res; @@ -209,7 +262,9 @@ string("snmp_port, ") + // 7 string("snmp_timeout, ") + // 8 string("snmp_retries, ") + // 9 - string("no_snmp_uptime_check ") + // 10 + string("no_snmp_uptime_check, ") + // 10 + string("dev_type, ") + // 11 + string("unknowns_on_snmp_restart ") + // 12 string("FROM devices ") + string("WHERE id=") + inttostr(dev_id); @@ -219,6 +274,7 @@ info.name = mysql_row[0]; info.ip = mysql_row[1]; info.snmp_version = strtoint(mysql_row[2]); + info.device_type = strtoint(mysql_row[11]); debuglogger(DEBUG_DEVICE, LEVEL_INFO, &info, info.name + " / {" + info.ip + "}"); @@ -280,6 +336,13 @@ // device came back from the dead info.snmp_recache = 1; debuglogger(DEBUG_DEVICE, LEVEL_NOTICE, &info, "Device has returned from SNMP-death."); + + // write unknowns to counters, if configured to + if (strtoint(mysql_row[12]) == 1) + { + info.counter_unknowns = 1; + debuglogger(DEBUG_DEVICE, LEVEL_NOTICE, &info, "Using unknowns for non-gauge values."); + } } if (info.snmp_uptime < strtoint(mysql_row[5])) @@ -287,6 +350,14 @@ // uptime went backwards info.snmp_recache = 1; debuglogger(DEBUG_SNMP, LEVEL_NOTICE, &info, "SNMP Agent Restart."); + + // write unknowns to counters, if configured to + if (strtoint(mysql_row[12]) == 1) + { + info.counter_unknowns = 1; + debuglogger(DEBUG_DEVICE, LEVEL_NOTICE, &info, "Using unknowns for non-gauge values."); + } + } } } @@ -319,7 +390,7 @@ cache_mysql_res = db_query(&mysql, &info, string("SELECT count(*) FROM snmp_interface_cache WHERE dev_id = ") + inttostr(info.device_id)); cache_mysql_row = mysql_fetch_row(cache_mysql_res); - int interface_cache_count = strtoint(cache_mysql_row[0]); + unsigned int interface_cache_count = strtoint(cache_mysql_row[0]); mysql_free_result(cache_mysql_res); if (info.snmp_ifnumber != interface_cache_count) @@ -346,6 +417,7 @@ debuglogger(DEBUG_SNMP, LEVEL_NOTICE, &info, "Performing SNMP Recache."); do_snmp_interface_recache(&info, &mysql); do_snmp_disk_recache(&info, &mysql); + do_properties_recache(info, &mysql); } } // end snmp-enabled else diff -Nurb netmrg-0.19/src/events.cpp netmrg-0.20/src/events.cpp --- netmrg-0.19/src/events.cpp 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/src/events.cpp 2008-03-27 06:25:37.000000000 +0530 @@ -45,7 +45,7 @@ MYSQL_ROW mysql_row; uint status = 0; - string query = "SELECT value, value_type, `condition`, logic_condition FROM conditions WHERE event_id=" + inttostr(info.event_id) + " ORDER BY id"; + string query = "SELECT `value`, `value_type`, `condition`, `logic_condition` FROM `conditions` WHERE `event_id` = '" + inttostr(info.event_id) + "' ORDER BY `id`"; mysql_res = db_query(mysql, &info, query); for (uint i = 0; i < mysql_num_rows(mysql_res); i++) @@ -161,6 +161,7 @@ { MYSQL_RES *mysql_res; MYSQL_ROW mysql_row; + int notification_res; string query = string("SELECT notifications.command, responses.parameters, responses.id ") + string("FROM responses, notifications ") + @@ -178,7 +179,7 @@ if (command[0] != '/') command = get_setting(setPathLibexec) + "/" + command; debuglogger(DEBUG_RESPONSE, LEVEL_INFO, &info, "Running Response: " + command); - system(command.c_str()); + notification_res = system(command.c_str()); } } // end process_responses() diff -Nurb netmrg-0.19/src/include/config.h.in netmrg-0.20/src/include/config.h.in --- netmrg-0.19/src/include/config.h.in 2005-07-09 05:41:12.000000000 +0530 +++ netmrg-0.20/src/include/config.h.in 2008-03-27 06:25:37.000000000 +0530 @@ -4,6 +4,14 @@ language is requested. */ #undef ENABLE_NLS +/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +#undef HAVE_CFLOCALECOPYCURRENT + +/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +#undef HAVE_CFPREFERENCESCOPYAPPVALUE + /* Define to 1 if you have the header file. */ #undef HAVE_CSTDIO @@ -32,9 +40,6 @@ /* Define to 1 if you have the `intl' library (-lintl). */ #undef HAVE_LIBINTL -/* Define to 1 if you have the `mysqlclient' library (-lmysqlclient). */ -#undef HAVE_LIBMYSQLCLIENT - /* Define to 1 if you have the `snmp' library (-lsnmp). */ #undef HAVE_LIBSNMP @@ -139,5 +144,5 @@ /* Define to empty if `const' does not conform to ANSI C. */ #undef const -/* Define to `unsigned' if does not define. */ +/* Define to `unsigned int' if does not define. */ #undef size_t diff -Nurb netmrg-0.19/src/include/devices.h netmrg-0.20/src/include/devices.h --- netmrg-0.19/src/include/devices.h 2003-07-07 01:02:18.000000000 +0530 +++ netmrg-0.20/src/include/devices.h 2006-11-01 21:46:06.000000000 +0530 @@ -15,6 +15,7 @@ // Device processing void process_device(int dev_id); +void do_properties_recache(DeviceInfo info, MYSQL *mysql); // Sub-device processing uint process_sub_devices(DeviceInfo info, MYSQL *mysql); diff -Nurb netmrg-0.19/src/include/mappings.h netmrg-0.20/src/include/mappings.h --- netmrg-0.19/src/include/mappings.h 2003-12-24 07:08:29.000000000 +0530 +++ netmrg-0.20/src/include/mappings.h 2006-02-21 20:20:31.000000000 +0530 @@ -14,7 +14,7 @@ #include "db.h" // types -enum IfMIBType { imtStandard, imtCatOS, imtOldCiscoSwitch, imtOldCiscoRouter }; +enum IfMIBType { imtStandard, imtCatOS, imtOldCiscoSwitch, imtOldCiscoRouter, imtFSM726 }; // caching functions void do_snmp_interface_recache(DeviceInfo *info, MYSQL *mysql); diff -Nurb netmrg-0.19/src/include/netmrg.h.in netmrg-0.20/src/include/netmrg.h.in --- netmrg-0.19/src/include/netmrg.h.in 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/src/include/netmrg.h.in 2008-03-27 06:25:37.000000000 +0530 @@ -28,7 +28,7 @@ #define DEF_RRDTOOL "@RRDTOOL@" #define DEF_RRDS "@localstatedir@/lib/netmrg/rrd" #define DEF_LIBEXEC "@libexecdir@/netmrg/" -#define DEF_LOCALE "@datadir@/netmrg/locale" +#define DEF_LOCALE "@datarootdir@/netmrg/locale" // Threading #define DEF_THREAD_COUNT 5 // number of simultaneous threads diff -Nurb netmrg-0.19/src/include/types.h netmrg-0.20/src/include/types.h --- netmrg-0.19/src/include/types.h 2004-06-01 02:29:39.000000000 +0530 +++ netmrg-0.20/src/include/types.h 2006-11-04 01:49:26.000000000 +0530 @@ -46,6 +46,7 @@ struct DeviceInfo { int device_id; + int property_id; int subdevice_id; int monitor_id; int event_id; @@ -59,8 +60,10 @@ uint snmp_avoid; uint snmp_recache; uint snmp_ifnumber; + uint counter_unknowns; long long int snmp_uptime; + uint device_type; uint subdevice_type; int test_type; @@ -88,6 +91,7 @@ DeviceInfo() { device_id = -1; + property_id = -1; subdevice_id = -1; monitor_id = -1; event_id = -1; @@ -101,6 +105,7 @@ snmp_recache = 0; snmp_ifnumber = 0; snmp_uptime = 0; + counter_unknowns= 0; subdevice_type = 0; diff -Nurb netmrg-0.19/src/include/utils.h netmrg-0.20/src/include/utils.h --- netmrg-0.19/src/include/utils.h 2004-10-24 02:36:18.000000000 +0530 +++ netmrg-0.20/src/include/utils.h 2006-11-01 03:00:51.000000000 +0530 @@ -31,8 +31,11 @@ const int DEBUG_GATHERER = 512; const int DEBUG_MYSQL = 1024; const int DEBUG_LOGGING = 2048; +const int DEBUG_FILELINE = 4096; +const int DEBUG_FUNCTION = 8192; +const int DEBUG_PROPERTY = 16384; -const int DEBUG_ALL = 4095; +const int DEBUG_ALL = 32767; const int DEBUG_MOST = DEBUG_ALL; const int DEBUG_DEFAULT = DEBUG_ALL; @@ -79,6 +82,7 @@ // general functions int file_exists(string filename); +string remove_surrounding_quotes(string input); string strstripnl(string input); string token_replace(string &source, string token, string value); u_char *u_string(string source, u_char *out); @@ -107,6 +111,7 @@ string censor_message(const string & message); string remove_braces(const string & message); -void debuglogger(int component, int level, const DeviceInfo *, const string & message); +#define debuglogger(a,b,c,d) __debuglogger(a, b, __FILE__, __LINE__, __FUNCTION__, c, d) +void __debuglogger(int component, int level, const char * file, int line, const char * function, const DeviceInfo *, const string & message); #endif diff -Nurb netmrg-0.19/src/Makefile.in netmrg-0.20/src/Makefile.in --- netmrg-0.19/src/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/src/Makefile.in 2008-04-12 07:52:40.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -17,17 +17,11 @@ # These settings are pulled into Makefile.in by automake -SOURCES = $(netmrg_gatherer_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -65,7 +59,7 @@ settings.$(OBJEXT) snmp.$(OBJEXT) utils.$(OBJEXT) netmrg_gatherer_OBJECTS = $(am_netmrg_gatherer_OBJECTS) netmrg_gatherer_LDADD = $(LDADD) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/src/include +DEFAULT_INCLUDES = -I. -I$(top_builddir)/src/include@am__isrc@ depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ @@ -77,18 +71,19 @@ DIST_SOURCES = $(netmrg_gatherer_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive HEADERS = $(noinst_HEADERS) +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -112,11 +107,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -126,9 +125,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -146,13 +147,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -164,28 +165,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -252,12 +264,11 @@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@ .cpp.obj: -@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` -uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -290,8 +301,7 @@ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: +$(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ @@ -392,23 +402,21 @@ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/.. $(distdir)/include - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -422,7 +430,7 @@ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ @@ -430,6 +438,8 @@ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ @@ -440,7 +450,7 @@ installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive @@ -488,12 +498,20 @@ install-data-am: +install-dvi: install-dvi-recursive + install-exec-am: install-binPROGRAMS +install-html: install-html-recursive + install-info: install-info-recursive install-man: +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -513,23 +531,25 @@ ps-am: -uninstall-am: uninstall-binPROGRAMS uninstall-info-am +uninstall-am: uninstall-binPROGRAMS -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-binPROGRAMS clean-generic clean-recursive ctags \ - ctags-recursive distclean distclean-compile distclean-generic \ - distclean-recursive distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man install-strip \ - installcheck installcheck-am installdirs installdirs-am \ - maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-compile \ - mostlyclean-generic mostlyclean-recursive pdf pdf-am ps ps-am \ - tags tags-recursive uninstall uninstall-am \ - uninstall-binPROGRAMS uninstall-info-am +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-binPROGRAMS \ + clean-generic ctags ctags-recursive distclean \ + distclean-compile distclean-generic distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-binPROGRAMS install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \ + ps ps-am tags tags-recursive uninstall uninstall-am \ + uninstall-binPROGRAMS @SET_MAKE@ diff -Nurb netmrg-0.19/src/mappings.cpp netmrg-0.20/src/mappings.cpp --- netmrg-0.19/src/mappings.cpp 2005-08-24 11:57:38.000000000 +0530 +++ netmrg-0.20/src/mappings.cpp 2006-11-01 03:00:51.000000000 +0530 @@ -12,13 +12,34 @@ #include "snmp.h" #include "db.h" -string remove_surrounding_quotes(string input) +string hex_to_dec(const string & hex) { - if (input[0] == '"') - input.erase(0,1); - if (input[input.length() - 1] == '"') - input.erase(input.length() - 1, 1); - return input; + unsigned int value; + sscanf(hex.c_str(), "%x", &value); + return inttostr(value); +} + +string cdpaddress_to_ip(const string & cdpip) +{ + string temp = cdpip; + string ip = ""; + int pos; + while ((pos = temp.find(" ")) != string::npos) + { + ip += hex_to_dec(temp.substr(0,pos)) + "."; + temp.erase(0, pos+1); + } + ip += hex_to_dec(temp); + return ip; +} + +string get_cdp_index(DeviceInfo *info, string portifindex) +{ + list cdpAddressType = snmp_walk(*info, ".1.3.6.1.4.1.9.9.23.1.2.1.1.3." + portifindex); + cdpAddressType = snmp_trim_rootoid(cdpAddressType, ".1.3.6.1.4.1.9.9.23.1.2.1.1.3."); + if (!cdpAddressType.empty()) + return cdpAddressType.begin()->oid; + return "U"; } void do_snmp_interface_recache(DeviceInfo *info, MYSQL *mysql) @@ -31,12 +52,18 @@ IfMIBType mibtype = imtStandard; + if (sysdescr.find("FSM726 Managed Switch") != string::npos) + mibtype = imtFSM726; + if (sysdescr.find("WS-C") != string::npos) mibtype = imtCatOS; if (sysdescr.find("Cisco Systems Catalyst 1900") != string::npos) mibtype = imtOldCiscoSwitch; + // check for CDP capability + bool cdp_enabled = (snmp_get(*info, ".1.3.6.1.4.1.9.9.23.1.3.1.0") == "1"); + list ifIndexList = snmp_walk(*info, "ifIndex"); for (list::iterator current = ifIndexList.begin(); current != ifIndexList.end(); current++) @@ -70,6 +97,12 @@ ifAlias.erase(ifAlias.length() - 1, 1); } } + else if (mibtype == imtFSM726) + { + ifAlias = snmp_get(*info, ".1.3.6.1.4.1.4526.1.4.11.6.1.13." + ifIndex); + ifAlias = remove_surrounding_quotes(ifAlias); + ifName = ifDescr; + } else if (mibtype == imtOldCiscoSwitch) { ifAlias = snmp_get(*info, ".1.3.6.1.4.1.437.1.1.3.3.1.1.3." + ifIndex); @@ -95,6 +128,35 @@ string ifOperStatus = snmp_get(*info, "ifOperStatus." + ifIndex); string ifAdminStatus = snmp_get(*info, "ifAdminStatus." + ifIndex); string ifSpeed = snmp_get(*info, "ifSpeed." + ifIndex); + string vlan = snmp_get(*info, ".1.3.6.1.4.1.9.9.68.1.2.2.1.2." + ifIndex); + U_to_NULL(vlan); + + // CDP Next Hop + string nexthop = "U"; + if (cdp_enabled) + { + string cdp_index = get_cdp_index(info, ifIndex); + if (cdp_index != "U") + { + string cdp_port = remove_surrounding_quotes(snmp_get(*info, ".1.3.6.1.4.1.9.9.23.1.2.1.1.7." + cdp_index)); + string raw_cdp_ip = snmp_get(*info, ".1.3.6.1.4.1.9.9.23.1.2.1.1.4." + cdp_index); + string cdp_ip = cdpaddress_to_ip(raw_cdp_ip); + + MYSQL_RES *nh_mysql_res; + MYSQL_ROW nh_mysql_row; + nh_mysql_res = db_query(mysql, info, string( + "SELECT sd.id FROM devices d, sub_devices sd, sub_dev_variables sdv ") + + "WHERE d.ip = '" + cdp_ip + "'" + + "AND sdv.name = 'ifDescr' AND sdv.value = '" + cdp_port + "'" + + "AND d.id = sd.dev_id AND sd.id = sdv.sub_dev_id"); + if (nh_mysql_row = mysql_fetch_row(nh_mysql_res)) + { + nexthop = string(nh_mysql_row[0]); + } + mysql_free_result(nh_mysql_res); + } + } + U_to_NULL(nexthop); db_update(mysql, info, string("INSERT INTO snmp_interface_cache SET ") + "dev_id = " + inttostr((*info).device_id) + ", " + @@ -105,9 +167,10 @@ "ifType = '" + ifType + "', " + "ifMAC = " + ifMAC + ", " + "ifOperStatus = '" + ifOperStatus + "', " + - "ifAdminStatus = '" + ifAdminStatus + "', " - "ifSpeed = '" + ifSpeed + "'"); - + "ifAdminStatus = '" + ifAdminStatus + "', " + + "ifSpeed = '" + ifSpeed + "', " + + "vlan = " + vlan + ", " + + "nexthop = " + nexthop + ""); } list ifIPList = snmp_walk(*info, "ipAdEntIfIndex"); @@ -115,8 +178,8 @@ for (list::iterator current = ifIPList.begin(); current != ifIPList.end(); current++) { - string ip = (*current).oid; - string ifIndex = (*current).value; + string ip = current->oid; + string ifIndex = current->value; db_update(mysql, info, string("UPDATE snmp_interface_cache SET ifIP = '") + ip + "' WHERE dev_id=" + inttostr((*info).device_id) + @@ -135,7 +198,7 @@ for (list::iterator current = dskIndexList.begin(); current != dskIndexList.end(); current++) { - string dskIndex = (*current).value; + string dskIndex = current->value; string dskPath = snmp_get(*info, "dskPath." + dskIndex); U_to_NULL(dskPath); string dskDevice = snmp_get(*info, "dskDevice." + dskIndex); U_to_NULL(dskDevice); @@ -154,7 +217,7 @@ dskIndexList = snmp_walk(*info, ".1.3.6.1.2.1.25.2.3.1.1"); for (list::iterator current = dskIndexList.begin(); current != dskIndexList.end(); current++) { - dskIndex = (*current).value; + dskIndex = current->value; dskPath = snmp_get(*info, ".1.3.6.1.2.1.25.2.3.1.3." + dskIndex); U_to_NULL(dskPath); if (dskPath[1] == '\\' && dskPath[2] == '"' && dskPath[dskPath.size()-3] == '\\' && dskPath[dskPath.size()-2] == '"') @@ -220,7 +283,7 @@ else { string query = - string("SELECT ifIndex, ifName, ifIP, ifDescr, ifAlias, ifMAC, ifSpeed FROM snmp_interface_cache WHERE dev_id=") + + string("SELECT ifIndex, ifName, ifIP, ifDescr, ifAlias, ifMAC, ifSpeed, nexthop FROM snmp_interface_cache WHERE dev_id=") + inttostr(info->device_id) + string(" AND ") + index + "='" + db_escape(value) + "'"; mysql_res = db_query(mysql, info, query); @@ -262,6 +325,9 @@ if (mysql_row[6] != NULL) info->parameters.push_front(ValuePair("ifSpeed", mysql_row[6])); + + if (mysql_row[7] != NULL) + info->parameters.push_front(ValuePair("nexthop", mysql_row[7])); } else { diff -Nurb netmrg-0.19/src/monitors.cpp netmrg-0.20/src/monitors.cpp --- netmrg-0.19/src/monitors.cpp 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/src/monitors.cpp 2008-09-07 18:21:31.000000000 +0530 @@ -9,6 +9,7 @@ #include #include +#include #include "monitors.h" diff -Nurb netmrg-0.19/src/netmrg.cpp netmrg-0.20/src/netmrg.cpp --- netmrg-0.19/src/netmrg.cpp 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/src/netmrg.cpp 2008-09-07 18:21:31.000000000 +0530 @@ -22,6 +22,7 @@ #include "common.h" #include #include +#include #include #include #include @@ -107,13 +108,14 @@ pid_t mypid = getpid(); FILE *lockfile; + int lockfile_res; // check for existing lockfile if (file_exists(get_setting(setPathLockFile))) { lockfile = fopen(get_setting(setPathLockFile).c_str(), "r"); pid_t otherpid; - fscanf(lockfile, "%d", &otherpid); + lockfile_res = fscanf(lockfile, "%d", &otherpid); fclose(lockfile); // if we could have sent the signal, or if the problem wasn't finding the PID, die. @@ -283,6 +285,7 @@ { timespec tosleep, unslept; tosleep.tv_sec = start_time + get_setting_int(setPollInterval) - time(NULL); + tosleep.tv_nsec = 0; while (nanosleep(&tosleep, &unslept)) { if ((errno == EINTR) && (netmrg_terminated)) @@ -322,6 +325,7 @@ printf("\nMode of Operation:\n"); printf("-i Recache the interfaces of device \n"); printf("-d Recache the disks of device \n"); + printf("-P Recache the properties of device \n"); printf("-K Parse config file , or default if omitted (for syntax checking)\n"); printf("If no mode is specified, the default is to gather data for all enabled devices.\n"); @@ -360,7 +364,7 @@ info.device_id = device_id; mysql_res = db_query(&mysql, &info, string("SELECT ip, snmp_read_community, snmp_version, snmp_port, ") + - "snmp_timeout, snmp_retries FROM devices WHERE id=" + inttostr(device_id)); + "snmp_timeout, snmp_retries, dev_type FROM devices WHERE id=" + inttostr(device_id)); mysql_row = mysql_fetch_row(mysql_res); if (mysql_row == NULL) @@ -382,6 +386,9 @@ info.snmp_port = strtoint(mysql_row[3]); info.snmp_timeout = strtoint(mysql_row[4]); info.snmp_retries = strtoint(mysql_row[5]); + info.device_type = strtoint(mysql_row[6]); + info.parameters.push_front(ValuePair("ip", info.ip)); + info.parameters.push_front(ValuePair("snmp_read_community", info.snmp_read_community)); mysql_free_result(mysql_res); @@ -391,6 +398,7 @@ { case 1: do_snmp_interface_recache(&info, &mysql); break; case 2: do_snmp_disk_recache(&info, &mysql); break; + case 3: do_properties_recache(info, &mysql); break; } snmp_session_cleanup(info); snmp_cleanup(); @@ -401,6 +409,7 @@ void daemonize() { pid_t pid; + int chdir_res; pid = fork(); if (pid < 0) @@ -419,7 +428,7 @@ { // we're the child, keep going setsid(); - chdir("/"); + chdir_res = chdir("/"); umask(0); return; } @@ -438,7 +447,7 @@ set_log_method(LOG_METHOD_VT100); } - while ((option_char = getopt(argc, argv, "hvXSqasmbM:i:d:c:l:H:D:u:p::t:C:K::")) != EOF) + while ((option_char = getopt(argc, argv, "hvXSqasmbM:i:d:P:c:l:H:D:u:p::t:C:K::")) != EOF) switch (option_char) { case 'h': show_usage(); @@ -466,6 +475,9 @@ case 'd': external_snmp_recache(strtoint(optarg), 2); exit(0); break; + case 'P': external_snmp_recache(strtoint(optarg), 3); + exit(0); + break; case 'c': set_debug_components(strtoint(optarg)); break; case 'l': set_debug_level(strtoint(optarg)); diff -Nurb netmrg-0.19/src/rrd.cpp netmrg-0.20/src/rrd.cpp --- netmrg-0.19/src/rrd.cpp 2004-10-24 02:36:18.000000000 +0530 +++ netmrg-0.20/src/rrd.cpp 2006-11-04 01:49:26.000000000 +0530 @@ -133,7 +133,7 @@ // for a monitor: // 1. Create a RRD file if one doesn't exist. // 2. Tune the RRD file if necessary. -// 3. Update the RRD file with current data. +// 3. Update the RRD file with current data, or an unknown if we need to do that void update_monitor_rrd(DeviceInfo info, RRDInfo rrd) { @@ -147,6 +147,12 @@ tune_rrd(info, rrd); } + if ( (rrd.data_type != "GAUGE") && (info.counter_unknowns == 1) ) + { + debuglogger(DEBUG_MONITOR, LEVEL_INFO, &info, "Writing unknown to non-gauge RRD due to restart condition."); + info.curr_val = "U"; + } + update_rrd(info, rrd); } diff -Nurb netmrg-0.19/src/snmp.cpp netmrg-0.20/src/snmp.cpp --- netmrg-0.19/src/snmp.cpp 2005-01-17 04:46:16.000000000 +0530 +++ netmrg-0.20/src/snmp.cpp 2006-06-26 01:53:00.000000000 +0530 @@ -209,22 +209,21 @@ if (status == STAT_SUCCESS && response->errstat == SNMP_ERR_NOERROR) { - - /* - * SUCCESS: Print the result variables - */ - - if (status == STAT_SUCCESS) - { vars = response->variables; + if (vars->type == SNMP_NOSUCHINSTANCE || vars->type == SNMP_NOSUCHOBJECT || vars->type == SNMP_ENDOFMIBVIEW) + { + result = string("U"); + } + else + { result = snmp_result(vars); result = snmp_value(result); } + } else { result = string("U"); } - } if (response) snmp_free_pdu(response); diff -Nurb netmrg-0.19/src/utils.cpp netmrg-0.20/src/utils.cpp --- netmrg-0.19/src/utils.cpp 2008-09-07 18:20:07.000000000 +0530 +++ netmrg-0.20/src/utils.cpp 2008-09-07 18:21:31.000000000 +0530 @@ -8,6 +8,7 @@ ********************************************/ #include +#include #include #include #include @@ -42,6 +43,16 @@ return !(stat(filename.c_str(), &file_stat)); } +// remove_surrounding_quotes - removes leading and trailing quotes, if present +string remove_surrounding_quotes(string input) +{ + if (input[0] == '"') + input.erase(0,1); + if (input[input.length() - 1] == '"') + input.erase(input.length() - 1, 1); + return input; +} + // strstripnl - given a string, return a string without new line at the end string strstripnl(string input) { @@ -307,10 +318,12 @@ // // component - the sum of the components this message pertains to // level - the sum of the levels this message pertains to +// file, line, +// function - provided by the LEVEL_* macros // info - the DeviceInfo struct, used to display the context of the message // message - the message, sensitive information enclosed in braces will be censored when desired // -void debuglogger(int component, int level, const DeviceInfo * info, const string & message) +void __debuglogger(int component, int level, const char * file, int line, const char * function, const DeviceInfo * info, const string & message) { // only proceed if this message is qualified for display if ((debug_level & level) && (debug_components & component)) @@ -331,6 +344,11 @@ tempmsg = tempmsg + string("[Dev: ") + inttopadstr(info->device_id, 4) + string("] "); } + if (info->property_id != -1) + { + tempmsg = tempmsg + string("[Pro: ") + inttopadstr(info->property_id, 4) + string("] "); + } + if (info->subdevice_id != -1) { tempmsg = tempmsg + string("[Sub: ") + inttopadstr(info->subdevice_id, 4) + string("] "); @@ -366,6 +384,18 @@ content = remove_braces(message); } + if ( (debug_components & DEBUG_FILELINE) || (debug_components & DEBUG_FUNCTION) ) + context = context + "["; + + if (debug_components & DEBUG_FILELINE) + context = context + file + "(" + inttostr(line) + ")"; + + if (debug_components & DEBUG_FUNCTION) + context = context + ":" + function; + + if ( (debug_components & DEBUG_FILELINE) || (debug_components & DEBUG_FUNCTION) ) + context = context + "] "; + fullmessage = context + content; if (log_method & LOG_METHOD_STDOUT) diff -Nurb netmrg-0.19/subst.in netmrg-0.20/subst.in --- netmrg-0.19/subst.in 2004-06-03 20:59:11.000000000 +0530 +++ netmrg-0.20/subst.in 2008-03-27 06:25:37.000000000 +0530 @@ -4,6 +4,7 @@ my ${prefix} = "@prefix@"; my ${exec_prefix} = "@exec_prefix@"; +my ${datarootdir} = "@datarootdir@"; while (my $f = shift @ARGV) { @@ -25,6 +26,7 @@ s|\@libexecdir\@|@libexecdir@|g; # put all --with-vars before directories s|\@localstatedir\@|@localstatedir@|g; s|\@sysconfdir\@|@sysconfdir@|g; + s|\@datarootdir\@|@datarootdir@|g; s|\@datadir\@|@datadir@|g; s|\@sbindir\@|@sbindir@|g; s|\@bindir\@|@bindir@|g; diff -Nurb netmrg-0.19/UPGRADE netmrg-0.20/UPGRADE --- netmrg-0.19/UPGRADE 2006-01-09 07:34:22.000000000 +0530 +++ netmrg-0.20/UPGRADE 2008-04-12 07:44:39.000000000 +0530 @@ -25,7 +25,7 @@ References Visible links - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/index.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/installation.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/install.html - . file:///home/silfreed/svn/netmrg/trunk/share/doc/txt/reference.html + . file:///home/silfreed/src/netmrg/share/doc/txt/index.html + . file:///home/silfreed/src/netmrg/share/doc/txt/installation.html + . file:///home/silfreed/src/netmrg/share/doc/txt/install.html + . file:///home/silfreed/src/netmrg/share/doc/txt/reference.html diff -Nurb netmrg-0.19/var/lib/Makefile.in netmrg-0.20/var/lib/Makefile.in --- netmrg-0.19/var/lib/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/var/lib/Makefile.in 2008-04-12 07:52:40.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,15 +15,11 @@ @SET_MAKE@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -55,17 +51,18 @@ DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -89,11 +86,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -103,9 +104,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -123,13 +126,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -141,28 +144,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -200,7 +214,6 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -233,8 +246,7 @@ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: +$(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ @@ -335,23 +347,21 @@ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../.. - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -365,7 +375,7 @@ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ @@ -373,6 +383,8 @@ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ @@ -426,12 +438,20 @@ install-data-am: +install-dvi: install-dvi-recursive + install-exec-am: +install-html: install-html-recursive + install-info: install-info-recursive install-man: +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -450,21 +470,23 @@ ps-am: -uninstall-am: uninstall-info-am +uninstall-am: -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-recursive ctags ctags-recursive \ - distclean distclean-generic distclean-recursive distclean-tags \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ - install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-generic \ - mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am uninstall-info-am + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am @SET_MAKE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nurb netmrg-0.19/var/lib/rrd/Makefile.in netmrg-0.20/var/lib/rrd/Makefile.in --- netmrg-0.19/var/lib/rrd/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/var/lib/rrd/Makefile.in 2008-04-12 07:52:41.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,15 +16,11 @@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../../.. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -65,8 +61,6 @@ DATA = $(netmrg_var_lib_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -90,11 +84,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -104,9 +102,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -124,13 +124,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -142,28 +142,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -207,7 +218,6 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: uninstall-netmrg_var_libDATA: @$(NORMAL_UNINSTALL) @@ -224,23 +234,21 @@ distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/../../.. - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -256,7 +264,7 @@ all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(netmrg_var_libdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -298,12 +306,20 @@ install-data-am: install-netmrg_var_libDATA +install-dvi: install-dvi-am + install-exec-am: +install-html: install-html-am + install-info: install-info-am install-man: +install-pdf: install-pdf-am + +install-ps: install-ps-am + installcheck-am: maintainer-clean: maintainer-clean-am @@ -322,16 +338,20 @@ ps-am: -uninstall-am: uninstall-info-am uninstall-netmrg_var_libDATA +uninstall-am: uninstall-netmrg_var_libDATA + +.MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-netmrg_var_libDATA install-strip installcheck \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-netmrg_var_libDATA install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ - pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \ + pdf-am ps ps-am uninstall uninstall-am \ uninstall-netmrg_var_libDATA @SET_MAKE@ diff -Nurb netmrg-0.19/var/Makefile.in netmrg-0.20/var/Makefile.in --- netmrg-0.19/var/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/var/Makefile.in 2008-04-12 07:52:40.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,15 +15,11 @@ @SET_MAKE@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -55,17 +51,18 @@ DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ - install-exec-recursive install-info-recursive \ - install-recursive installcheck-recursive installdirs-recursive \ - pdf-recursive ps-recursive uninstall-info-recursive \ - uninstall-recursive + install-dvi-recursive install-exec-recursive \ + install-html-recursive install-info-recursive \ + install-pdf-recursive install-ps-recursive install-recursive \ + installcheck-recursive installdirs-recursive pdf-recursive \ + ps-recursive uninstall-recursive +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive ETAGS = etags CTAGS = ctags DIST_SUBDIRS = $(SUBDIRS) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -89,11 +86,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -103,9 +104,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -123,13 +126,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -141,28 +144,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -200,7 +214,6 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -233,8 +246,7 @@ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" -mostlyclean-recursive clean-recursive distclean-recursive \ -maintainer-clean-recursive: +$(RECURSIVE_CLEAN_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ @@ -335,23 +347,21 @@ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/.. - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -365,7 +375,7 @@ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ - || $(mkdir_p) "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ @@ -373,6 +383,8 @@ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ distdir) \ || exit 1; \ fi; \ @@ -426,12 +438,20 @@ install-data-am: +install-dvi: install-dvi-recursive + install-exec-am: +install-html: install-html-recursive + install-info: install-info-recursive install-man: +install-pdf: install-pdf-recursive + +install-ps: install-ps-recursive + installcheck-am: maintainer-clean: maintainer-clean-recursive @@ -450,21 +470,23 @@ ps-am: -uninstall-am: uninstall-info-am +uninstall-am: -uninstall-info: uninstall-info-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \ + install-strip -.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \ - clean clean-generic clean-recursive ctags ctags-recursive \ - distclean distclean-generic distclean-recursive distclean-tags \ +.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am check check-am clean clean-generic ctags \ + ctags-recursive distclean distclean-generic distclean-tags \ distdir dvi dvi-am html html-am info info-am install \ - install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ + install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ - maintainer-clean-recursive mostlyclean mostlyclean-generic \ - mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \ - uninstall uninstall-am uninstall-info-am + mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ + tags-recursive uninstall uninstall-am @SET_MAKE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nurb netmrg-0.19/www/include/config.php.in netmrg-0.20/www/include/config.php.in --- netmrg-0.19/www/include/config.php.in 2004-12-13 05:46:00.000000000 +0530 +++ netmrg-0.20/www/include/config.php.in 2006-06-25 02:09:26.000000000 +0530 @@ -85,6 +85,8 @@ require_once($GLOBALS["netmrg"]["libdir"]."/lib/auth.php"); require_once($GLOBALS["netmrg"]["libdir"]."/lib/misc.php"); require_once($GLOBALS["netmrg"]["libdir"]."/lib/graphing.php"); +require_once($GLOBALS["netmrg"]["libdir"]."/lib/xajax/xajax.inc.php"); +require_once($GLOBALS["netmrg"]["libdir"]."/lib/ajax.php"); require_once($GLOBALS["netmrg"]["imagebasedir"]."/imagespec.php"); diff -Nurb netmrg-0.19/www/lib/ajax.php netmrg-0.20/www/lib/ajax.php --- netmrg-0.19/www/lib/ajax.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/ajax.php 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,36 @@ +registerFunction("redraw_subdevice"); +$xajax->registerFunction("redraw_monitor"); + +class netmrgXajaxResponse extends xajaxResponse +{ + function addCreateOption($sSelectId, $sOptionText, $sOptionValue) + { + $this->addScript("addOption('".$sSelectId."','".$sOptionText."','".$sOptionValue."');"); + } + + function addCreateOptions($sSelectId, $aOptions) + { + foreach($aOptions as $sOptionText => $sOptionValue) + { + $this->addCreateOption($sSelectId, $sOptionText, $sOptionValue); + } + } + + function addClearSelect($sSelectId) + { + $this->addScript("clearSelect('".$sSelectId."');"); + } +} + +?> diff -Nurb netmrg-0.19/www/lib/database.php netmrg-0.20/www/lib/database.php --- netmrg-0.19/www/lib/database.php 2004-10-24 00:19:23.000000000 +0530 +++ netmrg-0.20/www/lib/database.php 2007-02-06 08:12:41.000000000 +0530 @@ -16,6 +16,7 @@ */ function db_connect() { + $GLOBALS['querycount'] = 0; $dbhost = ""; if ($GLOBALS["netmrg"]["dbsock"] != "") { @@ -41,6 +42,7 @@ // Obtain data from a table function db_query($query_string, $unsafe = false) { + $GLOBALS['querycount']++; $query_result = mysql_query($query_string, $GLOBALS["netmrg"]["dbconn"]); // if there was an error, handle it if (mysql_errno($GLOBALS["netmrg"]["dbconn"]) && !$unsafe) @@ -91,6 +93,40 @@ /** + * Quotes a string for use in a query + * + * @param string|array $value + * @return string + */ +function db_quote($value) +{ + $return_val = ''; + + // strip slashes if magic quotes is on + if (get_magic_quotes_gpc()) + { + $value = stripslashes($value); + } // end if magic quotes + + // quote if not a number or a numeric string + if (!is_array($value)) + { + $return_val = '\'' . mysql_real_escape_string($value) . '\''; + } // end if value not an array + else + { + foreach ($value as $key => $local_value) + { + $value[$key] = '\'' . mysql_real_escape_string($local_value) . '\''; + } // end foreach array value + $return_val = implode(',', $value); + } // end if value is an array + + return $return_val; +} // end function db_quote() + + +/** * db_fetch_cell($sql) * * run a 'select' sql query and return the first column of the first row found diff -Nurb netmrg-0.19/www/lib/format.php netmrg-0.20/www/lib/format.php --- netmrg-0.19/www/lib/format.php 2006-02-01 00:37:46.000000000 +0530 +++ netmrg-0.20/www/lib/format.php 2008-04-02 07:35:55.000000000 +0530 @@ -1,4 +1,4 @@ -" alt="logo" /> NetMRG - © 2003-2006 + © 2003-2007
  • @@ -102,6 +105,7 @@ /include/netmrg.css" /> printJavascript("", "xajax_js/xajax.js", ""); if (count($javascript_files) > 0) { foreach ($javascript_files as $jsfile) @@ -149,6 +153,7 @@
     '."\n"; } // end DisplayPageHeader(); @@ -562,23 +567,47 @@ * and 'href' that the text points at. this can be an * arbitrary number of array items, and they can be empty */ + function make_display_table($title, $addlink = "") { + $elements = array(); + for ($item_num = 2; $item_num < func_num_args(); $item_num++) + { + $item = func_get_arg($item_num); + array_push($elements, $item); + } + make_display_table_array($title, $elements, $addlink); +} + +/** +* make_display_table_array() +* +* displays the beginnings of a table with a specific title +* +* @param string $title the title of the table +* @param array $elements an array of arrays containing 'text' describing the link +* and 'href' that the text points at. this can be an +* arbitrary number of array items, and they can be empty +* @param string $addlink the link to use to add something if it doesn't +* refer to this page +*/ + +function make_display_table_array($title, $elements, $addlink = "") +{ ?> - - "$value $unit")); } @@ -969,13 +1010,13 @@ if ($selected) { ?> - + - + +
    +
    + "> @@ -620,8 +649,20 @@ * 'checkboxid' : id to use in checkbox * 'checkdisabled' : true if checkbox is disabled */ + function make_display_item($style = "editfield0") { + $elements = array(); + for ($item_num = 1; $item_num < func_num_args(); $item_num++) + { + $item = func_get_arg($item_num); + array_push($elements, $item); + } + make_display_item_array($elements, $style); +} + +function make_display_item_array($elements, $style = "editfield0") +{ if (empty($style)) { $style = "editfield0"; @@ -629,9 +670,8 @@ ?>
    + Monitor:
    + + + + + + + function redisplay(selectedIndex) + { + window.location = '{$_SERVER['PHP_SELF']}?mon_id={$_REQUEST['mon_id']}&sub_dev_id={$_REQUEST['sub_dev_id']}&dev_type={$_REQUEST['dev_type']}&tripid={$_REQUEST['tripid']}&action={$_REQUEST['action']}" . $dev_thingy . "&type=' + selectedIndex; + } + + + "; + + // if we've been passed a test type + if (!empty($_REQUEST["type"])) + { + $test_type = $_REQUEST["type"]; + } // end if test type is set + // else default to test type 1 (script) + else if (empty($test_type)) + { + $test_type = 1; + } // end if no test type + GLOBAL $TEST_TYPES; + make_edit_select_from_array("Monitoring Type:", "test_type", $TEST_TYPES, $test_type, "onChange='redisplay(form.test_type.options[selectedIndex].value);'"); + + if ($test_type == 1) + { + make_edit_group("Script Options"); + if ($_REQUEST["action"] == "add") + { + make_edit_select_from_table("Script Test:", "test_id", "tests_script", "dl4392l234"); + } // end if adding + else + { + make_edit_select_from_table("Script Test:", "test_id", "tests_script", $test_id); + } // end if editing + } + + if ($test_type == 2) + { + make_edit_group("SNMP Options"); + if ($_REQUEST["action"] == "add") + { + make_edit_select_from_table("SNMP Test:", "test_id", "tests_snmp", "dl4392l234"); + } // end if adding + else + { + make_edit_select_from_table("SNMP Test:", "test_id", "tests_snmp", $test_id); + } // end if editing + } + + if ($test_type == 3) + { + make_edit_group("SQL Options"); + if ($_REQUEST["action"] == "add") + { + make_edit_select_from_table("SQL Test:", "test_id", "tests_sql", "dl4392l234"); + } // end if adding + else + { + make_edit_select_from_table("SQL Test:", "test_id", "tests_sql", $test_id); + } // end if editing + } + + if ($test_type == 4) + { + make_edit_group("Internal Test Options"); + if ($_REQUEST["action"] == "add") + { + make_edit_select_from_table("Internal Test:", "test_id", "tests_internal", "dl4392l234"); + } // end if adding + else + { + make_edit_select_from_table("Internal Test:", "test_id", "tests_internal", $test_id); + } // end if editing + } + + make_edit_text("Parameters:", "test_params", 50, 100, htmlspecialchars($test_params)); + +} // end make_test_selection + // Special Functions function color_block($color) diff -Nurb netmrg-0.19/www/lib/graphing.php netmrg-0.20/www/lib/graphing.php --- netmrg-0.19/www/lib/graphing.php 2005-11-10 09:44:23.000000000 +0530 +++ netmrg-0.20/www/lib/graphing.php 2007-05-29 19:09:23.000000000 +0530 @@ -51,12 +51,20 @@ function rrd_slope() { - // if escaping a colon, return the escape sequence, otherwise an empty string + // use slope smoothing if rrdtool > 1.0 if (!strstr($GLOBALS['netmrg']['rrdtool_version'], "1.0")) return "-E"; else return ""; } +function rrd_watermark() +{ + // add a watermark if rrdtool > 1.0 + + if (!strstr($GLOBALS['netmrg']['rrdtool_version'], "1.0")) + return " -W 'NetMRG - www.netmrg.net' "; else return ""; +} + function get_graph_command($type, $id, $hist) { @@ -225,15 +233,21 @@ } // initial definition - $command = $GLOBALS['netmrg']['rrdtool'] . " graph - " . rrd_slope() . " -s " . $timeframe['start_time'] . + $command = $GLOBALS['netmrg']['rrdtool'] . " graph - " . rrd_slope() . rrd_watermark() . " -s " . $timeframe['start_time'] . " -e " . $timeframe['end_time'] . $boundary . " --title " . $graph_row["title"] . " -w " . $graph_row["width"] . " -h " . $graph_row["height"] . $options . "-b " . $graph_row["base"] . " -v " . $graph_row["vert_label"] . " --imgformat PNG $options"; + // setup condition to only display non-AVERAGE items on graphs + $ew = ""; + if ($timeframe['show_max'] == false) + { + $ew = "AND cf=1"; + } // *** Padded Length Calculation $padded_length = 5; - $ds_results = db_query("SELECT max(length(graph_ds.label)) as maxlen FROM graph_ds WHERE graph_ds.graph_id=$id"); + $ds_results = db_query("SELECT max(length(graph_ds.label)) as maxlen FROM graph_ds WHERE graph_ds.graph_id=$id $ew"); $ds_row = mysql_fetch_array($ds_results); if (!empty($ds_row['maxlen']) && $padded_length < $ds_row['maxlen']) { @@ -247,7 +261,7 @@ } else { - $ds_where = "graph_id=$id ORDER BY position, id"; + $ds_where = "graph_id=$id $ew ORDER BY position, id"; } $ds_results = db_query("SELECT * FROM graph_ds WHERE $ds_where"); @@ -382,7 +396,12 @@ $CDEF_M = "zero,UN,0,0,IF"; } - $command .= $ds_row["type"] . ":data" . $ds_count . $ds_row["color"] . rrd_legend_escape(do_align($ds_row["label"], $padded_length, $ds_row["alignment"])) . " "; + $suffix = ""; + if ($ds_row['cf'] == 2) + { + $suffix = "m"; + } + $command .= $ds_row["type"] . ":data" . $ds_count . $suffix . $ds_row["color"] . rrd_legend_escape(do_align($ds_row["label"], $padded_length, $ds_row["alignment"])) . " "; // define the formatting string if (isin($ds_row["stats"], "INTEGER")) diff -Nurb netmrg-0.19/www/lib/processing.php netmrg-0.20/www/lib/processing.php --- netmrg-0.19/www/lib/processing.php 2006-01-10 07:33:41.000000000 +0530 +++ netmrg-0.20/www/lib/processing.php 2006-11-02 00:33:31.000000000 +0530 @@ -399,27 +399,43 @@ function get_short_monitor_name($mon_id) { - GLOBAL $TEST_TYPES; - $mon_query = db_query(" SELECT test_id, test_params, test_type FROM monitors WHERE monitors.id = $mon_id"); $mon_row = db_fetch_array($mon_query); - switch($mon_row["test_type"]) + return get_short_test_name($mon_row['test_type'], $mon_row['test_id'], $mon_row['test_params']); +} + +function get_short_property_name($prop_id) +{ + $prop_query = db_query(" + SELECT test_id, test_params, test_type + FROM dev_props + WHERE dev_props.id = $prop_id"); + $prop_row = db_fetch_array($prop_query); + + return get_short_test_name($prop_row['test_type'], $prop_row['test_id'], $prop_row['test_params']); +} + +function get_short_test_name($test_type, $test_id, $test_params) +{ + GLOBAL $TEST_TYPES; + + switch($test_type) { case 1: - $test_query = "SELECT name FROM tests_script WHERE id = " . $mon_row["test_id"]; + $test_query = "SELECT name FROM tests_script WHERE id = " . $test_id; break; case 2: - $test_query = "SELECT name FROM tests_snmp WHERE id = " . $mon_row["test_id"]; + $test_query = "SELECT name FROM tests_snmp WHERE id = " . $test_id; break; case 3: - $test_query = "SELECT name FROM tests_sql WHERE id = " . $mon_row["test_id"]; + $test_query = "SELECT name FROM tests_sql WHERE id = " . $test_id; break; case 4: - $test_query = "SELECT name FROM tests_internal WHERE id = " . $mon_row["test_id"]; + $test_query = "SELECT name FROM tests_internal WHERE id = " . $test_id; break; } // end switch test type @@ -428,13 +444,13 @@ $res = $test_row["name"]; - if ($mon_row["test_params"] != "") + if ($test_params != "") { - $res .= " - " . $mon_row["test_params"]; + $res .= " - " . $test_params; } return $res; -} // end get_short_monitor_name() +} // end get_short_test_name() function get_monitor_name($mon_id) @@ -476,6 +492,8 @@ function get_sub_device_name($sub_dev_id) { $dev_query = db_query("SELECT name FROM sub_devices WHERE id = $sub_dev_id"); + if (db_num_rows($dev_query) == 0) + return "Not Set"; $row = db_fetch_array($dev_query); return $row["name"]; } @@ -487,6 +505,8 @@ FROM sub_devices LEFT JOIN devices ON sub_devices.dev_id=devices.id WHERE sub_devices.id = $sub_dev_id"); + if (db_num_rows($dev_query) == 0) + return "Not Set"; $row = db_fetch_array($dev_query); return $row["dev_name"] . " - " . $row["sub_name"]; } @@ -1046,6 +1066,9 @@ // remove the disk cache for the device db_update("DELETE FROM snmp_disk_cache WHERE dev_id = '$device_id'"); + // remove the device properties + db_update("DELETE FROM dev_prop_vals WHERE dev_id = '$device_id'"); + // remove associated graphs db_update("DELETE FROM view WHERE object_type='device' AND object_id = '$device_id'"); diff -Nurb netmrg-0.19/www/lib/static.php netmrg-0.20/www/lib/static.php --- netmrg-0.19/www/lib/static.php 2006-01-31 04:34:35.000000000 +0530 +++ netmrg-0.20/www/lib/static.php 2008-03-27 21:32:46.000000000 +0530 @@ -23,7 +23,9 @@ "0.18" => 10, "0.18.1" => 11, "0.18.2" => 12, - "0.19" => 13 + "0.19" => 13, + "0.19.1" => 14, + "0.20" => 15, ); // end verhist @@ -40,7 +42,8 @@ ), "Admin" => array( array("name" => "Devices", "link" => "grpdev_list.php", "descr" => "", "authLevelRequired" => 1), -// array("name" => "Device Types", "link" => "dev_types.php", "descr" => "", "authLevelRequired" => 2), + array("name" => "Device Types", "link" => "dev_types.php", "descr" => "", "authLevelRequired" => 2), + array("name" => "Device Properties", "link" => "dev_props.php", "descr" => "", "authLevelRequired" => 2, "display" => false), array("name" => "Notifications", "link" => "notifications.php", "descr" => "", "authLevelRequired" => 1), array("name" => "Custom Graphs", "link" => "graphs.php?type=custom", "descr" => "", "authLevelRequired" => 1), array("name" => "Template Graphs", "link" => "graphs.php?type=template", "descr" => "", "authLevelRequired" => 1), @@ -120,6 +123,11 @@ 5 => "STACK" ); // end RRDTOOL_ITEM_TYPES +$RRDTOOL_CFS = array( + 1 => "AVERAGE", + 2 => "MAX" +); // end RRDTOOL_CFS + $SPECIAL_MONITORS = array( -1 => "-Fixed Value-", -2 => "-Sum of all graph items-" @@ -141,7 +149,7 @@ $SUB_DEVICE_TYPES = array( 1 => "Group", - 2 => "Interface", + 2 => "Network Interface", 3 => "Disk" ); // end SUB_DEVICE_TYPES @@ -263,7 +271,8 @@ 'device' => array( 'name' => "Device", 'sql' => array("SELECT id, name FROM devices - WHERE name LIKE '%|ARG|%' OR ip LIKE '%|ARG|%'") + WHERE name LIKE '%|ARG|%' OR ip LIKE '%|ARG|%'", + "SELECT dev_id AS id, name FROM dev_prop_vals val LEFT JOIN devices dev ON val.dev_id=dev.id WHERE value LIKE '%|ARG|%'") ), 'subdevice' => array( 'name' => "Sub Device", @@ -282,7 +291,8 @@ 'end_time' => "-360", 'break_time' => (time() - (date("s") + date("i") * 60 + date("H") * 3600)), 'sum_label' => "24 Hour", - 'sum_time' => "86400" + 'sum_time' => "86400", + 'show_max' => false ); // end TIMEFRAME_DAILY $TIMEFRAME_WEEKLY = array( @@ -291,7 +301,8 @@ 'end_time' => "-360", 'break_time' => (time() - (date("s") + date("i") * 60 + date("H") * 3600 + date("w") * 86400)), 'sum_label' => "7 Day", - 'sum_time' => "604800" + 'sum_time' => "604800", + 'show_max' => true ); // end TIMEFRAME_WEEKLY $TIMEFRAME_MONTHLY = array( @@ -300,7 +311,8 @@ 'end_time' => "-360", 'break_time' => (time() - (date("s") + date("i") * 60 + date("H") * 3600 + date("d") * 86400)), 'sum_label' => "4 Week", - 'sum_time' => "2419200" + 'sum_time' => "2419200", + 'show_max' => true ); // end TIMEFRAME_MONTHLY $TIMEFRAME_YEARLY = array( @@ -309,7 +321,8 @@ 'end_time' => "-360", 'break_time' => (time() - (date("s") + date("i") * 60 + date("H") * 3600 + date("z") * 86400)), 'sum_label' => "1 Year", - 'sum_time' => "31536000" + 'sum_time' => "31536000", + 'show_max' => true ); // end TIMEFRAME_YEARLY $TIMEFRAMES = array( $TIMEFRAME_DAILY, $TIMEFRAME_WEEKLY, $TIMEFRAME_MONTHLY, $TIMEFRAME_YEARLY ); @@ -399,6 +412,9 @@ case "recachedisk" : $image = "{$GLOBALS['netmrg']['imagedir']}/{$GLOBALS['netmrg']['imagespec']['recachedisk']}"; break; + case "recacheproperties" : + $image = "{$GLOBALS['netmrg']['imagedir']}/{$GLOBALS['netmrg']['imagespec']['recacheproperties']}"; + break; case "viewdisk" : $image = "{$GLOBALS['netmrg']['imagedir']}/{$GLOBALS['netmrg']['imagespec']['viewdisk']}"; break; diff -Nurb netmrg-0.19/www/lib/xajax/LICENSE.txt netmrg-0.20/www/lib/xajax/LICENSE.txt --- netmrg-0.19/www/lib/xajax/LICENSE.txt 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/xajax/LICENSE.txt 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,504 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + diff -Nurb netmrg-0.19/www/lib/xajax/README.txt netmrg-0.20/www/lib/xajax/README.txt --- netmrg-0.19/www/lib/xajax/README.txt 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/xajax/README.txt 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,104 @@ +==================================================================== + xajax PHP Class Library + The easiest way to develop asynchronous Ajax applications with PHP + + Version 0.2 (stable release) + README Text File + + ------------------------------------------------------ + | Release Notes: | + | http://wiki.xajaxproject.org/0.2_Release_Notes | + | | + | Lead Developers: | + | Jared White (jared@intuitivefuture.com) | + | J. Max Wilson (jmaxwilson@users.sourceforge.net) | + ------------------------------------------------------ +==================================================================== + +1. Introduction + +xajax is a PHP library that you can include in your PHP scripts +to provide an easy way for Web pages to call PHP functions or +object methods using Ajax (Asynchronous Javascript And XML). Simply +register one or more functions/methods with the xajax object that +return a proper XML response using the supplied response class, add +a statement in your HTML header to print the Javascript include, +and run a request processor prior to outputting any HTML. Then add +some simple Javascript function calls to your HTML, and xajax takes +care of the rest! + +xajax includes a Javascript object to facilitate the communication +between the browser and the server, and it can also be used as a +Javascript library directly to simplify certain DOM and event +manipulations. However, you can definitely choose to use a +dedicated Javascript "engine" of your liking and integrate it with +xajax's client/server communication features in a number of ways. +More tightly-coupled integration will be forthcoming in a future +version of xajax. + +2. For More Information + +The official xajax Web site is located at: +http://www.xajaxproject.org + +Visit the xajax Forums at: +http://community.xajaxproject.org +to keep track of the latest news and participate in the community +discussion. + +There is also a wiki with documentation, tips & tricks, and other +information located at: +http://wiki.xajaxproject.org + +3. Installation + +To run xajax, you need: +* Apache Web Server or IIS for Windows XP/2003 Server + (other servers may or may not work and are not supported at this + time) +* PHP 4.3.x or PHP 5.x +* Minimum supported browsers: Internet Explorer 5.5, Firefox 1.0 (or + equivalent Gecko-based browser), Safari 1.3, Opera 8.5 (older + versions only work with GET requests) + +To install xajax: +Unpack the contents of this archive and copy them to your main Web +site folder. Or if you wish, you can put all of the files in a +dedicated "xajax" folder on your Web server (make sure that you +know what that URL is relative your site pages so you can provide +xajax with the correct installed folder URL). + +Make sure that the "xajax_js" folder within the main xajax folder +is set to be writable by the Web server, since xajax will need to +compress the verbose Javascript file into a smaller file suitable +for constant Web access. Also, the "thewall" folder in the +"examples" folder needs to be writable by the Web server as well. + +Within the main xajax folder there are two folders: "examples" +and "tests". You should be able to view these PHP pages from your +Web browser and see xajax working in action. If you can view the +pages but the AJAX calls are not working, there may be something +wrong with your server setup or perhaps your browser is not +supported or configured correctly. If worst comes to worst, post +a message in our forums and someone may be able to help you. + +4. Documentation + +Detailed documentation for the xajax PHP classes is available on +our wiki (URL listed above in section 2), and more in on the way +(particularly in regards to the Javascript component of xajax). +Another good way of learning xajax is to look at the code for the +examples and tests. If you need any help, pop in the forums and +ask for assistance (and the more specific your questions are, +the better the answers will be). + +5. Contributing to xajax + +xajax is released under the LGPL open source license. If you wish +to contribute to the project or suggest new features, introduce +yourself on the forums or you can e-mail the lead developers at +the addresses listed at the top of this README. + +6. Good luck and enjoy! + +==================================================================== diff -Nurb netmrg-0.19/www/lib/xajax/xajax.inc.php netmrg-0.20/www/lib/xajax/xajax.inc.php --- netmrg-0.19/www/lib/xajax/xajax.inc.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/xajax/xajax.inc.php 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,857 @@ +aFunctions = array(); + $this->aObjects = array(); + $this->aFunctionIncludeFiles = array(); + $this->sRequestURI = $sRequestURI; + if ($this->sRequestURI == "") + $this->sRequestURI = $this->_detectURI(); + $this->sWrapperPrefix = $sWrapperPrefix; + $this->setCharEncoding($sEncoding); + $this->bDebug = $bDebug; + $this->bWaitCursor = true; + $this->bExitAllowed = true; + $this->bErrorHandler = false; + $this->sLogFile = ""; + $this->bCleanBuffer = true; + } + + // setRequestURI() sets the URI to which requests will be made + // usage: $xajax->setRequestURI("http://xajax.sourceforge.net"); + function setRequestURI($sRequestURI) + { + $this->sRequestURI = $sRequestURI; + } + + // debugOn() enables debug messages for xajax + function debugOn() + { + $this->bDebug = true; + } + + // debugOff() disables debug messages for xajax (default behavior) + function debugOff() + { + $this->bDebug = false; + } + + // statusMessagesOn() enables messages in the statusbar for xajax + function statusMessagesOn() + { + $this->bStatusMessages = true; + } + + // statusMessagesOff() disables messages in the statusbar for xajax (default behavior) + function statusMessagesOff() + { + $this->bStatusMessages = false; + } + + // waitCursor() enables the wait cursor to be displayed in the browser (default behavior) + function waitCursorOn() + { + $this->bWaitCursor = true; + } + + // waitCursorOff() disables the wait cursor to be displayed in the browser + function waitCursorOff() + { + $this->bWaitCursor = false; + } + + // exitAllowedOn() enables xajax to exit immediately after processing a request + // and sending the response back to the browser (default behavior) + function exitAllowedOn() + { + $this->bExitAllowed = true; + } + + // exitAllowedOff() disables xajax's default behavior of exiting immediately + // after processing a request and sending the response back to the browser + function exitAllowedOff() + { + $this->bExitAllowed = false; + } + + // errorHandlerOn() turns on xajax's error handling system so that PHP errors + // that occur during a request are trapped and pushed to the browser in the + // form of a Javascript alert + function errorHandlerOn() + { + $this->bErrorHandler = true; + } + // errorHandlerOff() turns off xajax's error handling system (default behavior) + function errorHandlerOff() + { + $this->bErrorHandler = false; + } + + // setLogFile() specifies a log file that will be written to by xajax during + // a request (used only by the error handling system at present). If you don't + // invoke this method, or you pass in "", then no log file will be written to. + // usage: $xajax->setLogFile("/xajax_logs/errors.log"); + function setLogFile($sFilename) + { + $this->sLogFile = $sFilename; + } + + // cleanBufferOn() causes xajax to clean out all output buffers before outputting + // a response (default behavior) + function cleanBufferOn() + { + $this->bCleanBuffer = true; + } + // cleanBufferOff() turns off xajax's output buffer cleaning + function cleanBufferOff() + { + $this->bCleanBuffer = false; + } + + // setWrapperPrefix() sets the prefix that will be appended to the Javascript + // wrapper functions (default is "xajax_"). + function setWrapperPrefix($sPrefix) + { + $this->sWrapperPrefix = $sPrefix; + } + + // setCharEncoding() sets the character encoding to be used by xajax + // usage: $xajax->setCharEncoding("utf-8"); + // *Note: to change the default character encoding for all xajax responses, set + // the XAJAX_DEFAULT_CHAR_ENCODING constant near the beginning of the xajax.inc.php file + function setCharEncoding($sEncoding) + { + $this->sEncoding = $sEncoding; + } + + // registerFunction() registers a PHP function or method to be callable through + // xajax in your Javascript. If you want to register a function, pass in the name + // of that function. If you want to register a static class method, pass in an array + // like so: + // array("myFunctionName", "myClass", "myMethod") + // For an object instance method, use an object variable for the second array element + // (and in PHP 4 make sure you put an & before the variable to pass the object by + // reference). Note: the function name is what you call via Javascript, so it can be + // anything as long as it doesn't conflict with any other registered function name. + // + // $mFunction is a string containing the function name or an object callback array + // $sRequestType is the RequestType (XAJAX_GET/XAJAX_POST) that should be used + // for this function. Defaults to XAJAX_POST. + // usage: $xajax->registerFunction("myFunction"); + // or: $xajax->registerFunction(array("myFunctionName", &$myObject, "myMethod")); + function registerFunction($mFunction,$sRequestType=XAJAX_POST) + { + if (is_array($mFunction)) { + $this->aFunctions[$mFunction[0]] = 1; + $this->aFunctionRequestTypes[$mFunction[0]] = $sRequestType; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->aFunctions[$mFunction] = 1; + $this->aFunctionRequestTypes[$mFunction] = $sRequestType; + } + } + + // registerExternalFunction() registers a PHP function to be callable through xajax + // which is located in some other file. If the function is requested the external + // file will be included to define the function before the function is called + // $mFunction is a string containing the function name or an object callback array + // see registerFunction() for more info on object callback arrays + // $sIncludeFile is a string containing the path and filename of the include file + // $sRequestType is the RequestType (XAJAX_GET/XAJAX_POST) that should be used + // for this function. Defaults to XAJAX_POST. + // usage: $xajax->registerExternalFunction("myFunction","myFunction.inc.php",XAJAX_POST); + function registerExternalFunction($mFunction,$sIncludeFile,$sRequestType=XAJAX_POST) + { + $this->registerFunction($mFunction, $sRequestType); + + if (is_array($mFunction)) { + $this->aFunctionIncludeFiles[$mFunction[0]] = $sIncludeFile; + } + else { + $this->aFunctionIncludeFiles[$mFunction] = $sIncludeFile; + } + } + + // registerCatchAllFunction() registers a PHP function to be called when xajax cannot + // find the function being called via Javascript. Because this is technically + // impossible when using "wrapped" functions, the catch-all feature is only useful + // when you're directly using the xajax.call() Javascript method. Use the catch-all + // feature when you want more dynamic ability to intercept unknown calls and handle + // them in a custom way. + // $mFunction is a string containing the function name or an object callback array + // see registerFunction() for more info on object callback arrays + // usage: $xajax->registerCatchAllFunction("myCatchAllFunction"); + function registerCatchAllFunction($mFunction) + { + if (is_array($mFunction)) { + $this->sCatchAllFunction = $mFunction[0]; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->sCatchAllFunction = $mFunction; + } + } + + // registerPreFunction() registers a PHP function to be called before xajax calls + // the requested function. xajax will automatically add the request function's response + // to the pre-function's response to create a single response. Another feature is + // the ability to return not just a response, but an array with the first element + // being false (a boolean) and the second being the response. In this case, the + // pre-function's response will be returned to the browser without xajax calling + // the requested function. + // $mFunction is a string containing the function name or an object callback array + // see registerFunction() for more info on object callback arrays + // usage $xajax->registerPreFunction("myPreFunction"); + function registerPreFunction($mFunction) + { + if (is_array($mFunction)) { + $this->sPreFunction = $mFunction[0]; + $this->aObjects[$mFunction[0]] = array_slice($mFunction, 1); + } + else { + $this->sPreFunction = $mFunction; + } + } + + // returns true if xajax can process the request, false if otherwise + // you can use this to determine if xajax needs to process the request or not + function canProcessRequests() + { + if ($this->getRequestMode() != -1) return true; + return false; + } + + // returns the current request mode, or -1 if there is none + function getRequestMode() + { + if (!empty($_GET["xajax"])) + return XAJAX_GET; + + if (!empty($_POST["xajax"])) + return XAJAX_POST; + + return -1; + } + + // processRequests() is the main communications engine of xajax + // The engine handles all incoming xajax requests, calls the apporiate PHP functions + // and passes the xml responses back to the javascript response handler + // if your RequestURI is the same as your web page then this function should + // be called before any headers or html has been sent. + // usage: $xajax->processRequests() + function processRequests() + { + + $requestMode = -1; + $sFunctionName = ""; + $bFoundFunction = true; + $bFunctionIsCatchAll = false; + $sFunctionNameForSpecial = ""; + $aArgs = array(); + $sPreResponse = ""; + $bEndRequest = false; + $sResponse = ""; + + $requestMode = $this->getRequestMode(); + if ($requestMode == -1) return; + + if ($requestMode == XAJAX_POST) + { + $sFunctionName = $_POST["xajax"]; + + if (!empty($_POST["xajaxargs"])) + $aArgs = $_POST["xajaxargs"]; + } + else + { + header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); + header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); + header ("Cache-Control: no-cache, must-revalidate"); + header ("Pragma: no-cache"); + header("Content-type: text/xml"); + + $sFunctionName = $_GET["xajax"]; + + if (!empty($_GET["xajaxargs"])) + $aArgs = $_GET["xajaxargs"]; + } + + // Use xajax error handler if necessary + if ($this->bErrorHandler) { + $GLOBALS['xajaxErrorHandlerText'] = ""; + set_error_handler("xajaxErrorHandler"); + } + + if ($this->sPreFunction) { + if (!$this->_isFunctionCallable($this->sPreFunction)) { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Unknown Pre-Function ". $this->sPreFunction); + $sResponse = $objResponse->getXML(); + } + } + //include any external dependencies associated with this function name + if (array_key_exists($sFunctionName,$this->aFunctionIncludeFiles)) + { + ob_start(); + include_once($this->aFunctionIncludeFiles[$sFunctionName]); + ob_end_clean(); + } + + if ($bFoundFunction) { + $sFunctionNameForSpecial = $sFunctionName; + if (!array_key_exists($sFunctionName, $this->aFunctions)) + { + if ($this->sCatchAllFunction) { + $sFunctionName = $this->sCatchAllFunction; + $bFunctionIsCatchAll = true; + } + else { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Unknown Function $sFunctionName."); + $sResponse = $objResponse->getXML(); + } + } + else if ($this->aFunctionRequestTypes[$sFunctionName] != $requestMode) + { + $bFoundFunction = false; + $objResponse = new xajaxResponse(); + $objResponse->addAlert("Incorrect Request Type."); + $sResponse = $objResponse->getXML(); + } + } + + if ($bFoundFunction) + { + for ($i = 0; $i < sizeof($aArgs); $i++) + { + // If magic quotes is on, then we need to strip the slashes from the args + if (get_magic_quotes_gpc() == 1 && is_string($aArgs[$i])) { + + $aArgs[$i] = stripslashes($aArgs[$i]); + } + if (stristr($aArgs[$i],"") != false) + { + $aArgs[$i] = $this->_xmlToArray("xjxobj",$aArgs[$i]); + } + else if (stristr($aArgs[$i],"") != false) + { + $aArgs[$i] = $this->_xmlToArray("xjxquery",$aArgs[$i]); + } + } + + if ($this->sPreFunction) { + $mPreResponse = $this->_callFunction($this->sPreFunction, array($sFunctionNameForSpecial, $aArgs)); + if (is_array($mPreResponse) && $mPreResponse[0] === false) { + $bEndRequest = true; + $sPreResponse = $mPreResponse[1]; + } + else { + $sPreResponse = $mPreResponse; + } + if (is_a($sPreResponse, "xajaxResponse")) { + $sPreResponse = $sPreResponse->getXML(); + } + if ($bEndRequest) $sResponse = $sPreResponse; + } + + if (!$bEndRequest) { + if (!$this->_isFunctionCallable($sFunctionName)) { + $objResponse = new xajaxResponse(); + $objResponse->addAlert("The Registered Function $sFunctionName Could Not Be Found."); + $sResponse = $objResponse->getXML(); + } + else { + if ($bFunctionIsCatchAll) { + $aArgs = array($sFunctionNameForSpecial, $aArgs); + } + $sResponse = $this->_callFunction($sFunctionName, $aArgs); + } + if (is_a($sResponse, "xajaxResponse")) { + $sResponse = $sResponse->getXML(); + } + if (!is_string($sResponse) || strpos($sResponse, "") === FALSE) { + $objResponse = new xajaxResponse(); + $objResponse->addAlert("No XML Response Was Returned By Function $sFunctionName."); + $sResponse = $objResponse->getXML(); + } + else if ($sPreResponse != "") { + $sNewResponse = new xajaxResponse(); + $sNewResponse->loadXML($sPreResponse); + $sNewResponse->loadXML($sResponse); + $sResponse = $sNewResponse->getXML(); + } + } + } + + $sContentHeader = "Content-type: text/xml;"; + if ($this->sEncoding && strlen(trim($this->sEncoding)) > 0) + $sContentHeader .= " charset=".$this->sEncoding; + header($sContentHeader); + if ($this->bErrorHandler && !empty( $GLOBALS['xajaxErrorHandlerText'] )) { + $sErrorResponse = new xajaxResponse(); + $sErrorResponse->addAlert("** PHP Error Messages: **" . $GLOBALS['xajaxErrorHandlerText']); + if ($this->sLogFile) { + $fH = @fopen($this->sLogFile, "a"); + if (!$fH) { + $sErrorResponse->addAlert("** Logging Error **\n\nxajax was unable to write to the error log file:\n" . $this->sLogFile); + } + else { + fwrite($fH, "** xajax Error Log - " . strftime("%b %e %Y %I:%M:%S %p") . " **" . $GLOBALS['xajaxErrorHandlerText'] . "\n\n\n"); + fclose($fH); + } + } + + $sErrorResponse->loadXML($sResponse); + $sResponse = $sErrorResponse->getXML(); + + } + if ($this->bCleanBuffer) while (@ob_end_clean()); + print $sResponse; + if ($this->bErrorHandler) restore_error_handler(); + + if ($this->bExitAllowed) + exit(); + } + + // printJavascript() prints the xajax javascript code into your page by printing + // the output of the getJavascript() method. It should only be called between the + // tags in your HTML page. Remember, if you only want to obtain the + // result of this function, use getJavascript() instead. + // $sJsURI is the relative address of the folder where xajax has been installed. + // For instance, if your PHP file is "http://www.myserver.com/myfolder/mypage.php" + // and xajax was installed in "http://www.myserver.com/anotherfolder", then + // $sJsURI should be set to "../anotherfolder". Defaults to assuming xajax is in + // the same folder as your PHP file. + // $sJsFile is the relative folder/file pair of the xajax Javascript engine located + // within the xajax installation folder. Defaults to xajax_js/xajax.js. + // usage: + // + // ... + // < ?php $xajax->printJavascript(); ? > + function printJavascript($sJsURI="", $sJsFile=NULL, $sJsFullFilename=NULL) + { + print $this->getJavascript($sJsURI, $sJsFile, $sJsFullFilename); + } + + // getJavascript() returns the xajax javascript code that should be added to + // your HTML page between the tags. See printJavascript() + // for information about the function arguments. + // usage: + // < ?php $xajaxJSHead = $xajax->getJavascript(); ? > + // + // ... + // < ?php echo $xajaxJSHead; ? > + function getJavascript($sJsURI="", $sJsFile=NULL, $sJsFullFilename=NULL) + { + if ($sJsFile == NULL) $sJsFile = "xajax_js/xajax.js"; + + if ($sJsURI != "" && substr($sJsURI, -1) != "/") $sJsURI .= "/"; + + $html = "\t\n"; + + // Create a compressed file if necessary + if ($sJsFullFilename) { + $realJsFile = $sJsFullFilename; + } + else { + $realPath = realpath(dirname(__FILE__)); + $realJsFile = $realPath . "/". $sJsFile; + } + $srcFile = str_replace(".js", "_uncompressed.js", $realJsFile); + if (!file_exists($srcFile)) { + trigger_error("The xajax uncompressed Javascript file could not be found in the " . dirname($realJsFile) . " folder. Error ", E_USER_ERROR); + } + + if ($this->bDebug) { + if (!@copy($srcFile, $realJsFile)) { + trigger_error("The xajax uncompressed javascript file could not be copied to the " . dirname($realJsFile) . " folder. Error ", E_USER_ERROR); + } + } + else if (!file_exists($realJsFile)) { + require(dirname($realJsFile) . "/xajaxCompress.php"); + $javaScript = implode('', file($srcFile)); + $compressedScript = xajaxCompressJavascript($javaScript); + $fH = @fopen($realJsFile, "w"); + if (!$fH) { + trigger_error("The xajax compressed javascript file could not be written in the " . dirname($realJsFile) . " folder. Error ", E_USER_ERROR); + } + else { + fwrite($fH, $compressedScript); + fclose($fH); + } + } + + //$html .= "\t\n"; + + return $html; + } + + // _detectURL() returns the current URL based upon the SERVER vars + // used internally + function _detectURI() { + $aURL = array(); + + // Try to get the request URL + if (!empty($_SERVER['REQUEST_URI'])) { + $aURL = parse_url($_SERVER['REQUEST_URI']); + } + + // Fill in the empty values + if (empty($aURL['scheme'])) { + if (!empty($_SERVER['HTTP_SCHEME'])) { + $aURL['scheme'] = $_SERVER['HTTP_SCHEME']; + } else { + $aURL['scheme'] = (!empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off') ? 'https' : 'http'; + } + } + + if (empty($aURL['host'])) { + if (!empty($_SERVER['HTTP_HOST'])) { + if (strpos($_SERVER['HTTP_HOST'], ':') > 0) { + list($aURL['host'], $aURL['port']) = explode(':', $_SERVER['HTTP_HOST']); + } else { + $aURL['host'] = $_SERVER['HTTP_HOST']; + } + } else if (!empty($_SERVER['SERVER_NAME'])) { + $aURL['host'] = $_SERVER['SERVER_NAME']; + } else { + print "xajax Error: xajax failed to automatically identify your Request URI."; + print "Please set the Request URI explicitly when you instantiate the xajax object."; + exit(); + } + } + + if (empty($aURL['port']) && !empty($_SERVER['SERVER_PORT'])) { + $aURL['port'] = $_SERVER['SERVER_PORT']; + } + + if (empty($aURL['path'])) { + if (!empty($_SERVER['PATH_INFO'])) { + $sPath = parse_url($_SERVER['PATH_INFO']); + } else { + $sPath = parse_url($_SERVER['PHP_SELF']); + } + $aURL['path'] = $sPath['path']; + unset($sPath); + } + + if (!empty($aURL['query'])) { + $aURL['query'] = '?'.$aURL['query']; + } + + // Build the URL: Start with scheme, user and pass + $sURL = $aURL['scheme'].'://'; + if (!empty($aURL['user'])) { + $sURL.= $aURL['user']; + if (!empty($aURL['pass'])) { + $sURL.= ':'.$aURL['pass']; + } + $sURL.= '@'; + } + + // Add the host + $sURL.= $aURL['host']; + + // Add the port if needed + if (!empty($aURL['port']) && (($aURL['scheme'] == 'http' && $aURL['port'] != 80) || ($aURL['scheme'] == 'https' && $aURL['port'] != 443))) { + $sURL.= ':'.$aURL['port']; + } + + // Add the path and the query string + $sURL.= $aURL['path'].@$aURL['query']; + + // Clean up + unset($aURL); + return $sURL; + } + + // returns true if the function name is associated with an object callback, + // false if not. + // user internally + function _isObjectCallback($sFunction) + { + if (array_key_exists($sFunction, $this->aObjects)) return true; + return false; + } + + // return true if the function or object callback can be called, false if not + // user internally + function _isFunctionCallable($sFunction) + { + if ($this->_isObjectCallback($sFunction)) { + if (is_object($this->aObjects[$sFunction][0])) { + return method_exists($this->aObjects[$sFunction][0], $this->aObjects[$sFunction][1]); + } + else { + return is_callable($this->aObjects[$sFunction]); + } + } + else { + return function_exists($sFunction); + } + } + + // calls the function, class method, or object method with the supplied arguments + // user internally + function _callFunction($sFunction, $aArgs) + { + if ($this->_isObjectCallback($sFunction)) { + $mReturn = call_user_func_array($this->aObjects[$sFunction], $aArgs); + } + else { + $mReturn = call_user_func_array($sFunction, $aArgs); + } + return $mReturn; + } + + // generates the javascript wrapper for the specified PHP function + // used internally + function _wrap($sFunction,$sRequestType=XAJAX_POST) + { + $js = "function ".$this->sWrapperPrefix."$sFunction(){return xajax.call(\"$sFunction\", arguments, ".$sRequestType.");}\n"; + return $js; + } + + // _xmlToArray() takes a string containing xajax xjxobj xml or xjxquery xml + // and builds an array representation of it to pass as an argument to + // the php function being called. Returns an array. + // used internally + function _xmlToArray($rootTag, $sXml) + { + $aArray = array(); + $sXml = str_replace("<$rootTag>","<$rootTag>|~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~||~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~||~|",$sXml); + $sXml = str_replace("","|~|",$sXml); + $sXml = str_replace("","|~||~|",$sXml); + + $this->aObjArray = explode("|~|",$sXml); + + $this->iPos = 0; + $aArray = $this->_parseObjXml($rootTag); + + return $aArray; + } + + // _parseObjXml() is a recursive function that generates an array from the + // contents of $this->aObjArray. Returns an array. + // used internally + function _parseObjXml($rootTag) + { + $aArray = array(); + + if ($rootTag == "xjxobj") + { + while(!stristr($this->aObjArray[$this->iPos],"")) + { + $this->iPos++; + if(stristr($this->aObjArray[$this->iPos],"")) + { + $key = ""; + $value = null; + + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"")) + { + if(stristr($this->aObjArray[$this->iPos],"")) + { + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"")) + { + $key .= $this->aObjArray[$this->iPos]; + $this->iPos++; + } + } + if(stristr($this->aObjArray[$this->iPos],"")) + { + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"")) + { + if(stristr($this->aObjArray[$this->iPos],"")) + { + $value = $this->_parseObjXml("xjxobj"); + $this->iPos++; + } + else + { + $value .= $this->aObjArray[$this->iPos]; + } + $this->iPos++; + } + } + $this->iPos++; + } + + $aArray[$key]=$value; + } + } + } + + if ($rootTag == "xjxquery") + { + $sQuery = ""; + $this->iPos++; + while(!stristr($this->aObjArray[$this->iPos],"")) + { + if (stristr($this->aObjArray[$this->iPos],"") || stristr($this->aObjArray[$this->iPos],"")) + { + $this->iPos++; + continue; + } + $sQuery .= $this->aObjArray[$this->iPos]; + $this->iPos++; + } + + parse_str($sQuery, $aArray); + // If magic quotes is on, then we need to strip the slashes from the + // array values because of the parse_str pass which adds slashes + if (get_magic_quotes_gpc() == 1) { + $newArray = array(); + foreach ($aArray as $sKey => $sValue) { + if (is_string($sValue)) + $newArray[$sKey] = stripslashes($sValue); + else + $newArray[$sKey] = $sValue; + } + $aArray = $newArray; + } + } + + return $aArray; + } + +}// end class xajax + +// xajaxErrorHandler() is registered with PHP's set_error_handler() function if +// the xajax error handling system is turned on +// used by the xajax class +function xajaxErrorHandler($errno, $errstr, $errfile, $errline) +{ + $errorReporting = error_reporting(); + if ($errorReporting == 0) return; + + if ($errno == E_NOTICE) { + $errTypeStr = "NOTICE"; + } + else if ($errno == E_WARNING) { + $errTypeStr = "WARNING"; + } + else if ($errno == E_USER_NOTICE) { + $errTypeStr = "USER NOTICE"; + } + else if ($errno == E_USER_WARNING) { + $errTypeStr = "USER WARNING"; + } + else if ($errno == E_USER_ERROR) { + $errTypeStr = "USER FATAL ERROR"; + } + else if ($errno == E_STRICT) { + return; + } + else { + $errTypeStr = "UNKNOWN: $errno"; + } + $GLOBALS['xajaxErrorHandlerText'] .= "\n----\n[$errTypeStr] $errstr\nerror in line $errline of file $errfile"; +} + +?> diff -Nurb netmrg-0.19/www/lib/xajax/xajax_js/xajaxCompress.php netmrg-0.20/www/lib/xajax/xajax_js/xajaxCompress.php --- netmrg-0.19/www/lib/xajax/xajax_js/xajaxCompress.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/xajax/xajax_js/xajaxCompress.php 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,144 @@ + \ No newline at end of file diff -Nurb netmrg-0.19/www/lib/xajax/xajax_js/xajax.js netmrg-0.20/www/lib/xajax/xajax_js/xajax.js --- netmrg-0.19/www/lib/xajax/xajax_js/xajax.js 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/lib/xajax/xajax_js/xajax.js 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,118 @@ +function Xajax(){if(xajaxDebug)this.DebugMessage=function(text){alert("Xajax Debug:\n "+text)};this.workId='xajaxWork'+new Date().getTime();this.depth=0;this.getRequestObject=function(){if(xajaxDebug)this.DebugMessage("Initializing Request Object..");var req;try{req=new ActiveXObject("Msxml2.XMLHTTP");} +catch(e){try{req=new ActiveXObject("Microsoft.XMLHTTP");} +catch(e2){req=null;} +} +if(!req&&typeof XMLHttpRequest!="undefined") +req=new XMLHttpRequest();if(xajaxDebug){if(!req)this.DebugMessage("Request Object Instantiation failed.");} +return req;} +this.$=function(sId){if(!sId){return null;} +var returnObj=document.getElementById(sId);if(xajaxDebug&&!returnObj&&sId!=this.workId){this.DebugMessage("Element with the id \""+sId+"\" not found.");} +return returnObj;} +this.include=function(sFileName){var objHead=document.getElementsByTagName('head');var objScript=document.createElement('script');objScript.type='text/javascript';objScript.src=sFileName;objHead[0].appendChild(objScript);} +this.addHandler=function(sElementId,sEvent,sFunctionName){if(window.addEventListener){eval("this.$('"+sElementId+"').addEventListener('"+sEvent+"',"+sFunctionName+",false);");} +else{eval("this.$('"+sElementId+"').attachEvent('on"+sEvent+"',"+sFunctionName+",false);");} +} +this.removeHandler=function(sElementId,sEvent,sFunctionName){if(window.addEventListener){eval("this.$('"+sElementId+"').removeEventListener('"+sEvent+"',"+sFunctionName+",false);");} +else{eval("this.$('"+sElementId+"').detachEvent('on"+sEvent+"',"+sFunctionName+",false);");} +} +this.create=function(sParentId,sTag,sId){var objParent=this.$(sParentId);objElement=document.createElement(sTag);objElement.setAttribute('id',sId);objParent.appendChild(objElement);} +this.insert=function(sBeforeId,sTag,sId){var objSibling=this.$(sBeforeId);objElement=document.createElement(sTag);objElement.setAttribute('id',sId);objSibling.parentNode.insertBefore(objElement,objSibling);} +this.getInput=function(sType,sName,sId){var Obj;if(sType=="radio"&&!window.addEventListener){Obj=document.createElement('');} +else{Obj=document.createElement('input');Obj.setAttribute('type',sType);Obj.setAttribute('name',sName);Obj.setAttribute('id',sId);} +return Obj;} +this.createInput=function(sParentId,sType,sName,sId){var objParent=this.$(sParentId);var objElement=this.getInput(sType,sName,sId);objParent.appendChild(objElement);} +this.insertInput=function(sBeforeId,sType,sName,sId){var objSibling=this.$(sBeforeId);var objElement=this.getInput(sType,sName,sId);objSibling.parentNode.insertBefore(objElement,objSibling);} +this.remove=function(sId){objElement=this.$(sId);if(objElement.parentNode&&objElement.parentNode.removeChild){objElement.parentNode.removeChild(objElement);} +} +this.replace=function(sId,sAttribute,sSearch,sReplace){var bFunction=false;if(sAttribute=="innerHTML") +sSearch=this.getBrowserHTML(sSearch);eval("var txt=document.getElementById('"+sId+"')."+sAttribute);if(typeof txt=="function"){txt=txt.toString();bFunction=true;} +if(txt.indexOf(sSearch)>-1){var newTxt='';while(txt.indexOf(sSearch)>-1){x=txt.indexOf(sSearch)+sSearch.length+1;newTxt+=txt.substr(0,x).replace(sSearch,sReplace);txt=txt.substr(x,txt.length-x);} +newTxt+=txt;if(bFunction){eval("newTxt ="+newTxt);eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');} +else if(this.willChange(sId,sAttribute,newTxt)){eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');} +} +} +this.getFormValues=function(frm){var objForm;var submitDisabledElements=false;if(arguments.length > 1&&arguments[1]==true) +submitDisabledElements=true;if(typeof(frm)=="string") +objForm=this.$(frm);else +objForm=frm;var sXml="";if(objForm&&objForm.tagName=='FORM'){var formElements=objForm.elements;for(var i=0;i < formElements.length;i++){if(formElements[i].type&&(formElements[i].type=='radio'||formElements[i].type=='checkbox')&&formElements[i].checked==false) +continue;if(formElements[i].disabled&&formElements[i].disabled==true&&submitDisabledElements==false)continue;var name=formElements[i].name;if(name){if(sXml!='') +sXml+='&';if(formElements[i].type=='select-multiple'){for(var j=0;j < formElements[i].length;j++){if(formElements[i].options[j].selected==true)sXml+=name+"="+encodeURIComponent(formElements[i].options[j].value)+"&";} +} +else{sXml+=name+"="+encodeURIComponent(formElements[i].value);} +} +} +} +sXml+="";return sXml;} +this.objectToXML=function(obj){var sXml="";for(i in obj){try{if(i=='constructor') +continue;if(obj[i]&&typeof(obj[i])=='function') +continue;var key=i;var value=obj[i];if(value&&typeof(value)=="object"&& +(value.constructor==Array +)&&this.depth <=50){this.depth++;value=this.objectToXML(value);this.depth--;} +sXml+=""+key+""+value+"";} +catch(e){if(xajaxDebug)this.DebugMessage(e);} +} +sXml+="";return sXml;} +this.call=function(sFunction,aArgs,sRequestType){var i,r,postData;if(document.body&&xajaxWaitCursor) +document.body.style.cursor='wait';if(xajaxStatusMessages==true)window.status='Sending Request...';if(xajaxDebug)this.DebugMessage("Starting xajax...");if(sRequestType==null){var xajaxRequestType=xajaxDefinedPost;} +else{var xajaxRequestType=sRequestType;} +var uri=xajaxRequestUri;var value;switch(xajaxRequestType){case xajaxDefinedGet:{var uriGet=uri.indexOf("?")==-1?"?xajax="+encodeURIComponent(sFunction):"&xajax="+encodeURIComponent(sFunction);if(aArgs){for(i=0;i");if(r.responseXML) +xajax.processResponse(r.responseXML);else{alert("Error: the XML response that was returned from the server is invalid.");document.body.style.cursor='default';if(xajaxStatusMessages==true)window.status='Invalid XML response error';} +} +delete r;} +if(xajaxDebug)this.DebugMessage("Calling "+sFunction+" uri="+uri+" (post:"+postData+")");r.send(postData);if(xajaxStatusMessages==true)window.status='Waiting for data...';delete r;return true;} +this.getBrowserHTML=function(html){tmpXajax=this.$(this.workId);if(tmpXajax==null){tmpXajax=document.createElement("div");tmpXajax.setAttribute('id',this.workId);tmpXajax.style.display="none";tmpXajax.style.visibility="hidden";document.body.appendChild(tmpXajax);} +tmpXajax.innerHTML=html;var browserHTML=tmpXajax.innerHTML;tmpXajax.innerHTML='';return browserHTML;} +this.willChange=function(element,attribute,newData){if(!document.body){return true;} +var oldData;if(attribute=="innerHTML"){newData=this.getBrowserHTML(newData);} +eval("oldData=document.getElementById('"+element+"')."+attribute);if(newData!=oldData) +return true;return false;} +this.processResponse=function(xml){if(xajaxStatusMessages==true)window.status='Processing...';var tmpXajax=null;xml=xml.documentElement;if(xml==null){alert("Error: the XML response that was returned from the server cannot be processed.");document.body.style.cursor='default';if(xajaxStatusMessages==true)window.status='XML response processing error';return;} +for(i=0;i 1){for(j=0;j'); + } + else + { + Obj = document.createElement('input'); + Obj.setAttribute('type',sType); + Obj.setAttribute('name',sName); + Obj.setAttribute('id',sId); + } + return Obj; + } + + // xajax.createInput creates a new input node under a parent + this.createInput = function(sParentId, sType, sName, sId) + { + var objParent = this.$(sParentId); + var objElement = this.getInput(sType, sName, sId); + objParent.appendChild(objElement); + } + + // xajax.insertInput creates a new input node before another node + this.insertInput = function(sBeforeId, sType, sName, sId) + { + var objSibling = this.$(sBeforeId); + var objElement = this.getInput(sType, sName, sId); + objSibling.parentNode.insertBefore(objElement, objSibling); + } + + // xajax.remove deletes an element + this.remove = function(sId) + { + objElement = this.$(sId); + if (objElement.parentNode && objElement.parentNode.removeChild) + { + objElement.parentNode.removeChild(objElement); + } + } + + //xajax.replace searches for text in an attribute of an element and replaces it + //with a different text + this.replace = function(sId,sAttribute,sSearch,sReplace) + { + var bFunction = false; + + if (sAttribute == "innerHTML") + sSearch = this.getBrowserHTML(sSearch); + + eval("var txt=document.getElementById('"+sId+"')."+sAttribute); + if (typeof txt == "function") + { + txt = txt.toString(); + bFunction = true; + } + if (txt.indexOf(sSearch)>-1) + { + var newTxt = ''; + while (txt.indexOf(sSearch) > -1) + { + x = txt.indexOf(sSearch)+sSearch.length+1; + newTxt += txt.substr(0,x).replace(sSearch,sReplace); + txt = txt.substr(x,txt.length-x); + } + newTxt += txt; + if (bFunction) + { + eval("newTxt =" + newTxt); + eval('this.$("'+sId+'").'+sAttribute+'=newTxt;'); + } + else if (this.willChange(sId,sAttribute,newTxt)) + { + eval('this.$("'+sId+'").'+sAttribute+'=newTxt;'); + } + } + } + + // xajax.getFormValues() builds a query string XML message from the elements of a form object + this.getFormValues = function(frm) + { + var objForm; + var submitDisabledElements = false; + if (arguments.length > 1 && arguments[1] == true) + submitDisabledElements = true; + + if (typeof(frm) == "string") + objForm = this.$(frm); + else + objForm = frm; + var sXml = ""; + if (objForm && objForm.tagName == 'FORM') + { + var formElements = objForm.elements; + for( var i=0; i < formElements.length; i++) + { + if (formElements[i].type && (formElements[i].type == 'radio' || formElements[i].type == 'checkbox') && formElements[i].checked == false) + continue; + if (formElements[i].disabled && formElements[i].disabled == true && submitDisabledElements == false) continue; + var name = formElements[i].name; + if (name) + { + if (sXml != '') + sXml += '&'; + if(formElements[i].type=='select-multiple') + { + for (var j = 0; j < formElements[i].length; j++) + { + if (formElements[i].options[j].selected == true) sXml += name+"="+encodeURIComponent(formElements[i].options[j].value)+"&"; + } + } + else + { + sXml += name+"="+encodeURIComponent(formElements[i].value); + } + } + } + } + + sXml +=""; + + return sXml; + } + + // Generates an XML message that xajax can understand from a javascript object + this.objectToXML = function(obj) + { + var sXml = ""; + for (i in obj) + { + try + { + if (i == 'constructor') + continue; + if (obj[i] && typeof(obj[i]) == 'function') + continue; + + var key = i; + var value = obj[i]; + if (value && typeof(value)=="object" && + (value.constructor == Array + ) && this.depth <= 50) + { + this.depth++; + value = this.objectToXML(value); + this.depth--; + } + + sXml += ""+key+""+value+""; + + } + catch(e) + { + if (xajaxDebug) this.DebugMessage(e); + } + } + sXml += ""; + + return sXml; + } + + // Sends a XMLHttpRequest to call the specified PHP function on the server + // * sRequestType is optional -- defaults to POST + this.call = function(sFunction, aArgs, sRequestType) + { + var i,r,postData; + if (document.body && xajaxWaitCursor) + document.body.style.cursor = 'wait'; + if (xajaxStatusMessages == true) window.status = 'Sending Request...'; + if (xajaxDebug) this.DebugMessage("Starting xajax..."); + if (sRequestType == null) { + var xajaxRequestType = xajaxDefinedPost; + } + else { + var xajaxRequestType = sRequestType; + } + var uri = xajaxRequestUri; + var value; + switch(xajaxRequestType) + { + case xajaxDefinedGet:{ + var uriGet = uri.indexOf("?")==-1?"?xajax="+encodeURIComponent(sFunction):"&xajax="+encodeURIComponent(sFunction); + if (aArgs) { + for (i = 0; i"); + if (r.responseXML) + xajax.processResponse(r.responseXML); + else { + alert("Error: the XML response that was returned from the server is invalid."); + document.body.style.cursor = 'default'; + if (xajaxStatusMessages == true) window.status = 'Invalid XML response error'; + } + } + + delete r; + } + if (xajaxDebug) this.DebugMessage("Calling "+sFunction +" uri="+uri+" (post:"+ postData +")"); + r.send(postData); + if (xajaxStatusMessages == true) window.status = 'Waiting for data...'; + delete r; + return true; + } + + //Gets the text as it would be if it were being retrieved from + //the innerHTML property in the current browser + this.getBrowserHTML = function(html) + { + tmpXajax = this.$(this.workId); + if (tmpXajax == null) + { + tmpXajax = document.createElement("div"); + tmpXajax.setAttribute('id',this.workId); + tmpXajax.style.display = "none"; + tmpXajax.style.visibility = "hidden"; + document.body.appendChild(tmpXajax); + } + tmpXajax.innerHTML = html; + var browserHTML = tmpXajax.innerHTML; + tmpXajax.innerHTML = ''; + + return browserHTML; + } + + // Tests if the new Data is the same as the extant data + this.willChange = function(element, attribute, newData) + { + if (!document.body) + { + return true; + } + var oldData; + if (attribute == "innerHTML") + { + newData = this.getBrowserHTML(newData); + } + eval("oldData=document.getElementById('"+element+"')."+attribute); + if (newData != oldData) + return true; + + return false; + } + + //Process XML xajaxResponses returned from the request + this.processResponse = function(xml) + { + if (xajaxStatusMessages == true) window.status = 'Processing...'; + var tmpXajax = null; + xml = xml.documentElement; + if (xml == null) { + alert("Error: the XML response that was returned from the server cannot be processed."); + document.body.style.cursor = 'default'; + if (xajaxStatusMessages == true) window.status = 'XML response processing error'; + return; + } + for (i=0; i 1) + { + for (j=0; jsetCharEncoding($sEncoding); + } + + // setCharEncoding() sets the character encoding for the response based on + // $sEncoding, which is a string containing the character encoding to use. You + // don't need to use this method normally, since the character encoding for the + // response gets set automatically based on the XAJAX_DEFAULT_CHAR_ENCODING + // constant. + function setCharEncoding($sEncoding) + { + $this->sEncoding = $sEncoding; + } + + // addAssign() adds an assign command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.) + // $sData is the data you want to set the attribute to + // usage: $objResponse->addAssign("contentDiv", "innerHTML", "Some Text"); + function addAssign($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"as","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + // addAppend() adds an append command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.) + // $sData is the data you want to append to the end of the attribute + // usage: $objResponse->addAppend("contentDiv", "innerHTML", "Some New Text"); + function addAppend($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"ap","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + // addPrepend() adds an prepend command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.) + // $sData is the data you want to prepend to the beginning of the attribute + // usage: $objResponse->addPrepend("contentDiv", "innerHTML", "Some Starting Text"); + function addPrepend($sTarget,$sAttribute,$sData) + { + $this->xml .= $this->_cmdXML(array("n"=>"pp","t"=>$sTarget,"p"=>$sAttribute),$sData); + } + + // addReplace() adds an replace command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sAttribute is the part of the element you wish to modify ("innerHTML", "value", etc.) + // $sSearch is a string to search for + // $sData is a string to replace the search string when found in the attribute + // usage: $objResponse->addReplace("contentDiv", "innerHTML", "text", "text"); + function addReplace($sTarget,$sAttribute,$sSearch,$sData) + { + $sDta = ""; + $this->xml .= $this->_cmdXML(array("n"=>"rp","t"=>$sTarget,"p"=>$sAttribute),$sDta); + } + + // addClear() adds an clear command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sAttribute is the part of the element you wish to clear ("innerHTML", "value", etc.) + // usage: $objResponse->addClear("contentDiv", "innerHTML"); + function addClear($sTarget,$sAttribute) + { + $this->addAssign($sTarget,$sAttribute,''); + } + + // addAlert() adds an alert command message to the XML response + // $sMsg is the text to be displayed in the Javascript alert box + // usage: $objResponse->addAlert("This is important information"); + function addAlert($sMsg) + { + $this->xml .= $this->_cmdXML(array("n"=>"al"),$sMsg); + } + + // addRedirect() uses the addScript() method to add a Javascript redirect to + // another URL + // $sURL is the URL to redirect the client browser to + // usage: $objResponse->addRedirect("http://www.xajaxproject.org"); + function addRedirect($sURL) + { + $this->addScript('window.location = "'.rawurlencode($sURL).'";'); + } + + // addScript() adds a Javascript command message to the XML response + // $sJS is a string containing Javascript code to be executed + // usage: $objResponse->addScript("var x = prompt('get some text');"); + function addScript($sJS) + { + $this->xml .= $this->_cmdXML(array("n"=>"js"),$sJS); + } + + // addRemove() adds a remove element command message to the XML response + // $sTarget is a string containing the id of an HTML element to be removed + // from your page + // usage: $objResponse->addRemove("Div2"); + function addRemove($sTarget) + { + $this->xml .= $this->_cmdXML(array("n"=>"rm","t"=>$sTarget),''); + } + + // addCreate() adds a create element command message to the XML response + // $sParent is a string containing the id of an HTML element to which the new + // element will be appended. + // $sTag is the tag to be added + // $sId is the id to be assigned to the new element + // $sType has been deprecated, use the addCreateInput() method instead + // usage: $objResponse->addCreate("parentDiv", "h3", "myid"); + function addCreate($sParent, $sTag, $sId, $sType="") + { + if ($sType) + { + trigger_error("The \$sType parameter of addCreate has been deprecated. Use the addCreateInput() method instead.", E_USER_WARNING); + return; + } + $this->xml .= $this->_cmdXML(array("n"=>"ce","t"=>$sParent,"p"=>$sId),$sTag); + } + + // addInsert() adds an insert element command message to the XML response + // $sBefore is a string containing the id of the child before which the new element + // will be inserted + // $sTag is the tag to be added + // $sId is the id to be assigned to the new element + // usage: $objResponse->addInsert("childDiv", "h3", "myid"); + function addInsert($sBefore, $sTag, $sId) + { + $this->xml .= $this->_cmdXML(array("n"=>"ie","t"=>$sBefore,"p"=>$sId),$sTag); + } + + // addCreateInput() adds a create input command message to the XML response + // $sParent is a string containing the id of an HTML element to which the new + // input will be appended + // $sType is the type of input to be created (text, radio, checkbox, etc.) + // $sName is the name to be assigned to the new input and the variable name when it is submitted + // $sId is the id to be assigned to the new input + // usage: $objResponse->addCreateInput("form1", "text", "username", "input1"); + function addCreateInput($sParent, $sType, $sName, $sId) + { + $this->xml .= $this->_cmdXML(array("n"=>"ci","t"=>$sParent,"p"=>$sId,"c"=>$sType),$sName); + } + + // addInsertInput() adds an insert input command message to the XML response + // $sBefore is a string containing the id of the child before which the new element + // will be inserted + // $sType is the type of input to be created (text, radio, checkbox, etc.) + // $sName is the name to be assigned to the new input and the variable name when it is submitted + // $sId is the id to be assigned to the new input + // usage: $objResponse->addInsertInput("input5", "text", "username", "input1"); + function addInsertInput($sBefore, $sType, $sName, $sId) + { + $this->xml .= $this->_cmdXML(array("n"=>"ii","t"=>$sBefore,"p"=>$sId,"c"=>$sType),$sName); + } + + // addEvent() adds an event command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sEvent is the event you wish to set ("click", "mouseover", etc.) + // $sScript is the Javascript string you want to the event to invoke + // usage: $objResponse->addEvent("contentDiv", "click", "alert(\'Hello World\');"); + function addEvent($sTarget,$sEvent,$sScript) + { + $this->xml .= $this->_cmdXML(array("n"=>"ev","t"=>$sTarget,"p"=>$sEvent),$sScript); + } + + // addHandler() adds a handler command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sEvent is the event you wish to set ("click", "mouseover", etc.) + // $sHandler is a string containing the name of a Javascript function + // that will handle the event. Multiple handlers can be added for the same event + // usage: $objResponse->addHandler("contentDiv", "click", "content_click"); + function addHandler($sTarget,$sEvent,$sHandler) + { + $this->xml .= $this->_cmdXML(array("n"=>"ah","t"=>$sTarget,"p"=>$sEvent),$sHandler); + } + + // addRemoveHandler() adds a remove handler command message to the XML response + // $sTarget is a string containing the id of an HTML element + // $sEvent is the event you wish to remove ("click", "mouseover", etc.) + // $sHandler is a string containing the name of a Javascript handler function + // that you want to remove + // usage: $objResponse->addRemoveHandler("contentDiv", "click", "content_click"); + function addRemoveHandler($sTarget,$sEvent,$sHandler) + { + $this->xml .= $this->_cmdXML(array("n"=>"rh","t"=>$sTarget,"p"=>$sEvent),$sHandler); + } + + // addIncludeScript() adds an include script command message to the XML response + // $sFileName is a URL of the Javascript file to include + // usage: $objResponse->addIncludeScript("functions.js"); + function addIncludeScript($sFileName) + { + $this->xml .= $this->_cmdXML(array("n"=>"in"),$sFileName); + } + + // getXML() returns the XML to be returned from your function to the xajax + // processor on your page. Since xajax 0.2, you can also return an xajaxResponse + // object from your function directly, and xajax will automatically request the + // XML using this method call. + // usage: return $objResponse->getXML(); + function getXML() + { + $sXML = "sEncoding && strlen(trim($this->sEncoding)) > 0) + $sXML .= " encoding=\"".$this->sEncoding."\""; + $sXML .= " ?".">" . $this->xml . ""; + + return $sXML; + } + + // loadXML() adds the commands of the provided response XML output to this + // response object + // $sXML is the response XML (returned from a getXML() method) to add to the + // end of this response object + // usage: $r1 = $objResponse1->getXML(); + // $objResponse2->loadXML($r1); + // return $objResponse2->getXML(); + function loadXML($sXML) + { + $sNewXML = ""; + $iStartPos = strpos($sXML, "") + 5; + $sNewXML = substr($sXML, $iStartPos); + $iEndPos = strpos($sNewXML, ""); + $sNewXML = substr($sNewXML, 0, $iEndPos); + $this->xml .= $sNewXML; + } + + // private method, used internally + function _cmdXML($aAttributes, $sData) + { + $xml = " $sValue) + $xml .= " $sAttribute=\"$sValue\""; + if ($sData && !stristr($sData,'"; + else if ($sData) + $xml .= ">$sData"; + else + $xml .= ">"; + + return $xml; + } + +}// end class xajaxResponse +?> \ No newline at end of file diff -Nurb netmrg-0.19/www/Makefile.in netmrg-0.20/www/Makefile.in --- netmrg-0.19/www/Makefile.in 2006-02-04 06:41:32.000000000 +0530 +++ netmrg-0.20/www/Makefile.in 2008-04-12 07:52:41.000000000 +0530 @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.10 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -16,15 +16,11 @@ # These settings are pulled into Makefile.in by automake -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -65,8 +61,6 @@ DATA = $(nobase_netmrg_www_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ @@ -90,11 +84,15 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ @@ -104,9 +102,11 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ +MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ MSGMERGE = @MSGMERGE@ +MYSQL_CONFIG = @MYSQL_CONFIG@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ @@ -124,13 +124,13 @@ VERSION = @VERSION@ WWWDIR = @WWWDIR@ XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -142,28 +142,39 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ AM_MAKEFLAGS = \ ` test "$(VERBOSE)" = "1" && echo $(ECHO_N) "" \ || echo $(ECHO_N) "-s" ` @@ -204,7 +215,6 @@ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -uninstall-info-am: uninstall-nobase_netmrg_wwwDATA: @$(NORMAL_UNINSTALL) @@ -222,23 +232,21 @@ distdir: $(DISTFILES) - $(mkdir_p) $(distdir)/.. - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ @@ -254,7 +262,7 @@ all-am: Makefile $(DATA) installdirs: for dir in "$(DESTDIR)$(netmrg_wwwdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am install-exec: install-exec-am @@ -300,12 +308,20 @@ install-data-am: install-nobase_netmrg_wwwDATA +install-dvi: install-dvi-am + install-exec-am: +install-html: install-html-am + install-info: install-info-am install-man: +install-pdf: install-pdf-am + +install-ps: install-ps-am + installcheck-am: maintainer-clean: maintainer-clean-am @@ -324,16 +340,20 @@ ps-am: -uninstall-am: uninstall-info-am uninstall-nobase_netmrg_wwwDATA +uninstall-am: uninstall-nobase_netmrg_wwwDATA + +.MAKE: install-am install-strip .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am install-man \ - install-nobase_netmrg_wwwDATA install-strip installcheck \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-nobase_netmrg_wwwDATA install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ - pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \ + pdf-am ps ps-am uninstall uninstall-am \ uninstall-nobase_netmrg_wwwDATA @SET_MAKE@ diff -Nurb netmrg-0.19/www/webfiles/about.php netmrg-0.20/www/webfiles/about.php --- netmrg-0.19/www/webfiles/about.php 2006-02-01 00:28:40.000000000 +0530 +++ netmrg-0.20/www/webfiles/about.php 2007-02-06 08:19:30.000000000 +0530 @@ -21,7 +21,7 @@ Version

    -Copyright ©2001-2006 +Copyright ©2001-2007 Brady Alleman, Douglas E. Warner and Kevin Bonner.
    diff -Nurb netmrg-0.19/www/webfiles/ajax.php netmrg-0.20/www/webfiles/ajax.php --- netmrg-0.19/www/webfiles/ajax.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/webfiles/ajax.php 2008-04-02 07:35:55.000000000 +0530 @@ -0,0 +1,137 @@ +addClearSelect("subdevice"); + $dev_id = null; + $sub_dev_id = null; + if ($type == "device") + { + $dev_id = $id; + $resp->addClearSelect("monitor"); + } + else + { + if ($id < 0) + { + // MORE "Internal" hacks + $dev_id = -1; + $sub_dev_id = $id; + } + else + { + $dev_id = db_fetch_cell("SELECT dev_id FROM sub_devices WHERE id = '$id'"); + $sub_dev_id = $id; + } + } + + if ($dev_id == -1) + { + // Internal Device + if ($sub_dev_id === null) + { + redraw_monitor("subdevice", -1, $resp); + } + $resp->addCreateOption("subdevice", "-Internal-", -1); + $resp->addAssign("subdevice", "selectedIndex", 0); + } + else + { + $q = db_query("SELECT id, name FROM sub_devices WHERE dev_id='$dev_id' ORDER BY name"); + + $first = true; + $i = 0; + $selected = -1; + while ($row = db_fetch_array($q)) + { + if ($first && ($sub_dev_id === null)) + { + redraw_monitor("subdevice", $row['id'], $resp); + $first = false; + } + $resp->addCreateOption("subdevice", $row['name'], $row['id']); + if ($row['id'] == $sub_dev_id) + $selected = $i; + $i++; + } + if ($sub_dev_id !== null) + $resp->addAssign("subdevice", "selectedIndex", $selected); + } + return $resp; +} + +function redraw_monitor($type, $id, $rp = null) +{ + $resp = ($rp !== null ? $rp : new netmrgXajaxResponse()); + $mon_id = null; + $sub_dev_id = null; + if ($type == "subdevice") + { + $sub_dev_id = $id; + $resp->addClearSelect("monitor"); + } + else + { + if ($id < 0) + { + // more "Internal" hacks. yay. + $sub_dev_id = -1; + $mon_id = $id; + redraw_subdevice("subdevice", $sub_dev_id, $resp); + } + else + { + $sub_dev_id = db_fetch_cell("SELECT sub_dev_id FROM monitors WHERE id = '$id'"); + $mon_id = $id; + redraw_subdevice("subdevice", $sub_dev_id, $resp); + } + } + + if ($sub_dev_id == -1) + { + // "Internal" subdevice + $resp->addCreateOption("monitor", "-Fixed Value-", -1); + $resp->addCreateOption("monitor", "-Sum of all graph items-", -2); + if ($mon_id == -2) + { + $resp->addAssign("monitor", "selectedIndex", 1); + } + else + { + $resp->addAssign("monitor", "selectedIndex", 0); + } + } + else + { + $q = db_query("SELECT id FROM monitors WHERE sub_dev_id='$sub_dev_id'"); + $i = 0; + $selected = -1; + while ($row = db_fetch_array($q)) + { + $resp->addCreateOption("monitor", get_short_monitor_name($row['id']), $row['id']); + if ($row['id'] == $mon_id) + $selected = $i; + $i++; + } + if ($mon_id !== null) + $resp->addAssign("monitor", "selectedIndex", $selected); + } + return $resp; +} + +$xajax->processRequests(); + + +?> diff -Nurb netmrg-0.19/www/webfiles/conditions.php netmrg-0.20/www/webfiles/conditions.php --- netmrg-0.19/www/webfiles/conditions.php 2006-01-31 04:34:35.000000000 +0530 +++ netmrg-0.20/www/webfiles/conditions.php 2006-03-25 20:13:30.000000000 +0530 @@ -49,7 +49,7 @@ PrepGroupNavHistory("event", $_REQUEST["event_id"]); DrawGroupNavHistory("event", $_REQUEST["event_id"]); - $query = db_query("SELECT * FROM conditions WHERE event_id = {$_REQUEST['event_id']} ORDER BY id"); + $query = db_query("SELECT * FROM `conditions` WHERE event_id = {$_REQUEST['event_id']} ORDER BY id"); $rows = db_num_rows($query); if ($rows == 0) { @@ -113,7 +113,7 @@ } else { - $query = db_query("SELECT * FROM conditions WHERE id={$_REQUEST['id']}"); + $query = db_query("SELECT * FROM `conditions` WHERE id={$_REQUEST['id']}"); $row = db_fetch_array($query); } @@ -145,15 +145,15 @@ if ($_REQUEST['id'] == 0) { $pre = "INSERT INTO"; - $post = ", event_id={$_REQUEST['event_id']}"; + $post = ", `event_id`='{$_REQUEST['event_id']}'"; } else { $pre = "UPDATE"; - $post = "WHERE id = {$_REQUEST['id']}"; + $post = "WHERE `id` = '{$_REQUEST['id']}'"; } - db_update("$pre conditions SET logic_condition={$_REQUEST['logic_condition']}, value_type={$_REQUEST['value_type']}, condition={$_REQUEST['condition']}, value={$_REQUEST['value']} $post"); + db_update("$pre `conditions` SET `logic_condition`='{$_REQUEST['logic_condition']}', `value_type`='{$_REQUEST['value_type']}', `condition`='{$_REQUEST['condition']}', `value`='{$_REQUEST['value']}' $post"); header("Location: {$_SERVER['PHP_SELF']}?event_id={$_REQUEST['event_id']}&tripid={$_REQUEST['tripid']}"); } // end do_edit(); @@ -165,12 +165,12 @@ { while (list($key,$value) = each($_REQUEST["condition"])) { - db_update("DELETE FROM conditions WHERE id = '$key'"); + db_update("DELETE FROM `conditions` WHERE id = '$key'"); } } else if(isset($_REQUEST["id"])) { - db_update("DELETE FROM conditions WHERE id = '{$_REQUEST['id']}'"); + db_update("DELETE FROM `conditions` WHERE id = '{$_REQUEST['id']}'"); } header("Location: {$_SERVER['PHP_SELF']}?event_id={$_REQUEST['event_id']}&tripid={$_REQUEST['tripid']}"); } // end do_delete(); diff -Nurb netmrg-0.19/www/webfiles/devices.php netmrg-0.20/www/webfiles/devices.php --- netmrg-0.19/www/webfiles/devices.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/devices.php 2006-11-04 01:49:26.000000000 +0530 @@ -72,24 +72,24 @@ if (!isset($_REQUEST["disabled"])) { $_REQUEST["disabled"] = 0; } if (!isset($_REQUEST["snmp_version"])) { $_REQUEST["snmp_version"] = 0; } if (!isset($_REQUEST["no_snmp_uptime_check"])) { $_REQUEST["no_snmp_uptime_check"] = 0; } + if (!isset($_REQUEST["unknowns_on_snmp_restart"])) { $_REQUEST["unknowns_on_snmp_restart"] = 0; } if ($_REQUEST["dev_id"] == 0) { $db_cmd = "INSERT INTO"; $db_end = ""; $just_now_disabled = false; + $dev_type_changed = false; } else { $db_cmd = "UPDATE"; $db_end = "WHERE id={$_REQUEST['dev_id']}"; - if ($_REQUEST['disabled'] == 1) - { - $q = db_query("SELECT disabled FROM devices WHERE id={$_REQUEST['dev_id']}"); + $q = db_query("SELECT disabled, dev_type FROM devices WHERE id={$_REQUEST['dev_id']}"); $r = db_fetch_array($q); - $just_now_disabled = ($r['disable'] == 0); - } - else $just_now_disabled = false; + $just_now_disabled = (($r['disable'] == 0) && ($_REQUEST['disabled'] == 1)); + $dev_type_changed = ($r['dev_type'] != $_REQUEST['dev_type']); + } // end if dev_id = 0 or not db_update("$db_cmd devices SET @@ -103,7 +103,8 @@ snmp_port='{$_REQUEST['snmp_port']}', snmp_timeout='{$_REQUEST['snmp_timeout']}', snmp_retries='{$_REQUEST['snmp_retries']}', - no_snmp_uptime_check='{$_REQUEST['no_snmp_uptime_check']}' + no_snmp_uptime_check='{$_REQUEST['no_snmp_uptime_check']}', + unknowns_on_snmp_restart='{$_REQUEST['unknowns_on_snmp_restart']}' $db_end"); if ($_REQUEST["dev_id"] == 0) @@ -116,16 +117,34 @@ db_update("UPDATE devices SET status=0 WHERE id = {$_REQUEST['dev_id']}"); db_update("UPDATE sub_devices SET status=0 WHERE dev_id = {$_REQUEST['dev_id']}"); $q = db_query("SELECT id FROM sub_devices WHERE dev_id = {$_REQUEST['dev_id']}"); - while ($r = db_fetch_array($q)) + while ($r2 = db_fetch_array($q)) { - db_update("UPDATE monitors SET status=0 WHERE sub_dev_id = {$r['id']}"); - $q1 = db_query("SELECT id FROM monitors WHERE sub_dev_id = {$r['id']}"); + db_update("UPDATE monitors SET status=0 WHERE sub_dev_id = {$r2['id']}"); + $q1 = db_query("SELECT id FROM monitors WHERE sub_dev_id = {$r2['id']}"); while ($r1 = db_fetch_array($q1)) { db_update("UPDATE events SET last_status=0 WHERE mon_id = {$r1['id']}"); } } } + + if ($dev_type_changed) + { + // the device type changed, so we need to migrate and/or clean up device properties + + $old_props_query = db_query("SELECT * FROM dev_props LEFT JOIN dev_prop_vals ON dev_props.id=dev_prop_vals.prop_id WHERE dev_type_id = {$r['dev_type']} AND dev_id = {$_REQUEST['dev_id']}"); + while ($old_prop_row = db_fetch_array($old_props_query)) + { + $new_props_query = db_query("SELECT * FROM dev_props WHERE dev_type_id = {$_REQUEST['dev_type']} AND name = '{$old_prop_row['name']}'"); + if ($new_prop_row = db_fetch_array($new_props_query)) + { + db_update("INSERT INTO dev_prop_vals SET dev_id={$_REQUEST['dev_id']}, prop_id={$new_prop_row['id']}, value='{$old_prop_row['value']}'"); + } + + db_update("DELETE FROM dev_prop_vals WHERE dev_id={$_REQUEST['dev_id']} AND prop_id={$old_prop_row['prop_id']}"); + } + } + } // done editing header("Location: grpdev_list.php?parent_id={$_REQUEST['grp_id']}&tripid={$_REQUEST['tripid']}"); @@ -210,6 +229,7 @@ $dev_row["snmp_timeout"] = 1000000; $dev_row["snmp_retries"] = 3; $dev_row["no_snmp_uptime_check"] = 0; + $dev_row["unknowns_on_snmp_restart"] = 1; } make_edit_table("Edit Device"); @@ -224,6 +244,7 @@ make_edit_select_from_array("Recaching Method:", "snmp_recache_method", $GLOBALS["RECACHE_METHODS"], $dev_row["snmp_recache_method"]); make_edit_group("Advanaced SNMP Options"); make_edit_checkbox("Disable SNMP Uptime Check", "no_snmp_uptime_check", $dev_row["no_snmp_uptime_check"] == 1); + make_edit_checkbox("Unknowns on SNMP Restart", "unknowns_on_snmp_restart", $dev_row["unknowns_on_snmp_restart"] == 1); make_edit_text("SNMP UDP Port", "snmp_port", 5, 5, $dev_row["snmp_port"]); make_edit_text("SNMP Timeout (microseconds):", "snmp_timeout", 10, 20, $dev_row["snmp_timeout"]); make_edit_text("SNMP Retries:", "snmp_retries", 3, 10, $dev_row["snmp_retries"]); diff -Nurb netmrg-0.19/www/webfiles/dev_props.php netmrg-0.20/www/webfiles/dev_props.php --- netmrg-0.19/www/webfiles/dev_props.php 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/webfiles/dev_props.php 2006-09-24 22:48:11.000000000 +0530 @@ -0,0 +1,213 @@ + +
    " method="post" name="form"> + + + + checkbox_toolbar()), + array("text" => "Name"), + array("text" => "Test") + ); // end make_display_table(); + + $results = db_query("SELECT * FROM dev_props WHERE dev_type_id = {$_REQUEST['dev_type']}"); + $prop_count = 0; + + while ($row = mysql_fetch_array($results)) + { + $test_name = get_short_test_name($row['test_type'], $row['test_id'], $row['test_params']); + $prop_id = $row['id']; + + make_display_item("editfield".($prop_count%2), + array("checkboxname" => "devprop", "checkboxid" => $row['id']), + array("text" => $row['name']), + array("text" => $test_name), + array("text" => formatted_link("Edit", "{$_SERVER['PHP_SELF']}?action=edit&prop_id=$prop_id&dev_type={$_REQUEST['dev_type']}&tripid={$_REQUEST['tripid']}", "", "edit") . " " . + formatted_link("Delete","javascript:del('$java_name', '$prop_id')", "", "delete")) + ); // end make_display_item(); + + $prop_count++; + + } // end for each monitor + make_checkbox_command("", 5, + array("text" => "Delete", "action" => "multidodelete", "prompt" => "Are you sure you want to delete the checked properties?") + ); // end make_checkbox_command + make_status_line("property", $prop_count, "properties"); + ?> +
    + + diff -Nurb netmrg-0.19/www/webfiles/dev_types.php netmrg-0.20/www/webfiles/dev_types.php --- netmrg-0.19/www/webfiles/dev_types.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/dev_types.php 2006-02-20 04:28:26.000000000 +0530 @@ -65,7 +65,7 @@ $id = $row["id"]; make_display_item("editfield".(($grp_count-1)%2), - array("text" => $row["name"]), + array("text" => $row["name"], "href" => "dev_props.php?dev_type=$id"), array("text" => $row["comment"]), array("text" => formatted_link("Edit", "{$_SERVER['PHP_SELF']}?action=edit&id=$id") . " " . formatted_link("Delete", "javascript:del('" . addslashes($row["name"]) . "', '" . $row["id"] . "')")) diff -Nurb netmrg-0.19/www/webfiles/graph_items.php netmrg-0.20/www/webfiles/graph_items.php --- netmrg-0.19/www/webfiles/graph_items.php 2006-01-31 04:34:35.000000000 +0530 +++ netmrg-0.20/www/webfiles/graph_items.php 2006-11-04 00:08:50.000000000 +0530 @@ -98,7 +98,7 @@ type='{$_REQUEST['type']}', graph_id='{$_REQUEST['graph_id']}', label='{$_REQUEST['label']}', alignment='{$_REQUEST['alignment']}', stats='$stats', position='{$_REQUEST['position']}', multiplier='{$_REQUEST['multiplier']}', - start_time='{$_REQUEST['start_time']}', end_time='{$_REQUEST['end_time']}' + start_time='{$_REQUEST['start_time']}', end_time='{$_REQUEST['end_time']}', cf='{$_REQUEST['cf']}' $post"; db_update($graph_ds_query); @@ -322,6 +322,7 @@ { $_REQUEST["id"] = 0; $ds_row["type"] = 0; + $ds_row["cf"] = 0; $ds_row["color"] = "#0000AA"; $ds_row["alignment"] = 0; $ds_row["multiplier"] = 1; @@ -350,6 +351,7 @@ make_edit_table("Edit Graph Item"); make_edit_text("Item Label:","label","50","100",$ds_row["label"]); make_edit_select_from_array("Item Type:", "type", $GLOBALS['RRDTOOL_ITEM_TYPES'], $ds_row["type"]); + make_edit_select_from_array("Data Consolidation:", "cf", $GLOBALS['RRDTOOL_CFS'], $ds_row["cf"]); make_edit_color("Item Color:", "color", $ds_row["color"]); make_edit_group("Data"); diff -Nurb netmrg-0.19/www/webfiles/grpdev_list.php netmrg-0.20/www/webfiles/grpdev_list.php --- netmrg-0.19/www/webfiles/grpdev_list.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/grpdev_list.php 2006-11-01 21:46:06.000000000 +0530 @@ -109,21 +109,38 @@ GROUP BY devices.id ORDER BY name ASC"); + $column_results = db_query(" + SELECT DISTINCT dev_props.name AS name + FROM dev_parents + LEFT JOIN devices ON dev_parents.dev_id=devices.id + LEFT JOIN dev_props ON devices.dev_type=dev_props.dev_type_id + WHERE grp_id = '{$_REQUEST['parent_id']}' + ORDER BY dev_props.name ASC"); + echo '
    '."\n"; echo ''."\n"; echo ''."\n"; echo ''."\n"; - make_display_table($title, $addlink, - array("text" => checkbox_toolbar("dev")), - array("text" => "Name"), - array("text" => "Availability"), - array("text" => "SNMP Options") - ); + + $custom_columns = array(); + $menu_items = array(); + array_push($menu_items, array("text" => checkbox_toolbar("dev"))); + array_push($menu_items, array("text" => "Name")); + array_push($menu_items, array("text" => "Availability")); + while ($row = mysql_fetch_array($column_results)) + { + array_push($custom_columns, $row['name']); + array_push($menu_items, array("text" => $row['name'])); + } + array_push($menu_items, array("text" => "SNMP Options")); + make_display_table_array($title, $menu_items, $addlink); $count = 0; while($dev_row = db_fetch_array($dev_results)) { $dev_id = $dev_row["id"]; + + /* SNMP Options */ $links = cond_formatted_link($dev_row["interface_count"] > 0, "View Interface Cache", "snmp_cache_view.php?dev_id=$dev_id&action=view&type=interface&tripid={$_REQUEST['tripid']}", "", "viewinterface") . " " . @@ -132,8 +149,10 @@ cond_formatted_link($dev_row["disk_count"] > 0, "View Disk Cache", "snmp_cache_view.php?dev_id=$dev_id&action=view&type=disk&tripid={$_REQUEST['tripid']}", "", "viewdisk") . " " . cond_formatted_link($dev_row["snmp_version"] > 0, "Recache Disks", - "recache.php?dev_id=$dev_id&type=disk&tripid={$_REQUEST['tripid']}", "", "recachedisk"); + "recache.php?dev_id=$dev_id&type=disk&tripid={$_REQUEST['tripid']}", "", "recachedisk") . + formatted_link("Recache Properties", "recache.php?dev_id=$dev_id&type=properties&tripid={$_REQUEST['tripid']}&parent_id={$_REQUEST['parent_id']}", "", "recacheproperties"); + /* Availability Display */ if ($dev_row['disabled'] == 1) { $availability = "Disabled"; @@ -155,19 +174,47 @@ $availability = "SNMP Uptime: " . format_time_elapsed($dev_row['snmp_uptime']/100); } - make_display_item("editfield".($count%2), - array("checkboxname" => "dev_id", "checkboxid" => $dev_row['id']), - array("text" => $dev_row["name"], "href" => "sub_devices.php?dev_id=$dev_id&tripid={$_REQUEST['tripid']}"), - array("text" => $availability), - array("text" => $links), - array("text" => formatted_link("View", "view.php?action=view&object_type=device&object_id=$dev_id", "", "view") . " " . + $items = array(); + array_push($items, array("checkboxname" => "dev_id", "checkboxid" => $dev_row['id'])); + array_push($items, array("text" => $dev_row["name"], "href" => "sub_devices.php?dev_id=$dev_id&tripid={$_REQUEST['tripid']}")); + array_push($items, array("text" => $availability)); + + /* Device Properties */ + $prop_res = db_query(" + SELECT name, value + FROM dev_prop_vals vals + LEFT JOIN dev_props props ON vals.prop_id = props.id + WHERE dev_id = $dev_id"); + + $props = array(); + while ($proprow = db_fetch_array($prop_res)) + { + array_push($props, array("name" => $proprow['name'], "value" => $proprow['value'])); + } + + foreach ($custom_columns as $column) + { + $found = ""; + foreach ($props as $prop) + if ($prop['name'] == $column) + { + $found = true; + array_push($items, array("text" => $prop['value'])); + } + if (!$found) + array_push($items, array()); + } + + array_push($items, array("text" => $links)); + array_push($items, array("text" => formatted_link("View", "view.php?action=view&object_type=device&object_id=$dev_id", "", "view") . " " . formatted_link("Duplicate", "devices.php?action=duplicate&dev_id=$dev_id&grp_id={$_REQUEST['parent_id']}&tripid={$_REQUEST['tripid']}", "", "duplicate") . " " . formatted_link("Edit", "devices.php?action=edit&dev_id=$dev_id&grp_id={$_REQUEST['parent_id']}&tripid={$_REQUEST['tripid']}", "", "edit") . " " . - formatted_link("Delete", "javascript:del_dev('" . addslashes($dev_row["name"]) . "', '" . $dev_row["id"] . "')", "", "delete")) - ); // end make_display_item(); + formatted_link("Delete", "javascript:del_dev('" . addslashes($dev_row["name"]) . "', '" . $dev_row["id"] . "')", "", "delete"))); + + make_display_item_array($items, "editfield".($count%2)); $count++; } // end while devices - make_checkbox_command("dev", 5, + make_checkbox_command("dev", 5 + count($custom_columns), array("text" => "Delete", "action" => "deletemulti", "prompt" => "Are you sure you want to delete the checked devices?") ); // end make_checkbox_command make_status_line("device", $count); diff -Nurb netmrg-0.19/www/webfiles/images/default/imagespec.php netmrg-0.20/www/webfiles/images/default/imagespec.php --- netmrg-0.19/www/webfiles/images/default/imagespec.php 2005-11-04 07:14:05.000000000 +0530 +++ netmrg-0.20/www/webfiles/images/default/imagespec.php 2006-11-01 21:46:06.000000000 +0530 @@ -33,6 +33,7 @@ "parameters" => "parameters.png", "view" => "view.png", "recachedisk" => "recachedisk.png", + "recacheproperties" => "recacheproperties.png", "viewdisk" => "viewdisk.png", "recacheinterface" => "recacheinterface.png", "viewinterface" => "viewinterface.png", Binary files netmrg-0.19/www/webfiles/images/default/recacheproperties.png and netmrg-0.20/www/webfiles/images/default/recacheproperties.png differ diff -Nurb netmrg-0.19/www/webfiles/include/inputdefault.js netmrg-0.20/www/webfiles/include/inputdefault.js --- netmrg-0.19/www/webfiles/include/inputdefault.js 2005-09-09 22:53:07.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/inputdefault.js 2006-02-14 05:38:27.000000000 +0530 @@ -38,3 +38,10 @@ this.style.backgroundColor = ''; } } + +function set_defaults_search() +{ + set_defaults('search'); +} + +addOnloadEvent(set_defaults_search); diff -Nurb netmrg-0.19/www/webfiles/include/login_focus.js netmrg-0.20/www/webfiles/include/login_focus.js --- netmrg-0.19/www/webfiles/include/login_focus.js 2005-02-27 23:32:20.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/login_focus.js 2006-02-14 05:38:27.000000000 +0530 @@ -1,4 +1 @@ -function focusme() -{ - document.lif.user_name.focus(); -} \ No newline at end of file +addOnloadEvent(function() { document.lif.user_name.focus(); }); \ No newline at end of file diff -Nurb netmrg-0.19/www/webfiles/include/netmrg.css netmrg-0.20/www/webfiles/include/netmrg.css --- netmrg-0.19/www/webfiles/include/netmrg.css 2005-12-09 06:15:44.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/netmrg.css 2007-02-07 08:26:38.000000000 +0530 @@ -346,15 +346,61 @@ font-weight : bold; } +#viewdisplay +{ +} + .viewseparator { - background-color : #4040B0; - color : #F0F0F0; + background-color : #D0D0D0; + color : #505050; + padding : 1px; + text-align : left; + border-top : 1px dashed #4040B0; + border-bottom : 1px dashed #4040B0; + clear: both; +} + +.viewgraph +{ + background-color : #F0F0F0; + color : #D0D0D0; + font-family : sans-serif; + font-size : 0.5em; + font-weight : bold; + letter-spacing : 0.2em; + padding : 5px; + float: left; +} + +.viewgraph-title +{ font-family : sans-serif; font-size : 12px; font-weight : bold; - padding : 1px; - border : 2px solid white; + letter-spacing : 0.2em; + float: left; +} + +.viewgraph-image +{ + margin: 5px; + display: table; + float: left; + clear: left; +} + +.viewgraph-controls +{ + text-align: right; + display: table; + margin-top: 0.5em; + float: left; + -float: none; +} + +.viewgraph-shortcut +{ } .disabled diff -Nurb netmrg-0.19/www/webfiles/include/onload.js netmrg-0.20/www/webfiles/include/onload.js --- netmrg-0.19/www/webfiles/include/onload.js 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/onload.js 2006-02-14 05:38:27.000000000 +0530 @@ -0,0 +1,24 @@ +/** + * add onload events + * pulled from http://www.tek-tips.com/faqs.cfm?fid=4862 + */ + +function addOnloadEvent(fnc){ + if ( typeof window.addEventListener != "undefined" ) + window.addEventListener( "load", fnc, false ); + else if ( typeof window.attachEvent != "undefined" ) { + window.attachEvent( "onload", fnc ); + } + else { + if ( window.onload != null ) { + var oldOnload = window.onload; + window.onload = function ( e ) { + oldOnload( e ); + window[fnc](); + }; + } + else { + window.onload = fnc; + } + } +} // end addOnloadEvent(); diff -Nurb netmrg-0.19/www/webfiles/include/select.js netmrg-0.20/www/webfiles/include/select.js --- netmrg-0.19/www/webfiles/include/select.js 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/select.js 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,22 @@ +function addOption(selectId,txt,val) +{ + var objOption = new Option(txt,val); + document.getElementById(selectId).options.add(objOption); +} + +function clearSelect(selectId) +{ + document.getElementById(selectId).options.length = 0; +} + +function pickSelect(selectId, avalue) +{ + for (var i = 0; i < document.getElementById(selectId).options.length; i++) + { + if (document.getElementById(selectId).options[i].value == avalue) + { + document.getElementById(selectId).selectedIndex = i; + break; + } + } +} diff -Nurb netmrg-0.19/www/webfiles/include/xajax.js netmrg-0.20/www/webfiles/include/xajax.js --- netmrg-0.19/www/webfiles/include/xajax.js 1970-01-01 05:30:00.000000000 +0530 +++ netmrg-0.20/www/webfiles/include/xajax.js 2006-06-25 02:09:26.000000000 +0530 @@ -0,0 +1,118 @@ +function Xajax(){if(xajaxDebug)this.DebugMessage=function(text){alert("Xajax Debug:\n "+text)};this.workId='xajaxWork'+new Date().getTime();this.depth=0;this.getRequestObject=function(){if(xajaxDebug)this.DebugMessage("Initializing Request Object..");var req;try{req=new ActiveXObject("Msxml2.XMLHTTP");} +catch(e){try{req=new ActiveXObject("Microsoft.XMLHTTP");} +catch(e2){req=null;} +} +if(!req&&typeof XMLHttpRequest!="undefined") +req=new XMLHttpRequest();if(xajaxDebug){if(!req)this.DebugMessage("Request Object Instantiation failed.");} +return req;} +this.$=function(sId){if(!sId){return null;} +var returnObj=document.getElementById(sId);if(xajaxDebug&&!returnObj&&sId!=this.workId){this.DebugMessage("Element with the id \""+sId+"\" not found.");} +return returnObj;} +this.include=function(sFileName){var objHead=document.getElementsByTagName('head');var objScript=document.createElement('script');objScript.type='text/javascript';objScript.src=sFileName;objHead[0].appendChild(objScript);} +this.addHandler=function(sElementId,sEvent,sFunctionName){if(window.addEventListener){eval("this.$('"+sElementId+"').addEventListener('"+sEvent+"',"+sFunctionName+",false);");} +else{eval("this.$('"+sElementId+"').attachEvent('on"+sEvent+"',"+sFunctionName+",false);");} +} +this.removeHandler=function(sElementId,sEvent,sFunctionName){if(window.addEventListener){eval("this.$('"+sElementId+"').removeEventListener('"+sEvent+"',"+sFunctionName+",false);");} +else{eval("this.$('"+sElementId+"').detachEvent('on"+sEvent+"',"+sFunctionName+",false);");} +} +this.create=function(sParentId,sTag,sId){var objParent=this.$(sParentId);objElement=document.createElement(sTag);objElement.setAttribute('id',sId);objParent.appendChild(objElement);} +this.insert=function(sBeforeId,sTag,sId){var objSibling=this.$(sBeforeId);objElement=document.createElement(sTag);objElement.setAttribute('id',sId);objSibling.parentNode.insertBefore(objElement,objSibling);} +this.getInput=function(sType,sName,sId){var Obj;if(sType=="radio"&&!window.addEventListener){Obj=document.createElement('');} +else{Obj=document.createElement('input');Obj.setAttribute('type',sType);Obj.setAttribute('name',sName);Obj.setAttribute('id',sId);} +return Obj;} +this.createInput=function(sParentId,sType,sName,sId){var objParent=this.$(sParentId);var objElement=this.getInput(sType,sName,sId);objParent.appendChild(objElement);} +this.insertInput=function(sBeforeId,sType,sName,sId){var objSibling=this.$(sBeforeId);var objElement=this.getInput(sType,sName,sId);objSibling.parentNode.insertBefore(objElement,objSibling);} +this.remove=function(sId){objElement=this.$(sId);if(objElement.parentNode&&objElement.parentNode.removeChild){objElement.parentNode.removeChild(objElement);} +} +this.replace=function(sId,sAttribute,sSearch,sReplace){var bFunction=false;if(sAttribute=="innerHTML") +sSearch=this.getBrowserHTML(sSearch);eval("var txt=document.getElementById('"+sId+"')."+sAttribute);if(typeof txt=="function"){txt=txt.toString();bFunction=true;} +if(txt.indexOf(sSearch)>-1){var newTxt='';while(txt.indexOf(sSearch)>-1){x=txt.indexOf(sSearch)+sSearch.length+1;newTxt+=txt.substr(0,x).replace(sSearch,sReplace);txt=txt.substr(x,txt.length-x);} +newTxt+=txt;if(bFunction){eval("newTxt ="+newTxt);eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');} +else if(this.willChange(sId,sAttribute,newTxt)){eval('this.$("'+sId+'").'+sAttribute+'=newTxt;');} +} +} +this.getFormValues=function(frm){var objForm;var submitDisabledElements=false;if(arguments.length > 1&&arguments[1]==true) +submitDisabledElements=true;if(typeof(frm)=="string") +objForm=this.$(frm);else +objForm=frm;var sXml="";if(objForm&&objForm.tagName=='FORM'){var formElements=objForm.elements;for(var i=0;i < formElements.length;i++){if(formElements[i].type&&(formElements[i].type=='radio'||formElements[i].type=='checkbox')&&formElements[i].checked==false) +continue;if(formElements[i].disabled&&formElements[i].disabled==true&&submitDisabledElements==false)continue;var name=formElements[i].name;if(name){if(sXml!='') +sXml+='&';if(formElements[i].type=='select-multiple'){for(var j=0;j < formElements[i].length;j++){if(formElements[i].options[j].selected==true)sXml+=name+"="+encodeURIComponent(formElements[i].options[j].value)+"&";} +} +else{sXml+=name+"="+encodeURIComponent(formElements[i].value);} +} +} +} +sXml+="";return sXml;} +this.objectToXML=function(obj){var sXml="";for(i in obj){try{if(i=='constructor') +continue;if(obj[i]&&typeof(obj[i])=='function') +continue;var key=i;var value=obj[i];if(value&&typeof(value)=="object"&& +(value.constructor==Array +)&&this.depth <=50){this.depth++;value=this.objectToXML(value);this.depth--;} +sXml+=""+key+""+value+"";} +catch(e){if(xajaxDebug)this.DebugMessage(e);} +} +sXml+="";return sXml;} +this.call=function(sFunction,aArgs,sRequestType){var i,r,postData;if(document.body&&xajaxWaitCursor) +document.body.style.cursor='wait';if(xajaxStatusMessages==true)window.status='Sending Request...';if(xajaxDebug)this.DebugMessage("Starting xajax...");if(sRequestType==null){var xajaxRequestType=xajaxDefinedPost;} +else{var xajaxRequestType=sRequestType;} +var uri=xajaxRequestUri;var value;switch(xajaxRequestType){case xajaxDefinedGet:{var uriGet=uri.indexOf("?")==-1?"?xajax="+encodeURIComponent(sFunction):"&xajax="+encodeURIComponent(sFunction);if(aArgs){for(i=0;i");if(r.responseXML) +xajax.processResponse(r.responseXML);else{alert("Error: the XML response that was returned from the server is invalid.");document.body.style.cursor='default';if(xajaxStatusMessages==true)window.status='Invalid XML response error';} +} +delete r;} +if(xajaxDebug)this.DebugMessage("Calling "+sFunction+" uri="+uri+" (post:"+postData+")");r.send(postData);if(xajaxStatusMessages==true)window.status='Waiting for data...';delete r;return true;} +this.getBrowserHTML=function(html){tmpXajax=this.$(this.workId);if(tmpXajax==null){tmpXajax=document.createElement("div");tmpXajax.setAttribute('id',this.workId);tmpXajax.style.display="none";tmpXajax.style.visibility="hidden";document.body.appendChild(tmpXajax);} +tmpXajax.innerHTML=html;var browserHTML=tmpXajax.innerHTML;tmpXajax.innerHTML='';return browserHTML;} +this.willChange=function(element,attribute,newData){if(!document.body){return true;} +var oldData;if(attribute=="innerHTML"){newData=this.getBrowserHTML(newData);} +eval("oldData=document.getElementById('"+element+"')."+attribute);if(newData!=oldData) +return true;return false;} +this.processResponse=function(xml){if(xajaxStatusMessages==true)window.status='Processing...';var tmpXajax=null;xml=xml.documentElement;if(xml==null){alert("Error: the XML response that was returned from the server cannot be processed.");document.body.style.cursor='default';if(xajaxStatusMessages==true)window.status='XML response processing error';return;} +for(i=0;i 1){for(j=0;j

    User Login diff -Nurb netmrg-0.19/www/webfiles/monitors.php netmrg-0.20/www/webfiles/monitors.php --- netmrg-0.19/www/webfiles/monitors.php 2006-01-31 04:34:35.000000000 +0530 +++ netmrg-0.20/www/webfiles/monitors.php 2006-02-20 04:28:26.000000000 +0530 @@ -106,7 +106,7 @@ $mons = array(); while ($arow = mysql_fetch_array($mon_results)) { - $arow['short_name'] = get_short_monitor_name($arow["id"]); + $arow['short_name'] = get_short_test_name($arow['test_type'], $arow['test_id'], $arow['test_params']); array_push($mons, $arow); } @@ -272,11 +272,6 @@ echo " "; - // if we've been passed a test type - if (!empty($_REQUEST["type"])) - { - $mon_row["test_type"] = $_REQUEST["type"]; - } // end if test type is set - // else default to test type 1 (script) - else if (empty($mon_row["test_type"])) - { - $mon_row["test_type"] = 1; - } // end if no test type - GLOBAL $TEST_TYPES; - make_edit_select_from_array("Monitoring Type:", "test_type", $TEST_TYPES, $mon_row["test_type"], "onChange='redisplay(form.test_type.options[selectedIndex].value);'"); - - if ($mon_row["test_type"] == 1) - { - make_edit_group("Script Options"); - if ($_REQUEST["action"] == "add") - { - make_edit_select_from_table("Script Test:", "test_id", "tests_script", "dl4392l234"); - } // end if adding - else - { - make_edit_select_from_table("Script Test:", "test_id", "tests_script", $mon_row["test_id"]); - } // end if editing - } - - if ($mon_row["test_type"] == 2) - { - make_edit_group("SNMP Options"); - if ($_REQUEST["action"] == "add") - { - make_edit_select_from_table("SNMP Test:", "test_id", "tests_snmp", "dl4392l234"); - } // end if adding - else - { - make_edit_select_from_table("SNMP Test:", "test_id", "tests_snmp", $mon_row["test_id"]); - } // end if editing - } - - if ($mon_row["test_type"] == 3) - { - make_edit_group("SQL Options"); - if ($_REQUEST["action"] == "add") - { - make_edit_select_from_table("SQL Test:", "test_id", "tests_sql", "dl4392l234"); - } // end if adding - else - { - make_edit_select_from_table("SQL Test:", "test_id", "tests_sql", $mon_row["test_id"]); - } // end if editing - } - - if ($mon_row["test_type"] == 4) - { - make_edit_group("Internal Test Options"); - if ($_REQUEST["action"] == "add") - { - make_edit_select_from_table("Internal Test:", "test_id", "tests_internal", "dl4392l234"); - } // end if adding - else - { - make_edit_select_from_table("Internal Test:", "test_id", "tests_internal", $mon_row["test_id"]); - } // end if editing - } - - make_edit_text("Parameters:", "test_params", 50, 100, htmlspecialchars($mon_row["test_params"])); + make_edit_select_test($mon_row['test_type'], $mon_row['test_id'], $mon_row['test_params']); make_edit_group("Graphing Options"); make_edit_select_from_table("Data Type:", "data_type", "data_types", $mon_row["data_type"]); make_edit_text("Minimum Value:", "min_val", "10", "20", $mon_row["min_val"]); diff -Nurb netmrg-0.19/www/webfiles/recache.php netmrg-0.20/www/webfiles/recache.php --- netmrg-0.19/www/webfiles/recache.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/recache.php 2006-11-01 21:46:06.000000000 +0530 @@ -19,6 +19,7 @@ { case "interface": do_interface_recache($_REQUEST['dev_id']); break; case "disk": do_disk_recache($_REQUEST['dev_id']); break; + case "properties": do_properties_recache($_REQUEST['dev_id']); break; } } @@ -34,4 +35,11 @@ header("Location: snmp_cache_view.php?action=view&type=disk&dev_id=$dev_id&tripid={$_REQUEST['tripid']}"); } +function do_properties_recache($dev_id) +{ + system($GLOBALS['netmrg']['binary'] . " -qP $dev_id"); + header("Location: grpdev_list.php?parent_id={$_REQUEST['parent_id']}&tripid={$_REQUEST['tripid']}"); +} + + ?> diff -Nurb netmrg-0.19/www/webfiles/sub_devices.php netmrg-0.20/www/webfiles/sub_devices.php --- netmrg-0.19/www/webfiles/sub_devices.php 2006-01-31 04:34:35.000000000 +0530 +++ netmrg-0.20/www/webfiles/sub_devices.php 2006-06-25 03:26:03.000000000 +0530 @@ -93,10 +93,26 @@ for ($i = 0; $i < db_num_rows($results); $i++) { $row = $rows[$i]; + $type = "" . $SUB_DEVICE_TYPES[$row["type"]] . ""; + + /* next hop handling */ + if ($row['type'] == 2) // network interface sub-device + { + $nh_res = db_query("SELECT value FROM sub_dev_variables WHERE sub_dev_id={$row['id']} AND name='nexthop'"); + if ($nh_row = db_fetch_array($nh_res)) // next hop located + { + $nhd_res = db_query("SELECT dev_id FROM sub_devices WHERE id = {$nh_row['value']}"); + if ($nhd_row = db_fetch_array($nhd_res)) + { + $type .= " [Next Hop: " . get_dev_sub_device_name($nh_row['value']) . "]"; + } + } + } + make_display_item("editfield".($i%2), array("checkboxname" => "subdevice", "checkboxid" => $row['id']), array("text" => $row["name"], "href" => "monitors.php?sub_dev_id={$row['id']}&tripid={$_REQUEST['tripid']}"), - array("text" => $SUB_DEVICE_TYPES[$row["type"]]), + array("text" => $type), array("text" => formatted_link("Add Templates", "graphs.php?action=applytemplates&sub_dev_id={$row['id']}&tripid={$_REQUEST['tripid']}", "", "applytemplate") . " " . formatted_link("Parameters", "sub_dev_param.php?dev_id={$_REQUEST['dev_id']}&sub_dev_id={$row['id']}&tripid={$_REQUEST['tripid']}", "", "parameters") . " " . diff -Nurb netmrg-0.19/www/webfiles/updater.php netmrg-0.20/www/webfiles/updater.php --- netmrg-0.19/www/webfiles/updater.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/updater.php 2008-03-27 21:32:46.000000000 +0530 @@ -213,7 +213,27 @@ array( "name" => "Graph Max NULL Fix", "query" => "UPDATE graphs SET max=NULL WHERE max=0") - ) // end 0.19cvs + ), // end 0.19 + + "0.19.1" => array(), // end 0.19 + + "0.20" => array( + array( + "name" => "Device Properties Table", + "query" => "CREATE TABLE `dev_props` (`id` INT NOT NULL AUTO_INCREMENT, `dev_type_id` INT NOT NULL, `name` VARCHAR( 200 ) NOT NULL, `test_type` TINYINT NOT NULL, `test_id` INT NOT NULL, `test_params` VARCHAR( 150 ) NOT NULL, PRIMARY KEY ( `id` )) TYPE = MYISAM ;"), + array( + "name" => "Device Properties Values Table", + "query" => "CREATE TABLE `dev_prop_vals` ( `dev_id` INT NOT NULL, `prop_id` INT NOT NULL, `value` VARCHAR( 250 ) NOT NULL, PRIMARY KEY ( `dev_id` , `prop_id` )) "), + array( + "name" => "SNMP Interface Cache New Fields", + "query" => "ALTER TABLE `snmp_interface_cache` ADD `nexthop` VARCHAR( 20 ) , ADD `vlan` VARCHAR( 20 ) , ADD `mode` TINYINT"), + array( + "name" => "Graph Item Consolidation Function Field", + "query" => "ALTER TABLE `graph_ds` ADD `cf` TINYINT NOT NULL DEFAULT '1'"), + array( + "name" => "Device Unknowns on SNMP Restart Field", + "query" => "ALTER TABLE `devices` ADD `unknowns_on_snmp_restart` TINYINT NOT NULL DEFAULT '1'") + ), // end 0.20 ); // end $dbupdates; diff -Nurb netmrg-0.19/www/webfiles/users.php netmrg-0.20/www/webfiles/users.php --- netmrg-0.19/www/webfiles/users.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/users.php 2006-02-04 10:06:33.000000000 +0530 @@ -12,23 +12,37 @@ require_once("../include/config.php"); check_auth($GLOBALS['PERMIT']["Admin"]); -if (!empty($_REQUEST["action"])) -{ - $action = $_REQUEST["action"]; -} -else +if (empty($_REQUEST["action"])) $_REQUEST["action"] = ""; + +switch ($_REQUEST["action"]) { - $action = ""; - unset($action); -} // end if action set or not + case "edit": + case "add": + display_edit(); + break; + + case "doedit": + case "doadd": + do_edit(); + break; + + case "dodelete": + do_delete(); + break; + + case "deletemulti": + do_deletemulti(); + break; + + default: + display_page(); + +} -if ((!isset($action)) || ($action == "doedit") || ($action == "dodelete") || ($action == "doadd") || ($action == "deletemulti")) -{ -if (!empty($action) && ($action == "doedit" || $action == "doadd")) +function do_edit() { - // verify password change if (!empty($_REQUEST["pass"])) { if ($_REQUEST["pass"] != $_REQUEST["vpass"]) @@ -72,18 +86,15 @@ permit='{$_REQUEST['permit']}', group_id='{$_REQUEST['group_id']}', disabled='{$_REQUEST['disabled']}' $db_end"); header("Location: {$_SERVER['PHP_SELF']}"); - exit(0); -} // done editing +} -if (!empty($action) && $action == "dodelete") +function do_delete() { db_update("DELETE FROM user WHERE id='{$_REQUEST['user_id']}'"); header("Location: {$_SERVER['PHP_SELF']}"); - exit(0); - -} // done deleting +} -if (!empty($action) && $action == "deletemulti") +function do_deletemulti() { if (isset($_REQUEST["user"])) { @@ -93,64 +104,10 @@ } } header("Location: {$_SERVER['PHP_SELF']}"); - exit(0); - -} // done multi-deleting - - -// Display a list - -begin_page("users.php", "User Management"); -js_checkbox_utils(); -?> -" method="post" name="form"> - checkbox_toolbar()), - array("text" => "User ID"), - array("text" => "Name"), - array("text" => "Permissions") -); // end make_display_table(); - -$user_results = db_query("SELECT * FROM user ORDER BY user.user"); - -$user_total = db_num_rows($user_results); - -js_confirm_dialog("del", "Are you sure you want to delete user ", " ?", "{$_SERVER['PHP_SELF']}?action=dodelete&user_id="); - -// For each user -for ($user_count = 1; $user_count <= $user_total; ++$user_count) -{ - $user_row = db_fetch_array($user_results); - $user_id = $user_row["id"]; - - make_display_item("editfield".(($user_count-1)%2), - array("checkboxname" => "user", "checkboxid" => $user_id), - array("text" => $user_row["user"]), - array("text" => $user_row["fullname"]), - array("text" => (get_permit($user_row["user"])==$PERMIT["Disabled"]) ? 'Disabled' : $GLOBALS['PERMIT_TYPES'][$user_row['permit']]), - array("text" => formatted_link("Prefs", "user_prefs.php?uid=$user_id") . " " . - formatted_link("Edit", "{$_SERVER['PHP_SELF']}?action=edit&user_id=$user_id", "", "edit") . " " . - formatted_link("Delete", "javascript:del('".addslashes($user_row['user'])."', '{$user_row['id']}')", "", "delete") - ) - ); // end make_display_item(); - -} // end users - -make_checkbox_command("", 5, - array("text" => "Delete", "action" => "deletemulti", "prompt" => "Are you sure you want to delete the checked users?") -); // end make_checkbox_command -make_status_line("user", $user_count - 1); -?> - - - +
    " method="post" name="form"> + checkbox_toolbar()), + array("text" => "User ID"), + array("text" => "Name"), + array("text" => "Permissions") + ); // end make_display_table(); + + $user_results = db_query("SELECT * FROM user ORDER BY user.user"); + + $user_total = db_num_rows($user_results); -} // End editing screen + js_confirm_dialog("del", "Are you sure you want to delete user ", " ?", "{$_SERVER['PHP_SELF']}?action=dodelete&user_id="); -end_page(); + // For each user + for ($user_count = 1; $user_count <= $user_total; ++$user_count) + { + $user_row = db_fetch_array($user_results); + $user_id = $user_row["id"]; + + make_display_item("editfield".(($user_count-1)%2), + array("checkboxname" => "user", "checkboxid" => $user_id), + array("text" => $user_row["user"]), + array("text" => $user_row["fullname"]), + array("text" => (get_permit($user_row["user"])==$GLOBALS['PERMIT']["Disabled"]) ? 'Disabled' : $GLOBALS['PERMIT_TYPES'][$user_row['permit']]), + array("text" => formatted_link("Prefs", "user_prefs.php?uid=$user_id") . " " . + formatted_link("Edit", "{$_SERVER['PHP_SELF']}?action=edit&user_id=$user_id", "", "edit") . " " . + formatted_link("Delete", "javascript:del('".addslashes($user_row['user'])."', '{$user_row['id']}')", "", "delete") + ) + ); // end make_display_item(); + + } // end users + + make_checkbox_command("", 5, + array("text" => "Delete", "action" => "deletemulti", "prompt" => "Are you sure you want to delete the checked users?") + ); // end make_checkbox_command + make_status_line("user", $user_count - 1); + ?> + +
    + diff -Nurb netmrg-0.19/www/webfiles/view.php netmrg-0.20/www/webfiles/view.php --- netmrg-0.19/www/webfiles/view.php 2006-01-11 03:24:57.000000000 +0530 +++ netmrg-0.20/www/webfiles/view.php 2007-02-07 08:26:38.000000000 +0530 @@ -91,7 +91,12 @@ function display_edit() { - begin_page("view.php", "Edit View Item"); + $object_name = get_view_name(); + if (!empty($object_name)) + { + $object_name .= ' - '; + } // end if object name + begin_page("view.php", $object_name."Edit View Item"); switch ($_REQUEST["action"]) { @@ -103,7 +108,7 @@ { $row['subdev_id'] = $_REQUEST["object_id"]; } - elseif ($_REQUEST["object_type"] == "device") + else if ($_REQUEST["object_type"] == "device") { $q1 = db_query("SELECT id FROM sub_devices WHERE dev_id = {$_REQUEST['object_id']}"); if ($r1 = db_fetch_array($q1)) @@ -304,7 +309,12 @@ if (count($_SESSION["netmrgsess"]["slideshow"]["views"]) == 0) { - begin_page("view.php", "Slide Show"); + $object_name = get_view_name(); + if (!empty($object_name)) + { + $object_name .= ' - '; + } // end if object name + begin_page("view.php", $object_name."Slide Show"); echo("This slide show is empty."); end_page(); exit(0); @@ -382,19 +392,24 @@ do_view(); -} +} // end do_slideshow(); function do_view() { + $object_name = get_view_name(); + if (!empty($object_name)) + { + $object_name .= ' - '; + } // end if object name if ($GLOBALS["slideshow"] && GetUserPref(GetUserID(), "SlideShow", "AutoScroll") !== "" && GetUserPref(GetUserID(), "SlideShow", "AutoScroll")) { - begin_page("view.php", "View", 1, "onLoad=start() onClick=toggle()"); + begin_page("view.php", $object_name."View", 1, "onLoad=start() onClick=toggle()"); } else { - begin_page("view.php", "View", 1); + begin_page("view.php", $object_name."View", 1); } $view_select = @@ -411,7 +426,7 @@ if ($_REQUEST["action"] == "view") { echo ''."\n"; - echo "
    "; + echo '
    '."\n"; if (isset($_REQUEST['hist'])) $hist = "&hist={$_REQUEST['hist']}"; @@ -421,24 +436,108 @@ switch ($row['type']) { case "graph": - echo ''."\n"; - echo ' '."\n"; - echo "
    \n"; + echo '
    '."\n"; + $local_graph_type = 'custom'; + echo '
    '.$row['title']."
    \n"; + echo '
    ' . "\n"; + echo ' '."\n"; + echo ' '."\n"; + echo " \n"; + echo '
    ' . "\n"; + echo '
    '."\n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' History' . "\n" . + ' '."\n"; + echo "
    \n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' Dissect' . "\n" . + ' ' . "\n"; + echo "
    \n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' Advanced' . "\n" . + ' ' . "\n"; + echo "
    \n"; + echo "
    \n"; + echo "
    \n"; break; case "template": - echo ''."\n"; - echo ' '."\n"; - echo "
    \n"; + $nh_res = db_query("SELECT value FROM sub_dev_variables WHERE sub_dev_id={$row['subdev_id']} AND name='nexthop'"); + $link = ""; + if ($nh_row = db_fetch_array($nh_res)) // next hop located + { + $nhd_res = db_query("SELECT dev_id FROM sub_devices WHERE id = {$nh_row['value']}"); + if ($nhd_row = db_fetch_array($nhd_res)) + { + $link = "Next Hop: " . get_dev_sub_device_name($nh_row['value']) . ""; + } + } + echo '
    '."\n"; + $local_graph_type = 'template'; + echo '
    '.expand_parameters($row['title'], $row['subdev_id'])."
    \n"; + echo '
    ' . "\n"; + echo ' '."\n"; + echo ' '."\n"; + echo " \n"; + echo '
    ' . "\n"; + echo '
    '."\n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' History' . "\n" . + ' '."\n"; + echo "
    \n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' Dissect' . "\n" . + ' ' . "\n"; + echo "
    \n"; + echo '
    '."\n"; + echo ' ' . "\n" . + ' Advanced' . "\n" . + ' ' . "\n"; + echo "
    \n"; + if (!empty($link)) + { + echo '
    '."\n"; + echo ' ' . $link . "\n"; + echo '
    ' . "\n"; + } + echo "
    \n"; + echo "
    \n"; break; case "separator": - echo '
    ' . $row["separator_text"] . '
    '."\n"; + echo '
    ' . $row["separator_text"] . '
    '."\n"; break; } // end switch row type } // end while each row echo "
    \n"; + echo '
     
    '."\n"; echo ''."\n"; $histnum = 0; @@ -459,7 +558,7 @@ print($GLOBALS["slide_show_formatted_link"]); } - } + } // end if view page else { js_confirm_dialog("del", "Do you want to remove ", " from this view?", "{$_SERVER['PHP_SELF']}?action=dodelete&object_type={$_REQUEST['object_type']}&object_id={$_REQUEST['object_id']}&id="); @@ -524,7 +623,8 @@ default: $extra_options = ""; - } + break; + } // end switch ($row['type']) make_display_item("editfield".($i%2), array("checkboxname" => "viewitem", "checkboxid" => $row['id']), @@ -536,7 +636,8 @@ formatted_link("Delete","javascript:del('".str_replace('%', '', addslashes($name))."', '{$row['id']}')", "", "delete") . " " . $extra_options) ); // end make_display_item(); - } + } // end for each row + make_checkbox_command("", 5, array("text" => "Delete", "action" => "multidodelete", "prompt" => "Are you sure you want to delete the checked items?"), array("text" => "Move Up", "action" => "move_up"), @@ -545,10 +646,37 @@ make_status_line("{$_REQUEST["type"]} item", $i); print(""); print(formatted_link("Done Editing", "{$_SERVER['PHP_SELF']}?action=view&object_type={$_REQUEST['object_type']}&object_id={$_REQUEST['object_id']}")); - - } + } // end else edit view end_page(); -} +} // end do_view(); + +function get_view_name() +{ + $return_val = ''; + + $object_id = $_REQUEST["object_id"]; + $object_type = $_REQUEST["object_type"]; + + switch ($object_type) + { + case 'group': + $return_val .= db_fetch_cell('SELECT `name` FROM `groups` ' . + 'WHERE id = ' . db_quote($object_id)); + break; + + case 'device': + $return_val .= db_fetch_cell('SELECT `name` FROM `devices` ' . + 'WHERE id = ' . db_quote($object_id)); + break; + + case 'subdevice': + $return_val .= db_fetch_cell('SELECT `name` FROM `sub_devices` ' . + 'WHERE id = ' . db_quote($object_id)); + break; + } // end switch object type + + return $return_val; +} // end function get_view_name() ?>